mirror of
https://github.com/OpenBB-finance/OpenBB.git
synced 2026-10-27 12:40:35 +00:00
3723 lines
4.2 MiB
Vendored
3723 lines
4.2 MiB
Vendored
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="UTF-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||
<meta name="color-scheme" content="dark light" />
|
||
<title>OpenBB Interactive Charts</title>
|
||
<script>
|
||
if (
|
||
// check if user had saved dark as their
|
||
// theme when accessing page before
|
||
localStorage.theme === "dark" ||
|
||
// or user's requesting dark color
|
||
// scheme through operating system
|
||
(!("theme" in localStorage) &&
|
||
window.matchMedia("(prefers-color-scheme: dark)").matches)
|
||
) {
|
||
// then if we have access to the document and the element
|
||
// we add the dark class to the html element and
|
||
// store the dark value in the localStorage
|
||
if (document && document.documentElement) {
|
||
document.documentElement.classList.add("dark");
|
||
localStorage.setItem("theme", "dark");
|
||
}
|
||
} else {
|
||
// else if we have access to the document and the element
|
||
// we remove the dark class to the html element and
|
||
// store the value light in the localStorage
|
||
if (document && document.documentElement) {
|
||
document.documentElement.classList.remove("dark");
|
||
localStorage.setItem("theme", "light");
|
||
}
|
||
}
|
||
</script>
|
||
<script type="module" crossorigin>
|
||
function S_(L,I){for(var $=0;$<I.length;$++){const se=I[$];if(typeof se!="string"&&!Array.isArray(se)){for(const Pe in se)if(Pe!=="default"&&!(Pe in L)){const R=Object.getOwnPropertyDescriptor(se,Pe);R&&Object.defineProperty(L,Pe,R.get?R:{enumerable:!0,get:()=>se[Pe]})}}}return Object.freeze(Object.defineProperty(L,Symbol.toStringTag,{value:"Module"}))}(function(){const I=document.createElement("link").relList;if(I&&I.supports&&I.supports("modulepreload"))return;for(const Pe of document.querySelectorAll('link[rel="modulepreload"]'))se(Pe);new MutationObserver(Pe=>{for(const R of Pe)if(R.type==="childList")for(const E of R.addedNodes)E.tagName==="LINK"&&E.rel==="modulepreload"&&se(E)}).observe(document,{childList:!0,subtree:!0});function $(Pe){const R={};return Pe.integrity&&(R.integrity=Pe.integrity),Pe.referrerPolicy&&(R.referrerPolicy=Pe.referrerPolicy),Pe.crossOrigin==="use-credentials"?R.credentials="include":Pe.crossOrigin==="anonymous"?R.credentials="omit":R.credentials="same-origin",R}function se(Pe){if(Pe.ep)return;Pe.ep=!0;const R=$(Pe);fetch(Pe.href,R)}})();function ld(L){return L&&L.__esModule&&Object.prototype.hasOwnProperty.call(L,"default")?L.default:L}var E_={exports:{}},b1={},C_={exports:{}},di={};/**
|
||
* @license React
|
||
* react.production.min.js
|
||
*
|
||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||
*
|
||
* This source code is licensed under the MIT license found in the
|
||
* LICENSE file in the root directory of this source tree.
|
||
*/var ud=Symbol.for("react.element"),L6=Symbol.for("react.portal"),P6=Symbol.for("react.fragment"),O6=Symbol.for("react.strict_mode"),I6=Symbol.for("react.profiler"),R6=Symbol.for("react.provider"),z6=Symbol.for("react.context"),D6=Symbol.for("react.forward_ref"),F6=Symbol.for("react.suspense"),B6=Symbol.for("react.memo"),N6=Symbol.for("react.lazy"),b2=Symbol.iterator;function j6(L){return L===null||typeof L!="object"?null:(L=b2&&L[b2]||L["@@iterator"],typeof L=="function"?L:null)}var L_={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},P_=Object.assign,O_={};function Dh(L,I,$){this.props=L,this.context=I,this.refs=O_,this.updater=$||L_}Dh.prototype.isReactComponent={};Dh.prototype.setState=function(L,I){if(typeof L!="object"&&typeof L!="function"&&L!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,L,I,"setState")};Dh.prototype.forceUpdate=function(L){this.updater.enqueueForceUpdate(this,L,"forceUpdate")};function I_(){}I_.prototype=Dh.prototype;function Lm(L,I,$){this.props=L,this.context=I,this.refs=O_,this.updater=$||L_}var Pm=Lm.prototype=new I_;Pm.constructor=Lm;P_(Pm,Dh.prototype);Pm.isPureReactComponent=!0;var _2=Array.isArray,R_=Object.prototype.hasOwnProperty,Om={current:null},z_={key:!0,ref:!0,__self:!0,__source:!0};function D_(L,I,$){var se,Pe={},R=null,E=null;if(I!=null)for(se in I.ref!==void 0&&(E=I.ref),I.key!==void 0&&(R=""+I.key),I)R_.call(I,se)&&!z_.hasOwnProperty(se)&&(Pe[se]=I[se]);var e=arguments.length-2;if(e===1)Pe.children=$;else if(1<e){for(var w=Array(e),k=0;k<e;k++)w[k]=arguments[k+2];Pe.children=w}if(L&&L.defaultProps)for(se in e=L.defaultProps,e)Pe[se]===void 0&&(Pe[se]=e[se]);return{$$typeof:ud,type:L,key:R,ref:E,props:Pe,_owner:Om.current}}function U6(L,I){return{$$typeof:ud,type:L.type,key:I,ref:L.ref,props:L.props,_owner:L._owner}}function Im(L){return typeof L=="object"&&L!==null&&L.$$typeof===ud}function V6(L){var I={"=":"=0",":":"=2"};return"$"+L.replace(/[=:]/g,function($){return I[$]})}var w2=/\/+/g;function Ag(L,I){return typeof L=="object"&&L!==null&&L.key!=null?V6(""+L.key):I.toString(36)}function M0(L,I,$,se,Pe){var R=typeof L;(R==="undefined"||R==="boolean")&&(L=null);var E=!1;if(L===null)E=!0;else switch(R){case"string":case"number":E=!0;break;case"object":switch(L.$$typeof){case ud:case L6:E=!0}}if(E)return E=L,Pe=Pe(E),L=se===""?"."+Ag(E,0):se,_2(Pe)?($="",L!=null&&($=L.replace(w2,"$&/")+"/"),M0(Pe,I,$,"",function(k){return k})):Pe!=null&&(Im(Pe)&&(Pe=U6(Pe,$+(!Pe.key||E&&E.key===Pe.key?"":(""+Pe.key).replace(w2,"$&/")+"/")+L)),I.push(Pe)),1;if(E=0,se=se===""?".":se+":",_2(L))for(var e=0;e<L.length;e++){R=L[e];var w=se+Ag(R,e);E+=M0(R,I,$,w,Pe)}else if(w=j6(L),typeof w=="function")for(L=w.call(L),e=0;!(R=L.next()).done;)R=R.value,w=se+Ag(R,e++),E+=M0(R,I,$,w,Pe);else if(R==="object")throw I=String(L),Error("Objects are not valid as a React child (found: "+(I==="[object Object]"?"object with keys {"+Object.keys(L).join(", ")+"}":I)+"). If you meant to render a collection of children, use an array instead.");return E}function t0(L,I,$){if(L==null)return L;var se=[],Pe=0;return M0(L,se,"","",function(R){return I.call($,R,Pe++)}),se}function H6(L){if(L._status===-1){var I=L._result;I=I(),I.then(function($){(L._status===0||L._status===-1)&&(L._status=1,L._result=$)},function($){(L._status===0||L._status===-1)&&(L._status=2,L._result=$)}),L._status===-1&&(L._status=0,L._result=I)}if(L._status===1)return L._result.default;throw L._result}var ms={current:null},S0={transition:null},q6={ReactCurrentDispatcher:ms,ReactCurrentBatchConfig:S0,ReactCurrentOwner:Om};di.Children={map:t0,forEach:function(L,I,$){t0(L,function(){I.apply(this,arguments)},$)},count:function(L){var I=0;return t0(L,function(){I++}),I},toArray:function(L){return t0(L,function(I){return I})||[]},only:function(L){if(!Im(L))throw Error("React.Children.only expected to receive a single React element child.");return L}};di.Component=Dh;di.Fragment=P6;di.Profiler=I6;di.PureComponent=Lm;di.StrictMode=O6;di.Suspense=F6;di.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=q6;di.cloneElement=function(L,I,$){if(L==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+L+".");var se=P_({},L.props),Pe=L.key,R=L.ref,E=L._owner;if(I!=null){if(I.ref!==void 0&&(R=I.ref,E=Om.current),I.key!==void 0&&(Pe=""+I.key),L.type&&L.type.defaultProps)var e=L.type.defaultProps;for(w in I)R_.call(I,w)&&!z_.hasOwnProperty(w)&&(se[w]=I[w]===void 0&&e!==void 0?e[w]:I[w])}var w=arguments.length-2;if(w===1)se.children=$;else if(1<w){e=Array(w);for(var k=0;k<w;k++)e[k]=arguments[k+2];se.children=e}return{$$typeof:ud,type:L.type,key:Pe,ref:R,props:se,_owner:E}};di.createContext=function(L){return L={$$typeof:z6,_currentValue:L,_currentValue2:L,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},L.Provider={$$typeof:R6,_context:L},L.Consumer=L};di.createElement=D_;di.createFactory=function(L){var I=D_.bind(null,L);return I.type=L,I};di.createRef=function(){return{current:null}};di.forwardRef=function(L){return{$$typeof:D6,render:L}};di.isValidElement=Im;di.lazy=function(L){return{$$typeof:N6,_payload:{_status:-1,_result:L},_init:H6}};di.memo=function(L,I){return{$$typeof:B6,type:L,compare:I===void 0?null:I}};di.startTransition=function(L){var I=S0.transition;S0.transition={};try{L()}finally{S0.transition=I}};di.unstable_act=function(){throw Error("act(...) is not supported in production builds of React.")};di.useCallback=function(L,I){return ms.current.useCallback(L,I)};di.useContext=function(L){return ms.current.useContext(L)};di.useDebugValue=function(){};di.useDeferredValue=function(L){return ms.current.useDeferredValue(L)};di.useEffect=function(L,I){return ms.current.useEffect(L,I)};di.useId=function(){return ms.current.useId()};di.useImperativeHandle=function(L,I,$){return ms.current.useImperativeHandle(L,I,$)};di.useInsertionEffect=function(L,I){return ms.current.useInsertionEffect(L,I)};di.useLayoutEffect=function(L,I){return ms.current.useLayoutEffect(L,I)};di.useMemo=function(L,I){return ms.current.useMemo(L,I)};di.useReducer=function(L,I,$){return ms.current.useReducer(L,I,$)};di.useRef=function(L){return ms.current.useRef(L)};di.useState=function(L){return ms.current.useState(L)};di.useSyncExternalStore=function(L,I,$){return ms.current.useSyncExternalStore(L,I,$)};di.useTransition=function(){return ms.current.useTransition()};di.version="18.2.0";C_.exports=di;var In=C_.exports;const F_=ld(In),G6=S_({__proto__:null,default:F_},[In]);/**
|
||
* @license React
|
||
* react-jsx-runtime.production.min.js
|
||
*
|
||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||
*
|
||
* This source code is licensed under the MIT license found in the
|
||
* LICENSE file in the root directory of this source tree.
|
||
*/var W6=In,Z6=Symbol.for("react.element"),Y6=Symbol.for("react.fragment"),X6=Object.prototype.hasOwnProperty,$6=W6.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,K6={key:!0,ref:!0,__self:!0,__source:!0};function B_(L,I,$){var se,Pe={},R=null,E=null;$!==void 0&&(R=""+$),I.key!==void 0&&(R=""+I.key),I.ref!==void 0&&(E=I.ref);for(se in I)X6.call(I,se)&&!K6.hasOwnProperty(se)&&(Pe[se]=I[se]);if(L&&L.defaultProps)for(se in I=L.defaultProps,I)Pe[se]===void 0&&(Pe[se]=I[se]);return{$$typeof:Z6,type:L,key:R,ref:E,props:Pe,_owner:$6.current}}b1.Fragment=Y6;b1.jsx=B_;b1.jsxs=B_;E_.exports=b1;var Rm=E_.exports;const Mg=Rm.Fragment,hr=Rm.jsx,Xr=Rm.jsxs;var N_={exports:{}},pl={},j_={exports:{}},U_={};/**
|
||
* @license React
|
||
* scheduler.production.min.js
|
||
*
|
||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||
*
|
||
* This source code is licensed under the MIT license found in the
|
||
* LICENSE file in the root directory of this source tree.
|
||
*/(function(L){function I(C,P){var O=C.length;C.push(P);e:for(;0<O;){var z=O-1>>>1,B=C[z];if(0<Pe(B,P))C[z]=P,C[O]=B,O=z;else break e}}function $(C){return C.length===0?null:C[0]}function se(C){if(C.length===0)return null;var P=C[0],O=C.pop();if(O!==P){C[0]=O;e:for(var z=0,B=C.length,Y=B>>>1;z<Y;){var D=2*(z+1)-1,G=C[D],V=D+1,j=C[V];if(0>Pe(G,O))V<B&&0>Pe(j,G)?(C[z]=j,C[V]=O,z=V):(C[z]=G,C[D]=O,z=D);else if(V<B&&0>Pe(j,O))C[z]=j,C[V]=O,z=V;else break e}}return P}function Pe(C,P){var O=C.sortIndex-P.sortIndex;return O!==0?O:C.id-P.id}if(typeof performance=="object"&&typeof performance.now=="function"){var R=performance;L.unstable_now=function(){return R.now()}}else{var E=Date,e=E.now();L.unstable_now=function(){return E.now()-e}}var w=[],k=[],i=1,_=null,y=3,h=!1,l=!1,t=!1,o=typeof setTimeout=="function"?setTimeout:null,r=typeof clearTimeout=="function"?clearTimeout:null,n=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function a(C){for(var P=$(k);P!==null;){if(P.callback===null)se(k);else if(P.startTime<=C)se(k),P.sortIndex=P.expirationTime,I(w,P);else break;P=$(k)}}function s(C){if(t=!1,a(C),!l)if($(w)!==null)l=!0,M(u);else{var P=$(k);P!==null&&A(s,P.startTime-C)}}function u(C,P){l=!1,t&&(t=!1,r(b),b=-1),h=!0;var O=y;try{for(a(P),_=$(w);_!==null&&(!(_.expirationTime>P)||C&&!v());){var z=_.callback;if(typeof z=="function"){_.callback=null,y=_.priorityLevel;var B=z(_.expirationTime<=P);P=L.unstable_now(),typeof B=="function"?_.callback=B:_===$(w)&&se(w),a(P)}else se(w);_=$(w)}if(_!==null)var Y=!0;else{var D=$(k);D!==null&&A(s,D.startTime-P),Y=!1}return Y}finally{_=null,y=O,h=!1}}var p=!1,c=null,b=-1,g=5,f=-1;function v(){return!(L.unstable_now()-f<g)}function m(){if(c!==null){var C=L.unstable_now();f=C;var P=!0;try{P=c(!0,C)}finally{P?x():(p=!1,c=null)}}else p=!1}var x;if(typeof n=="function")x=function(){n(m)};else if(typeof MessageChannel<"u"){var T=new MessageChannel,d=T.port2;T.port1.onmessage=m,x=function(){d.postMessage(null)}}else x=function(){o(m,0)};function M(C){c=C,p||(p=!0,x())}function A(C,P){b=o(function(){C(L.unstable_now())},P)}L.unstable_IdlePriority=5,L.unstable_ImmediatePriority=1,L.unstable_LowPriority=4,L.unstable_NormalPriority=3,L.unstable_Profiling=null,L.unstable_UserBlockingPriority=2,L.unstable_cancelCallback=function(C){C.callback=null},L.unstable_continueExecution=function(){l||h||(l=!0,M(u))},L.unstable_forceFrameRate=function(C){0>C||125<C?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):g=0<C?Math.floor(1e3/C):5},L.unstable_getCurrentPriorityLevel=function(){return y},L.unstable_getFirstCallbackNode=function(){return $(w)},L.unstable_next=function(C){switch(y){case 1:case 2:case 3:var P=3;break;default:P=y}var O=y;y=P;try{return C()}finally{y=O}},L.unstable_pauseExecution=function(){},L.unstable_requestPaint=function(){},L.unstable_runWithPriority=function(C,P){switch(C){case 1:case 2:case 3:case 4:case 5:break;default:C=3}var O=y;y=C;try{return P()}finally{y=O}},L.unstable_scheduleCallback=function(C,P,O){var z=L.unstable_now();switch(typeof O=="object"&&O!==null?(O=O.delay,O=typeof O=="number"&&0<O?z+O:z):O=z,C){case 1:var B=-1;break;case 2:B=250;break;case 5:B=1073741823;break;case 4:B=1e4;break;default:B=5e3}return B=O+B,C={id:i++,callback:P,priorityLevel:C,startTime:O,expirationTime:B,sortIndex:-1},O>z?(C.sortIndex=O,I(k,C),$(w)===null&&C===$(k)&&(t?(r(b),b=-1):t=!0,A(s,O-z))):(C.sortIndex=B,I(w,C),l||h||(l=!0,M(u))),C},L.unstable_shouldYield=v,L.unstable_wrapCallback=function(C){var P=y;return function(){var O=y;y=P;try{return C.apply(this,arguments)}finally{y=O}}}})(U_);j_.exports=U_;var J6=j_.exports;/**
|
||
* @license React
|
||
* react-dom.production.min.js
|
||
*
|
||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||
*
|
||
* This source code is licensed under the MIT license found in the
|
||
* LICENSE file in the root directory of this source tree.
|
||
*/var V_=In,hl=J6;function _r(L){for(var I="https://reactjs.org/docs/error-decoder.html?invariant="+L,$=1;$<arguments.length;$++)I+="&args[]="+encodeURIComponent(arguments[$]);return"Minified React error #"+L+"; visit "+I+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var H_=new Set,Vp={};function Lf(L,I){Eh(L,I),Eh(L+"Capture",I)}function Eh(L,I){for(Vp[L]=I,L=0;L<I.length;L++)H_.add(I[L])}var Ju=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),vv=Object.prototype.hasOwnProperty,Q6=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,k2={},T2={};function e8(L){return vv.call(T2,L)?!0:vv.call(k2,L)?!1:Q6.test(L)?T2[L]=!0:(k2[L]=!0,!1)}function t8(L,I,$,se){if($!==null&&$.type===0)return!1;switch(typeof I){case"function":case"symbol":return!0;case"boolean":return se?!1:$!==null?!$.acceptsBooleans:(L=L.toLowerCase().slice(0,5),L!=="data-"&&L!=="aria-");default:return!1}}function n8(L,I,$,se){if(I===null||typeof I>"u"||t8(L,I,$,se))return!0;if(se)return!1;if($!==null)switch($.type){case 3:return!I;case 4:return I===!1;case 5:return isNaN(I);case 6:return isNaN(I)||1>I}return!1}function ys(L,I,$,se,Pe,R,E){this.acceptsBooleans=I===2||I===3||I===4,this.attributeName=se,this.attributeNamespace=Pe,this.mustUseProperty=$,this.propertyName=L,this.type=I,this.sanitizeURL=R,this.removeEmptyString=E}var Ro={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(L){Ro[L]=new ys(L,0,!1,L,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(L){var I=L[0];Ro[I]=new ys(I,1,!1,L[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(L){Ro[L]=new ys(L,2,!1,L.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(L){Ro[L]=new ys(L,2,!1,L,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(L){Ro[L]=new ys(L,3,!1,L.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(L){Ro[L]=new ys(L,3,!0,L,null,!1,!1)});["capture","download"].forEach(function(L){Ro[L]=new ys(L,4,!1,L,null,!1,!1)});["cols","rows","size","span"].forEach(function(L){Ro[L]=new ys(L,6,!1,L,null,!1,!1)});["rowSpan","start"].forEach(function(L){Ro[L]=new ys(L,5,!1,L.toLowerCase(),null,!1,!1)});var zm=/[\-:]([a-z])/g;function Dm(L){return L[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(L){var I=L.replace(zm,Dm);Ro[I]=new ys(I,1,!1,L,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(L){var I=L.replace(zm,Dm);Ro[I]=new ys(I,1,!1,L,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(L){var I=L.replace(zm,Dm);Ro[I]=new ys(I,1,!1,L,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(L){Ro[L]=new ys(L,1,!1,L.toLowerCase(),null,!1,!1)});Ro.xlinkHref=new ys("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(L){Ro[L]=new ys(L,1,!1,L.toLowerCase(),null,!0,!0)});function Fm(L,I,$,se){var Pe=Ro.hasOwnProperty(I)?Ro[I]:null;(Pe!==null?Pe.type!==0:se||!(2<I.length)||I[0]!=="o"&&I[0]!=="O"||I[1]!=="n"&&I[1]!=="N")&&(n8(I,$,Pe,se)&&($=null),se||Pe===null?e8(I)&&($===null?L.removeAttribute(I):L.setAttribute(I,""+$)):Pe.mustUseProperty?L[Pe.propertyName]=$===null?Pe.type===3?!1:"":$:(I=Pe.attributeName,se=Pe.attributeNamespace,$===null?L.removeAttribute(I):(Pe=Pe.type,$=Pe===3||Pe===4&&$===!0?"":""+$,se?L.setAttributeNS(se,I,$):L.setAttribute(I,$))))}var rc=V_.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,n0=Symbol.for("react.element"),oh=Symbol.for("react.portal"),sh=Symbol.for("react.fragment"),Bm=Symbol.for("react.strict_mode"),mv=Symbol.for("react.profiler"),q_=Symbol.for("react.provider"),G_=Symbol.for("react.context"),Nm=Symbol.for("react.forward_ref"),yv=Symbol.for("react.suspense"),xv=Symbol.for("react.suspense_list"),jm=Symbol.for("react.memo"),Tc=Symbol.for("react.lazy"),W_=Symbol.for("react.offscreen"),A2=Symbol.iterator;function vp(L){return L===null||typeof L!="object"?null:(L=A2&&L[A2]||L["@@iterator"],typeof L=="function"?L:null)}var Ca=Object.assign,Sg;function Mp(L){if(Sg===void 0)try{throw Error()}catch($){var I=$.stack.trim().match(/\n( *(at )?)/);Sg=I&&I[1]||""}return`
|
||
`+Sg+L}var Eg=!1;function Cg(L,I){if(!L||Eg)return"";Eg=!0;var $=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(I)if(I=function(){throw Error()},Object.defineProperty(I.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(I,[])}catch(k){var se=k}Reflect.construct(L,[],I)}else{try{I.call()}catch(k){se=k}L.call(I.prototype)}else{try{throw Error()}catch(k){se=k}L()}}catch(k){if(k&&se&&typeof k.stack=="string"){for(var Pe=k.stack.split(`
|
||
`),R=se.stack.split(`
|
||
`),E=Pe.length-1,e=R.length-1;1<=E&&0<=e&&Pe[E]!==R[e];)e--;for(;1<=E&&0<=e;E--,e--)if(Pe[E]!==R[e]){if(E!==1||e!==1)do if(E--,e--,0>e||Pe[E]!==R[e]){var w=`
|
||
`+Pe[E].replace(" at new "," at ");return L.displayName&&w.includes("<anonymous>")&&(w=w.replace("<anonymous>",L.displayName)),w}while(1<=E&&0<=e);break}}}finally{Eg=!1,Error.prepareStackTrace=$}return(L=L?L.displayName||L.name:"")?Mp(L):""}function r8(L){switch(L.tag){case 5:return Mp(L.type);case 16:return Mp("Lazy");case 13:return Mp("Suspense");case 19:return Mp("SuspenseList");case 0:case 2:case 15:return L=Cg(L.type,!1),L;case 11:return L=Cg(L.type.render,!1),L;case 1:return L=Cg(L.type,!0),L;default:return""}}function bv(L){if(L==null)return null;if(typeof L=="function")return L.displayName||L.name||null;if(typeof L=="string")return L;switch(L){case sh:return"Fragment";case oh:return"Portal";case mv:return"Profiler";case Bm:return"StrictMode";case yv:return"Suspense";case xv:return"SuspenseList"}if(typeof L=="object")switch(L.$$typeof){case G_:return(L.displayName||"Context")+".Consumer";case q_:return(L._context.displayName||"Context")+".Provider";case Nm:var I=L.render;return L=L.displayName,L||(L=I.displayName||I.name||"",L=L!==""?"ForwardRef("+L+")":"ForwardRef"),L;case jm:return I=L.displayName||null,I!==null?I:bv(L.type)||"Memo";case Tc:I=L._payload,L=L._init;try{return bv(L(I))}catch{}}return null}function i8(L){var I=L.type;switch(L.tag){case 24:return"Cache";case 9:return(I.displayName||"Context")+".Consumer";case 10:return(I._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return L=I.render,L=L.displayName||L.name||"",I.displayName||(L!==""?"ForwardRef("+L+")":"ForwardRef");case 7:return"Fragment";case 5:return I;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return bv(I);case 8:return I===Bm?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof I=="function")return I.displayName||I.name||null;if(typeof I=="string")return I}return null}function qc(L){switch(typeof L){case"boolean":case"number":case"string":case"undefined":return L;case"object":return L;default:return""}}function Z_(L){var I=L.type;return(L=L.nodeName)&&L.toLowerCase()==="input"&&(I==="checkbox"||I==="radio")}function a8(L){var I=Z_(L)?"checked":"value",$=Object.getOwnPropertyDescriptor(L.constructor.prototype,I),se=""+L[I];if(!L.hasOwnProperty(I)&&typeof $<"u"&&typeof $.get=="function"&&typeof $.set=="function"){var Pe=$.get,R=$.set;return Object.defineProperty(L,I,{configurable:!0,get:function(){return Pe.call(this)},set:function(E){se=""+E,R.call(this,E)}}),Object.defineProperty(L,I,{enumerable:$.enumerable}),{getValue:function(){return se},setValue:function(E){se=""+E},stopTracking:function(){L._valueTracker=null,delete L[I]}}}}function r0(L){L._valueTracker||(L._valueTracker=a8(L))}function Y_(L){if(!L)return!1;var I=L._valueTracker;if(!I)return!0;var $=I.getValue(),se="";return L&&(se=Z_(L)?L.checked?"true":"false":L.value),L=se,L!==$?(I.setValue(L),!0):!1}function W0(L){if(L=L||(typeof document<"u"?document:void 0),typeof L>"u")return null;try{return L.activeElement||L.body}catch{return L.body}}function _v(L,I){var $=I.checked;return Ca({},I,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:$??L._wrapperState.initialChecked})}function M2(L,I){var $=I.defaultValue==null?"":I.defaultValue,se=I.checked!=null?I.checked:I.defaultChecked;$=qc(I.value!=null?I.value:$),L._wrapperState={initialChecked:se,initialValue:$,controlled:I.type==="checkbox"||I.type==="radio"?I.checked!=null:I.value!=null}}function X_(L,I){I=I.checked,I!=null&&Fm(L,"checked",I,!1)}function wv(L,I){X_(L,I);var $=qc(I.value),se=I.type;if($!=null)se==="number"?($===0&&L.value===""||L.value!=$)&&(L.value=""+$):L.value!==""+$&&(L.value=""+$);else if(se==="submit"||se==="reset"){L.removeAttribute("value");return}I.hasOwnProperty("value")?kv(L,I.type,$):I.hasOwnProperty("defaultValue")&&kv(L,I.type,qc(I.defaultValue)),I.checked==null&&I.defaultChecked!=null&&(L.defaultChecked=!!I.defaultChecked)}function S2(L,I,$){if(I.hasOwnProperty("value")||I.hasOwnProperty("defaultValue")){var se=I.type;if(!(se!=="submit"&&se!=="reset"||I.value!==void 0&&I.value!==null))return;I=""+L._wrapperState.initialValue,$||I===L.value||(L.value=I),L.defaultValue=I}$=L.name,$!==""&&(L.name=""),L.defaultChecked=!!L._wrapperState.initialChecked,$!==""&&(L.name=$)}function kv(L,I,$){(I!=="number"||W0(L.ownerDocument)!==L)&&($==null?L.defaultValue=""+L._wrapperState.initialValue:L.defaultValue!==""+$&&(L.defaultValue=""+$))}var Sp=Array.isArray;function _h(L,I,$,se){if(L=L.options,I){I={};for(var Pe=0;Pe<$.length;Pe++)I["$"+$[Pe]]=!0;for($=0;$<L.length;$++)Pe=I.hasOwnProperty("$"+L[$].value),L[$].selected!==Pe&&(L[$].selected=Pe),Pe&&se&&(L[$].defaultSelected=!0)}else{for($=""+qc($),I=null,Pe=0;Pe<L.length;Pe++){if(L[Pe].value===$){L[Pe].selected=!0,se&&(L[Pe].defaultSelected=!0);return}I!==null||L[Pe].disabled||(I=L[Pe])}I!==null&&(I.selected=!0)}}function Tv(L,I){if(I.dangerouslySetInnerHTML!=null)throw Error(_r(91));return Ca({},I,{value:void 0,defaultValue:void 0,children:""+L._wrapperState.initialValue})}function E2(L,I){var $=I.value;if($==null){if($=I.children,I=I.defaultValue,$!=null){if(I!=null)throw Error(_r(92));if(Sp($)){if(1<$.length)throw Error(_r(93));$=$[0]}I=$}I==null&&(I=""),$=I}L._wrapperState={initialValue:qc($)}}function $_(L,I){var $=qc(I.value),se=qc(I.defaultValue);$!=null&&($=""+$,$!==L.value&&(L.value=$),I.defaultValue==null&&L.defaultValue!==$&&(L.defaultValue=$)),se!=null&&(L.defaultValue=""+se)}function C2(L){var I=L.textContent;I===L._wrapperState.initialValue&&I!==""&&I!==null&&(L.value=I)}function K_(L){switch(L){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function Av(L,I){return L==null||L==="http://www.w3.org/1999/xhtml"?K_(I):L==="http://www.w3.org/2000/svg"&&I==="foreignObject"?"http://www.w3.org/1999/xhtml":L}var i0,J_=function(L){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(I,$,se,Pe){MSApp.execUnsafeLocalFunction(function(){return L(I,$,se,Pe)})}:L}(function(L,I){if(L.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in L)L.innerHTML=I;else{for(i0=i0||document.createElement("div"),i0.innerHTML="<svg>"+I.valueOf().toString()+"</svg>",I=i0.firstChild;L.firstChild;)L.removeChild(L.firstChild);for(;I.firstChild;)L.appendChild(I.firstChild)}});function Hp(L,I){if(I){var $=L.firstChild;if($&&$===L.lastChild&&$.nodeType===3){$.nodeValue=I;return}}L.textContent=I}var Pp={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},o8=["Webkit","ms","Moz","O"];Object.keys(Pp).forEach(function(L){o8.forEach(function(I){I=I+L.charAt(0).toUpperCase()+L.substring(1),Pp[I]=Pp[L]})});function Q_(L,I,$){return I==null||typeof I=="boolean"||I===""?"":$||typeof I!="number"||I===0||Pp.hasOwnProperty(L)&&Pp[L]?(""+I).trim():I+"px"}function e3(L,I){L=L.style;for(var $ in I)if(I.hasOwnProperty($)){var se=$.indexOf("--")===0,Pe=Q_($,I[$],se);$==="float"&&($="cssFloat"),se?L.setProperty($,Pe):L[$]=Pe}}var s8=Ca({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Mv(L,I){if(I){if(s8[L]&&(I.children!=null||I.dangerouslySetInnerHTML!=null))throw Error(_r(137,L));if(I.dangerouslySetInnerHTML!=null){if(I.children!=null)throw Error(_r(60));if(typeof I.dangerouslySetInnerHTML!="object"||!("__html"in I.dangerouslySetInnerHTML))throw Error(_r(61))}if(I.style!=null&&typeof I.style!="object")throw Error(_r(62))}}function Sv(L,I){if(L.indexOf("-")===-1)return typeof I.is=="string";switch(L){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Ev=null;function Um(L){return L=L.target||L.srcElement||window,L.correspondingUseElement&&(L=L.correspondingUseElement),L.nodeType===3?L.parentNode:L}var Cv=null,wh=null,kh=null;function L2(L){if(L=hd(L)){if(typeof Cv!="function")throw Error(_r(280));var I=L.stateNode;I&&(I=A1(I),Cv(L.stateNode,L.type,I))}}function t3(L){wh?kh?kh.push(L):kh=[L]:wh=L}function n3(){if(wh){var L=wh,I=kh;if(kh=wh=null,L2(L),I)for(L=0;L<I.length;L++)L2(I[L])}}function r3(L,I){return L(I)}function i3(){}var Lg=!1;function a3(L,I,$){if(Lg)return L(I,$);Lg=!0;try{return r3(L,I,$)}finally{Lg=!1,(wh!==null||kh!==null)&&(i3(),n3())}}function qp(L,I){var $=L.stateNode;if($===null)return null;var se=A1($);if(se===null)return null;$=se[I];e:switch(I){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(se=!se.disabled)||(L=L.type,se=!(L==="button"||L==="input"||L==="select"||L==="textarea")),L=!se;break e;default:L=!1}if(L)return null;if($&&typeof $!="function")throw Error(_r(231,I,typeof $));return $}var Lv=!1;if(Ju)try{var mp={};Object.defineProperty(mp,"passive",{get:function(){Lv=!0}}),window.addEventListener("test",mp,mp),window.removeEventListener("test",mp,mp)}catch{Lv=!1}function l8(L,I,$,se,Pe,R,E,e,w){var k=Array.prototype.slice.call(arguments,3);try{I.apply($,k)}catch(i){this.onError(i)}}var Op=!1,Z0=null,Y0=!1,Pv=null,u8={onError:function(L){Op=!0,Z0=L}};function c8(L,I,$,se,Pe,R,E,e,w){Op=!1,Z0=null,l8.apply(u8,arguments)}function f8(L,I,$,se,Pe,R,E,e,w){if(c8.apply(this,arguments),Op){if(Op){var k=Z0;Op=!1,Z0=null}else throw Error(_r(198));Y0||(Y0=!0,Pv=k)}}function Pf(L){var I=L,$=L;if(L.alternate)for(;I.return;)I=I.return;else{L=I;do I=L,I.flags&4098&&($=I.return),L=I.return;while(L)}return I.tag===3?$:null}function o3(L){if(L.tag===13){var I=L.memoizedState;if(I===null&&(L=L.alternate,L!==null&&(I=L.memoizedState)),I!==null)return I.dehydrated}return null}function P2(L){if(Pf(L)!==L)throw Error(_r(188))}function h8(L){var I=L.alternate;if(!I){if(I=Pf(L),I===null)throw Error(_r(188));return I!==L?null:L}for(var $=L,se=I;;){var Pe=$.return;if(Pe===null)break;var R=Pe.alternate;if(R===null){if(se=Pe.return,se!==null){$=se;continue}break}if(Pe.child===R.child){for(R=Pe.child;R;){if(R===$)return P2(Pe),L;if(R===se)return P2(Pe),I;R=R.sibling}throw Error(_r(188))}if($.return!==se.return)$=Pe,se=R;else{for(var E=!1,e=Pe.child;e;){if(e===$){E=!0,$=Pe,se=R;break}if(e===se){E=!0,se=Pe,$=R;break}e=e.sibling}if(!E){for(e=R.child;e;){if(e===$){E=!0,$=R,se=Pe;break}if(e===se){E=!0,se=R,$=Pe;break}e=e.sibling}if(!E)throw Error(_r(189))}}if($.alternate!==se)throw Error(_r(190))}if($.tag!==3)throw Error(_r(188));return $.stateNode.current===$?L:I}function s3(L){return L=h8(L),L!==null?l3(L):null}function l3(L){if(L.tag===5||L.tag===6)return L;for(L=L.child;L!==null;){var I=l3(L);if(I!==null)return I;L=L.sibling}return null}var u3=hl.unstable_scheduleCallback,O2=hl.unstable_cancelCallback,p8=hl.unstable_shouldYield,d8=hl.unstable_requestPaint,ja=hl.unstable_now,g8=hl.unstable_getCurrentPriorityLevel,Vm=hl.unstable_ImmediatePriority,c3=hl.unstable_UserBlockingPriority,X0=hl.unstable_NormalPriority,v8=hl.unstable_LowPriority,f3=hl.unstable_IdlePriority,_1=null,Au=null;function m8(L){if(Au&&typeof Au.onCommitFiberRoot=="function")try{Au.onCommitFiberRoot(_1,L,void 0,(L.current.flags&128)===128)}catch{}}var ru=Math.clz32?Math.clz32:b8,y8=Math.log,x8=Math.LN2;function b8(L){return L>>>=0,L===0?32:31-(y8(L)/x8|0)|0}var a0=64,o0=4194304;function Ep(L){switch(L&-L){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return L&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return L&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return L}}function $0(L,I){var $=L.pendingLanes;if($===0)return 0;var se=0,Pe=L.suspendedLanes,R=L.pingedLanes,E=$&268435455;if(E!==0){var e=E&~Pe;e!==0?se=Ep(e):(R&=E,R!==0&&(se=Ep(R)))}else E=$&~Pe,E!==0?se=Ep(E):R!==0&&(se=Ep(R));if(se===0)return 0;if(I!==0&&I!==se&&!(I&Pe)&&(Pe=se&-se,R=I&-I,Pe>=R||Pe===16&&(R&4194240)!==0))return I;if(se&4&&(se|=$&16),I=L.entangledLanes,I!==0)for(L=L.entanglements,I&=se;0<I;)$=31-ru(I),Pe=1<<$,se|=L[$],I&=~Pe;return se}function _8(L,I){switch(L){case 1:case 2:case 4:return I+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return I+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function w8(L,I){for(var $=L.suspendedLanes,se=L.pingedLanes,Pe=L.expirationTimes,R=L.pendingLanes;0<R;){var E=31-ru(R),e=1<<E,w=Pe[E];w===-1?(!(e&$)||e&se)&&(Pe[E]=_8(e,I)):w<=I&&(L.expiredLanes|=e),R&=~e}}function Ov(L){return L=L.pendingLanes&-1073741825,L!==0?L:L&1073741824?1073741824:0}function h3(){var L=a0;return a0<<=1,!(a0&4194240)&&(a0=64),L}function Pg(L){for(var I=[],$=0;31>$;$++)I.push(L);return I}function cd(L,I,$){L.pendingLanes|=I,I!==536870912&&(L.suspendedLanes=0,L.pingedLanes=0),L=L.eventTimes,I=31-ru(I),L[I]=$}function k8(L,I){var $=L.pendingLanes&~I;L.pendingLanes=I,L.suspendedLanes=0,L.pingedLanes=0,L.expiredLanes&=I,L.mutableReadLanes&=I,L.entangledLanes&=I,I=L.entanglements;var se=L.eventTimes;for(L=L.expirationTimes;0<$;){var Pe=31-ru($),R=1<<Pe;I[Pe]=0,se[Pe]=-1,L[Pe]=-1,$&=~R}}function Hm(L,I){var $=L.entangledLanes|=I;for(L=L.entanglements;$;){var se=31-ru($),Pe=1<<se;Pe&I|L[se]&I&&(L[se]|=I),$&=~Pe}}var Ui=0;function p3(L){return L&=-L,1<L?4<L?L&268435455?16:536870912:4:1}var d3,qm,g3,v3,m3,Iv=!1,s0=[],zc=null,Dc=null,Fc=null,Gp=new Map,Wp=new Map,Sc=[],T8="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function I2(L,I){switch(L){case"focusin":case"focusout":zc=null;break;case"dragenter":case"dragleave":Dc=null;break;case"mouseover":case"mouseout":Fc=null;break;case"pointerover":case"pointerout":Gp.delete(I.pointerId);break;case"gotpointercapture":case"lostpointercapture":Wp.delete(I.pointerId)}}function yp(L,I,$,se,Pe,R){return L===null||L.nativeEvent!==R?(L={blockedOn:I,domEventName:$,eventSystemFlags:se,nativeEvent:R,targetContainers:[Pe]},I!==null&&(I=hd(I),I!==null&&qm(I)),L):(L.eventSystemFlags|=se,I=L.targetContainers,Pe!==null&&I.indexOf(Pe)===-1&&I.push(Pe),L)}function A8(L,I,$,se,Pe){switch(I){case"focusin":return zc=yp(zc,L,I,$,se,Pe),!0;case"dragenter":return Dc=yp(Dc,L,I,$,se,Pe),!0;case"mouseover":return Fc=yp(Fc,L,I,$,se,Pe),!0;case"pointerover":var R=Pe.pointerId;return Gp.set(R,yp(Gp.get(R)||null,L,I,$,se,Pe)),!0;case"gotpointercapture":return R=Pe.pointerId,Wp.set(R,yp(Wp.get(R)||null,L,I,$,se,Pe)),!0}return!1}function y3(L){var I=gf(L.target);if(I!==null){var $=Pf(I);if($!==null){if(I=$.tag,I===13){if(I=o3($),I!==null){L.blockedOn=I,m3(L.priority,function(){g3($)});return}}else if(I===3&&$.stateNode.current.memoizedState.isDehydrated){L.blockedOn=$.tag===3?$.stateNode.containerInfo:null;return}}}L.blockedOn=null}function E0(L){if(L.blockedOn!==null)return!1;for(var I=L.targetContainers;0<I.length;){var $=Rv(L.domEventName,L.eventSystemFlags,I[0],L.nativeEvent);if($===null){$=L.nativeEvent;var se=new $.constructor($.type,$);Ev=se,$.target.dispatchEvent(se),Ev=null}else return I=hd($),I!==null&&qm(I),L.blockedOn=$,!1;I.shift()}return!0}function R2(L,I,$){E0(L)&&$.delete(I)}function M8(){Iv=!1,zc!==null&&E0(zc)&&(zc=null),Dc!==null&&E0(Dc)&&(Dc=null),Fc!==null&&E0(Fc)&&(Fc=null),Gp.forEach(R2),Wp.forEach(R2)}function xp(L,I){L.blockedOn===I&&(L.blockedOn=null,Iv||(Iv=!0,hl.unstable_scheduleCallback(hl.unstable_NormalPriority,M8)))}function Zp(L){function I(Pe){return xp(Pe,L)}if(0<s0.length){xp(s0[0],L);for(var $=1;$<s0.length;$++){var se=s0[$];se.blockedOn===L&&(se.blockedOn=null)}}for(zc!==null&&xp(zc,L),Dc!==null&&xp(Dc,L),Fc!==null&&xp(Fc,L),Gp.forEach(I),Wp.forEach(I),$=0;$<Sc.length;$++)se=Sc[$],se.blockedOn===L&&(se.blockedOn=null);for(;0<Sc.length&&($=Sc[0],$.blockedOn===null);)y3($),$.blockedOn===null&&Sc.shift()}var Th=rc.ReactCurrentBatchConfig,K0=!0;function S8(L,I,$,se){var Pe=Ui,R=Th.transition;Th.transition=null;try{Ui=1,Gm(L,I,$,se)}finally{Ui=Pe,Th.transition=R}}function E8(L,I,$,se){var Pe=Ui,R=Th.transition;Th.transition=null;try{Ui=4,Gm(L,I,$,se)}finally{Ui=Pe,Th.transition=R}}function Gm(L,I,$,se){if(K0){var Pe=Rv(L,I,$,se);if(Pe===null)Ug(L,I,se,J0,$),I2(L,se);else if(A8(Pe,L,I,$,se))se.stopPropagation();else if(I2(L,se),I&4&&-1<T8.indexOf(L)){for(;Pe!==null;){var R=hd(Pe);if(R!==null&&d3(R),R=Rv(L,I,$,se),R===null&&Ug(L,I,se,J0,$),R===Pe)break;Pe=R}Pe!==null&&se.stopPropagation()}else Ug(L,I,se,null,$)}}var J0=null;function Rv(L,I,$,se){if(J0=null,L=Um(se),L=gf(L),L!==null)if(I=Pf(L),I===null)L=null;else if($=I.tag,$===13){if(L=o3(I),L!==null)return L;L=null}else if($===3){if(I.stateNode.current.memoizedState.isDehydrated)return I.tag===3?I.stateNode.containerInfo:null;L=null}else I!==L&&(L=null);return J0=L,null}function x3(L){switch(L){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(g8()){case Vm:return 1;case c3:return 4;case X0:case v8:return 16;case f3:return 536870912;default:return 16}default:return 16}}var Pc=null,Wm=null,C0=null;function b3(){if(C0)return C0;var L,I=Wm,$=I.length,se,Pe="value"in Pc?Pc.value:Pc.textContent,R=Pe.length;for(L=0;L<$&&I[L]===Pe[L];L++);var E=$-L;for(se=1;se<=E&&I[$-se]===Pe[R-se];se++);return C0=Pe.slice(L,1<se?1-se:void 0)}function L0(L){var I=L.keyCode;return"charCode"in L?(L=L.charCode,L===0&&I===13&&(L=13)):L=I,L===10&&(L=13),32<=L||L===13?L:0}function l0(){return!0}function z2(){return!1}function dl(L){function I($,se,Pe,R,E){this._reactName=$,this._targetInst=Pe,this.type=se,this.nativeEvent=R,this.target=E,this.currentTarget=null;for(var e in L)L.hasOwnProperty(e)&&($=L[e],this[e]=$?$(R):R[e]);return this.isDefaultPrevented=(R.defaultPrevented!=null?R.defaultPrevented:R.returnValue===!1)?l0:z2,this.isPropagationStopped=z2,this}return Ca(I.prototype,{preventDefault:function(){this.defaultPrevented=!0;var $=this.nativeEvent;$&&($.preventDefault?$.preventDefault():typeof $.returnValue!="unknown"&&($.returnValue=!1),this.isDefaultPrevented=l0)},stopPropagation:function(){var $=this.nativeEvent;$&&($.stopPropagation?$.stopPropagation():typeof $.cancelBubble!="unknown"&&($.cancelBubble=!0),this.isPropagationStopped=l0)},persist:function(){},isPersistent:l0}),I}var Fh={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(L){return L.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Zm=dl(Fh),fd=Ca({},Fh,{view:0,detail:0}),C8=dl(fd),Og,Ig,bp,w1=Ca({},fd,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Ym,button:0,buttons:0,relatedTarget:function(L){return L.relatedTarget===void 0?L.fromElement===L.srcElement?L.toElement:L.fromElement:L.relatedTarget},movementX:function(L){return"movementX"in L?L.movementX:(L!==bp&&(bp&&L.type==="mousemove"?(Og=L.screenX-bp.screenX,Ig=L.screenY-bp.screenY):Ig=Og=0,bp=L),Og)},movementY:function(L){return"movementY"in L?L.movementY:Ig}}),D2=dl(w1),L8=Ca({},w1,{dataTransfer:0}),P8=dl(L8),O8=Ca({},fd,{relatedTarget:0}),Rg=dl(O8),I8=Ca({},Fh,{animationName:0,elapsedTime:0,pseudoElement:0}),R8=dl(I8),z8=Ca({},Fh,{clipboardData:function(L){return"clipboardData"in L?L.clipboardData:window.clipboardData}}),D8=dl(z8),F8=Ca({},Fh,{data:0}),F2=dl(F8),B8={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},N8={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},j8={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function U8(L){var I=this.nativeEvent;return I.getModifierState?I.getModifierState(L):(L=j8[L])?!!I[L]:!1}function Ym(){return U8}var V8=Ca({},fd,{key:function(L){if(L.key){var I=B8[L.key]||L.key;if(I!=="Unidentified")return I}return L.type==="keypress"?(L=L0(L),L===13?"Enter":String.fromCharCode(L)):L.type==="keydown"||L.type==="keyup"?N8[L.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Ym,charCode:function(L){return L.type==="keypress"?L0(L):0},keyCode:function(L){return L.type==="keydown"||L.type==="keyup"?L.keyCode:0},which:function(L){return L.type==="keypress"?L0(L):L.type==="keydown"||L.type==="keyup"?L.keyCode:0}}),H8=dl(V8),q8=Ca({},w1,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),B2=dl(q8),G8=Ca({},fd,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Ym}),W8=dl(G8),Z8=Ca({},Fh,{propertyName:0,elapsedTime:0,pseudoElement:0}),Y8=dl(Z8),X8=Ca({},w1,{deltaX:function(L){return"deltaX"in L?L.deltaX:"wheelDeltaX"in L?-L.wheelDeltaX:0},deltaY:function(L){return"deltaY"in L?L.deltaY:"wheelDeltaY"in L?-L.wheelDeltaY:"wheelDelta"in L?-L.wheelDelta:0},deltaZ:0,deltaMode:0}),$8=dl(X8),K8=[9,13,27,32],Xm=Ju&&"CompositionEvent"in window,Ip=null;Ju&&"documentMode"in document&&(Ip=document.documentMode);var J8=Ju&&"TextEvent"in window&&!Ip,_3=Ju&&(!Xm||Ip&&8<Ip&&11>=Ip),N2=String.fromCharCode(32),j2=!1;function w3(L,I){switch(L){case"keyup":return K8.indexOf(I.keyCode)!==-1;case"keydown":return I.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function k3(L){return L=L.detail,typeof L=="object"&&"data"in L?L.data:null}var lh=!1;function Q8(L,I){switch(L){case"compositionend":return k3(I);case"keypress":return I.which!==32?null:(j2=!0,N2);case"textInput":return L=I.data,L===N2&&j2?null:L;default:return null}}function ek(L,I){if(lh)return L==="compositionend"||!Xm&&w3(L,I)?(L=b3(),C0=Wm=Pc=null,lh=!1,L):null;switch(L){case"paste":return null;case"keypress":if(!(I.ctrlKey||I.altKey||I.metaKey)||I.ctrlKey&&I.altKey){if(I.char&&1<I.char.length)return I.char;if(I.which)return String.fromCharCode(I.which)}return null;case"compositionend":return _3&&I.locale!=="ko"?null:I.data;default:return null}}var tk={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function U2(L){var I=L&&L.nodeName&&L.nodeName.toLowerCase();return I==="input"?!!tk[L.type]:I==="textarea"}function T3(L,I,$,se){t3(se),I=Q0(I,"onChange"),0<I.length&&($=new Zm("onChange","change",null,$,se),L.push({event:$,listeners:I}))}var Rp=null,Yp=null;function nk(L){z3(L,0)}function k1(L){var I=fh(L);if(Y_(I))return L}function rk(L,I){if(L==="change")return I}var A3=!1;if(Ju){var zg;if(Ju){var Dg="oninput"in document;if(!Dg){var V2=document.createElement("div");V2.setAttribute("oninput","return;"),Dg=typeof V2.oninput=="function"}zg=Dg}else zg=!1;A3=zg&&(!document.documentMode||9<document.documentMode)}function H2(){Rp&&(Rp.detachEvent("onpropertychange",M3),Yp=Rp=null)}function M3(L){if(L.propertyName==="value"&&k1(Yp)){var I=[];T3(I,Yp,L,Um(L)),a3(nk,I)}}function ik(L,I,$){L==="focusin"?(H2(),Rp=I,Yp=$,Rp.attachEvent("onpropertychange",M3)):L==="focusout"&&H2()}function ak(L){if(L==="selectionchange"||L==="keyup"||L==="keydown")return k1(Yp)}function ok(L,I){if(L==="click")return k1(I)}function sk(L,I){if(L==="input"||L==="change")return k1(I)}function lk(L,I){return L===I&&(L!==0||1/L===1/I)||L!==L&&I!==I}var au=typeof Object.is=="function"?Object.is:lk;function Xp(L,I){if(au(L,I))return!0;if(typeof L!="object"||L===null||typeof I!="object"||I===null)return!1;var $=Object.keys(L),se=Object.keys(I);if($.length!==se.length)return!1;for(se=0;se<$.length;se++){var Pe=$[se];if(!vv.call(I,Pe)||!au(L[Pe],I[Pe]))return!1}return!0}function q2(L){for(;L&&L.firstChild;)L=L.firstChild;return L}function G2(L,I){var $=q2(L);L=0;for(var se;$;){if($.nodeType===3){if(se=L+$.textContent.length,L<=I&&se>=I)return{node:$,offset:I-L};L=se}e:{for(;$;){if($.nextSibling){$=$.nextSibling;break e}$=$.parentNode}$=void 0}$=q2($)}}function S3(L,I){return L&&I?L===I?!0:L&&L.nodeType===3?!1:I&&I.nodeType===3?S3(L,I.parentNode):"contains"in L?L.contains(I):L.compareDocumentPosition?!!(L.compareDocumentPosition(I)&16):!1:!1}function E3(){for(var L=window,I=W0();I instanceof L.HTMLIFrameElement;){try{var $=typeof I.contentWindow.location.href=="string"}catch{$=!1}if($)L=I.contentWindow;else break;I=W0(L.document)}return I}function $m(L){var I=L&&L.nodeName&&L.nodeName.toLowerCase();return I&&(I==="input"&&(L.type==="text"||L.type==="search"||L.type==="tel"||L.type==="url"||L.type==="password")||I==="textarea"||L.contentEditable==="true")}function uk(L){var I=E3(),$=L.focusedElem,se=L.selectionRange;if(I!==$&&$&&$.ownerDocument&&S3($.ownerDocument.documentElement,$)){if(se!==null&&$m($)){if(I=se.start,L=se.end,L===void 0&&(L=I),"selectionStart"in $)$.selectionStart=I,$.selectionEnd=Math.min(L,$.value.length);else if(L=(I=$.ownerDocument||document)&&I.defaultView||window,L.getSelection){L=L.getSelection();var Pe=$.textContent.length,R=Math.min(se.start,Pe);se=se.end===void 0?R:Math.min(se.end,Pe),!L.extend&&R>se&&(Pe=se,se=R,R=Pe),Pe=G2($,R);var E=G2($,se);Pe&&E&&(L.rangeCount!==1||L.anchorNode!==Pe.node||L.anchorOffset!==Pe.offset||L.focusNode!==E.node||L.focusOffset!==E.offset)&&(I=I.createRange(),I.setStart(Pe.node,Pe.offset),L.removeAllRanges(),R>se?(L.addRange(I),L.extend(E.node,E.offset)):(I.setEnd(E.node,E.offset),L.addRange(I)))}}for(I=[],L=$;L=L.parentNode;)L.nodeType===1&&I.push({element:L,left:L.scrollLeft,top:L.scrollTop});for(typeof $.focus=="function"&&$.focus(),$=0;$<I.length;$++)L=I[$],L.element.scrollLeft=L.left,L.element.scrollTop=L.top}}var ck=Ju&&"documentMode"in document&&11>=document.documentMode,uh=null,zv=null,zp=null,Dv=!1;function W2(L,I,$){var se=$.window===$?$.document:$.nodeType===9?$:$.ownerDocument;Dv||uh==null||uh!==W0(se)||(se=uh,"selectionStart"in se&&$m(se)?se={start:se.selectionStart,end:se.selectionEnd}:(se=(se.ownerDocument&&se.ownerDocument.defaultView||window).getSelection(),se={anchorNode:se.anchorNode,anchorOffset:se.anchorOffset,focusNode:se.focusNode,focusOffset:se.focusOffset}),zp&&Xp(zp,se)||(zp=se,se=Q0(zv,"onSelect"),0<se.length&&(I=new Zm("onSelect","select",null,I,$),L.push({event:I,listeners:se}),I.target=uh)))}function u0(L,I){var $={};return $[L.toLowerCase()]=I.toLowerCase(),$["Webkit"+L]="webkit"+I,$["Moz"+L]="moz"+I,$}var ch={animationend:u0("Animation","AnimationEnd"),animationiteration:u0("Animation","AnimationIteration"),animationstart:u0("Animation","AnimationStart"),transitionend:u0("Transition","TransitionEnd")},Fg={},C3={};Ju&&(C3=document.createElement("div").style,"AnimationEvent"in window||(delete ch.animationend.animation,delete ch.animationiteration.animation,delete ch.animationstart.animation),"TransitionEvent"in window||delete ch.transitionend.transition);function T1(L){if(Fg[L])return Fg[L];if(!ch[L])return L;var I=ch[L],$;for($ in I)if(I.hasOwnProperty($)&&$ in C3)return Fg[L]=I[$];return L}var L3=T1("animationend"),P3=T1("animationiteration"),O3=T1("animationstart"),I3=T1("transitionend"),R3=new Map,Z2="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function Zc(L,I){R3.set(L,I),Lf(I,[L])}for(var Bg=0;Bg<Z2.length;Bg++){var Ng=Z2[Bg],fk=Ng.toLowerCase(),hk=Ng[0].toUpperCase()+Ng.slice(1);Zc(fk,"on"+hk)}Zc(L3,"onAnimationEnd");Zc(P3,"onAnimationIteration");Zc(O3,"onAnimationStart");Zc("dblclick","onDoubleClick");Zc("focusin","onFocus");Zc("focusout","onBlur");Zc(I3,"onTransitionEnd");Eh("onMouseEnter",["mouseout","mouseover"]);Eh("onMouseLeave",["mouseout","mouseover"]);Eh("onPointerEnter",["pointerout","pointerover"]);Eh("onPointerLeave",["pointerout","pointerover"]);Lf("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));Lf("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));Lf("onBeforeInput",["compositionend","keypress","textInput","paste"]);Lf("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));Lf("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));Lf("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Cp="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),pk=new Set("cancel close invalid load scroll toggle".split(" ").concat(Cp));function Y2(L,I,$){var se=L.type||"unknown-event";L.currentTarget=$,f8(se,I,void 0,L),L.currentTarget=null}function z3(L,I){I=(I&4)!==0;for(var $=0;$<L.length;$++){var se=L[$],Pe=se.event;se=se.listeners;e:{var R=void 0;if(I)for(var E=se.length-1;0<=E;E--){var e=se[E],w=e.instance,k=e.currentTarget;if(e=e.listener,w!==R&&Pe.isPropagationStopped())break e;Y2(Pe,e,k),R=w}else for(E=0;E<se.length;E++){if(e=se[E],w=e.instance,k=e.currentTarget,e=e.listener,w!==R&&Pe.isPropagationStopped())break e;Y2(Pe,e,k),R=w}}}if(Y0)throw L=Pv,Y0=!1,Pv=null,L}function fa(L,I){var $=I[Uv];$===void 0&&($=I[Uv]=new Set);var se=L+"__bubble";$.has(se)||(D3(I,L,2,!1),$.add(se))}function jg(L,I,$){var se=0;I&&(se|=4),D3($,L,se,I)}var c0="_reactListening"+Math.random().toString(36).slice(2);function $p(L){if(!L[c0]){L[c0]=!0,H_.forEach(function($){$!=="selectionchange"&&(pk.has($)||jg($,!1,L),jg($,!0,L))});var I=L.nodeType===9?L:L.ownerDocument;I===null||I[c0]||(I[c0]=!0,jg("selectionchange",!1,I))}}function D3(L,I,$,se){switch(x3(I)){case 1:var Pe=S8;break;case 4:Pe=E8;break;default:Pe=Gm}$=Pe.bind(null,I,$,L),Pe=void 0,!Lv||I!=="touchstart"&&I!=="touchmove"&&I!=="wheel"||(Pe=!0),se?Pe!==void 0?L.addEventListener(I,$,{capture:!0,passive:Pe}):L.addEventListener(I,$,!0):Pe!==void 0?L.addEventListener(I,$,{passive:Pe}):L.addEventListener(I,$,!1)}function Ug(L,I,$,se,Pe){var R=se;if(!(I&1)&&!(I&2)&&se!==null)e:for(;;){if(se===null)return;var E=se.tag;if(E===3||E===4){var e=se.stateNode.containerInfo;if(e===Pe||e.nodeType===8&&e.parentNode===Pe)break;if(E===4)for(E=se.return;E!==null;){var w=E.tag;if((w===3||w===4)&&(w=E.stateNode.containerInfo,w===Pe||w.nodeType===8&&w.parentNode===Pe))return;E=E.return}for(;e!==null;){if(E=gf(e),E===null)return;if(w=E.tag,w===5||w===6){se=R=E;continue e}e=e.parentNode}}se=se.return}a3(function(){var k=R,i=Um($),_=[];e:{var y=R3.get(L);if(y!==void 0){var h=Zm,l=L;switch(L){case"keypress":if(L0($)===0)break e;case"keydown":case"keyup":h=H8;break;case"focusin":l="focus",h=Rg;break;case"focusout":l="blur",h=Rg;break;case"beforeblur":case"afterblur":h=Rg;break;case"click":if($.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":h=D2;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":h=P8;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":h=W8;break;case L3:case P3:case O3:h=R8;break;case I3:h=Y8;break;case"scroll":h=C8;break;case"wheel":h=$8;break;case"copy":case"cut":case"paste":h=D8;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":h=B2}var t=(I&4)!==0,o=!t&&L==="scroll",r=t?y!==null?y+"Capture":null:y;t=[];for(var n=k,a;n!==null;){a=n;var s=a.stateNode;if(a.tag===5&&s!==null&&(a=s,r!==null&&(s=qp(n,r),s!=null&&t.push(Kp(n,s,a)))),o)break;n=n.return}0<t.length&&(y=new h(y,l,null,$,i),_.push({event:y,listeners:t}))}}if(!(I&7)){e:{if(y=L==="mouseover"||L==="pointerover",h=L==="mouseout"||L==="pointerout",y&&$!==Ev&&(l=$.relatedTarget||$.fromElement)&&(gf(l)||l[Qu]))break e;if((h||y)&&(y=i.window===i?i:(y=i.ownerDocument)?y.defaultView||y.parentWindow:window,h?(l=$.relatedTarget||$.toElement,h=k,l=l?gf(l):null,l!==null&&(o=Pf(l),l!==o||l.tag!==5&&l.tag!==6)&&(l=null)):(h=null,l=k),h!==l)){if(t=D2,s="onMouseLeave",r="onMouseEnter",n="mouse",(L==="pointerout"||L==="pointerover")&&(t=B2,s="onPointerLeave",r="onPointerEnter",n="pointer"),o=h==null?y:fh(h),a=l==null?y:fh(l),y=new t(s,n+"leave",h,$,i),y.target=o,y.relatedTarget=a,s=null,gf(i)===k&&(t=new t(r,n+"enter",l,$,i),t.target=a,t.relatedTarget=o,s=t),o=s,h&&l)t:{for(t=h,r=l,n=0,a=t;a;a=nh(a))n++;for(a=0,s=r;s;s=nh(s))a++;for(;0<n-a;)t=nh(t),n--;for(;0<a-n;)r=nh(r),a--;for(;n--;){if(t===r||r!==null&&t===r.alternate)break t;t=nh(t),r=nh(r)}t=null}else t=null;h!==null&&X2(_,y,h,t,!1),l!==null&&o!==null&&X2(_,o,l,t,!0)}}e:{if(y=k?fh(k):window,h=y.nodeName&&y.nodeName.toLowerCase(),h==="select"||h==="input"&&y.type==="file")var u=rk;else if(U2(y))if(A3)u=sk;else{u=ak;var p=ik}else(h=y.nodeName)&&h.toLowerCase()==="input"&&(y.type==="checkbox"||y.type==="radio")&&(u=ok);if(u&&(u=u(L,k))){T3(_,u,$,i);break e}p&&p(L,y,k),L==="focusout"&&(p=y._wrapperState)&&p.controlled&&y.type==="number"&&kv(y,"number",y.value)}switch(p=k?fh(k):window,L){case"focusin":(U2(p)||p.contentEditable==="true")&&(uh=p,zv=k,zp=null);break;case"focusout":zp=zv=uh=null;break;case"mousedown":Dv=!0;break;case"contextmenu":case"mouseup":case"dragend":Dv=!1,W2(_,$,i);break;case"selectionchange":if(ck)break;case"keydown":case"keyup":W2(_,$,i)}var c;if(Xm)e:{switch(L){case"compositionstart":var b="onCompositionStart";break e;case"compositionend":b="onCompositionEnd";break e;case"compositionupdate":b="onCompositionUpdate";break e}b=void 0}else lh?w3(L,$)&&(b="onCompositionEnd"):L==="keydown"&&$.keyCode===229&&(b="onCompositionStart");b&&(_3&&$.locale!=="ko"&&(lh||b!=="onCompositionStart"?b==="onCompositionEnd"&&lh&&(c=b3()):(Pc=i,Wm="value"in Pc?Pc.value:Pc.textContent,lh=!0)),p=Q0(k,b),0<p.length&&(b=new F2(b,L,null,$,i),_.push({event:b,listeners:p}),c?b.data=c:(c=k3($),c!==null&&(b.data=c)))),(c=J8?Q8(L,$):ek(L,$))&&(k=Q0(k,"onBeforeInput"),0<k.length&&(i=new F2("onBeforeInput","beforeinput",null,$,i),_.push({event:i,listeners:k}),i.data=c))}z3(_,I)})}function Kp(L,I,$){return{instance:L,listener:I,currentTarget:$}}function Q0(L,I){for(var $=I+"Capture",se=[];L!==null;){var Pe=L,R=Pe.stateNode;Pe.tag===5&&R!==null&&(Pe=R,R=qp(L,$),R!=null&&se.unshift(Kp(L,R,Pe)),R=qp(L,I),R!=null&&se.push(Kp(L,R,Pe))),L=L.return}return se}function nh(L){if(L===null)return null;do L=L.return;while(L&&L.tag!==5);return L||null}function X2(L,I,$,se,Pe){for(var R=I._reactName,E=[];$!==null&&$!==se;){var e=$,w=e.alternate,k=e.stateNode;if(w!==null&&w===se)break;e.tag===5&&k!==null&&(e=k,Pe?(w=qp($,R),w!=null&&E.unshift(Kp($,w,e))):Pe||(w=qp($,R),w!=null&&E.push(Kp($,w,e)))),$=$.return}E.length!==0&&L.push({event:I,listeners:E})}var dk=/\r\n?/g,gk=/\u0000|\uFFFD/g;function $2(L){return(typeof L=="string"?L:""+L).replace(dk,`
|
||
`).replace(gk,"")}function f0(L,I,$){if(I=$2(I),$2(L)!==I&&$)throw Error(_r(425))}function e1(){}var Fv=null,Bv=null;function Nv(L,I){return L==="textarea"||L==="noscript"||typeof I.children=="string"||typeof I.children=="number"||typeof I.dangerouslySetInnerHTML=="object"&&I.dangerouslySetInnerHTML!==null&&I.dangerouslySetInnerHTML.__html!=null}var jv=typeof setTimeout=="function"?setTimeout:void 0,vk=typeof clearTimeout=="function"?clearTimeout:void 0,K2=typeof Promise=="function"?Promise:void 0,mk=typeof queueMicrotask=="function"?queueMicrotask:typeof K2<"u"?function(L){return K2.resolve(null).then(L).catch(yk)}:jv;function yk(L){setTimeout(function(){throw L})}function Vg(L,I){var $=I,se=0;do{var Pe=$.nextSibling;if(L.removeChild($),Pe&&Pe.nodeType===8)if($=Pe.data,$==="/$"){if(se===0){L.removeChild(Pe),Zp(I);return}se--}else $!=="$"&&$!=="$?"&&$!=="$!"||se++;$=Pe}while($);Zp(I)}function Bc(L){for(;L!=null;L=L.nextSibling){var I=L.nodeType;if(I===1||I===3)break;if(I===8){if(I=L.data,I==="$"||I==="$!"||I==="$?")break;if(I==="/$")return null}}return L}function J2(L){L=L.previousSibling;for(var I=0;L;){if(L.nodeType===8){var $=L.data;if($==="$"||$==="$!"||$==="$?"){if(I===0)return L;I--}else $==="/$"&&I++}L=L.previousSibling}return null}var Bh=Math.random().toString(36).slice(2),wu="__reactFiber$"+Bh,Jp="__reactProps$"+Bh,Qu="__reactContainer$"+Bh,Uv="__reactEvents$"+Bh,xk="__reactListeners$"+Bh,bk="__reactHandles$"+Bh;function gf(L){var I=L[wu];if(I)return I;for(var $=L.parentNode;$;){if(I=$[Qu]||$[wu]){if($=I.alternate,I.child!==null||$!==null&&$.child!==null)for(L=J2(L);L!==null;){if($=L[wu])return $;L=J2(L)}return I}L=$,$=L.parentNode}return null}function hd(L){return L=L[wu]||L[Qu],!L||L.tag!==5&&L.tag!==6&&L.tag!==13&&L.tag!==3?null:L}function fh(L){if(L.tag===5||L.tag===6)return L.stateNode;throw Error(_r(33))}function A1(L){return L[Jp]||null}var Vv=[],hh=-1;function Yc(L){return{current:L}}function pa(L){0>hh||(L.current=Vv[hh],Vv[hh]=null,hh--)}function ra(L,I){hh++,Vv[hh]=L.current,L.current=I}var Gc={},$o=Yc(Gc),Us=Yc(!1),kf=Gc;function Ch(L,I){var $=L.type.contextTypes;if(!$)return Gc;var se=L.stateNode;if(se&&se.__reactInternalMemoizedUnmaskedChildContext===I)return se.__reactInternalMemoizedMaskedChildContext;var Pe={},R;for(R in $)Pe[R]=I[R];return se&&(L=L.stateNode,L.__reactInternalMemoizedUnmaskedChildContext=I,L.__reactInternalMemoizedMaskedChildContext=Pe),Pe}function Vs(L){return L=L.childContextTypes,L!=null}function t1(){pa(Us),pa($o)}function Q2(L,I,$){if($o.current!==Gc)throw Error(_r(168));ra($o,I),ra(Us,$)}function F3(L,I,$){var se=L.stateNode;if(I=I.childContextTypes,typeof se.getChildContext!="function")return $;se=se.getChildContext();for(var Pe in se)if(!(Pe in I))throw Error(_r(108,i8(L)||"Unknown",Pe));return Ca({},$,se)}function n1(L){return L=(L=L.stateNode)&&L.__reactInternalMemoizedMergedChildContext||Gc,kf=$o.current,ra($o,L),ra(Us,Us.current),!0}function eb(L,I,$){var se=L.stateNode;if(!se)throw Error(_r(169));$?(L=F3(L,I,kf),se.__reactInternalMemoizedMergedChildContext=L,pa(Us),pa($o),ra($o,L)):pa(Us),ra(Us,$)}var Gu=null,M1=!1,Hg=!1;function B3(L){Gu===null?Gu=[L]:Gu.push(L)}function _k(L){M1=!0,B3(L)}function Xc(){if(!Hg&&Gu!==null){Hg=!0;var L=0,I=Ui;try{var $=Gu;for(Ui=1;L<$.length;L++){var se=$[L];do se=se(!0);while(se!==null)}Gu=null,M1=!1}catch(Pe){throw Gu!==null&&(Gu=Gu.slice(L+1)),u3(Vm,Xc),Pe}finally{Ui=I,Hg=!1}}return null}var ph=[],dh=0,r1=null,i1=0,Cl=[],Ll=0,Tf=null,Zu=1,Yu="";function ff(L,I){ph[dh++]=i1,ph[dh++]=r1,r1=L,i1=I}function N3(L,I,$){Cl[Ll++]=Zu,Cl[Ll++]=Yu,Cl[Ll++]=Tf,Tf=L;var se=Zu;L=Yu;var Pe=32-ru(se)-1;se&=~(1<<Pe),$+=1;var R=32-ru(I)+Pe;if(30<R){var E=Pe-Pe%5;R=(se&(1<<E)-1).toString(32),se>>=E,Pe-=E,Zu=1<<32-ru(I)+Pe|$<<Pe|se,Yu=R+L}else Zu=1<<R|$<<Pe|se,Yu=L}function Km(L){L.return!==null&&(ff(L,1),N3(L,1,0))}function Jm(L){for(;L===r1;)r1=ph[--dh],ph[dh]=null,i1=ph[--dh],ph[dh]=null;for(;L===Tf;)Tf=Cl[--Ll],Cl[Ll]=null,Yu=Cl[--Ll],Cl[Ll]=null,Zu=Cl[--Ll],Cl[Ll]=null}var cl=null,ul=null,ya=!1,tu=null;function j3(L,I){var $=Pl(5,null,null,0);$.elementType="DELETED",$.stateNode=I,$.return=L,I=L.deletions,I===null?(L.deletions=[$],L.flags|=16):I.push($)}function tb(L,I){switch(L.tag){case 5:var $=L.type;return I=I.nodeType!==1||$.toLowerCase()!==I.nodeName.toLowerCase()?null:I,I!==null?(L.stateNode=I,cl=L,ul=Bc(I.firstChild),!0):!1;case 6:return I=L.pendingProps===""||I.nodeType!==3?null:I,I!==null?(L.stateNode=I,cl=L,ul=null,!0):!1;case 13:return I=I.nodeType!==8?null:I,I!==null?($=Tf!==null?{id:Zu,overflow:Yu}:null,L.memoizedState={dehydrated:I,treeContext:$,retryLane:1073741824},$=Pl(18,null,null,0),$.stateNode=I,$.return=L,L.child=$,cl=L,ul=null,!0):!1;default:return!1}}function Hv(L){return(L.mode&1)!==0&&(L.flags&128)===0}function qv(L){if(ya){var I=ul;if(I){var $=I;if(!tb(L,I)){if(Hv(L))throw Error(_r(418));I=Bc($.nextSibling);var se=cl;I&&tb(L,I)?j3(se,$):(L.flags=L.flags&-4097|2,ya=!1,cl=L)}}else{if(Hv(L))throw Error(_r(418));L.flags=L.flags&-4097|2,ya=!1,cl=L}}}function nb(L){for(L=L.return;L!==null&&L.tag!==5&&L.tag!==3&&L.tag!==13;)L=L.return;cl=L}function h0(L){if(L!==cl)return!1;if(!ya)return nb(L),ya=!0,!1;var I;if((I=L.tag!==3)&&!(I=L.tag!==5)&&(I=L.type,I=I!=="head"&&I!=="body"&&!Nv(L.type,L.memoizedProps)),I&&(I=ul)){if(Hv(L))throw U3(),Error(_r(418));for(;I;)j3(L,I),I=Bc(I.nextSibling)}if(nb(L),L.tag===13){if(L=L.memoizedState,L=L!==null?L.dehydrated:null,!L)throw Error(_r(317));e:{for(L=L.nextSibling,I=0;L;){if(L.nodeType===8){var $=L.data;if($==="/$"){if(I===0){ul=Bc(L.nextSibling);break e}I--}else $!=="$"&&$!=="$!"&&$!=="$?"||I++}L=L.nextSibling}ul=null}}else ul=cl?Bc(L.stateNode.nextSibling):null;return!0}function U3(){for(var L=ul;L;)L=Bc(L.nextSibling)}function Lh(){ul=cl=null,ya=!1}function Qm(L){tu===null?tu=[L]:tu.push(L)}var wk=rc.ReactCurrentBatchConfig;function Ql(L,I){if(L&&L.defaultProps){I=Ca({},I),L=L.defaultProps;for(var $ in L)I[$]===void 0&&(I[$]=L[$]);return I}return I}var a1=Yc(null),o1=null,gh=null,ey=null;function ty(){ey=gh=o1=null}function ny(L){var I=a1.current;pa(a1),L._currentValue=I}function Gv(L,I,$){for(;L!==null;){var se=L.alternate;if((L.childLanes&I)!==I?(L.childLanes|=I,se!==null&&(se.childLanes|=I)):se!==null&&(se.childLanes&I)!==I&&(se.childLanes|=I),L===$)break;L=L.return}}function Ah(L,I){o1=L,ey=gh=null,L=L.dependencies,L!==null&&L.firstContext!==null&&(L.lanes&I&&(js=!0),L.firstContext=null)}function Il(L){var I=L._currentValue;if(ey!==L)if(L={context:L,memoizedValue:I,next:null},gh===null){if(o1===null)throw Error(_r(308));gh=L,o1.dependencies={lanes:0,firstContext:L}}else gh=gh.next=L;return I}var vf=null;function ry(L){vf===null?vf=[L]:vf.push(L)}function V3(L,I,$,se){var Pe=I.interleaved;return Pe===null?($.next=$,ry(I)):($.next=Pe.next,Pe.next=$),I.interleaved=$,ec(L,se)}function ec(L,I){L.lanes|=I;var $=L.alternate;for($!==null&&($.lanes|=I),$=L,L=L.return;L!==null;)L.childLanes|=I,$=L.alternate,$!==null&&($.childLanes|=I),$=L,L=L.return;return $.tag===3?$.stateNode:null}var Ac=!1;function iy(L){L.updateQueue={baseState:L.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function H3(L,I){L=L.updateQueue,I.updateQueue===L&&(I.updateQueue={baseState:L.baseState,firstBaseUpdate:L.firstBaseUpdate,lastBaseUpdate:L.lastBaseUpdate,shared:L.shared,effects:L.effects})}function $u(L,I){return{eventTime:L,lane:I,tag:0,payload:null,callback:null,next:null}}function Nc(L,I,$){var se=L.updateQueue;if(se===null)return null;if(se=se.shared,Ti&2){var Pe=se.pending;return Pe===null?I.next=I:(I.next=Pe.next,Pe.next=I),se.pending=I,ec(L,$)}return Pe=se.interleaved,Pe===null?(I.next=I,ry(se)):(I.next=Pe.next,Pe.next=I),se.interleaved=I,ec(L,$)}function P0(L,I,$){if(I=I.updateQueue,I!==null&&(I=I.shared,($&4194240)!==0)){var se=I.lanes;se&=L.pendingLanes,$|=se,I.lanes=$,Hm(L,$)}}function rb(L,I){var $=L.updateQueue,se=L.alternate;if(se!==null&&(se=se.updateQueue,$===se)){var Pe=null,R=null;if($=$.firstBaseUpdate,$!==null){do{var E={eventTime:$.eventTime,lane:$.lane,tag:$.tag,payload:$.payload,callback:$.callback,next:null};R===null?Pe=R=E:R=R.next=E,$=$.next}while($!==null);R===null?Pe=R=I:R=R.next=I}else Pe=R=I;$={baseState:se.baseState,firstBaseUpdate:Pe,lastBaseUpdate:R,shared:se.shared,effects:se.effects},L.updateQueue=$;return}L=$.lastBaseUpdate,L===null?$.firstBaseUpdate=I:L.next=I,$.lastBaseUpdate=I}function s1(L,I,$,se){var Pe=L.updateQueue;Ac=!1;var R=Pe.firstBaseUpdate,E=Pe.lastBaseUpdate,e=Pe.shared.pending;if(e!==null){Pe.shared.pending=null;var w=e,k=w.next;w.next=null,E===null?R=k:E.next=k,E=w;var i=L.alternate;i!==null&&(i=i.updateQueue,e=i.lastBaseUpdate,e!==E&&(e===null?i.firstBaseUpdate=k:e.next=k,i.lastBaseUpdate=w))}if(R!==null){var _=Pe.baseState;E=0,i=k=w=null,e=R;do{var y=e.lane,h=e.eventTime;if((se&y)===y){i!==null&&(i=i.next={eventTime:h,lane:0,tag:e.tag,payload:e.payload,callback:e.callback,next:null});e:{var l=L,t=e;switch(y=I,h=$,t.tag){case 1:if(l=t.payload,typeof l=="function"){_=l.call(h,_,y);break e}_=l;break e;case 3:l.flags=l.flags&-65537|128;case 0:if(l=t.payload,y=typeof l=="function"?l.call(h,_,y):l,y==null)break e;_=Ca({},_,y);break e;case 2:Ac=!0}}e.callback!==null&&e.lane!==0&&(L.flags|=64,y=Pe.effects,y===null?Pe.effects=[e]:y.push(e))}else h={eventTime:h,lane:y,tag:e.tag,payload:e.payload,callback:e.callback,next:null},i===null?(k=i=h,w=_):i=i.next=h,E|=y;if(e=e.next,e===null){if(e=Pe.shared.pending,e===null)break;y=e,e=y.next,y.next=null,Pe.lastBaseUpdate=y,Pe.shared.pending=null}}while(1);if(i===null&&(w=_),Pe.baseState=w,Pe.firstBaseUpdate=k,Pe.lastBaseUpdate=i,I=Pe.shared.interleaved,I!==null){Pe=I;do E|=Pe.lane,Pe=Pe.next;while(Pe!==I)}else R===null&&(Pe.shared.lanes=0);Mf|=E,L.lanes=E,L.memoizedState=_}}function ib(L,I,$){if(L=I.effects,I.effects=null,L!==null)for(I=0;I<L.length;I++){var se=L[I],Pe=se.callback;if(Pe!==null){if(se.callback=null,se=$,typeof Pe!="function")throw Error(_r(191,Pe));Pe.call(se)}}}var q3=new V_.Component().refs;function Wv(L,I,$,se){I=L.memoizedState,$=$(se,I),$=$==null?I:Ca({},I,$),L.memoizedState=$,L.lanes===0&&(L.updateQueue.baseState=$)}var S1={isMounted:function(L){return(L=L._reactInternals)?Pf(L)===L:!1},enqueueSetState:function(L,I,$){L=L._reactInternals;var se=vs(),Pe=Uc(L),R=$u(se,Pe);R.payload=I,$!=null&&(R.callback=$),I=Nc(L,R,Pe),I!==null&&(iu(I,L,Pe,se),P0(I,L,Pe))},enqueueReplaceState:function(L,I,$){L=L._reactInternals;var se=vs(),Pe=Uc(L),R=$u(se,Pe);R.tag=1,R.payload=I,$!=null&&(R.callback=$),I=Nc(L,R,Pe),I!==null&&(iu(I,L,Pe,se),P0(I,L,Pe))},enqueueForceUpdate:function(L,I){L=L._reactInternals;var $=vs(),se=Uc(L),Pe=$u($,se);Pe.tag=2,I!=null&&(Pe.callback=I),I=Nc(L,Pe,se),I!==null&&(iu(I,L,se,$),P0(I,L,se))}};function ab(L,I,$,se,Pe,R,E){return L=L.stateNode,typeof L.shouldComponentUpdate=="function"?L.shouldComponentUpdate(se,R,E):I.prototype&&I.prototype.isPureReactComponent?!Xp($,se)||!Xp(Pe,R):!0}function G3(L,I,$){var se=!1,Pe=Gc,R=I.contextType;return typeof R=="object"&&R!==null?R=Il(R):(Pe=Vs(I)?kf:$o.current,se=I.contextTypes,R=(se=se!=null)?Ch(L,Pe):Gc),I=new I($,R),L.memoizedState=I.state!==null&&I.state!==void 0?I.state:null,I.updater=S1,L.stateNode=I,I._reactInternals=L,se&&(L=L.stateNode,L.__reactInternalMemoizedUnmaskedChildContext=Pe,L.__reactInternalMemoizedMaskedChildContext=R),I}function ob(L,I,$,se){L=I.state,typeof I.componentWillReceiveProps=="function"&&I.componentWillReceiveProps($,se),typeof I.UNSAFE_componentWillReceiveProps=="function"&&I.UNSAFE_componentWillReceiveProps($,se),I.state!==L&&S1.enqueueReplaceState(I,I.state,null)}function Zv(L,I,$,se){var Pe=L.stateNode;Pe.props=$,Pe.state=L.memoizedState,Pe.refs=q3,iy(L);var R=I.contextType;typeof R=="object"&&R!==null?Pe.context=Il(R):(R=Vs(I)?kf:$o.current,Pe.context=Ch(L,R)),Pe.state=L.memoizedState,R=I.getDerivedStateFromProps,typeof R=="function"&&(Wv(L,I,R,$),Pe.state=L.memoizedState),typeof I.getDerivedStateFromProps=="function"||typeof Pe.getSnapshotBeforeUpdate=="function"||typeof Pe.UNSAFE_componentWillMount!="function"&&typeof Pe.componentWillMount!="function"||(I=Pe.state,typeof Pe.componentWillMount=="function"&&Pe.componentWillMount(),typeof Pe.UNSAFE_componentWillMount=="function"&&Pe.UNSAFE_componentWillMount(),I!==Pe.state&&S1.enqueueReplaceState(Pe,Pe.state,null),s1(L,$,Pe,se),Pe.state=L.memoizedState),typeof Pe.componentDidMount=="function"&&(L.flags|=4194308)}function _p(L,I,$){if(L=$.ref,L!==null&&typeof L!="function"&&typeof L!="object"){if($._owner){if($=$._owner,$){if($.tag!==1)throw Error(_r(309));var se=$.stateNode}if(!se)throw Error(_r(147,L));var Pe=se,R=""+L;return I!==null&&I.ref!==null&&typeof I.ref=="function"&&I.ref._stringRef===R?I.ref:(I=function(E){var e=Pe.refs;e===q3&&(e=Pe.refs={}),E===null?delete e[R]:e[R]=E},I._stringRef=R,I)}if(typeof L!="string")throw Error(_r(284));if(!$._owner)throw Error(_r(290,L))}return L}function p0(L,I){throw L=Object.prototype.toString.call(I),Error(_r(31,L==="[object Object]"?"object with keys {"+Object.keys(I).join(", ")+"}":L))}function sb(L){var I=L._init;return I(L._payload)}function W3(L){function I(r,n){if(L){var a=r.deletions;a===null?(r.deletions=[n],r.flags|=16):a.push(n)}}function $(r,n){if(!L)return null;for(;n!==null;)I(r,n),n=n.sibling;return null}function se(r,n){for(r=new Map;n!==null;)n.key!==null?r.set(n.key,n):r.set(n.index,n),n=n.sibling;return r}function Pe(r,n){return r=Vc(r,n),r.index=0,r.sibling=null,r}function R(r,n,a){return r.index=a,L?(a=r.alternate,a!==null?(a=a.index,a<n?(r.flags|=2,n):a):(r.flags|=2,n)):(r.flags|=1048576,n)}function E(r){return L&&r.alternate===null&&(r.flags|=2),r}function e(r,n,a,s){return n===null||n.tag!==6?(n=$g(a,r.mode,s),n.return=r,n):(n=Pe(n,a),n.return=r,n)}function w(r,n,a,s){var u=a.type;return u===sh?i(r,n,a.props.children,s,a.key):n!==null&&(n.elementType===u||typeof u=="object"&&u!==null&&u.$$typeof===Tc&&sb(u)===n.type)?(s=Pe(n,a.props),s.ref=_p(r,n,a),s.return=r,s):(s=F0(a.type,a.key,a.props,null,r.mode,s),s.ref=_p(r,n,a),s.return=r,s)}function k(r,n,a,s){return n===null||n.tag!==4||n.stateNode.containerInfo!==a.containerInfo||n.stateNode.implementation!==a.implementation?(n=Kg(a,r.mode,s),n.return=r,n):(n=Pe(n,a.children||[]),n.return=r,n)}function i(r,n,a,s,u){return n===null||n.tag!==7?(n=xf(a,r.mode,s,u),n.return=r,n):(n=Pe(n,a),n.return=r,n)}function _(r,n,a){if(typeof n=="string"&&n!==""||typeof n=="number")return n=$g(""+n,r.mode,a),n.return=r,n;if(typeof n=="object"&&n!==null){switch(n.$$typeof){case n0:return a=F0(n.type,n.key,n.props,null,r.mode,a),a.ref=_p(r,null,n),a.return=r,a;case oh:return n=Kg(n,r.mode,a),n.return=r,n;case Tc:var s=n._init;return _(r,s(n._payload),a)}if(Sp(n)||vp(n))return n=xf(n,r.mode,a,null),n.return=r,n;p0(r,n)}return null}function y(r,n,a,s){var u=n!==null?n.key:null;if(typeof a=="string"&&a!==""||typeof a=="number")return u!==null?null:e(r,n,""+a,s);if(typeof a=="object"&&a!==null){switch(a.$$typeof){case n0:return a.key===u?w(r,n,a,s):null;case oh:return a.key===u?k(r,n,a,s):null;case Tc:return u=a._init,y(r,n,u(a._payload),s)}if(Sp(a)||vp(a))return u!==null?null:i(r,n,a,s,null);p0(r,a)}return null}function h(r,n,a,s,u){if(typeof s=="string"&&s!==""||typeof s=="number")return r=r.get(a)||null,e(n,r,""+s,u);if(typeof s=="object"&&s!==null){switch(s.$$typeof){case n0:return r=r.get(s.key===null?a:s.key)||null,w(n,r,s,u);case oh:return r=r.get(s.key===null?a:s.key)||null,k(n,r,s,u);case Tc:var p=s._init;return h(r,n,a,p(s._payload),u)}if(Sp(s)||vp(s))return r=r.get(a)||null,i(n,r,s,u,null);p0(n,s)}return null}function l(r,n,a,s){for(var u=null,p=null,c=n,b=n=0,g=null;c!==null&&b<a.length;b++){c.index>b?(g=c,c=null):g=c.sibling;var f=y(r,c,a[b],s);if(f===null){c===null&&(c=g);break}L&&c&&f.alternate===null&&I(r,c),n=R(f,n,b),p===null?u=f:p.sibling=f,p=f,c=g}if(b===a.length)return $(r,c),ya&&ff(r,b),u;if(c===null){for(;b<a.length;b++)c=_(r,a[b],s),c!==null&&(n=R(c,n,b),p===null?u=c:p.sibling=c,p=c);return ya&&ff(r,b),u}for(c=se(r,c);b<a.length;b++)g=h(c,r,b,a[b],s),g!==null&&(L&&g.alternate!==null&&c.delete(g.key===null?b:g.key),n=R(g,n,b),p===null?u=g:p.sibling=g,p=g);return L&&c.forEach(function(v){return I(r,v)}),ya&&ff(r,b),u}function t(r,n,a,s){var u=vp(a);if(typeof u!="function")throw Error(_r(150));if(a=u.call(a),a==null)throw Error(_r(151));for(var p=u=null,c=n,b=n=0,g=null,f=a.next();c!==null&&!f.done;b++,f=a.next()){c.index>b?(g=c,c=null):g=c.sibling;var v=y(r,c,f.value,s);if(v===null){c===null&&(c=g);break}L&&c&&v.alternate===null&&I(r,c),n=R(v,n,b),p===null?u=v:p.sibling=v,p=v,c=g}if(f.done)return $(r,c),ya&&ff(r,b),u;if(c===null){for(;!f.done;b++,f=a.next())f=_(r,f.value,s),f!==null&&(n=R(f,n,b),p===null?u=f:p.sibling=f,p=f);return ya&&ff(r,b),u}for(c=se(r,c);!f.done;b++,f=a.next())f=h(c,r,b,f.value,s),f!==null&&(L&&f.alternate!==null&&c.delete(f.key===null?b:f.key),n=R(f,n,b),p===null?u=f:p.sibling=f,p=f);return L&&c.forEach(function(m){return I(r,m)}),ya&&ff(r,b),u}function o(r,n,a,s){if(typeof a=="object"&&a!==null&&a.type===sh&&a.key===null&&(a=a.props.children),typeof a=="object"&&a!==null){switch(a.$$typeof){case n0:e:{for(var u=a.key,p=n;p!==null;){if(p.key===u){if(u=a.type,u===sh){if(p.tag===7){$(r,p.sibling),n=Pe(p,a.props.children),n.return=r,r=n;break e}}else if(p.elementType===u||typeof u=="object"&&u!==null&&u.$$typeof===Tc&&sb(u)===p.type){$(r,p.sibling),n=Pe(p,a.props),n.ref=_p(r,p,a),n.return=r,r=n;break e}$(r,p);break}else I(r,p);p=p.sibling}a.type===sh?(n=xf(a.props.children,r.mode,s,a.key),n.return=r,r=n):(s=F0(a.type,a.key,a.props,null,r.mode,s),s.ref=_p(r,n,a),s.return=r,r=s)}return E(r);case oh:e:{for(p=a.key;n!==null;){if(n.key===p)if(n.tag===4&&n.stateNode.containerInfo===a.containerInfo&&n.stateNode.implementation===a.implementation){$(r,n.sibling),n=Pe(n,a.children||[]),n.return=r,r=n;break e}else{$(r,n);break}else I(r,n);n=n.sibling}n=Kg(a,r.mode,s),n.return=r,r=n}return E(r);case Tc:return p=a._init,o(r,n,p(a._payload),s)}if(Sp(a))return l(r,n,a,s);if(vp(a))return t(r,n,a,s);p0(r,a)}return typeof a=="string"&&a!==""||typeof a=="number"?(a=""+a,n!==null&&n.tag===6?($(r,n.sibling),n=Pe(n,a),n.return=r,r=n):($(r,n),n=$g(a,r.mode,s),n.return=r,r=n),E(r)):$(r,n)}return o}var Ph=W3(!0),Z3=W3(!1),pd={},Mu=Yc(pd),Qp=Yc(pd),ed=Yc(pd);function mf(L){if(L===pd)throw Error(_r(174));return L}function ay(L,I){switch(ra(ed,I),ra(Qp,L),ra(Mu,pd),L=I.nodeType,L){case 9:case 11:I=(I=I.documentElement)?I.namespaceURI:Av(null,"");break;default:L=L===8?I.parentNode:I,I=L.namespaceURI||null,L=L.tagName,I=Av(I,L)}pa(Mu),ra(Mu,I)}function Oh(){pa(Mu),pa(Qp),pa(ed)}function Y3(L){mf(ed.current);var I=mf(Mu.current),$=Av(I,L.type);I!==$&&(ra(Qp,L),ra(Mu,$))}function oy(L){Qp.current===L&&(pa(Mu),pa(Qp))}var Ma=Yc(0);function l1(L){for(var I=L;I!==null;){if(I.tag===13){var $=I.memoizedState;if($!==null&&($=$.dehydrated,$===null||$.data==="$?"||$.data==="$!"))return I}else if(I.tag===19&&I.memoizedProps.revealOrder!==void 0){if(I.flags&128)return I}else if(I.child!==null){I.child.return=I,I=I.child;continue}if(I===L)break;for(;I.sibling===null;){if(I.return===null||I.return===L)return null;I=I.return}I.sibling.return=I.return,I=I.sibling}return null}var qg=[];function sy(){for(var L=0;L<qg.length;L++)qg[L]._workInProgressVersionPrimary=null;qg.length=0}var O0=rc.ReactCurrentDispatcher,Gg=rc.ReactCurrentBatchConfig,Af=0,Ea=null,io=null,mo=null,u1=!1,Dp=!1,td=0,kk=0;function Zo(){throw Error(_r(321))}function ly(L,I){if(I===null)return!1;for(var $=0;$<I.length&&$<L.length;$++)if(!au(L[$],I[$]))return!1;return!0}function uy(L,I,$,se,Pe,R){if(Af=R,Ea=I,I.memoizedState=null,I.updateQueue=null,I.lanes=0,O0.current=L===null||L.memoizedState===null?Sk:Ek,L=$(se,Pe),Dp){R=0;do{if(Dp=!1,td=0,25<=R)throw Error(_r(301));R+=1,mo=io=null,I.updateQueue=null,O0.current=Ck,L=$(se,Pe)}while(Dp)}if(O0.current=c1,I=io!==null&&io.next!==null,Af=0,mo=io=Ea=null,u1=!1,I)throw Error(_r(300));return L}function cy(){var L=td!==0;return td=0,L}function bu(){var L={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return mo===null?Ea.memoizedState=mo=L:mo=mo.next=L,mo}function Rl(){if(io===null){var L=Ea.alternate;L=L!==null?L.memoizedState:null}else L=io.next;var I=mo===null?Ea.memoizedState:mo.next;if(I!==null)mo=I,io=L;else{if(L===null)throw Error(_r(310));io=L,L={memoizedState:io.memoizedState,baseState:io.baseState,baseQueue:io.baseQueue,queue:io.queue,next:null},mo===null?Ea.memoizedState=mo=L:mo=mo.next=L}return mo}function nd(L,I){return typeof I=="function"?I(L):I}function Wg(L){var I=Rl(),$=I.queue;if($===null)throw Error(_r(311));$.lastRenderedReducer=L;var se=io,Pe=se.baseQueue,R=$.pending;if(R!==null){if(Pe!==null){var E=Pe.next;Pe.next=R.next,R.next=E}se.baseQueue=Pe=R,$.pending=null}if(Pe!==null){R=Pe.next,se=se.baseState;var e=E=null,w=null,k=R;do{var i=k.lane;if((Af&i)===i)w!==null&&(w=w.next={lane:0,action:k.action,hasEagerState:k.hasEagerState,eagerState:k.eagerState,next:null}),se=k.hasEagerState?k.eagerState:L(se,k.action);else{var _={lane:i,action:k.action,hasEagerState:k.hasEagerState,eagerState:k.eagerState,next:null};w===null?(e=w=_,E=se):w=w.next=_,Ea.lanes|=i,Mf|=i}k=k.next}while(k!==null&&k!==R);w===null?E=se:w.next=e,au(se,I.memoizedState)||(js=!0),I.memoizedState=se,I.baseState=E,I.baseQueue=w,$.lastRenderedState=se}if(L=$.interleaved,L!==null){Pe=L;do R=Pe.lane,Ea.lanes|=R,Mf|=R,Pe=Pe.next;while(Pe!==L)}else Pe===null&&($.lanes=0);return[I.memoizedState,$.dispatch]}function Zg(L){var I=Rl(),$=I.queue;if($===null)throw Error(_r(311));$.lastRenderedReducer=L;var se=$.dispatch,Pe=$.pending,R=I.memoizedState;if(Pe!==null){$.pending=null;var E=Pe=Pe.next;do R=L(R,E.action),E=E.next;while(E!==Pe);au(R,I.memoizedState)||(js=!0),I.memoizedState=R,I.baseQueue===null&&(I.baseState=R),$.lastRenderedState=R}return[R,se]}function X3(){}function $3(L,I){var $=Ea,se=Rl(),Pe=I(),R=!au(se.memoizedState,Pe);if(R&&(se.memoizedState=Pe,js=!0),se=se.queue,fy(Q3.bind(null,$,se,L),[L]),se.getSnapshot!==I||R||mo!==null&&mo.memoizedState.tag&1){if($.flags|=2048,rd(9,J3.bind(null,$,se,Pe,I),void 0,null),yo===null)throw Error(_r(349));Af&30||K3($,I,Pe)}return Pe}function K3(L,I,$){L.flags|=16384,L={getSnapshot:I,value:$},I=Ea.updateQueue,I===null?(I={lastEffect:null,stores:null},Ea.updateQueue=I,I.stores=[L]):($=I.stores,$===null?I.stores=[L]:$.push(L))}function J3(L,I,$,se){I.value=$,I.getSnapshot=se,ew(I)&&tw(L)}function Q3(L,I,$){return $(function(){ew(I)&&tw(L)})}function ew(L){var I=L.getSnapshot;L=L.value;try{var $=I();return!au(L,$)}catch{return!0}}function tw(L){var I=ec(L,1);I!==null&&iu(I,L,1,-1)}function lb(L){var I=bu();return typeof L=="function"&&(L=L()),I.memoizedState=I.baseState=L,L={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:nd,lastRenderedState:L},I.queue=L,L=L.dispatch=Mk.bind(null,Ea,L),[I.memoizedState,L]}function rd(L,I,$,se){return L={tag:L,create:I,destroy:$,deps:se,next:null},I=Ea.updateQueue,I===null?(I={lastEffect:null,stores:null},Ea.updateQueue=I,I.lastEffect=L.next=L):($=I.lastEffect,$===null?I.lastEffect=L.next=L:(se=$.next,$.next=L,L.next=se,I.lastEffect=L)),L}function nw(){return Rl().memoizedState}function I0(L,I,$,se){var Pe=bu();Ea.flags|=L,Pe.memoizedState=rd(1|I,$,void 0,se===void 0?null:se)}function E1(L,I,$,se){var Pe=Rl();se=se===void 0?null:se;var R=void 0;if(io!==null){var E=io.memoizedState;if(R=E.destroy,se!==null&&ly(se,E.deps)){Pe.memoizedState=rd(I,$,R,se);return}}Ea.flags|=L,Pe.memoizedState=rd(1|I,$,R,se)}function ub(L,I){return I0(8390656,8,L,I)}function fy(L,I){return E1(2048,8,L,I)}function rw(L,I){return E1(4,2,L,I)}function iw(L,I){return E1(4,4,L,I)}function aw(L,I){if(typeof I=="function")return L=L(),I(L),function(){I(null)};if(I!=null)return L=L(),I.current=L,function(){I.current=null}}function ow(L,I,$){return $=$!=null?$.concat([L]):null,E1(4,4,aw.bind(null,I,L),$)}function hy(){}function sw(L,I){var $=Rl();I=I===void 0?null:I;var se=$.memoizedState;return se!==null&&I!==null&&ly(I,se[1])?se[0]:($.memoizedState=[L,I],L)}function lw(L,I){var $=Rl();I=I===void 0?null:I;var se=$.memoizedState;return se!==null&&I!==null&&ly(I,se[1])?se[0]:(L=L(),$.memoizedState=[L,I],L)}function uw(L,I,$){return Af&21?(au($,I)||($=h3(),Ea.lanes|=$,Mf|=$,L.baseState=!0),I):(L.baseState&&(L.baseState=!1,js=!0),L.memoizedState=$)}function Tk(L,I){var $=Ui;Ui=$!==0&&4>$?$:4,L(!0);var se=Gg.transition;Gg.transition={};try{L(!1),I()}finally{Ui=$,Gg.transition=se}}function cw(){return Rl().memoizedState}function Ak(L,I,$){var se=Uc(L);if($={lane:se,action:$,hasEagerState:!1,eagerState:null,next:null},fw(L))hw(I,$);else if($=V3(L,I,$,se),$!==null){var Pe=vs();iu($,L,se,Pe),pw($,I,se)}}function Mk(L,I,$){var se=Uc(L),Pe={lane:se,action:$,hasEagerState:!1,eagerState:null,next:null};if(fw(L))hw(I,Pe);else{var R=L.alternate;if(L.lanes===0&&(R===null||R.lanes===0)&&(R=I.lastRenderedReducer,R!==null))try{var E=I.lastRenderedState,e=R(E,$);if(Pe.hasEagerState=!0,Pe.eagerState=e,au(e,E)){var w=I.interleaved;w===null?(Pe.next=Pe,ry(I)):(Pe.next=w.next,w.next=Pe),I.interleaved=Pe;return}}catch{}finally{}$=V3(L,I,Pe,se),$!==null&&(Pe=vs(),iu($,L,se,Pe),pw($,I,se))}}function fw(L){var I=L.alternate;return L===Ea||I!==null&&I===Ea}function hw(L,I){Dp=u1=!0;var $=L.pending;$===null?I.next=I:(I.next=$.next,$.next=I),L.pending=I}function pw(L,I,$){if($&4194240){var se=I.lanes;se&=L.pendingLanes,$|=se,I.lanes=$,Hm(L,$)}}var c1={readContext:Il,useCallback:Zo,useContext:Zo,useEffect:Zo,useImperativeHandle:Zo,useInsertionEffect:Zo,useLayoutEffect:Zo,useMemo:Zo,useReducer:Zo,useRef:Zo,useState:Zo,useDebugValue:Zo,useDeferredValue:Zo,useTransition:Zo,useMutableSource:Zo,useSyncExternalStore:Zo,useId:Zo,unstable_isNewReconciler:!1},Sk={readContext:Il,useCallback:function(L,I){return bu().memoizedState=[L,I===void 0?null:I],L},useContext:Il,useEffect:ub,useImperativeHandle:function(L,I,$){return $=$!=null?$.concat([L]):null,I0(4194308,4,aw.bind(null,I,L),$)},useLayoutEffect:function(L,I){return I0(4194308,4,L,I)},useInsertionEffect:function(L,I){return I0(4,2,L,I)},useMemo:function(L,I){var $=bu();return I=I===void 0?null:I,L=L(),$.memoizedState=[L,I],L},useReducer:function(L,I,$){var se=bu();return I=$!==void 0?$(I):I,se.memoizedState=se.baseState=I,L={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:L,lastRenderedState:I},se.queue=L,L=L.dispatch=Ak.bind(null,Ea,L),[se.memoizedState,L]},useRef:function(L){var I=bu();return L={current:L},I.memoizedState=L},useState:lb,useDebugValue:hy,useDeferredValue:function(L){return bu().memoizedState=L},useTransition:function(){var L=lb(!1),I=L[0];return L=Tk.bind(null,L[1]),bu().memoizedState=L,[I,L]},useMutableSource:function(){},useSyncExternalStore:function(L,I,$){var se=Ea,Pe=bu();if(ya){if($===void 0)throw Error(_r(407));$=$()}else{if($=I(),yo===null)throw Error(_r(349));Af&30||K3(se,I,$)}Pe.memoizedState=$;var R={value:$,getSnapshot:I};return Pe.queue=R,ub(Q3.bind(null,se,R,L),[L]),se.flags|=2048,rd(9,J3.bind(null,se,R,$,I),void 0,null),$},useId:function(){var L=bu(),I=yo.identifierPrefix;if(ya){var $=Yu,se=Zu;$=(se&~(1<<32-ru(se)-1)).toString(32)+$,I=":"+I+"R"+$,$=td++,0<$&&(I+="H"+$.toString(32)),I+=":"}else $=kk++,I=":"+I+"r"+$.toString(32)+":";return L.memoizedState=I},unstable_isNewReconciler:!1},Ek={readContext:Il,useCallback:sw,useContext:Il,useEffect:fy,useImperativeHandle:ow,useInsertionEffect:rw,useLayoutEffect:iw,useMemo:lw,useReducer:Wg,useRef:nw,useState:function(){return Wg(nd)},useDebugValue:hy,useDeferredValue:function(L){var I=Rl();return uw(I,io.memoizedState,L)},useTransition:function(){var L=Wg(nd)[0],I=Rl().memoizedState;return[L,I]},useMutableSource:X3,useSyncExternalStore:$3,useId:cw,unstable_isNewReconciler:!1},Ck={readContext:Il,useCallback:sw,useContext:Il,useEffect:fy,useImperativeHandle:ow,useInsertionEffect:rw,useLayoutEffect:iw,useMemo:lw,useReducer:Zg,useRef:nw,useState:function(){return Zg(nd)},useDebugValue:hy,useDeferredValue:function(L){var I=Rl();return io===null?I.memoizedState=L:uw(I,io.memoizedState,L)},useTransition:function(){var L=Zg(nd)[0],I=Rl().memoizedState;return[L,I]},useMutableSource:X3,useSyncExternalStore:$3,useId:cw,unstable_isNewReconciler:!1};function Ih(L,I){try{var $="",se=I;do $+=r8(se),se=se.return;while(se);var Pe=$}catch(R){Pe=`
|
||
Error generating stack: `+R.message+`
|
||
`+R.stack}return{value:L,source:I,stack:Pe,digest:null}}function Yg(L,I,$){return{value:L,source:null,stack:$??null,digest:I??null}}function Yv(L,I){try{console.error(I.value)}catch($){setTimeout(function(){throw $})}}var Lk=typeof WeakMap=="function"?WeakMap:Map;function dw(L,I,$){$=$u(-1,$),$.tag=3,$.payload={element:null};var se=I.value;return $.callback=function(){h1||(h1=!0,im=se),Yv(L,I)},$}function gw(L,I,$){$=$u(-1,$),$.tag=3;var se=L.type.getDerivedStateFromError;if(typeof se=="function"){var Pe=I.value;$.payload=function(){return se(Pe)},$.callback=function(){Yv(L,I)}}var R=L.stateNode;return R!==null&&typeof R.componentDidCatch=="function"&&($.callback=function(){Yv(L,I),typeof se!="function"&&(jc===null?jc=new Set([this]):jc.add(this));var E=I.stack;this.componentDidCatch(I.value,{componentStack:E!==null?E:""})}),$}function cb(L,I,$){var se=L.pingCache;if(se===null){se=L.pingCache=new Lk;var Pe=new Set;se.set(I,Pe)}else Pe=se.get(I),Pe===void 0&&(Pe=new Set,se.set(I,Pe));Pe.has($)||(Pe.add($),L=qk.bind(null,L,I,$),I.then(L,L))}function fb(L){do{var I;if((I=L.tag===13)&&(I=L.memoizedState,I=I!==null?I.dehydrated!==null:!0),I)return L;L=L.return}while(L!==null);return null}function hb(L,I,$,se,Pe){return L.mode&1?(L.flags|=65536,L.lanes=Pe,L):(L===I?L.flags|=65536:(L.flags|=128,$.flags|=131072,$.flags&=-52805,$.tag===1&&($.alternate===null?$.tag=17:(I=$u(-1,1),I.tag=2,Nc($,I,1))),$.lanes|=1),L)}var Pk=rc.ReactCurrentOwner,js=!1;function ps(L,I,$,se){I.child=L===null?Z3(I,null,$,se):Ph(I,L.child,$,se)}function pb(L,I,$,se,Pe){$=$.render;var R=I.ref;return Ah(I,Pe),se=uy(L,I,$,se,R,Pe),$=cy(),L!==null&&!js?(I.updateQueue=L.updateQueue,I.flags&=-2053,L.lanes&=~Pe,tc(L,I,Pe)):(ya&&$&&Km(I),I.flags|=1,ps(L,I,se,Pe),I.child)}function db(L,I,$,se,Pe){if(L===null){var R=$.type;return typeof R=="function"&&!by(R)&&R.defaultProps===void 0&&$.compare===null&&$.defaultProps===void 0?(I.tag=15,I.type=R,vw(L,I,R,se,Pe)):(L=F0($.type,null,se,I,I.mode,Pe),L.ref=I.ref,L.return=I,I.child=L)}if(R=L.child,!(L.lanes&Pe)){var E=R.memoizedProps;if($=$.compare,$=$!==null?$:Xp,$(E,se)&&L.ref===I.ref)return tc(L,I,Pe)}return I.flags|=1,L=Vc(R,se),L.ref=I.ref,L.return=I,I.child=L}function vw(L,I,$,se,Pe){if(L!==null){var R=L.memoizedProps;if(Xp(R,se)&&L.ref===I.ref)if(js=!1,I.pendingProps=se=R,(L.lanes&Pe)!==0)L.flags&131072&&(js=!0);else return I.lanes=L.lanes,tc(L,I,Pe)}return Xv(L,I,$,se,Pe)}function mw(L,I,$){var se=I.pendingProps,Pe=se.children,R=L!==null?L.memoizedState:null;if(se.mode==="hidden")if(!(I.mode&1))I.memoizedState={baseLanes:0,cachePool:null,transitions:null},ra(mh,ll),ll|=$;else{if(!($&1073741824))return L=R!==null?R.baseLanes|$:$,I.lanes=I.childLanes=1073741824,I.memoizedState={baseLanes:L,cachePool:null,transitions:null},I.updateQueue=null,ra(mh,ll),ll|=L,null;I.memoizedState={baseLanes:0,cachePool:null,transitions:null},se=R!==null?R.baseLanes:$,ra(mh,ll),ll|=se}else R!==null?(se=R.baseLanes|$,I.memoizedState=null):se=$,ra(mh,ll),ll|=se;return ps(L,I,Pe,$),I.child}function yw(L,I){var $=I.ref;(L===null&&$!==null||L!==null&&L.ref!==$)&&(I.flags|=512,I.flags|=2097152)}function Xv(L,I,$,se,Pe){var R=Vs($)?kf:$o.current;return R=Ch(I,R),Ah(I,Pe),$=uy(L,I,$,se,R,Pe),se=cy(),L!==null&&!js?(I.updateQueue=L.updateQueue,I.flags&=-2053,L.lanes&=~Pe,tc(L,I,Pe)):(ya&&se&&Km(I),I.flags|=1,ps(L,I,$,Pe),I.child)}function gb(L,I,$,se,Pe){if(Vs($)){var R=!0;n1(I)}else R=!1;if(Ah(I,Pe),I.stateNode===null)R0(L,I),G3(I,$,se),Zv(I,$,se,Pe),se=!0;else if(L===null){var E=I.stateNode,e=I.memoizedProps;E.props=e;var w=E.context,k=$.contextType;typeof k=="object"&&k!==null?k=Il(k):(k=Vs($)?kf:$o.current,k=Ch(I,k));var i=$.getDerivedStateFromProps,_=typeof i=="function"||typeof E.getSnapshotBeforeUpdate=="function";_||typeof E.UNSAFE_componentWillReceiveProps!="function"&&typeof E.componentWillReceiveProps!="function"||(e!==se||w!==k)&&ob(I,E,se,k),Ac=!1;var y=I.memoizedState;E.state=y,s1(I,se,E,Pe),w=I.memoizedState,e!==se||y!==w||Us.current||Ac?(typeof i=="function"&&(Wv(I,$,i,se),w=I.memoizedState),(e=Ac||ab(I,$,e,se,y,w,k))?(_||typeof E.UNSAFE_componentWillMount!="function"&&typeof E.componentWillMount!="function"||(typeof E.componentWillMount=="function"&&E.componentWillMount(),typeof E.UNSAFE_componentWillMount=="function"&&E.UNSAFE_componentWillMount()),typeof E.componentDidMount=="function"&&(I.flags|=4194308)):(typeof E.componentDidMount=="function"&&(I.flags|=4194308),I.memoizedProps=se,I.memoizedState=w),E.props=se,E.state=w,E.context=k,se=e):(typeof E.componentDidMount=="function"&&(I.flags|=4194308),se=!1)}else{E=I.stateNode,H3(L,I),e=I.memoizedProps,k=I.type===I.elementType?e:Ql(I.type,e),E.props=k,_=I.pendingProps,y=E.context,w=$.contextType,typeof w=="object"&&w!==null?w=Il(w):(w=Vs($)?kf:$o.current,w=Ch(I,w));var h=$.getDerivedStateFromProps;(i=typeof h=="function"||typeof E.getSnapshotBeforeUpdate=="function")||typeof E.UNSAFE_componentWillReceiveProps!="function"&&typeof E.componentWillReceiveProps!="function"||(e!==_||y!==w)&&ob(I,E,se,w),Ac=!1,y=I.memoizedState,E.state=y,s1(I,se,E,Pe);var l=I.memoizedState;e!==_||y!==l||Us.current||Ac?(typeof h=="function"&&(Wv(I,$,h,se),l=I.memoizedState),(k=Ac||ab(I,$,k,se,y,l,w)||!1)?(i||typeof E.UNSAFE_componentWillUpdate!="function"&&typeof E.componentWillUpdate!="function"||(typeof E.componentWillUpdate=="function"&&E.componentWillUpdate(se,l,w),typeof E.UNSAFE_componentWillUpdate=="function"&&E.UNSAFE_componentWillUpdate(se,l,w)),typeof E.componentDidUpdate=="function"&&(I.flags|=4),typeof E.getSnapshotBeforeUpdate=="function"&&(I.flags|=1024)):(typeof E.componentDidUpdate!="function"||e===L.memoizedProps&&y===L.memoizedState||(I.flags|=4),typeof E.getSnapshotBeforeUpdate!="function"||e===L.memoizedProps&&y===L.memoizedState||(I.flags|=1024),I.memoizedProps=se,I.memoizedState=l),E.props=se,E.state=l,E.context=w,se=k):(typeof E.componentDidUpdate!="function"||e===L.memoizedProps&&y===L.memoizedState||(I.flags|=4),typeof E.getSnapshotBeforeUpdate!="function"||e===L.memoizedProps&&y===L.memoizedState||(I.flags|=1024),se=!1)}return $v(L,I,$,se,R,Pe)}function $v(L,I,$,se,Pe,R){yw(L,I);var E=(I.flags&128)!==0;if(!se&&!E)return Pe&&eb(I,$,!1),tc(L,I,R);se=I.stateNode,Pk.current=I;var e=E&&typeof $.getDerivedStateFromError!="function"?null:se.render();return I.flags|=1,L!==null&&E?(I.child=Ph(I,L.child,null,R),I.child=Ph(I,null,e,R)):ps(L,I,e,R),I.memoizedState=se.state,Pe&&eb(I,$,!0),I.child}function xw(L){var I=L.stateNode;I.pendingContext?Q2(L,I.pendingContext,I.pendingContext!==I.context):I.context&&Q2(L,I.context,!1),ay(L,I.containerInfo)}function vb(L,I,$,se,Pe){return Lh(),Qm(Pe),I.flags|=256,ps(L,I,$,se),I.child}var Kv={dehydrated:null,treeContext:null,retryLane:0};function Jv(L){return{baseLanes:L,cachePool:null,transitions:null}}function bw(L,I,$){var se=I.pendingProps,Pe=Ma.current,R=!1,E=(I.flags&128)!==0,e;if((e=E)||(e=L!==null&&L.memoizedState===null?!1:(Pe&2)!==0),e?(R=!0,I.flags&=-129):(L===null||L.memoizedState!==null)&&(Pe|=1),ra(Ma,Pe&1),L===null)return qv(I),L=I.memoizedState,L!==null&&(L=L.dehydrated,L!==null)?(I.mode&1?L.data==="$!"?I.lanes=8:I.lanes=1073741824:I.lanes=1,null):(E=se.children,L=se.fallback,R?(se=I.mode,R=I.child,E={mode:"hidden",children:E},!(se&1)&&R!==null?(R.childLanes=0,R.pendingProps=E):R=P1(E,se,0,null),L=xf(L,se,$,null),R.return=I,L.return=I,R.sibling=L,I.child=R,I.child.memoizedState=Jv($),I.memoizedState=Kv,L):py(I,E));if(Pe=L.memoizedState,Pe!==null&&(e=Pe.dehydrated,e!==null))return Ok(L,I,E,se,e,Pe,$);if(R){R=se.fallback,E=I.mode,Pe=L.child,e=Pe.sibling;var w={mode:"hidden",children:se.children};return!(E&1)&&I.child!==Pe?(se=I.child,se.childLanes=0,se.pendingProps=w,I.deletions=null):(se=Vc(Pe,w),se.subtreeFlags=Pe.subtreeFlags&14680064),e!==null?R=Vc(e,R):(R=xf(R,E,$,null),R.flags|=2),R.return=I,se.return=I,se.sibling=R,I.child=se,se=R,R=I.child,E=L.child.memoizedState,E=E===null?Jv($):{baseLanes:E.baseLanes|$,cachePool:null,transitions:E.transitions},R.memoizedState=E,R.childLanes=L.childLanes&~$,I.memoizedState=Kv,se}return R=L.child,L=R.sibling,se=Vc(R,{mode:"visible",children:se.children}),!(I.mode&1)&&(se.lanes=$),se.return=I,se.sibling=null,L!==null&&($=I.deletions,$===null?(I.deletions=[L],I.flags|=16):$.push(L)),I.child=se,I.memoizedState=null,se}function py(L,I){return I=P1({mode:"visible",children:I},L.mode,0,null),I.return=L,L.child=I}function d0(L,I,$,se){return se!==null&&Qm(se),Ph(I,L.child,null,$),L=py(I,I.pendingProps.children),L.flags|=2,I.memoizedState=null,L}function Ok(L,I,$,se,Pe,R,E){if($)return I.flags&256?(I.flags&=-257,se=Yg(Error(_r(422))),d0(L,I,E,se)):I.memoizedState!==null?(I.child=L.child,I.flags|=128,null):(R=se.fallback,Pe=I.mode,se=P1({mode:"visible",children:se.children},Pe,0,null),R=xf(R,Pe,E,null),R.flags|=2,se.return=I,R.return=I,se.sibling=R,I.child=se,I.mode&1&&Ph(I,L.child,null,E),I.child.memoizedState=Jv(E),I.memoizedState=Kv,R);if(!(I.mode&1))return d0(L,I,E,null);if(Pe.data==="$!"){if(se=Pe.nextSibling&&Pe.nextSibling.dataset,se)var e=se.dgst;return se=e,R=Error(_r(419)),se=Yg(R,se,void 0),d0(L,I,E,se)}if(e=(E&L.childLanes)!==0,js||e){if(se=yo,se!==null){switch(E&-E){case 4:Pe=2;break;case 16:Pe=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:Pe=32;break;case 536870912:Pe=268435456;break;default:Pe=0}Pe=Pe&(se.suspendedLanes|E)?0:Pe,Pe!==0&&Pe!==R.retryLane&&(R.retryLane=Pe,ec(L,Pe),iu(se,L,Pe,-1))}return xy(),se=Yg(Error(_r(421))),d0(L,I,E,se)}return Pe.data==="$?"?(I.flags|=128,I.child=L.child,I=Gk.bind(null,L),Pe._reactRetry=I,null):(L=R.treeContext,ul=Bc(Pe.nextSibling),cl=I,ya=!0,tu=null,L!==null&&(Cl[Ll++]=Zu,Cl[Ll++]=Yu,Cl[Ll++]=Tf,Zu=L.id,Yu=L.overflow,Tf=I),I=py(I,se.children),I.flags|=4096,I)}function mb(L,I,$){L.lanes|=I;var se=L.alternate;se!==null&&(se.lanes|=I),Gv(L.return,I,$)}function Xg(L,I,$,se,Pe){var R=L.memoizedState;R===null?L.memoizedState={isBackwards:I,rendering:null,renderingStartTime:0,last:se,tail:$,tailMode:Pe}:(R.isBackwards=I,R.rendering=null,R.renderingStartTime=0,R.last=se,R.tail=$,R.tailMode=Pe)}function _w(L,I,$){var se=I.pendingProps,Pe=se.revealOrder,R=se.tail;if(ps(L,I,se.children,$),se=Ma.current,se&2)se=se&1|2,I.flags|=128;else{if(L!==null&&L.flags&128)e:for(L=I.child;L!==null;){if(L.tag===13)L.memoizedState!==null&&mb(L,$,I);else if(L.tag===19)mb(L,$,I);else if(L.child!==null){L.child.return=L,L=L.child;continue}if(L===I)break e;for(;L.sibling===null;){if(L.return===null||L.return===I)break e;L=L.return}L.sibling.return=L.return,L=L.sibling}se&=1}if(ra(Ma,se),!(I.mode&1))I.memoizedState=null;else switch(Pe){case"forwards":for($=I.child,Pe=null;$!==null;)L=$.alternate,L!==null&&l1(L)===null&&(Pe=$),$=$.sibling;$=Pe,$===null?(Pe=I.child,I.child=null):(Pe=$.sibling,$.sibling=null),Xg(I,!1,Pe,$,R);break;case"backwards":for($=null,Pe=I.child,I.child=null;Pe!==null;){if(L=Pe.alternate,L!==null&&l1(L)===null){I.child=Pe;break}L=Pe.sibling,Pe.sibling=$,$=Pe,Pe=L}Xg(I,!0,$,null,R);break;case"together":Xg(I,!1,null,null,void 0);break;default:I.memoizedState=null}return I.child}function R0(L,I){!(I.mode&1)&&L!==null&&(L.alternate=null,I.alternate=null,I.flags|=2)}function tc(L,I,$){if(L!==null&&(I.dependencies=L.dependencies),Mf|=I.lanes,!($&I.childLanes))return null;if(L!==null&&I.child!==L.child)throw Error(_r(153));if(I.child!==null){for(L=I.child,$=Vc(L,L.pendingProps),I.child=$,$.return=I;L.sibling!==null;)L=L.sibling,$=$.sibling=Vc(L,L.pendingProps),$.return=I;$.sibling=null}return I.child}function Ik(L,I,$){switch(I.tag){case 3:xw(I),Lh();break;case 5:Y3(I);break;case 1:Vs(I.type)&&n1(I);break;case 4:ay(I,I.stateNode.containerInfo);break;case 10:var se=I.type._context,Pe=I.memoizedProps.value;ra(a1,se._currentValue),se._currentValue=Pe;break;case 13:if(se=I.memoizedState,se!==null)return se.dehydrated!==null?(ra(Ma,Ma.current&1),I.flags|=128,null):$&I.child.childLanes?bw(L,I,$):(ra(Ma,Ma.current&1),L=tc(L,I,$),L!==null?L.sibling:null);ra(Ma,Ma.current&1);break;case 19:if(se=($&I.childLanes)!==0,L.flags&128){if(se)return _w(L,I,$);I.flags|=128}if(Pe=I.memoizedState,Pe!==null&&(Pe.rendering=null,Pe.tail=null,Pe.lastEffect=null),ra(Ma,Ma.current),se)break;return null;case 22:case 23:return I.lanes=0,mw(L,I,$)}return tc(L,I,$)}var ww,Qv,kw,Tw;ww=function(L,I){for(var $=I.child;$!==null;){if($.tag===5||$.tag===6)L.appendChild($.stateNode);else if($.tag!==4&&$.child!==null){$.child.return=$,$=$.child;continue}if($===I)break;for(;$.sibling===null;){if($.return===null||$.return===I)return;$=$.return}$.sibling.return=$.return,$=$.sibling}};Qv=function(){};kw=function(L,I,$,se){var Pe=L.memoizedProps;if(Pe!==se){L=I.stateNode,mf(Mu.current);var R=null;switch($){case"input":Pe=_v(L,Pe),se=_v(L,se),R=[];break;case"select":Pe=Ca({},Pe,{value:void 0}),se=Ca({},se,{value:void 0}),R=[];break;case"textarea":Pe=Tv(L,Pe),se=Tv(L,se),R=[];break;default:typeof Pe.onClick!="function"&&typeof se.onClick=="function"&&(L.onclick=e1)}Mv($,se);var E;$=null;for(k in Pe)if(!se.hasOwnProperty(k)&&Pe.hasOwnProperty(k)&&Pe[k]!=null)if(k==="style"){var e=Pe[k];for(E in e)e.hasOwnProperty(E)&&($||($={}),$[E]="")}else k!=="dangerouslySetInnerHTML"&&k!=="children"&&k!=="suppressContentEditableWarning"&&k!=="suppressHydrationWarning"&&k!=="autoFocus"&&(Vp.hasOwnProperty(k)?R||(R=[]):(R=R||[]).push(k,null));for(k in se){var w=se[k];if(e=Pe!=null?Pe[k]:void 0,se.hasOwnProperty(k)&&w!==e&&(w!=null||e!=null))if(k==="style")if(e){for(E in e)!e.hasOwnProperty(E)||w&&w.hasOwnProperty(E)||($||($={}),$[E]="");for(E in w)w.hasOwnProperty(E)&&e[E]!==w[E]&&($||($={}),$[E]=w[E])}else $||(R||(R=[]),R.push(k,$)),$=w;else k==="dangerouslySetInnerHTML"?(w=w?w.__html:void 0,e=e?e.__html:void 0,w!=null&&e!==w&&(R=R||[]).push(k,w)):k==="children"?typeof w!="string"&&typeof w!="number"||(R=R||[]).push(k,""+w):k!=="suppressContentEditableWarning"&&k!=="suppressHydrationWarning"&&(Vp.hasOwnProperty(k)?(w!=null&&k==="onScroll"&&fa("scroll",L),R||e===w||(R=[])):(R=R||[]).push(k,w))}$&&(R=R||[]).push("style",$);var k=R;(I.updateQueue=k)&&(I.flags|=4)}};Tw=function(L,I,$,se){$!==se&&(I.flags|=4)};function wp(L,I){if(!ya)switch(L.tailMode){case"hidden":I=L.tail;for(var $=null;I!==null;)I.alternate!==null&&($=I),I=I.sibling;$===null?L.tail=null:$.sibling=null;break;case"collapsed":$=L.tail;for(var se=null;$!==null;)$.alternate!==null&&(se=$),$=$.sibling;se===null?I||L.tail===null?L.tail=null:L.tail.sibling=null:se.sibling=null}}function Yo(L){var I=L.alternate!==null&&L.alternate.child===L.child,$=0,se=0;if(I)for(var Pe=L.child;Pe!==null;)$|=Pe.lanes|Pe.childLanes,se|=Pe.subtreeFlags&14680064,se|=Pe.flags&14680064,Pe.return=L,Pe=Pe.sibling;else for(Pe=L.child;Pe!==null;)$|=Pe.lanes|Pe.childLanes,se|=Pe.subtreeFlags,se|=Pe.flags,Pe.return=L,Pe=Pe.sibling;return L.subtreeFlags|=se,L.childLanes=$,I}function Rk(L,I,$){var se=I.pendingProps;switch(Jm(I),I.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Yo(I),null;case 1:return Vs(I.type)&&t1(),Yo(I),null;case 3:return se=I.stateNode,Oh(),pa(Us),pa($o),sy(),se.pendingContext&&(se.context=se.pendingContext,se.pendingContext=null),(L===null||L.child===null)&&(h0(I)?I.flags|=4:L===null||L.memoizedState.isDehydrated&&!(I.flags&256)||(I.flags|=1024,tu!==null&&(sm(tu),tu=null))),Qv(L,I),Yo(I),null;case 5:oy(I);var Pe=mf(ed.current);if($=I.type,L!==null&&I.stateNode!=null)kw(L,I,$,se,Pe),L.ref!==I.ref&&(I.flags|=512,I.flags|=2097152);else{if(!se){if(I.stateNode===null)throw Error(_r(166));return Yo(I),null}if(L=mf(Mu.current),h0(I)){se=I.stateNode,$=I.type;var R=I.memoizedProps;switch(se[wu]=I,se[Jp]=R,L=(I.mode&1)!==0,$){case"dialog":fa("cancel",se),fa("close",se);break;case"iframe":case"object":case"embed":fa("load",se);break;case"video":case"audio":for(Pe=0;Pe<Cp.length;Pe++)fa(Cp[Pe],se);break;case"source":fa("error",se);break;case"img":case"image":case"link":fa("error",se),fa("load",se);break;case"details":fa("toggle",se);break;case"input":M2(se,R),fa("invalid",se);break;case"select":se._wrapperState={wasMultiple:!!R.multiple},fa("invalid",se);break;case"textarea":E2(se,R),fa("invalid",se)}Mv($,R),Pe=null;for(var E in R)if(R.hasOwnProperty(E)){var e=R[E];E==="children"?typeof e=="string"?se.textContent!==e&&(R.suppressHydrationWarning!==!0&&f0(se.textContent,e,L),Pe=["children",e]):typeof e=="number"&&se.textContent!==""+e&&(R.suppressHydrationWarning!==!0&&f0(se.textContent,e,L),Pe=["children",""+e]):Vp.hasOwnProperty(E)&&e!=null&&E==="onScroll"&&fa("scroll",se)}switch($){case"input":r0(se),S2(se,R,!0);break;case"textarea":r0(se),C2(se);break;case"select":case"option":break;default:typeof R.onClick=="function"&&(se.onclick=e1)}se=Pe,I.updateQueue=se,se!==null&&(I.flags|=4)}else{E=Pe.nodeType===9?Pe:Pe.ownerDocument,L==="http://www.w3.org/1999/xhtml"&&(L=K_($)),L==="http://www.w3.org/1999/xhtml"?$==="script"?(L=E.createElement("div"),L.innerHTML="<script><\/script>",L=L.removeChild(L.firstChild)):typeof se.is=="string"?L=E.createElement($,{is:se.is}):(L=E.createElement($),$==="select"&&(E=L,se.multiple?E.multiple=!0:se.size&&(E.size=se.size))):L=E.createElementNS(L,$),L[wu]=I,L[Jp]=se,ww(L,I,!1,!1),I.stateNode=L;e:{switch(E=Sv($,se),$){case"dialog":fa("cancel",L),fa("close",L),Pe=se;break;case"iframe":case"object":case"embed":fa("load",L),Pe=se;break;case"video":case"audio":for(Pe=0;Pe<Cp.length;Pe++)fa(Cp[Pe],L);Pe=se;break;case"source":fa("error",L),Pe=se;break;case"img":case"image":case"link":fa("error",L),fa("load",L),Pe=se;break;case"details":fa("toggle",L),Pe=se;break;case"input":M2(L,se),Pe=_v(L,se),fa("invalid",L);break;case"option":Pe=se;break;case"select":L._wrapperState={wasMultiple:!!se.multiple},Pe=Ca({},se,{value:void 0}),fa("invalid",L);break;case"textarea":E2(L,se),Pe=Tv(L,se),fa("invalid",L);break;default:Pe=se}Mv($,Pe),e=Pe;for(R in e)if(e.hasOwnProperty(R)){var w=e[R];R==="style"?e3(L,w):R==="dangerouslySetInnerHTML"?(w=w?w.__html:void 0,w!=null&&J_(L,w)):R==="children"?typeof w=="string"?($!=="textarea"||w!=="")&&Hp(L,w):typeof w=="number"&&Hp(L,""+w):R!=="suppressContentEditableWarning"&&R!=="suppressHydrationWarning"&&R!=="autoFocus"&&(Vp.hasOwnProperty(R)?w!=null&&R==="onScroll"&&fa("scroll",L):w!=null&&Fm(L,R,w,E))}switch($){case"input":r0(L),S2(L,se,!1);break;case"textarea":r0(L),C2(L);break;case"option":se.value!=null&&L.setAttribute("value",""+qc(se.value));break;case"select":L.multiple=!!se.multiple,R=se.value,R!=null?_h(L,!!se.multiple,R,!1):se.defaultValue!=null&&_h(L,!!se.multiple,se.defaultValue,!0);break;default:typeof Pe.onClick=="function"&&(L.onclick=e1)}switch($){case"button":case"input":case"select":case"textarea":se=!!se.autoFocus;break e;case"img":se=!0;break e;default:se=!1}}se&&(I.flags|=4)}I.ref!==null&&(I.flags|=512,I.flags|=2097152)}return Yo(I),null;case 6:if(L&&I.stateNode!=null)Tw(L,I,L.memoizedProps,se);else{if(typeof se!="string"&&I.stateNode===null)throw Error(_r(166));if($=mf(ed.current),mf(Mu.current),h0(I)){if(se=I.stateNode,$=I.memoizedProps,se[wu]=I,(R=se.nodeValue!==$)&&(L=cl,L!==null))switch(L.tag){case 3:f0(se.nodeValue,$,(L.mode&1)!==0);break;case 5:L.memoizedProps.suppressHydrationWarning!==!0&&f0(se.nodeValue,$,(L.mode&1)!==0)}R&&(I.flags|=4)}else se=($.nodeType===9?$:$.ownerDocument).createTextNode(se),se[wu]=I,I.stateNode=se}return Yo(I),null;case 13:if(pa(Ma),se=I.memoizedState,L===null||L.memoizedState!==null&&L.memoizedState.dehydrated!==null){if(ya&&ul!==null&&I.mode&1&&!(I.flags&128))U3(),Lh(),I.flags|=98560,R=!1;else if(R=h0(I),se!==null&&se.dehydrated!==null){if(L===null){if(!R)throw Error(_r(318));if(R=I.memoizedState,R=R!==null?R.dehydrated:null,!R)throw Error(_r(317));R[wu]=I}else Lh(),!(I.flags&128)&&(I.memoizedState=null),I.flags|=4;Yo(I),R=!1}else tu!==null&&(sm(tu),tu=null),R=!0;if(!R)return I.flags&65536?I:null}return I.flags&128?(I.lanes=$,I):(se=se!==null,se!==(L!==null&&L.memoizedState!==null)&&se&&(I.child.flags|=8192,I.mode&1&&(L===null||Ma.current&1?oo===0&&(oo=3):xy())),I.updateQueue!==null&&(I.flags|=4),Yo(I),null);case 4:return Oh(),Qv(L,I),L===null&&$p(I.stateNode.containerInfo),Yo(I),null;case 10:return ny(I.type._context),Yo(I),null;case 17:return Vs(I.type)&&t1(),Yo(I),null;case 19:if(pa(Ma),R=I.memoizedState,R===null)return Yo(I),null;if(se=(I.flags&128)!==0,E=R.rendering,E===null)if(se)wp(R,!1);else{if(oo!==0||L!==null&&L.flags&128)for(L=I.child;L!==null;){if(E=l1(L),E!==null){for(I.flags|=128,wp(R,!1),se=E.updateQueue,se!==null&&(I.updateQueue=se,I.flags|=4),I.subtreeFlags=0,se=$,$=I.child;$!==null;)R=$,L=se,R.flags&=14680066,E=R.alternate,E===null?(R.childLanes=0,R.lanes=L,R.child=null,R.subtreeFlags=0,R.memoizedProps=null,R.memoizedState=null,R.updateQueue=null,R.dependencies=null,R.stateNode=null):(R.childLanes=E.childLanes,R.lanes=E.lanes,R.child=E.child,R.subtreeFlags=0,R.deletions=null,R.memoizedProps=E.memoizedProps,R.memoizedState=E.memoizedState,R.updateQueue=E.updateQueue,R.type=E.type,L=E.dependencies,R.dependencies=L===null?null:{lanes:L.lanes,firstContext:L.firstContext}),$=$.sibling;return ra(Ma,Ma.current&1|2),I.child}L=L.sibling}R.tail!==null&&ja()>Rh&&(I.flags|=128,se=!0,wp(R,!1),I.lanes=4194304)}else{if(!se)if(L=l1(E),L!==null){if(I.flags|=128,se=!0,$=L.updateQueue,$!==null&&(I.updateQueue=$,I.flags|=4),wp(R,!0),R.tail===null&&R.tailMode==="hidden"&&!E.alternate&&!ya)return Yo(I),null}else 2*ja()-R.renderingStartTime>Rh&&$!==1073741824&&(I.flags|=128,se=!0,wp(R,!1),I.lanes=4194304);R.isBackwards?(E.sibling=I.child,I.child=E):($=R.last,$!==null?$.sibling=E:I.child=E,R.last=E)}return R.tail!==null?(I=R.tail,R.rendering=I,R.tail=I.sibling,R.renderingStartTime=ja(),I.sibling=null,$=Ma.current,ra(Ma,se?$&1|2:$&1),I):(Yo(I),null);case 22:case 23:return yy(),se=I.memoizedState!==null,L!==null&&L.memoizedState!==null!==se&&(I.flags|=8192),se&&I.mode&1?ll&1073741824&&(Yo(I),I.subtreeFlags&6&&(I.flags|=8192)):Yo(I),null;case 24:return null;case 25:return null}throw Error(_r(156,I.tag))}function zk(L,I){switch(Jm(I),I.tag){case 1:return Vs(I.type)&&t1(),L=I.flags,L&65536?(I.flags=L&-65537|128,I):null;case 3:return Oh(),pa(Us),pa($o),sy(),L=I.flags,L&65536&&!(L&128)?(I.flags=L&-65537|128,I):null;case 5:return oy(I),null;case 13:if(pa(Ma),L=I.memoizedState,L!==null&&L.dehydrated!==null){if(I.alternate===null)throw Error(_r(340));Lh()}return L=I.flags,L&65536?(I.flags=L&-65537|128,I):null;case 19:return pa(Ma),null;case 4:return Oh(),null;case 10:return ny(I.type._context),null;case 22:case 23:return yy(),null;case 24:return null;default:return null}}var g0=!1,Xo=!1,Dk=typeof WeakSet=="function"?WeakSet:Set,Fr=null;function vh(L,I){var $=L.ref;if($!==null)if(typeof $=="function")try{$(null)}catch(se){Ra(L,I,se)}else $.current=null}function em(L,I,$){try{$()}catch(se){Ra(L,I,se)}}var yb=!1;function Fk(L,I){if(Fv=K0,L=E3(),$m(L)){if("selectionStart"in L)var $={start:L.selectionStart,end:L.selectionEnd};else e:{$=($=L.ownerDocument)&&$.defaultView||window;var se=$.getSelection&&$.getSelection();if(se&&se.rangeCount!==0){$=se.anchorNode;var Pe=se.anchorOffset,R=se.focusNode;se=se.focusOffset;try{$.nodeType,R.nodeType}catch{$=null;break e}var E=0,e=-1,w=-1,k=0,i=0,_=L,y=null;t:for(;;){for(var h;_!==$||Pe!==0&&_.nodeType!==3||(e=E+Pe),_!==R||se!==0&&_.nodeType!==3||(w=E+se),_.nodeType===3&&(E+=_.nodeValue.length),(h=_.firstChild)!==null;)y=_,_=h;for(;;){if(_===L)break t;if(y===$&&++k===Pe&&(e=E),y===R&&++i===se&&(w=E),(h=_.nextSibling)!==null)break;_=y,y=_.parentNode}_=h}$=e===-1||w===-1?null:{start:e,end:w}}else $=null}$=$||{start:0,end:0}}else $=null;for(Bv={focusedElem:L,selectionRange:$},K0=!1,Fr=I;Fr!==null;)if(I=Fr,L=I.child,(I.subtreeFlags&1028)!==0&&L!==null)L.return=I,Fr=L;else for(;Fr!==null;){I=Fr;try{var l=I.alternate;if(I.flags&1024)switch(I.tag){case 0:case 11:case 15:break;case 1:if(l!==null){var t=l.memoizedProps,o=l.memoizedState,r=I.stateNode,n=r.getSnapshotBeforeUpdate(I.elementType===I.type?t:Ql(I.type,t),o);r.__reactInternalSnapshotBeforeUpdate=n}break;case 3:var a=I.stateNode.containerInfo;a.nodeType===1?a.textContent="":a.nodeType===9&&a.documentElement&&a.removeChild(a.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(_r(163))}}catch(s){Ra(I,I.return,s)}if(L=I.sibling,L!==null){L.return=I.return,Fr=L;break}Fr=I.return}return l=yb,yb=!1,l}function Fp(L,I,$){var se=I.updateQueue;if(se=se!==null?se.lastEffect:null,se!==null){var Pe=se=se.next;do{if((Pe.tag&L)===L){var R=Pe.destroy;Pe.destroy=void 0,R!==void 0&&em(I,$,R)}Pe=Pe.next}while(Pe!==se)}}function C1(L,I){if(I=I.updateQueue,I=I!==null?I.lastEffect:null,I!==null){var $=I=I.next;do{if(($.tag&L)===L){var se=$.create;$.destroy=se()}$=$.next}while($!==I)}}function tm(L){var I=L.ref;if(I!==null){var $=L.stateNode;switch(L.tag){case 5:L=$;break;default:L=$}typeof I=="function"?I(L):I.current=L}}function Aw(L){var I=L.alternate;I!==null&&(L.alternate=null,Aw(I)),L.child=null,L.deletions=null,L.sibling=null,L.tag===5&&(I=L.stateNode,I!==null&&(delete I[wu],delete I[Jp],delete I[Uv],delete I[xk],delete I[bk])),L.stateNode=null,L.return=null,L.dependencies=null,L.memoizedProps=null,L.memoizedState=null,L.pendingProps=null,L.stateNode=null,L.updateQueue=null}function Mw(L){return L.tag===5||L.tag===3||L.tag===4}function xb(L){e:for(;;){for(;L.sibling===null;){if(L.return===null||Mw(L.return))return null;L=L.return}for(L.sibling.return=L.return,L=L.sibling;L.tag!==5&&L.tag!==6&&L.tag!==18;){if(L.flags&2||L.child===null||L.tag===4)continue e;L.child.return=L,L=L.child}if(!(L.flags&2))return L.stateNode}}function nm(L,I,$){var se=L.tag;if(se===5||se===6)L=L.stateNode,I?$.nodeType===8?$.parentNode.insertBefore(L,I):$.insertBefore(L,I):($.nodeType===8?(I=$.parentNode,I.insertBefore(L,$)):(I=$,I.appendChild(L)),$=$._reactRootContainer,$!=null||I.onclick!==null||(I.onclick=e1));else if(se!==4&&(L=L.child,L!==null))for(nm(L,I,$),L=L.sibling;L!==null;)nm(L,I,$),L=L.sibling}function rm(L,I,$){var se=L.tag;if(se===5||se===6)L=L.stateNode,I?$.insertBefore(L,I):$.appendChild(L);else if(se!==4&&(L=L.child,L!==null))for(rm(L,I,$),L=L.sibling;L!==null;)rm(L,I,$),L=L.sibling}var Co=null,eu=!1;function bc(L,I,$){for($=$.child;$!==null;)Sw(L,I,$),$=$.sibling}function Sw(L,I,$){if(Au&&typeof Au.onCommitFiberUnmount=="function")try{Au.onCommitFiberUnmount(_1,$)}catch{}switch($.tag){case 5:Xo||vh($,I);case 6:var se=Co,Pe=eu;Co=null,bc(L,I,$),Co=se,eu=Pe,Co!==null&&(eu?(L=Co,$=$.stateNode,L.nodeType===8?L.parentNode.removeChild($):L.removeChild($)):Co.removeChild($.stateNode));break;case 18:Co!==null&&(eu?(L=Co,$=$.stateNode,L.nodeType===8?Vg(L.parentNode,$):L.nodeType===1&&Vg(L,$),Zp(L)):Vg(Co,$.stateNode));break;case 4:se=Co,Pe=eu,Co=$.stateNode.containerInfo,eu=!0,bc(L,I,$),Co=se,eu=Pe;break;case 0:case 11:case 14:case 15:if(!Xo&&(se=$.updateQueue,se!==null&&(se=se.lastEffect,se!==null))){Pe=se=se.next;do{var R=Pe,E=R.destroy;R=R.tag,E!==void 0&&(R&2||R&4)&&em($,I,E),Pe=Pe.next}while(Pe!==se)}bc(L,I,$);break;case 1:if(!Xo&&(vh($,I),se=$.stateNode,typeof se.componentWillUnmount=="function"))try{se.props=$.memoizedProps,se.state=$.memoizedState,se.componentWillUnmount()}catch(e){Ra($,I,e)}bc(L,I,$);break;case 21:bc(L,I,$);break;case 22:$.mode&1?(Xo=(se=Xo)||$.memoizedState!==null,bc(L,I,$),Xo=se):bc(L,I,$);break;default:bc(L,I,$)}}function bb(L){var I=L.updateQueue;if(I!==null){L.updateQueue=null;var $=L.stateNode;$===null&&($=L.stateNode=new Dk),I.forEach(function(se){var Pe=Wk.bind(null,L,se);$.has(se)||($.add(se),se.then(Pe,Pe))})}}function Jl(L,I){var $=I.deletions;if($!==null)for(var se=0;se<$.length;se++){var Pe=$[se];try{var R=L,E=I,e=E;e:for(;e!==null;){switch(e.tag){case 5:Co=e.stateNode,eu=!1;break e;case 3:Co=e.stateNode.containerInfo,eu=!0;break e;case 4:Co=e.stateNode.containerInfo,eu=!0;break e}e=e.return}if(Co===null)throw Error(_r(160));Sw(R,E,Pe),Co=null,eu=!1;var w=Pe.alternate;w!==null&&(w.return=null),Pe.return=null}catch(k){Ra(Pe,I,k)}}if(I.subtreeFlags&12854)for(I=I.child;I!==null;)Ew(I,L),I=I.sibling}function Ew(L,I){var $=L.alternate,se=L.flags;switch(L.tag){case 0:case 11:case 14:case 15:if(Jl(I,L),yu(L),se&4){try{Fp(3,L,L.return),C1(3,L)}catch(t){Ra(L,L.return,t)}try{Fp(5,L,L.return)}catch(t){Ra(L,L.return,t)}}break;case 1:Jl(I,L),yu(L),se&512&&$!==null&&vh($,$.return);break;case 5:if(Jl(I,L),yu(L),se&512&&$!==null&&vh($,$.return),L.flags&32){var Pe=L.stateNode;try{Hp(Pe,"")}catch(t){Ra(L,L.return,t)}}if(se&4&&(Pe=L.stateNode,Pe!=null)){var R=L.memoizedProps,E=$!==null?$.memoizedProps:R,e=L.type,w=L.updateQueue;if(L.updateQueue=null,w!==null)try{e==="input"&&R.type==="radio"&&R.name!=null&&X_(Pe,R),Sv(e,E);var k=Sv(e,R);for(E=0;E<w.length;E+=2){var i=w[E],_=w[E+1];i==="style"?e3(Pe,_):i==="dangerouslySetInnerHTML"?J_(Pe,_):i==="children"?Hp(Pe,_):Fm(Pe,i,_,k)}switch(e){case"input":wv(Pe,R);break;case"textarea":$_(Pe,R);break;case"select":var y=Pe._wrapperState.wasMultiple;Pe._wrapperState.wasMultiple=!!R.multiple;var h=R.value;h!=null?_h(Pe,!!R.multiple,h,!1):y!==!!R.multiple&&(R.defaultValue!=null?_h(Pe,!!R.multiple,R.defaultValue,!0):_h(Pe,!!R.multiple,R.multiple?[]:"",!1))}Pe[Jp]=R}catch(t){Ra(L,L.return,t)}}break;case 6:if(Jl(I,L),yu(L),se&4){if(L.stateNode===null)throw Error(_r(162));Pe=L.stateNode,R=L.memoizedProps;try{Pe.nodeValue=R}catch(t){Ra(L,L.return,t)}}break;case 3:if(Jl(I,L),yu(L),se&4&&$!==null&&$.memoizedState.isDehydrated)try{Zp(I.containerInfo)}catch(t){Ra(L,L.return,t)}break;case 4:Jl(I,L),yu(L);break;case 13:Jl(I,L),yu(L),Pe=L.child,Pe.flags&8192&&(R=Pe.memoizedState!==null,Pe.stateNode.isHidden=R,!R||Pe.alternate!==null&&Pe.alternate.memoizedState!==null||(vy=ja())),se&4&&bb(L);break;case 22:if(i=$!==null&&$.memoizedState!==null,L.mode&1?(Xo=(k=Xo)||i,Jl(I,L),Xo=k):Jl(I,L),yu(L),se&8192){if(k=L.memoizedState!==null,(L.stateNode.isHidden=k)&&!i&&L.mode&1)for(Fr=L,i=L.child;i!==null;){for(_=Fr=i;Fr!==null;){switch(y=Fr,h=y.child,y.tag){case 0:case 11:case 14:case 15:Fp(4,y,y.return);break;case 1:vh(y,y.return);var l=y.stateNode;if(typeof l.componentWillUnmount=="function"){se=y,$=y.return;try{I=se,l.props=I.memoizedProps,l.state=I.memoizedState,l.componentWillUnmount()}catch(t){Ra(se,$,t)}}break;case 5:vh(y,y.return);break;case 22:if(y.memoizedState!==null){wb(_);continue}}h!==null?(h.return=y,Fr=h):wb(_)}i=i.sibling}e:for(i=null,_=L;;){if(_.tag===5){if(i===null){i=_;try{Pe=_.stateNode,k?(R=Pe.style,typeof R.setProperty=="function"?R.setProperty("display","none","important"):R.display="none"):(e=_.stateNode,w=_.memoizedProps.style,E=w!=null&&w.hasOwnProperty("display")?w.display:null,e.style.display=Q_("display",E))}catch(t){Ra(L,L.return,t)}}}else if(_.tag===6){if(i===null)try{_.stateNode.nodeValue=k?"":_.memoizedProps}catch(t){Ra(L,L.return,t)}}else if((_.tag!==22&&_.tag!==23||_.memoizedState===null||_===L)&&_.child!==null){_.child.return=_,_=_.child;continue}if(_===L)break e;for(;_.sibling===null;){if(_.return===null||_.return===L)break e;i===_&&(i=null),_=_.return}i===_&&(i=null),_.sibling.return=_.return,_=_.sibling}}break;case 19:Jl(I,L),yu(L),se&4&&bb(L);break;case 21:break;default:Jl(I,L),yu(L)}}function yu(L){var I=L.flags;if(I&2){try{e:{for(var $=L.return;$!==null;){if(Mw($)){var se=$;break e}$=$.return}throw Error(_r(160))}switch(se.tag){case 5:var Pe=se.stateNode;se.flags&32&&(Hp(Pe,""),se.flags&=-33);var R=xb(L);rm(L,R,Pe);break;case 3:case 4:var E=se.stateNode.containerInfo,e=xb(L);nm(L,e,E);break;default:throw Error(_r(161))}}catch(w){Ra(L,L.return,w)}L.flags&=-3}I&4096&&(L.flags&=-4097)}function Bk(L,I,$){Fr=L,Cw(L)}function Cw(L,I,$){for(var se=(L.mode&1)!==0;Fr!==null;){var Pe=Fr,R=Pe.child;if(Pe.tag===22&&se){var E=Pe.memoizedState!==null||g0;if(!E){var e=Pe.alternate,w=e!==null&&e.memoizedState!==null||Xo;e=g0;var k=Xo;if(g0=E,(Xo=w)&&!k)for(Fr=Pe;Fr!==null;)E=Fr,w=E.child,E.tag===22&&E.memoizedState!==null?kb(Pe):w!==null?(w.return=E,Fr=w):kb(Pe);for(;R!==null;)Fr=R,Cw(R),R=R.sibling;Fr=Pe,g0=e,Xo=k}_b(L)}else Pe.subtreeFlags&8772&&R!==null?(R.return=Pe,Fr=R):_b(L)}}function _b(L){for(;Fr!==null;){var I=Fr;if(I.flags&8772){var $=I.alternate;try{if(I.flags&8772)switch(I.tag){case 0:case 11:case 15:Xo||C1(5,I);break;case 1:var se=I.stateNode;if(I.flags&4&&!Xo)if($===null)se.componentDidMount();else{var Pe=I.elementType===I.type?$.memoizedProps:Ql(I.type,$.memoizedProps);se.componentDidUpdate(Pe,$.memoizedState,se.__reactInternalSnapshotBeforeUpdate)}var R=I.updateQueue;R!==null&&ib(I,R,se);break;case 3:var E=I.updateQueue;if(E!==null){if($=null,I.child!==null)switch(I.child.tag){case 5:$=I.child.stateNode;break;case 1:$=I.child.stateNode}ib(I,E,$)}break;case 5:var e=I.stateNode;if($===null&&I.flags&4){$=e;var w=I.memoizedProps;switch(I.type){case"button":case"input":case"select":case"textarea":w.autoFocus&&$.focus();break;case"img":w.src&&($.src=w.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(I.memoizedState===null){var k=I.alternate;if(k!==null){var i=k.memoizedState;if(i!==null){var _=i.dehydrated;_!==null&&Zp(_)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(_r(163))}Xo||I.flags&512&&tm(I)}catch(y){Ra(I,I.return,y)}}if(I===L){Fr=null;break}if($=I.sibling,$!==null){$.return=I.return,Fr=$;break}Fr=I.return}}function wb(L){for(;Fr!==null;){var I=Fr;if(I===L){Fr=null;break}var $=I.sibling;if($!==null){$.return=I.return,Fr=$;break}Fr=I.return}}function kb(L){for(;Fr!==null;){var I=Fr;try{switch(I.tag){case 0:case 11:case 15:var $=I.return;try{C1(4,I)}catch(w){Ra(I,$,w)}break;case 1:var se=I.stateNode;if(typeof se.componentDidMount=="function"){var Pe=I.return;try{se.componentDidMount()}catch(w){Ra(I,Pe,w)}}var R=I.return;try{tm(I)}catch(w){Ra(I,R,w)}break;case 5:var E=I.return;try{tm(I)}catch(w){Ra(I,E,w)}}}catch(w){Ra(I,I.return,w)}if(I===L){Fr=null;break}var e=I.sibling;if(e!==null){e.return=I.return,Fr=e;break}Fr=I.return}}var Nk=Math.ceil,f1=rc.ReactCurrentDispatcher,dy=rc.ReactCurrentOwner,Ol=rc.ReactCurrentBatchConfig,Ti=0,yo=null,Ja=null,Io=0,ll=0,mh=Yc(0),oo=0,id=null,Mf=0,L1=0,gy=0,Bp=null,Ns=null,vy=0,Rh=1/0,Hu=null,h1=!1,im=null,jc=null,v0=!1,Oc=null,p1=0,Np=0,am=null,z0=-1,D0=0;function vs(){return Ti&6?ja():z0!==-1?z0:z0=ja()}function Uc(L){return L.mode&1?Ti&2&&Io!==0?Io&-Io:wk.transition!==null?(D0===0&&(D0=h3()),D0):(L=Ui,L!==0||(L=window.event,L=L===void 0?16:x3(L.type)),L):1}function iu(L,I,$,se){if(50<Np)throw Np=0,am=null,Error(_r(185));cd(L,$,se),(!(Ti&2)||L!==yo)&&(L===yo&&(!(Ti&2)&&(L1|=$),oo===4&&Ec(L,Io)),Hs(L,se),$===1&&Ti===0&&!(I.mode&1)&&(Rh=ja()+500,M1&&Xc()))}function Hs(L,I){var $=L.callbackNode;w8(L,I);var se=$0(L,L===yo?Io:0);if(se===0)$!==null&&O2($),L.callbackNode=null,L.callbackPriority=0;else if(I=se&-se,L.callbackPriority!==I){if($!=null&&O2($),I===1)L.tag===0?_k(Tb.bind(null,L)):B3(Tb.bind(null,L)),mk(function(){!(Ti&6)&&Xc()}),$=null;else{switch(p3(se)){case 1:$=Vm;break;case 4:$=c3;break;case 16:$=X0;break;case 536870912:$=f3;break;default:$=X0}$=Fw($,Lw.bind(null,L))}L.callbackPriority=I,L.callbackNode=$}}function Lw(L,I){if(z0=-1,D0=0,Ti&6)throw Error(_r(327));var $=L.callbackNode;if(Mh()&&L.callbackNode!==$)return null;var se=$0(L,L===yo?Io:0);if(se===0)return null;if(se&30||se&L.expiredLanes||I)I=d1(L,se);else{I=se;var Pe=Ti;Ti|=2;var R=Ow();(yo!==L||Io!==I)&&(Hu=null,Rh=ja()+500,yf(L,I));do try{Vk();break}catch(e){Pw(L,e)}while(1);ty(),f1.current=R,Ti=Pe,Ja!==null?I=0:(yo=null,Io=0,I=oo)}if(I!==0){if(I===2&&(Pe=Ov(L),Pe!==0&&(se=Pe,I=om(L,Pe))),I===1)throw $=id,yf(L,0),Ec(L,se),Hs(L,ja()),$;if(I===6)Ec(L,se);else{if(Pe=L.current.alternate,!(se&30)&&!jk(Pe)&&(I=d1(L,se),I===2&&(R=Ov(L),R!==0&&(se=R,I=om(L,R))),I===1))throw $=id,yf(L,0),Ec(L,se),Hs(L,ja()),$;switch(L.finishedWork=Pe,L.finishedLanes=se,I){case 0:case 1:throw Error(_r(345));case 2:hf(L,Ns,Hu);break;case 3:if(Ec(L,se),(se&130023424)===se&&(I=vy+500-ja(),10<I)){if($0(L,0)!==0)break;if(Pe=L.suspendedLanes,(Pe&se)!==se){vs(),L.pingedLanes|=L.suspendedLanes&Pe;break}L.timeoutHandle=jv(hf.bind(null,L,Ns,Hu),I);break}hf(L,Ns,Hu);break;case 4:if(Ec(L,se),(se&4194240)===se)break;for(I=L.eventTimes,Pe=-1;0<se;){var E=31-ru(se);R=1<<E,E=I[E],E>Pe&&(Pe=E),se&=~R}if(se=Pe,se=ja()-se,se=(120>se?120:480>se?480:1080>se?1080:1920>se?1920:3e3>se?3e3:4320>se?4320:1960*Nk(se/1960))-se,10<se){L.timeoutHandle=jv(hf.bind(null,L,Ns,Hu),se);break}hf(L,Ns,Hu);break;case 5:hf(L,Ns,Hu);break;default:throw Error(_r(329))}}}return Hs(L,ja()),L.callbackNode===$?Lw.bind(null,L):null}function om(L,I){var $=Bp;return L.current.memoizedState.isDehydrated&&(yf(L,I).flags|=256),L=d1(L,I),L!==2&&(I=Ns,Ns=$,I!==null&&sm(I)),L}function sm(L){Ns===null?Ns=L:Ns.push.apply(Ns,L)}function jk(L){for(var I=L;;){if(I.flags&16384){var $=I.updateQueue;if($!==null&&($=$.stores,$!==null))for(var se=0;se<$.length;se++){var Pe=$[se],R=Pe.getSnapshot;Pe=Pe.value;try{if(!au(R(),Pe))return!1}catch{return!1}}}if($=I.child,I.subtreeFlags&16384&&$!==null)$.return=I,I=$;else{if(I===L)break;for(;I.sibling===null;){if(I.return===null||I.return===L)return!0;I=I.return}I.sibling.return=I.return,I=I.sibling}}return!0}function Ec(L,I){for(I&=~gy,I&=~L1,L.suspendedLanes|=I,L.pingedLanes&=~I,L=L.expirationTimes;0<I;){var $=31-ru(I),se=1<<$;L[$]=-1,I&=~se}}function Tb(L){if(Ti&6)throw Error(_r(327));Mh();var I=$0(L,0);if(!(I&1))return Hs(L,ja()),null;var $=d1(L,I);if(L.tag!==0&&$===2){var se=Ov(L);se!==0&&(I=se,$=om(L,se))}if($===1)throw $=id,yf(L,0),Ec(L,I),Hs(L,ja()),$;if($===6)throw Error(_r(345));return L.finishedWork=L.current.alternate,L.finishedLanes=I,hf(L,Ns,Hu),Hs(L,ja()),null}function my(L,I){var $=Ti;Ti|=1;try{return L(I)}finally{Ti=$,Ti===0&&(Rh=ja()+500,M1&&Xc())}}function Sf(L){Oc!==null&&Oc.tag===0&&!(Ti&6)&&Mh();var I=Ti;Ti|=1;var $=Ol.transition,se=Ui;try{if(Ol.transition=null,Ui=1,L)return L()}finally{Ui=se,Ol.transition=$,Ti=I,!(Ti&6)&&Xc()}}function yy(){ll=mh.current,pa(mh)}function yf(L,I){L.finishedWork=null,L.finishedLanes=0;var $=L.timeoutHandle;if($!==-1&&(L.timeoutHandle=-1,vk($)),Ja!==null)for($=Ja.return;$!==null;){var se=$;switch(Jm(se),se.tag){case 1:se=se.type.childContextTypes,se!=null&&t1();break;case 3:Oh(),pa(Us),pa($o),sy();break;case 5:oy(se);break;case 4:Oh();break;case 13:pa(Ma);break;case 19:pa(Ma);break;case 10:ny(se.type._context);break;case 22:case 23:yy()}$=$.return}if(yo=L,Ja=L=Vc(L.current,null),Io=ll=I,oo=0,id=null,gy=L1=Mf=0,Ns=Bp=null,vf!==null){for(I=0;I<vf.length;I++)if($=vf[I],se=$.interleaved,se!==null){$.interleaved=null;var Pe=se.next,R=$.pending;if(R!==null){var E=R.next;R.next=Pe,se.next=E}$.pending=se}vf=null}return L}function Pw(L,I){do{var $=Ja;try{if(ty(),O0.current=c1,u1){for(var se=Ea.memoizedState;se!==null;){var Pe=se.queue;Pe!==null&&(Pe.pending=null),se=se.next}u1=!1}if(Af=0,mo=io=Ea=null,Dp=!1,td=0,dy.current=null,$===null||$.return===null){oo=1,id=I,Ja=null;break}e:{var R=L,E=$.return,e=$,w=I;if(I=Io,e.flags|=32768,w!==null&&typeof w=="object"&&typeof w.then=="function"){var k=w,i=e,_=i.tag;if(!(i.mode&1)&&(_===0||_===11||_===15)){var y=i.alternate;y?(i.updateQueue=y.updateQueue,i.memoizedState=y.memoizedState,i.lanes=y.lanes):(i.updateQueue=null,i.memoizedState=null)}var h=fb(E);if(h!==null){h.flags&=-257,hb(h,E,e,R,I),h.mode&1&&cb(R,k,I),I=h,w=k;var l=I.updateQueue;if(l===null){var t=new Set;t.add(w),I.updateQueue=t}else l.add(w);break e}else{if(!(I&1)){cb(R,k,I),xy();break e}w=Error(_r(426))}}else if(ya&&e.mode&1){var o=fb(E);if(o!==null){!(o.flags&65536)&&(o.flags|=256),hb(o,E,e,R,I),Qm(Ih(w,e));break e}}R=w=Ih(w,e),oo!==4&&(oo=2),Bp===null?Bp=[R]:Bp.push(R),R=E;do{switch(R.tag){case 3:R.flags|=65536,I&=-I,R.lanes|=I;var r=dw(R,w,I);rb(R,r);break e;case 1:e=w;var n=R.type,a=R.stateNode;if(!(R.flags&128)&&(typeof n.getDerivedStateFromError=="function"||a!==null&&typeof a.componentDidCatch=="function"&&(jc===null||!jc.has(a)))){R.flags|=65536,I&=-I,R.lanes|=I;var s=gw(R,e,I);rb(R,s);break e}}R=R.return}while(R!==null)}Rw($)}catch(u){I=u,Ja===$&&$!==null&&(Ja=$=$.return);continue}break}while(1)}function Ow(){var L=f1.current;return f1.current=c1,L===null?c1:L}function xy(){(oo===0||oo===3||oo===2)&&(oo=4),yo===null||!(Mf&268435455)&&!(L1&268435455)||Ec(yo,Io)}function d1(L,I){var $=Ti;Ti|=2;var se=Ow();(yo!==L||Io!==I)&&(Hu=null,yf(L,I));do try{Uk();break}catch(Pe){Pw(L,Pe)}while(1);if(ty(),Ti=$,f1.current=se,Ja!==null)throw Error(_r(261));return yo=null,Io=0,oo}function Uk(){for(;Ja!==null;)Iw(Ja)}function Vk(){for(;Ja!==null&&!p8();)Iw(Ja)}function Iw(L){var I=Dw(L.alternate,L,ll);L.memoizedProps=L.pendingProps,I===null?Rw(L):Ja=I,dy.current=null}function Rw(L){var I=L;do{var $=I.alternate;if(L=I.return,I.flags&32768){if($=zk($,I),$!==null){$.flags&=32767,Ja=$;return}if(L!==null)L.flags|=32768,L.subtreeFlags=0,L.deletions=null;else{oo=6,Ja=null;return}}else if($=Rk($,I,ll),$!==null){Ja=$;return}if(I=I.sibling,I!==null){Ja=I;return}Ja=I=L}while(I!==null);oo===0&&(oo=5)}function hf(L,I,$){var se=Ui,Pe=Ol.transition;try{Ol.transition=null,Ui=1,Hk(L,I,$,se)}finally{Ol.transition=Pe,Ui=se}return null}function Hk(L,I,$,se){do Mh();while(Oc!==null);if(Ti&6)throw Error(_r(327));$=L.finishedWork;var Pe=L.finishedLanes;if($===null)return null;if(L.finishedWork=null,L.finishedLanes=0,$===L.current)throw Error(_r(177));L.callbackNode=null,L.callbackPriority=0;var R=$.lanes|$.childLanes;if(k8(L,R),L===yo&&(Ja=yo=null,Io=0),!($.subtreeFlags&2064)&&!($.flags&2064)||v0||(v0=!0,Fw(X0,function(){return Mh(),null})),R=($.flags&15990)!==0,$.subtreeFlags&15990||R){R=Ol.transition,Ol.transition=null;var E=Ui;Ui=1;var e=Ti;Ti|=4,dy.current=null,Fk(L,$),Ew($,L),uk(Bv),K0=!!Fv,Bv=Fv=null,L.current=$,Bk($),d8(),Ti=e,Ui=E,Ol.transition=R}else L.current=$;if(v0&&(v0=!1,Oc=L,p1=Pe),R=L.pendingLanes,R===0&&(jc=null),m8($.stateNode),Hs(L,ja()),I!==null)for(se=L.onRecoverableError,$=0;$<I.length;$++)Pe=I[$],se(Pe.value,{componentStack:Pe.stack,digest:Pe.digest});if(h1)throw h1=!1,L=im,im=null,L;return p1&1&&L.tag!==0&&Mh(),R=L.pendingLanes,R&1?L===am?Np++:(Np=0,am=L):Np=0,Xc(),null}function Mh(){if(Oc!==null){var L=p3(p1),I=Ol.transition,$=Ui;try{if(Ol.transition=null,Ui=16>L?16:L,Oc===null)var se=!1;else{if(L=Oc,Oc=null,p1=0,Ti&6)throw Error(_r(331));var Pe=Ti;for(Ti|=4,Fr=L.current;Fr!==null;){var R=Fr,E=R.child;if(Fr.flags&16){var e=R.deletions;if(e!==null){for(var w=0;w<e.length;w++){var k=e[w];for(Fr=k;Fr!==null;){var i=Fr;switch(i.tag){case 0:case 11:case 15:Fp(8,i,R)}var _=i.child;if(_!==null)_.return=i,Fr=_;else for(;Fr!==null;){i=Fr;var y=i.sibling,h=i.return;if(Aw(i),i===k){Fr=null;break}if(y!==null){y.return=h,Fr=y;break}Fr=h}}}var l=R.alternate;if(l!==null){var t=l.child;if(t!==null){l.child=null;do{var o=t.sibling;t.sibling=null,t=o}while(t!==null)}}Fr=R}}if(R.subtreeFlags&2064&&E!==null)E.return=R,Fr=E;else e:for(;Fr!==null;){if(R=Fr,R.flags&2048)switch(R.tag){case 0:case 11:case 15:Fp(9,R,R.return)}var r=R.sibling;if(r!==null){r.return=R.return,Fr=r;break e}Fr=R.return}}var n=L.current;for(Fr=n;Fr!==null;){E=Fr;var a=E.child;if(E.subtreeFlags&2064&&a!==null)a.return=E,Fr=a;else e:for(E=n;Fr!==null;){if(e=Fr,e.flags&2048)try{switch(e.tag){case 0:case 11:case 15:C1(9,e)}}catch(u){Ra(e,e.return,u)}if(e===E){Fr=null;break e}var s=e.sibling;if(s!==null){s.return=e.return,Fr=s;break e}Fr=e.return}}if(Ti=Pe,Xc(),Au&&typeof Au.onPostCommitFiberRoot=="function")try{Au.onPostCommitFiberRoot(_1,L)}catch{}se=!0}return se}finally{Ui=$,Ol.transition=I}}return!1}function Ab(L,I,$){I=Ih($,I),I=dw(L,I,1),L=Nc(L,I,1),I=vs(),L!==null&&(cd(L,1,I),Hs(L,I))}function Ra(L,I,$){if(L.tag===3)Ab(L,L,$);else for(;I!==null;){if(I.tag===3){Ab(I,L,$);break}else if(I.tag===1){var se=I.stateNode;if(typeof I.type.getDerivedStateFromError=="function"||typeof se.componentDidCatch=="function"&&(jc===null||!jc.has(se))){L=Ih($,L),L=gw(I,L,1),I=Nc(I,L,1),L=vs(),I!==null&&(cd(I,1,L),Hs(I,L));break}}I=I.return}}function qk(L,I,$){var se=L.pingCache;se!==null&&se.delete(I),I=vs(),L.pingedLanes|=L.suspendedLanes&$,yo===L&&(Io&$)===$&&(oo===4||oo===3&&(Io&130023424)===Io&&500>ja()-vy?yf(L,0):gy|=$),Hs(L,I)}function zw(L,I){I===0&&(L.mode&1?(I=o0,o0<<=1,!(o0&130023424)&&(o0=4194304)):I=1);var $=vs();L=ec(L,I),L!==null&&(cd(L,I,$),Hs(L,$))}function Gk(L){var I=L.memoizedState,$=0;I!==null&&($=I.retryLane),zw(L,$)}function Wk(L,I){var $=0;switch(L.tag){case 13:var se=L.stateNode,Pe=L.memoizedState;Pe!==null&&($=Pe.retryLane);break;case 19:se=L.stateNode;break;default:throw Error(_r(314))}se!==null&&se.delete(I),zw(L,$)}var Dw;Dw=function(L,I,$){if(L!==null)if(L.memoizedProps!==I.pendingProps||Us.current)js=!0;else{if(!(L.lanes&$)&&!(I.flags&128))return js=!1,Ik(L,I,$);js=!!(L.flags&131072)}else js=!1,ya&&I.flags&1048576&&N3(I,i1,I.index);switch(I.lanes=0,I.tag){case 2:var se=I.type;R0(L,I),L=I.pendingProps;var Pe=Ch(I,$o.current);Ah(I,$),Pe=uy(null,I,se,L,Pe,$);var R=cy();return I.flags|=1,typeof Pe=="object"&&Pe!==null&&typeof Pe.render=="function"&&Pe.$$typeof===void 0?(I.tag=1,I.memoizedState=null,I.updateQueue=null,Vs(se)?(R=!0,n1(I)):R=!1,I.memoizedState=Pe.state!==null&&Pe.state!==void 0?Pe.state:null,iy(I),Pe.updater=S1,I.stateNode=Pe,Pe._reactInternals=I,Zv(I,se,L,$),I=$v(null,I,se,!0,R,$)):(I.tag=0,ya&&R&&Km(I),ps(null,I,Pe,$),I=I.child),I;case 16:se=I.elementType;e:{switch(R0(L,I),L=I.pendingProps,Pe=se._init,se=Pe(se._payload),I.type=se,Pe=I.tag=Yk(se),L=Ql(se,L),Pe){case 0:I=Xv(null,I,se,L,$);break e;case 1:I=gb(null,I,se,L,$);break e;case 11:I=pb(null,I,se,L,$);break e;case 14:I=db(null,I,se,Ql(se.type,L),$);break e}throw Error(_r(306,se,""))}return I;case 0:return se=I.type,Pe=I.pendingProps,Pe=I.elementType===se?Pe:Ql(se,Pe),Xv(L,I,se,Pe,$);case 1:return se=I.type,Pe=I.pendingProps,Pe=I.elementType===se?Pe:Ql(se,Pe),gb(L,I,se,Pe,$);case 3:e:{if(xw(I),L===null)throw Error(_r(387));se=I.pendingProps,R=I.memoizedState,Pe=R.element,H3(L,I),s1(I,se,null,$);var E=I.memoizedState;if(se=E.element,R.isDehydrated)if(R={element:se,isDehydrated:!1,cache:E.cache,pendingSuspenseBoundaries:E.pendingSuspenseBoundaries,transitions:E.transitions},I.updateQueue.baseState=R,I.memoizedState=R,I.flags&256){Pe=Ih(Error(_r(423)),I),I=vb(L,I,se,$,Pe);break e}else if(se!==Pe){Pe=Ih(Error(_r(424)),I),I=vb(L,I,se,$,Pe);break e}else for(ul=Bc(I.stateNode.containerInfo.firstChild),cl=I,ya=!0,tu=null,$=Z3(I,null,se,$),I.child=$;$;)$.flags=$.flags&-3|4096,$=$.sibling;else{if(Lh(),se===Pe){I=tc(L,I,$);break e}ps(L,I,se,$)}I=I.child}return I;case 5:return Y3(I),L===null&&qv(I),se=I.type,Pe=I.pendingProps,R=L!==null?L.memoizedProps:null,E=Pe.children,Nv(se,Pe)?E=null:R!==null&&Nv(se,R)&&(I.flags|=32),yw(L,I),ps(L,I,E,$),I.child;case 6:return L===null&&qv(I),null;case 13:return bw(L,I,$);case 4:return ay(I,I.stateNode.containerInfo),se=I.pendingProps,L===null?I.child=Ph(I,null,se,$):ps(L,I,se,$),I.child;case 11:return se=I.type,Pe=I.pendingProps,Pe=I.elementType===se?Pe:Ql(se,Pe),pb(L,I,se,Pe,$);case 7:return ps(L,I,I.pendingProps,$),I.child;case 8:return ps(L,I,I.pendingProps.children,$),I.child;case 12:return ps(L,I,I.pendingProps.children,$),I.child;case 10:e:{if(se=I.type._context,Pe=I.pendingProps,R=I.memoizedProps,E=Pe.value,ra(a1,se._currentValue),se._currentValue=E,R!==null)if(au(R.value,E)){if(R.children===Pe.children&&!Us.current){I=tc(L,I,$);break e}}else for(R=I.child,R!==null&&(R.return=I);R!==null;){var e=R.dependencies;if(e!==null){E=R.child;for(var w=e.firstContext;w!==null;){if(w.context===se){if(R.tag===1){w=$u(-1,$&-$),w.tag=2;var k=R.updateQueue;if(k!==null){k=k.shared;var i=k.pending;i===null?w.next=w:(w.next=i.next,i.next=w),k.pending=w}}R.lanes|=$,w=R.alternate,w!==null&&(w.lanes|=$),Gv(R.return,$,I),e.lanes|=$;break}w=w.next}}else if(R.tag===10)E=R.type===I.type?null:R.child;else if(R.tag===18){if(E=R.return,E===null)throw Error(_r(341));E.lanes|=$,e=E.alternate,e!==null&&(e.lanes|=$),Gv(E,$,I),E=R.sibling}else E=R.child;if(E!==null)E.return=R;else for(E=R;E!==null;){if(E===I){E=null;break}if(R=E.sibling,R!==null){R.return=E.return,E=R;break}E=E.return}R=E}ps(L,I,Pe.children,$),I=I.child}return I;case 9:return Pe=I.type,se=I.pendingProps.children,Ah(I,$),Pe=Il(Pe),se=se(Pe),I.flags|=1,ps(L,I,se,$),I.child;case 14:return se=I.type,Pe=Ql(se,I.pendingProps),Pe=Ql(se.type,Pe),db(L,I,se,Pe,$);case 15:return vw(L,I,I.type,I.pendingProps,$);case 17:return se=I.type,Pe=I.pendingProps,Pe=I.elementType===se?Pe:Ql(se,Pe),R0(L,I),I.tag=1,Vs(se)?(L=!0,n1(I)):L=!1,Ah(I,$),G3(I,se,Pe),Zv(I,se,Pe,$),$v(null,I,se,!0,L,$);case 19:return _w(L,I,$);case 22:return mw(L,I,$)}throw Error(_r(156,I.tag))};function Fw(L,I){return u3(L,I)}function Zk(L,I,$,se){this.tag=L,this.key=$,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=I,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=se,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Pl(L,I,$,se){return new Zk(L,I,$,se)}function by(L){return L=L.prototype,!(!L||!L.isReactComponent)}function Yk(L){if(typeof L=="function")return by(L)?1:0;if(L!=null){if(L=L.$$typeof,L===Nm)return 11;if(L===jm)return 14}return 2}function Vc(L,I){var $=L.alternate;return $===null?($=Pl(L.tag,I,L.key,L.mode),$.elementType=L.elementType,$.type=L.type,$.stateNode=L.stateNode,$.alternate=L,L.alternate=$):($.pendingProps=I,$.type=L.type,$.flags=0,$.subtreeFlags=0,$.deletions=null),$.flags=L.flags&14680064,$.childLanes=L.childLanes,$.lanes=L.lanes,$.child=L.child,$.memoizedProps=L.memoizedProps,$.memoizedState=L.memoizedState,$.updateQueue=L.updateQueue,I=L.dependencies,$.dependencies=I===null?null:{lanes:I.lanes,firstContext:I.firstContext},$.sibling=L.sibling,$.index=L.index,$.ref=L.ref,$}function F0(L,I,$,se,Pe,R){var E=2;if(se=L,typeof L=="function")by(L)&&(E=1);else if(typeof L=="string")E=5;else e:switch(L){case sh:return xf($.children,Pe,R,I);case Bm:E=8,Pe|=8;break;case mv:return L=Pl(12,$,I,Pe|2),L.elementType=mv,L.lanes=R,L;case yv:return L=Pl(13,$,I,Pe),L.elementType=yv,L.lanes=R,L;case xv:return L=Pl(19,$,I,Pe),L.elementType=xv,L.lanes=R,L;case W_:return P1($,Pe,R,I);default:if(typeof L=="object"&&L!==null)switch(L.$$typeof){case q_:E=10;break e;case G_:E=9;break e;case Nm:E=11;break e;case jm:E=14;break e;case Tc:E=16,se=null;break e}throw Error(_r(130,L==null?L:typeof L,""))}return I=Pl(E,$,I,Pe),I.elementType=L,I.type=se,I.lanes=R,I}function xf(L,I,$,se){return L=Pl(7,L,se,I),L.lanes=$,L}function P1(L,I,$,se){return L=Pl(22,L,se,I),L.elementType=W_,L.lanes=$,L.stateNode={isHidden:!1},L}function $g(L,I,$){return L=Pl(6,L,null,I),L.lanes=$,L}function Kg(L,I,$){return I=Pl(4,L.children!==null?L.children:[],L.key,I),I.lanes=$,I.stateNode={containerInfo:L.containerInfo,pendingChildren:null,implementation:L.implementation},I}function Xk(L,I,$,se,Pe){this.tag=I,this.containerInfo=L,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Pg(0),this.expirationTimes=Pg(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Pg(0),this.identifierPrefix=se,this.onRecoverableError=Pe,this.mutableSourceEagerHydrationData=null}function _y(L,I,$,se,Pe,R,E,e,w){return L=new Xk(L,I,$,e,w),I===1?(I=1,R===!0&&(I|=8)):I=0,R=Pl(3,null,null,I),L.current=R,R.stateNode=L,R.memoizedState={element:se,isDehydrated:$,cache:null,transitions:null,pendingSuspenseBoundaries:null},iy(R),L}function $k(L,I,$){var se=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:oh,key:se==null?null:""+se,children:L,containerInfo:I,implementation:$}}function Bw(L){if(!L)return Gc;L=L._reactInternals;e:{if(Pf(L)!==L||L.tag!==1)throw Error(_r(170));var I=L;do{switch(I.tag){case 3:I=I.stateNode.context;break e;case 1:if(Vs(I.type)){I=I.stateNode.__reactInternalMemoizedMergedChildContext;break e}}I=I.return}while(I!==null);throw Error(_r(171))}if(L.tag===1){var $=L.type;if(Vs($))return F3(L,$,I)}return I}function Nw(L,I,$,se,Pe,R,E,e,w){return L=_y($,se,!0,L,Pe,R,E,e,w),L.context=Bw(null),$=L.current,se=vs(),Pe=Uc($),R=$u(se,Pe),R.callback=I??null,Nc($,R,Pe),L.current.lanes=Pe,cd(L,Pe,se),Hs(L,se),L}function O1(L,I,$,se){var Pe=I.current,R=vs(),E=Uc(Pe);return $=Bw($),I.context===null?I.context=$:I.pendingContext=$,I=$u(R,E),I.payload={element:L},se=se===void 0?null:se,se!==null&&(I.callback=se),L=Nc(Pe,I,E),L!==null&&(iu(L,Pe,E,R),P0(L,Pe,E)),E}function g1(L){if(L=L.current,!L.child)return null;switch(L.child.tag){case 5:return L.child.stateNode;default:return L.child.stateNode}}function Mb(L,I){if(L=L.memoizedState,L!==null&&L.dehydrated!==null){var $=L.retryLane;L.retryLane=$!==0&&$<I?$:I}}function wy(L,I){Mb(L,I),(L=L.alternate)&&Mb(L,I)}function Kk(){return null}var jw=typeof reportError=="function"?reportError:function(L){console.error(L)};function ky(L){this._internalRoot=L}I1.prototype.render=ky.prototype.render=function(L){var I=this._internalRoot;if(I===null)throw Error(_r(409));O1(L,I,null,null)};I1.prototype.unmount=ky.prototype.unmount=function(){var L=this._internalRoot;if(L!==null){this._internalRoot=null;var I=L.containerInfo;Sf(function(){O1(null,L,null,null)}),I[Qu]=null}};function I1(L){this._internalRoot=L}I1.prototype.unstable_scheduleHydration=function(L){if(L){var I=v3();L={blockedOn:null,target:L,priority:I};for(var $=0;$<Sc.length&&I!==0&&I<Sc[$].priority;$++);Sc.splice($,0,L),$===0&&y3(L)}};function Ty(L){return!(!L||L.nodeType!==1&&L.nodeType!==9&&L.nodeType!==11)}function R1(L){return!(!L||L.nodeType!==1&&L.nodeType!==9&&L.nodeType!==11&&(L.nodeType!==8||L.nodeValue!==" react-mount-point-unstable "))}function Sb(){}function Jk(L,I,$,se,Pe){if(Pe){if(typeof se=="function"){var R=se;se=function(){var k=g1(E);R.call(k)}}var E=Nw(I,se,L,0,null,!1,!1,"",Sb);return L._reactRootContainer=E,L[Qu]=E.current,$p(L.nodeType===8?L.parentNode:L),Sf(),E}for(;Pe=L.lastChild;)L.removeChild(Pe);if(typeof se=="function"){var e=se;se=function(){var k=g1(w);e.call(k)}}var w=_y(L,0,!1,null,null,!1,!1,"",Sb);return L._reactRootContainer=w,L[Qu]=w.current,$p(L.nodeType===8?L.parentNode:L),Sf(function(){O1(I,w,$,se)}),w}function z1(L,I,$,se,Pe){var R=$._reactRootContainer;if(R){var E=R;if(typeof Pe=="function"){var e=Pe;Pe=function(){var w=g1(E);e.call(w)}}O1(I,E,L,Pe)}else E=Jk($,I,L,Pe,se);return g1(E)}d3=function(L){switch(L.tag){case 3:var I=L.stateNode;if(I.current.memoizedState.isDehydrated){var $=Ep(I.pendingLanes);$!==0&&(Hm(I,$|1),Hs(I,ja()),!(Ti&6)&&(Rh=ja()+500,Xc()))}break;case 13:Sf(function(){var se=ec(L,1);if(se!==null){var Pe=vs();iu(se,L,1,Pe)}}),wy(L,1)}};qm=function(L){if(L.tag===13){var I=ec(L,134217728);if(I!==null){var $=vs();iu(I,L,134217728,$)}wy(L,134217728)}};g3=function(L){if(L.tag===13){var I=Uc(L),$=ec(L,I);if($!==null){var se=vs();iu($,L,I,se)}wy(L,I)}};v3=function(){return Ui};m3=function(L,I){var $=Ui;try{return Ui=L,I()}finally{Ui=$}};Cv=function(L,I,$){switch(I){case"input":if(wv(L,$),I=$.name,$.type==="radio"&&I!=null){for($=L;$.parentNode;)$=$.parentNode;for($=$.querySelectorAll("input[name="+JSON.stringify(""+I)+'][type="radio"]'),I=0;I<$.length;I++){var se=$[I];if(se!==L&&se.form===L.form){var Pe=A1(se);if(!Pe)throw Error(_r(90));Y_(se),wv(se,Pe)}}}break;case"textarea":$_(L,$);break;case"select":I=$.value,I!=null&&_h(L,!!$.multiple,I,!1)}};r3=my;i3=Sf;var Qk={usingClientEntryPoint:!1,Events:[hd,fh,A1,t3,n3,my]},kp={findFiberByHostInstance:gf,bundleType:0,version:"18.2.0",rendererPackageName:"react-dom"},eT={bundleType:kp.bundleType,version:kp.version,rendererPackageName:kp.rendererPackageName,rendererConfig:kp.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:rc.ReactCurrentDispatcher,findHostInstanceByFiber:function(L){return L=s3(L),L===null?null:L.stateNode},findFiberByHostInstance:kp.findFiberByHostInstance||Kk,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0-next-9e3b772b8-20220608"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var m0=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!m0.isDisabled&&m0.supportsFiber)try{_1=m0.inject(eT),Au=m0}catch{}}pl.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Qk;pl.createPortal=function(L,I){var $=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Ty(I))throw Error(_r(200));return $k(L,I,null,$)};pl.createRoot=function(L,I){if(!Ty(L))throw Error(_r(299));var $=!1,se="",Pe=jw;return I!=null&&(I.unstable_strictMode===!0&&($=!0),I.identifierPrefix!==void 0&&(se=I.identifierPrefix),I.onRecoverableError!==void 0&&(Pe=I.onRecoverableError)),I=_y(L,1,!1,null,null,$,!1,se,Pe),L[Qu]=I.current,$p(L.nodeType===8?L.parentNode:L),new ky(I)};pl.findDOMNode=function(L){if(L==null)return null;if(L.nodeType===1)return L;var I=L._reactInternals;if(I===void 0)throw typeof L.render=="function"?Error(_r(188)):(L=Object.keys(L).join(","),Error(_r(268,L)));return L=s3(I),L=L===null?null:L.stateNode,L};pl.flushSync=function(L){return Sf(L)};pl.hydrate=function(L,I,$){if(!R1(I))throw Error(_r(200));return z1(null,L,I,!0,$)};pl.hydrateRoot=function(L,I,$){if(!Ty(L))throw Error(_r(405));var se=$!=null&&$.hydratedSources||null,Pe=!1,R="",E=jw;if($!=null&&($.unstable_strictMode===!0&&(Pe=!0),$.identifierPrefix!==void 0&&(R=$.identifierPrefix),$.onRecoverableError!==void 0&&(E=$.onRecoverableError)),I=Nw(I,null,L,1,$??null,Pe,!1,R,E),L[Qu]=I.current,$p(L),se)for(L=0;L<se.length;L++)$=se[L],Pe=$._getVersion,Pe=Pe($._source),I.mutableSourceEagerHydrationData==null?I.mutableSourceEagerHydrationData=[$,Pe]:I.mutableSourceEagerHydrationData.push($,Pe);return new I1(I)};pl.render=function(L,I,$){if(!R1(I))throw Error(_r(200));return z1(null,L,I,!1,$)};pl.unmountComponentAtNode=function(L){if(!R1(L))throw Error(_r(40));return L._reactRootContainer?(Sf(function(){z1(null,null,L,!1,function(){L._reactRootContainer=null,L[Qu]=null})}),!0):!1};pl.unstable_batchedUpdates=my;pl.unstable_renderSubtreeIntoContainer=function(L,I,$,se){if(!R1($))throw Error(_r(200));if(L==null||L._reactInternals===void 0)throw Error(_r(38));return z1(L,I,$,!1,se)};pl.version="18.2.0-next-9e3b772b8-20220608";function Uw(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Uw)}catch(L){console.error(L)}}Uw(),N_.exports=pl;var Ay=N_.exports;const tT=ld(Ay);function Eb(L,I){var $=Object.keys(L);if(Object.getOwnPropertySymbols){var se=Object.getOwnPropertySymbols(L);I&&(se=se.filter(function(Pe){return Object.getOwnPropertyDescriptor(L,Pe).enumerable})),$.push.apply($,se)}return $}function Zr(L){for(var I=1;I<arguments.length;I++){var $=arguments[I]!=null?arguments[I]:{};I%2?Eb(Object($),!0).forEach(function(se){Jr(L,se,$[se])}):Object.getOwnPropertyDescriptors?Object.defineProperties(L,Object.getOwnPropertyDescriptors($)):Eb(Object($)).forEach(function(se){Object.defineProperty(L,se,Object.getOwnPropertyDescriptor($,se))})}return L}function Hc(L){return Hc=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(I){return typeof I}:function(I){return I&&typeof Symbol=="function"&&I.constructor===Symbol&&I!==Symbol.prototype?"symbol":typeof I},Hc(L)}function Ua(L,I){if(!(L instanceof I))throw new TypeError("Cannot call a class as a function")}function Cb(L,I){for(var $=0;$<I.length;$++){var se=I[$];se.enumerable=se.enumerable||!1,se.configurable=!0,"value"in se&&(se.writable=!0),Object.defineProperty(L,se.key,se)}}function Va(L,I,$){return I&&Cb(L.prototype,I),$&&Cb(L,$),Object.defineProperty(L,"prototype",{writable:!1}),L}function Jr(L,I,$){return I in L?Object.defineProperty(L,I,{value:$,enumerable:!0,configurable:!0,writable:!0}):L[I]=$,L}function Vw(L,I){if(typeof I!="function"&&I!==null)throw new TypeError("Super expression must either be null or a function");L.prototype=Object.create(I&&I.prototype,{constructor:{value:L,writable:!0,configurable:!0}}),Object.defineProperty(L,"prototype",{writable:!1}),I&&lm(L,I)}function v1(L){return v1=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(I){return I.__proto__||Object.getPrototypeOf(I)},v1(L)}function lm(L,I){return lm=Object.setPrototypeOf?Object.setPrototypeOf.bind():function($,se){return $.__proto__=se,$},lm(L,I)}function nT(L,I){if(L==null)return{};var $,se,Pe=function(E,e){if(E==null)return{};var w,k,i={},_=Object.keys(E);for(k=0;k<_.length;k++)w=_[k],e.indexOf(w)>=0||(i[w]=E[w]);return i}(L,I);if(Object.getOwnPropertySymbols){var R=Object.getOwnPropertySymbols(L);for(se=0;se<R.length;se++)$=R[se],I.indexOf($)>=0||Object.prototype.propertyIsEnumerable.call(L,$)&&(Pe[$]=L[$])}return Pe}function rT(L,I){if(I&&(typeof I=="object"||typeof I=="function"))return I;if(I!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function($){if($===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return $}(L)}function Hw(L){var I=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}();return function(){var $,se=v1(L);if(I){var Pe=v1(this).constructor;$=Reflect.construct(se,arguments,Pe)}else $=se.apply(this,arguments);return rT(this,$)}}function Wc(L,I){return function($){if(Array.isArray($))return $}(L)||function($,se){var Pe=$==null?null:typeof Symbol<"u"&&$[Symbol.iterator]||$["@@iterator"];if(Pe!=null){var R,E,e=[],w=!0,k=!1;try{for(Pe=Pe.call($);!(w=(R=Pe.next()).done)&&(e.push(R.value),!se||e.length!==se);w=!0);}catch(i){k=!0,E=i}finally{try{w||Pe.return==null||Pe.return()}finally{if(k)throw E}}return e}}(L,I)||My(L,I)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function um(L){return function(I){if(Array.isArray(I))return cm(I)}(L)||function(I){if(typeof Symbol<"u"&&I[Symbol.iterator]!=null||I["@@iterator"]!=null)return Array.from(I)}(L)||My(L)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function My(L,I){if(L){if(typeof L=="string")return cm(L,I);var $=Object.prototype.toString.call(L).slice(8,-1);return $==="Object"&&L.constructor&&($=L.constructor.name),$==="Map"||$==="Set"?Array.from(L):$==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test($)?cm(L,I):void 0}}function cm(L,I){(I==null||I>L.length)&&(I=L.length);for(var $=0,se=new Array(I);$<I;$++)se[$]=L[$];return se}function nc(L,I){var $=typeof Symbol<"u"&&L[Symbol.iterator]||L["@@iterator"];if(!$){if(Array.isArray(L)||($=My(L))||I&&L&&typeof L.length=="number"){$&&(L=$);var se=0,Pe=function(){};return{s:Pe,n:function(){return se>=L.length?{done:!0}:{done:!1,value:L[se++]}},e:function(w){throw w},f:Pe}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var R,E=!0,e=!1;return{s:function(){$=$.call(L)},n:function(){var w=$.next();return E=w.done,w},e:function(w){e=!0,R=w},f:function(){try{E||$.return==null||$.return()}finally{if(e)throw R}}}}var Su={DEBUG:!1,LIB_VERSION:"1.67.1"};/**
|
||
* uuidv7: An experimental implementation of the proposed UUID Version 7
|
||
*
|
||
* @license Apache-2.0
|
||
* @copyright 2021-2023 LiosK
|
||
* @packageDocumentation
|
||
*
|
||
* from https://github.com/LiosK/uuidv7/blob/e501462ea3d23241de13192ceae726956f9b3b7d/src/index.ts
|
||
*/Math.trunc||(Math.trunc=function(L){return L<0?Math.ceil(L):Math.floor(L)}),Number.isInteger||(Number.isInteger=function(L){return typeof L=="number"&&isFinite(L)&&Math.floor(L)===L});var Lb="0123456789abcdef",iT=function(){function L(I){if(Ua(this,L),this.bytes=I,I.length!==16)throw new TypeError("not 128-bit length")}return Va(L,[{key:"toString",value:function(){for(var I="",$=0;$<this.bytes.length;$++)I+=Lb.charAt(this.bytes[$]>>>4),I+=Lb.charAt(15&this.bytes[$]),$!==3&&$!==5&&$!==7&&$!==9||(I+="-");return I}},{key:"clone",value:function(){return new L(this.bytes.slice(0))}},{key:"equals",value:function(I){return this.compareTo(I)===0}},{key:"compareTo",value:function(I){for(var $=0;$<16;$++){var se=this.bytes[$]-I.bytes[$];if(se!==0)return Math.sign(se)}return 0}}],[{key:"fromFieldsV7",value:function(I,$,se,Pe){if(!Number.isInteger(I)||!Number.isInteger($)||!Number.isInteger(se)||!Number.isInteger(Pe)||I<0||$<0||se<0||Pe<0||I>0xffffffffffff||$>4095||se>1073741823||Pe>4294967295)throw new RangeError("invalid field value");var R=new Uint8Array(16);return R[0]=I/Math.pow(2,40),R[1]=I/Math.pow(2,32),R[2]=I/Math.pow(2,24),R[3]=I/Math.pow(2,16),R[4]=I/Math.pow(2,8),R[5]=I,R[6]=112|$>>>8,R[7]=$,R[8]=128|se>>>24,R[9]=se>>>16,R[10]=se>>>8,R[11]=se,R[12]=Pe>>>24,R[13]=Pe>>>16,R[14]=Pe>>>8,R[15]=Pe,new L(R)}}]),L}(),aT=function(){function L(){Ua(this,L),Jr(this,"timestamp",0),Jr(this,"counter",0),Jr(this,"random",new oT)}return Va(L,[{key:"generate",value:function(){var I=this.generateOrAbort();if(I!==void 0)return I;this.timestamp=0;var $=this.generateOrAbort();if($===void 0)throw new Error("Could not generate UUID after timestamp reset");return $}},{key:"generateOrAbort",value:function(){var I=Date.now();if(I>this.timestamp)this.timestamp=I,this.resetCounter();else{if(!(I+1e4>this.timestamp))return;this.counter++,this.counter>4398046511103&&(this.timestamp++,this.resetCounter())}return iT.fromFieldsV7(this.timestamp,Math.trunc(this.counter/Math.pow(2,30)),this.counter&Math.pow(2,30)-1,this.random.nextUint32())}},{key:"resetCounter",value:function(){this.counter=1024*this.random.nextUint32()+(1023&this.random.nextUint32())}}]),L}(),qw=function(L){if(typeof UUIDV7_DENY_WEAK_RNG<"u"&&UUIDV7_DENY_WEAK_RNG)throw new Error("no cryptographically strong RNG available");for(var I=0;I<L.length;I++)L[I]=65536*Math.trunc(65536*Math.random())+Math.trunc(65536*Math.random());return L};typeof crypto<"u"&&crypto.getRandomValues&&(qw=function(L){return crypto.getRandomValues(L)});var Pb,oT=function(){function L(){Ua(this,L),Jr(this,"buffer",new Uint32Array(8)),Jr(this,"cursor",1/0)}return Va(L,[{key:"nextUint32",value:function(){return this.cursor>=this.buffer.length&&(qw(this.buffer),this.cursor=0),this.buffer[this.cursor++]}}]),L}(),sT=function(){return(Pb||(Pb=new aT)).generate()},Gw=Array.prototype,Ww=Object.prototype,D1=Ww.toString,lT=Ww.hasOwnProperty,qr=typeof window<"u"?window:{},pf=qr.navigator||{userAgent:""},ao=qr.document||{},El=pf.userAgent,uT=["localhost","127.0.0.1"],Ob=Gw.forEach,Ib=Gw.indexOf,cT=Array.isArray,Sy={},Sa={log:function(){if(Su.DEBUG&&!nu(window.console)&&window.console){for(var L=("__rrweb_original__"in window.console.log)?window.console.log.__rrweb_original__:window.console.log,I=arguments.length,$=new Array(I),se=0;se<I;se++)$[se]=arguments[se];try{L.apply(window.console,$)}catch{Ku($,function(R){L(R)})}}},error:function(){if(Su.DEBUG&&!nu(window.console)&&window.console){for(var L=arguments.length,I=new Array(L),$=0;$<L;$++)I[$]=arguments[$];var se=["PostHog error:"].concat(I),Pe="__rrweb_original__"in window.console.error?window.console.error.__rrweb_original__:window.console.error;try{Pe.apply(window.console,se)}catch{Ku(se,function(E){Pe(E)})}}},critical:function(){if(!nu(window.console)&&window.console){for(var L=arguments.length,I=new Array(L),$=0;$<L;$++)I[$]=arguments[$];var se=["PostHog error:"].concat(I),Pe="__rrweb_original__"in window.console.error?window.console.error.__rrweb_original__:window.console.error;try{Pe.apply(window.console,se)}catch{Ku(se,function(E){Pe(E)})}}}},fm=function(L){return L.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")};function Ku(L,I,$){if(Array.isArray(L)){if(Ob&&L.forEach===Ob)L.forEach(I,$);else if("length"in L&&L.length===+L.length){for(var se=0,Pe=L.length;se<Pe;se++)if(se in L&&I.call($,L[se],se)===Sy)return}}}function ji(L,I,$){if(L!=null){if(Array.isArray(L))return Ku(L,I,$);for(var se in L)if(lT.call(L,se)&&I.call($,L[se],se)===Sy)return}}var Lo=function(L){for(var I=arguments.length,$=new Array(I>1?I-1:0),se=1;se<I;se++)$[se-1]=arguments[se];return Ku($,function(Pe){for(var R in Pe)Pe[R]!==void 0&&(L[R]=Pe[R])}),L},Wu=cT||function(L){return D1.call(L)==="[object Array]"},Zw=function(L){try{return/^\s*\bfunction\b/.test(L)}catch{return!1}};function Yi(L,I){return L.indexOf(I)!==-1}var bf=function(L){return L===Object(L)&&!Wu(L)},nu=function(L){return L===void 0},Yw=function(L){return D1.call(L)=="[object String]"},fT=function(L){return D1.call(L)=="[object Number]"},hT=function L(I){return ji(I,function($,se){(function(Pe){return D1.call(Pe)=="[object Date]"})($)?I[se]=pT($):bf($)&&(I[se]=L($))}),I},pT=function(L){function I($){return $<10?"0"+$:$}return L.getUTCFullYear()+"-"+I(L.getUTCMonth()+1)+"-"+I(L.getUTCDate())+"T"+I(L.getUTCHours())+":"+I(L.getUTCMinutes())+":"+I(L.getUTCSeconds())},Xw=function(L){return function(){try{for(var I=arguments.length,$=new Array(I),se=0;se<I;se++)$[se]=arguments[se];return L.apply(this,$)}catch(Pe){Sa.critical("Implementation error. Please turn on debug and contact support@posthog.com."),Sa.critical(Pe)}}},hm=function(L){var I={};return ji(L,function($,se){Yw($)&&$.length>0&&(I[se]=$)}),I},dT=["$performance_raw"];function $w(L,I){return $=L,se=function(R,E){return E&&dT.indexOf(E)>-1?R:typeof R=="string"&&I!==null?R.slice(0,I):R},Pe=new Set,function R(E,e){return E!==Object(E)?se?se(E,e):E:Pe.has(E)?void 0:(Pe.add(E),Wu(E)?(w=[],Ku(E,function(k){w.push(R(k))})):(w={},ji(E,function(k,i){Pe.has(k)||(w[i]=R(k,i))})),w);var w}($);var $,se,Pe}function F1(L){var I,$,se,Pe,R,E="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",e=0,w=0,k="",i=[];if(!L)return L;L=gT(L);do I=(R=L.charCodeAt(e++)<<16|L.charCodeAt(e++)<<8|L.charCodeAt(e++))>>18&63,$=R>>12&63,se=R>>6&63,Pe=63&R,i[w++]=E.charAt(I)+E.charAt($)+E.charAt(se)+E.charAt(Pe);while(e<L.length);switch(k=i.join(""),L.length%3){case 1:k=k.slice(0,-2)+"==";break;case 2:k=k.slice(0,-1)+"="}return k}var Jg,gT=function(L){var I,$,se,Pe,R="";for(I=$=0,se=(L=(L+"").replace(/\r\n/g,`
|
||
`).replace(/\r/g,`
|
||
`)).length,Pe=0;Pe<se;Pe++){var E=L.charCodeAt(Pe),e=null;E<128?$++:e=E>127&&E<2048?String.fromCharCode(E>>6|192,63&E|128):String.fromCharCode(E>>12|224,E>>6&63|128,63&E|128),e!==null&&($>I&&(R+=L.substring(I,$)),R+=e,I=$=Pe+1)}return $>I&&(R+=L.substring(I,L.length)),R},Xu=(Jg=function(){for(var L=new Date().valueOf(),I=0;L==new Date().valueOf();)I++;return L.toString(16)+I.toString(16)},function(L){if(L==="v7")return sT().toString();var I=typeof window<"u"?(window.screen.height*window.screen.width).toString(16):"0";return Jg()+"-"+Math.random().toString(16).replace(".","")+"-"+function(){var $,se,Pe=El,R=0,E=[];function e(w,k){var i,_=0;for(i=0;i<k.length;i++)_|=E[i]<<8*i;return w^_}for($=0;$<Pe.length;$++)se=Pe.charCodeAt($),E.unshift(255&se),E.length>=4&&(R=e(R,E),E=[]);return E.length>0&&(R=e(R,E)),R.toString(16)}()+"-"+I+"-"+Jg()}),vT=function(L){return!!/(google web preview|baiduspider|yandexbot|bingbot|googlebot|yahoo! slurp|ahrefsbot|facebookexternalhit|facebookcatalog|applebot|semrushbot|duckduckbot|twitterbot|rogerbot|linkedinbot|mj12bot|sitebulb|bot.htm|bot.php|hubspot|crawler|prerender)/i.test(L)},Rb=function(L,I){var $=I.replace(/[[]/,"\\[").replace(/[\]]/,"\\]"),se=new RegExp("[\\?&]"+$+"=([^&#]*)").exec(L);if(se===null||se&&typeof se[1]!="string"&&se[1].length)return"";var Pe=se[1];try{Pe=decodeURIComponent(Pe)}catch{Sa.error("Skipping decoding for malformed query param: "+Pe)}return Pe.replace(/\+/g," ")},zb=function(L,I){var $=L.match(new RegExp(I+"=([^&]*)"));return $?$[1]:null},jp=function(){function L(I){return I&&(I.preventDefault=L.preventDefault,I.stopPropagation=L.stopPropagation),I}return L.preventDefault=function(){this.returnValue=!1},L.stopPropagation=function(){this.cancelBubble=!0},function(I,$,se,Pe,R){if(I)if(I.addEventListener&&!Pe)I.addEventListener($,se,!!R);else{var E="on"+$,e=I[E];I[E]=function(w,k,i){return function(_){if(_=_||L(window.event)){var y,h=!0;Zw(i)&&(y=i(_));var l=k.call(w,_);return y!==!1&&l!==!1||(h=!1),h}}}(I,se,e)}else Sa.error("No valid element provided to register_event")}}();function Ey(L,I){var $=function(){var se=ao.createElement("script");se.type="text/javascript",se.src=L,se.onload=function(E){return I(void 0,E)},se.onerror=function(E){return I(E)};var Pe,R=ao.querySelectorAll("body > script");R.length>0?(Pe=R[0].parentNode)===null||Pe===void 0||Pe.insertBefore(se,R[0]):ao.body.appendChild(se)};ao.body?$():ao.addEventListener("DOMContentLoaded",$)}var vo={campaignParams:function(L){var I=["utm_source","utm_medium","utm_campaign","utm_content","utm_term","gclid","fbclid","msclkid"].concat(L||[]),$={};return ji(I,function(se){var Pe=Rb(ao.URL,se);Pe.length&&($[se]=Pe)}),$},searchEngine:function(){var L=ao.referrer;return L?L.search("https?://(.*)google.([^/?]*)")===0?"google":L.search("https?://(.*)bing.com")===0?"bing":L.search("https?://(.*)yahoo.com")===0?"yahoo":L.search("https?://(.*)duckduckgo.com")===0?"duckduckgo":null:null},searchInfo:function(){var L=vo.searchEngine(),I=L!="yahoo"?"q":"p",$={};if(L!==null){$.$search_engine=L;var se=Rb(ao.referrer,I);se.length&&($.ph_keyword=se)}return $},browser:function(L,I,$){return I=I||"",$||Yi(L," OPR/")?Yi(L,"Mini")?"Opera Mini":"Opera":/(BlackBerry|PlayBook|BB10)/i.test(L)?"BlackBerry":Yi(L,"IEMobile")||Yi(L,"WPDesktop")?"Internet Explorer Mobile":Yi(L,"SamsungBrowser/")?"Samsung Internet":Yi(L,"Edge")||Yi(L,"Edg/")?"Microsoft Edge":Yi(L,"FBIOS")?"Facebook Mobile":Yi(L,"Chrome")?"Chrome":Yi(L,"CriOS")?"Chrome iOS":Yi(L,"UCWEB")||Yi(L,"UCBrowser")?"UC Browser":Yi(L,"FxiOS")?"Firefox iOS":Yi(I,"Apple")?Yi(L,"Mobile")?"Mobile Safari":"Safari":Yi(L,"Android")?"Android Mobile":Yi(L,"Konqueror")?"Konqueror":Yi(L,"Firefox")?"Firefox":Yi(L,"MSIE")||Yi(L,"Trident/")?"Internet Explorer":Yi(L,"Gecko")?"Mozilla":""},browserVersion:function(L,I,$){var se={"Internet Explorer Mobile":/rv:(\d+(\.\d+)?)/,"Microsoft Edge":/Edge?\/(\d+(\.\d+)?)/,Chrome:/Chrome\/(\d+(\.\d+)?)/,"Chrome iOS":/CriOS\/(\d+(\.\d+)?)/,"UC Browser":/(UCBrowser|UCWEB)\/(\d+(\.\d+)?)/,Safari:/Version\/(\d+(\.\d+)?)/,"Mobile Safari":/Version\/(\d+(\.\d+)?)/,Opera:/(Opera|OPR)\/(\d+(\.\d+)?)/,Firefox:/Firefox\/(\d+(\.\d+)?)/,"Firefox iOS":/FxiOS\/(\d+(\.\d+)?)/,Konqueror:/Konqueror:(\d+(\.\d+)?)/,BlackBerry:/BlackBerry (\d+(\.\d+)?)/,"Android Mobile":/android\s(\d+(\.\d+)?)/,"Samsung Internet":/SamsungBrowser\/(\d+(\.\d+)?)/,"Internet Explorer":/(rv:|MSIE )(\d+(\.\d+)?)/,Mozilla:/rv:(\d+(\.\d+)?)/}[vo.browser(L,I,$)];if(se===void 0)return null;var Pe=L.match(se);return Pe?parseFloat(Pe[Pe.length-2]):null},browserLanguage:function(){return pf.language||pf.userLanguage},os:function(L){if(/Windows/i.test(L)){if(/Phone/.test(L)||/WPDesktop/.test(L))return{os_name:"Windows Phone",os_version:""};var I=/Windows NT ([0-9.]+)/i.exec(L);return I&&I[1]?{os_name:"Windows",os_version:I[1]}:{os_name:"Windows",os_version:""}}if(/(iPhone|iPad|iPod)/.test(L)){var $=/OS (\d+)_(\d+)_?(\d+)?/i.exec(L);return $&&$[1]?{os_name:"iOS",os_version:[$[1],$[2],$[3]||"0"].join(".")}:{os_name:"iOS",os_version:""}}if(/Android/.test(L)){var se=/Android (\d+)\.(\d+)\.?(\d+)?/i.exec(L);return se&&se[1]?{os_name:"Android",os_version:[se[1],se[2],se[3]||"0"].join(".")}:{os_name:"Android",os_version:""}}if(/(BlackBerry|PlayBook|BB10)/i.test(L))return{os_name:"BlackBerry",os_version:""};if(/Mac/i.test(L)){var Pe=/Mac OS X (\d+)[_.](\d+)[_.]?(\d+)?/i.exec(L);return Pe&&Pe[1]?{os_name:"Mac OS X",os_version:[Pe[1],Pe[2],Pe[3]||"0"].join(".")}:{os_name:"Mac OS X",os_version:""}}return/Linux/.test(L)?{os_name:"Linux",os_version:""}:/CrOS/.test(L)?{os_name:"Chrome OS",os_version:""}:{os_name:"",os_version:""}},device:function(L){return/Windows Phone/i.test(L)||/WPDesktop/.test(L)?"Windows Phone":/iPad/.test(L)?"iPad":/iPod/.test(L)?"iPod Touch":/iPhone/.test(L)?"iPhone":/(BlackBerry|PlayBook|BB10)/i.test(L)?"BlackBerry":/Android/.test(L)&&!/Mobile/.test(L)?"Android Tablet":/Android/.test(L)?"Android":""},deviceType:function(L){var I=this.device(L);return I==="iPad"||I==="Android Tablet"?"Tablet":I?"Mobile":"Desktop"},referrer:function(){return ao.referrer||"$direct"},referringDomain:function(){if(!ao.referrer)return"$direct";var L=ao.createElement("a");return L.href=ao.referrer,L.host},properties:function(){var L=vo.os(El),I=L.os_name,$=L.os_version;return Lo(hm({$os:I,$os_version:$,$browser:vo.browser(El,pf.vendor,qr.opera),$device:vo.device(El),$device_type:vo.deviceType(El)}),{$current_url:qr==null?void 0:qr.location.href,$host:qr==null?void 0:qr.location.host,$pathname:qr==null?void 0:qr.location.pathname,$browser_version:vo.browserVersion(El,pf.vendor,qr.opera),$browser_language:vo.browserLanguage(),$screen_height:qr==null?void 0:qr.screen.height,$screen_width:qr==null?void 0:qr.screen.width,$viewport_height:qr==null?void 0:qr.innerHeight,$viewport_width:qr==null?void 0:qr.innerWidth,$lib:"web",$lib_version:Su.LIB_VERSION,$insert_id:Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10),$time:(Date.now=Date.now||function(){return+new Date},Date.now()/1e3)})},people_properties:function(){var L=vo.os(El),I=L.os_name,$=L.os_version;return Lo(hm({$os:I,$os_version:$,$browser:vo.browser(El,pf.vendor,qr.opera)}),{$browser_version:vo.browserVersion(El,pf.vendor,qr.opera)})}};function m1(L){switch(Hc(L.className)){case"string":return L.className;case"object":return("baseVal"in L.className?L.className.baseVal:null)||L.getAttribute("class")||"";default:return""}}function y1(L){var I="";return B0(L)&&!Jw(L)&&L.childNodes&&L.childNodes.length&&ji(L.childNodes,function($){Kw($)&&$.textContent&&(I+=fm($.textContent).split(/(\s+)/).filter(yh).join("").replace(/[\r\n]/g," ").replace(/[ ]+/g," ").substring(0,255))}),fm(I)}function Db(L){return!!L&&L.nodeType===1}function _f(L,I){return!!L&&!!L.tagName&&L.tagName.toLowerCase()===I.toLowerCase()}function Kw(L){return!!L&&L.nodeType===3}function Fb(L){return!!L&&L.nodeType===11}var Qg=["a","button","form","input","select","textarea","label"];function B0(L){for(var I=L;I.parentNode&&!_f(I,"body");I=I.parentNode){var $=m1(I).split(" ");if(Yi($,"ph-sensitive")||Yi($,"ph-no-capture"))return!1}if(Yi(m1(L).split(" "),"ph-include"))return!0;var se=L.type||"";if(typeof se=="string")switch(se.toLowerCase()){case"hidden":case"password":return!1}var Pe=L.name||L.id||"";return!(typeof Pe=="string"&&/^cc|cardnum|ccnum|creditcard|csc|cvc|cvv|exp|pass|pwd|routing|seccode|securitycode|securitynum|socialsec|socsec|ssn/i.test(Pe.replace(/[^a-zA-Z0-9]/g,"")))}function Jw(L){return!!(_f(L,"input")&&!["button","checkbox","submit","reset"].includes(L.type)||_f(L,"select")||_f(L,"textarea")||L.getAttribute("contenteditable")==="true")}function yh(L){return!(L===null||nu(L)||typeof L=="string"&&(L=fm(L),/^(?:(4[0-9]{12}(?:[0-9]{3})?)|(5[1-5][0-9]{14})|(6(?:011|5[0-9]{2})[0-9]{12})|(3[47][0-9]{13})|(3(?:0[0-5]|[68][0-9])[0-9]{11})|((?:2131|1800|35[0-9]{3})[0-9]{11}))$/.test((L||"").replace(/[- ]/g,""))||/(^\d{3}-?\d{2}-?\d{4}$)/.test(L)))}function Bb(L){var I=y1(L);return yh(I="".concat(I," ").concat(Qw(L)).trim())?I:""}function Qw(L){var I="";return L&&L.childNodes&&L.childNodes.length&&ji(L.childNodes,function($){var se;if($&&((se=$.tagName)===null||se===void 0?void 0:se.toLowerCase())==="span")try{var Pe=y1($);I="".concat(I," ").concat(Pe).trim(),$.childNodes&&$.childNodes.length&&(I="".concat(I," ").concat(Qw($)).trim())}catch(R){console.error(R)}}),I}var mT=function(){function L(I){Ua(this,L),this.clicks=[],this.enabled=I}return Va(L,[{key:"isRageClick",value:function(I,$,se){if(!this.enabled)return!1;var Pe=this.clicks[this.clicks.length-1];if(Pe&&Math.abs(I-Pe.x)+Math.abs($-Pe.y)<30&&se-Pe.timestamp<1e3){if(this.clicks.push({x:I,y:$,timestamp:se}),this.clicks.length===3)return!0}else this.clicks=[{x:I,y:$,timestamp:se}];return!1}}]),L}(),yT=/[a-z0-9][a-z0-9-]+\.[a-z.]{2,6}$/i,Tu={is_supported:function(){return!0},error:function(L){Sa.error("cookieStore error: "+L)},get:function(L){try{for(var I=L+"=",$=document.cookie.split(";"),se=0;se<$.length;se++){for(var Pe=$[se];Pe.charAt(0)==" ";)Pe=Pe.substring(1,Pe.length);if(Pe.indexOf(I)===0)return decodeURIComponent(Pe.substring(I.length,Pe.length))}}catch{}return null},parse:function(L){var I;try{I=JSON.parse(Tu.get(L))||{}}catch{}return I},set:function(L,I,$,se,Pe){try{var R="",E="",e="";if(se){var w=document.location.hostname.match(yT),k=w?w[0]:"";R=k?"; domain=."+k:""}if($){var i=new Date;i.setTime(i.getTime()+24*$*60*60*1e3),E="; expires="+i.toUTCString()}Pe&&(e="; secure");var _=L+"="+encodeURIComponent(JSON.stringify(I))+E+"; SameSite=Lax; path=/"+R+e;return document.cookie=_,_}catch{return}},remove:function(L,I){try{Tu.set(L,"",-1,I)}catch{return}}},ev=null,Ka={is_supported:function(){if(ev!==null)return ev;var L=!0;if(typeof window<"u")try{var I="__mplssupport__";Ka.set(I,"xyz"),Ka.get(I)!=='"xyz"'&&(L=!1),Ka.remove(I)}catch{L=!1}else L=!1;return L||Sa.error("localStorage unsupported; falling back to cookie store"),ev=L,L},error:function(L){Sa.error("localStorage error: "+L)},get:function(L){try{return window.localStorage.getItem(L)}catch(I){Ka.error(I)}return null},parse:function(L){try{return JSON.parse(Ka.get(L))||{}}catch{}return null},set:function(L,I){try{window.localStorage.setItem(L,JSON.stringify(I))}catch($){Ka.error($)}},remove:function(L){try{window.localStorage.removeItem(L)}catch(I){Ka.error(I)}}},pm=Zr(Zr({},Ka),{},{parse:function(L){try{var I={};try{(I=Tu.parse(L)||{}).distinct_id&&Tu.set(L,{distinct_id:I.distinct_id})}catch{}var $=Lo(I,JSON.parse(Ka.get(L)||"{}"));return Ka.set(L,$),$}catch{}return null},set:function(L,I,$,se,Pe){try{Ka.set(L,I),I.distinct_id&&Tu.set(L,{distinct_id:I.distinct_id},$,se,Pe)}catch(R){Ka.error(R)}},remove:function(L,I){try{window.localStorage.removeItem(L),Tu.remove(L,I)}catch($){Ka.error($)}}}),y0={},xT={is_supported:function(){return!0},error:function(L){Sa.error("memoryStorage error: "+L)},get:function(L){return y0[L]||null},parse:function(L){return y0[L]||null},set:function(L,I){y0[L]=I},remove:function(L){delete y0[L]}},uf=null,Oo={is_supported:function(){if(uf!==null)return uf;if(uf=!0,typeof window<"u")try{var L="__support__";Oo.set(L,"xyz"),Oo.get(L)!=='"xyz"'&&(uf=!1),Oo.remove(L)}catch{uf=!1}else uf=!1;return uf},error:function(L){Su.DEBUG&&Sa.error("sessionStorage error: ",L)},get:function(L){try{return window.sessionStorage.getItem(L)}catch(I){Oo.error(I)}return null},parse:function(L){try{return JSON.parse(Oo.get(L))||null}catch{}return null},set:function(L,I){try{window.sessionStorage.setItem(L,JSON.stringify(I))}catch($){Oo.error($)}},remove:function(L){try{window.sessionStorage.removeItem(L)}catch(I){Oo.error(I)}}},e5="$people_distinct_id",N0="__alias",Lp="__timers",Nb="$autocapture_disabled_server_side",dm="$session_recording_enabled_server_side",jb="$console_log_recording_enabled_server_side",Ub="$session_recording_recorder_version_server_side",gm="$sesid",xh="$enabled_feature_flags",vm="$early_access_features",bh="$stored_person_properties",Mc="$stored_group_properties",mm="$surveys",ym="$user_state",bT=[e5,N0,"__cmpns",Lp,dm,gm,xh,ym,vm,Mc,bh,mm],_T=["cookie","localstorage","localstorage+cookie","sessionstorage","memory"],Vb=function(){function L(I){Ua(this,L);var $="";I.token&&($=I.token.replace(/\+/g,"PL").replace(/\//g,"SL").replace(/=/g,"EQ")),this.props={},this.campaign_params_saved=!1,this.custom_campaign_params=I.custom_campaign_params||[],I.persistence_name?this.name="ph_"+I.persistence_name:this.name="ph_"+$+"_posthog",_T.indexOf(I.persistence.toLowerCase())===-1&&(Sa.critical("Unknown persistence type "+I.persistence+"; falling back to cookie"),I.persistence="cookie");var se=I.persistence.toLowerCase();se==="localstorage"&&Ka.is_supported()?this.storage=Ka:se==="localstorage+cookie"&&pm.is_supported()?this.storage=pm:se==="sessionstorage"&&Oo.is_supported()?this.storage=Oo:this.storage=se==="memory"?xT:Tu,this.user_state="anonymous",this.load(),this.update_config(I),this.save()}return Va(L,[{key:"properties",value:function(){var I={};return ji(this.props,function($,se){if(se===xh&&Hc($)==="object")for(var Pe=Object.keys($),R=0;R<Pe.length;R++)I["$feature/".concat(Pe[R])]=$[Pe[R]];else e=se,w=!1,((E=bT)===null?w:Ib&&E.indexOf===Ib?E.indexOf(e)!=-1:(ji(E,function(k){if(w||(w=k===e))return Sy}),w))||(I[se]=$);var E,e,w}),I}},{key:"load",value:function(){if(!this.disabled){var I=this.storage.parse(this.name);I&&(this.props=Lo({},I))}}},{key:"save",value:function(){this.disabled||this.storage.set(this.name,this.props,this.expire_days,this.cross_subdomain,this.secure)}},{key:"remove",value:function(){this.storage.remove(this.name,!1),this.storage.remove(this.name,!0)}},{key:"clear",value:function(){this.remove(),this.props={}}},{key:"register_once",value:function(I,$,se){var Pe=this;if(bf(I)){$===void 0&&($="None"),this.expire_days=se===void 0?this.default_expiry:se;var R=!1;if(ji(I,function(E,e){Pe.props.hasOwnProperty(e)&&Pe.props[e]!==$||(Pe.props[e]=E,R=!0)}),R)return this.save(),!0}return!1}},{key:"register",value:function(I,$){var se=this;if(bf(I)){this.expire_days=$===void 0?this.default_expiry:$;var Pe=!1;if(ji(I,function(R,E){I.hasOwnProperty(E)&&se.props[E]!==R&&(se.props[E]=R,Pe=!0)}),Pe)return this.save(),!0}return!1}},{key:"unregister",value:function(I){I in this.props&&(delete this.props[I],this.save())}},{key:"update_campaign_params",value:function(){this.campaign_params_saved||(this.register(vo.campaignParams(this.custom_campaign_params)),this.campaign_params_saved=!0)}},{key:"update_search_keyword",value:function(){this.register(vo.searchInfo())}},{key:"update_referrer_info",value:function(){this.register({$referrer:this.props.$referrer||vo.referrer(),$referring_domain:this.props.$referring_domain||vo.referringDomain()})}},{key:"get_referrer_info",value:function(){return hm({$referrer:this.props.$referrer,$referring_domain:this.props.$referring_domain})}},{key:"safe_merge",value:function(I){return ji(this.props,function($,se){se in I||(I[se]=$)}),I}},{key:"update_config",value:function(I){this.default_expiry=this.expire_days=I.cookie_expiration,this.set_disabled(I.disable_persistence),this.set_cross_subdomain(I.cross_subdomain_cookie),this.set_secure(I.secure_cookie)}},{key:"set_disabled",value:function(I){this.disabled=I,this.disabled?this.remove():this.save()}},{key:"set_cross_subdomain",value:function(I){I!==this.cross_subdomain&&(this.cross_subdomain=I,this.remove(),this.save())}},{key:"get_cross_subdomain",value:function(){return!!this.cross_subdomain}},{key:"set_secure",value:function(I){I!==this.secure&&(this.secure=I,this.remove(),this.save())}},{key:"set_event_timer",value:function(I,$){var se=this.props[Lp]||{};se[I]=$,this.props[Lp]=se,this.save()}},{key:"remove_event_timer",value:function(I){var $=(this.props[Lp]||{})[I];return nu($)||(delete this.props[Lp][I],this.save()),$}},{key:"get_user_state",value:function(){return this.props[ym]||"anonymous"}},{key:"set_user_state",value:function(I){this.props[ym]=I,this.save()}}]),L}(),Cc={_initializedTokens:[],_isAutocaptureEnabled:!1,_setIsAutocaptureEnabled:function(L){var I=!!L.get_property(Nb),$=!!L.get_config("autocapture");this._isAutocaptureEnabled=$&&!I},_previousElementSibling:function(L){if(L.previousElementSibling)return L.previousElementSibling;var I=L;do I=I.previousSibling;while(I&&!Db(I));return I},_getAugmentPropertiesFromElement:function(L){if(!B0(L))return{};var I={};return ji(L.attributes,function($){if($.name.indexOf("data-ph-capture-attribute")===0){var se=$.name.replace("data-ph-capture-attribute-",""),Pe=$.value;se&&Pe&&yh(Pe)&&(I[se]=Pe)}}),I},_getPropertiesFromElement:function(L,I,$){var se=L.tagName.toLowerCase(),Pe={tag_name:se};Qg.indexOf(se)>-1&&!$&&(se.toLowerCase()==="a"||se.toLowerCase()==="button"?Pe.$el_text=Bb(L):Pe.$el_text=y1(L));var R=m1(L);R.length>0&&(Pe.classes=R.split(" ").filter(function(k){return k!==""})),ji(L.attributes,function(k){var i;Jw(L)&&["name","id","class"].indexOf(k.name)===-1||!I&&yh(k.value)&&(typeof(i=k.name)!="string"||i.substring(0,10)!=="_ngcontent"&&i.substring(0,7)!=="_nghost")&&(Pe["attr__"+k.name]=k.value)});for(var E=1,e=1,w=L;w=this._previousElementSibling(w);)E++,w.tagName===L.tagName&&e++;return Pe.nth_child=E,Pe.nth_of_type=e,Pe},_getDefaultProperties:function(L){return{$event_type:L,$ce_version:1}},_extractCustomPropertyValue:function(L){var I=[];return ji(document.querySelectorAll(L.css_selector),function($){var se;["input","select"].indexOf($.tagName.toLowerCase())>-1?se=$.value:$.textContent&&(se=$.textContent),yh(se)&&I.push(se)}),I.join(", ")},_getCustomProperties:function(L){var I=this,$={};return ji(this._customProperties,function(se){ji(se.event_selectors,function(Pe){ji(document.querySelectorAll(Pe),function(R){Yi(L,R)&&B0(R)&&($[se.name]=I._extractCustomPropertyValue(se))})})}),$},_getEventTarget:function(L){return L.target===void 0?L.srcElement||null:(I=L.target)!==null&&I!==void 0&&I.shadowRoot?L.composedPath()[0]||null:L.target||null;var I},_captureEvent:function(L,I){var $,se=this,Pe=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"$autocapture",R=this._getEventTarget(L);if(Kw(R)&&(R=R.parentNode||null),Pe==="$autocapture"&&L.type==="click"&&L instanceof MouseEvent&&($=this.rageclicks)!==null&&$!==void 0&&$.isRageClick(L.clientX,L.clientY,new Date().getTime())&&this._captureEvent(L,I,"$rageclick"),R&&function(h,l){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:void 0;if(!h||_f(h,"html")||!Db(h))return!1;if(t!=null&&t.url_allowlist){var o=window.location.href,r=t.url_allowlist;if(r&&!r.some(function(m){return o.match(m)}))return!1}if(t!=null&&t.dom_event_allowlist){var n=t.dom_event_allowlist;if(n&&!n.some(function(m){return l.type===m}))return!1}if(t!=null&&t.element_allowlist){var a=t.element_allowlist;if(a&&!a.some(function(m){return h.tagName.toLowerCase()===m}))return!1}if(t!=null&&t.css_selector_allowlist){var s=t.css_selector_allowlist;if(s&&!s.some(function(m){return h.matches(m)}))return!1}for(var u=!1,p=[h],c=!0,b=h;b.parentNode&&!_f(b,"body");)if(Fb(b.parentNode))p.push(b.parentNode.host),b=b.parentNode.host;else{if(!(c=b.parentNode||!1))break;if(Qg.indexOf(c.tagName.toLowerCase())>-1)u=!0;else{var g=window.getComputedStyle(c);g&&g.getPropertyValue("cursor")==="pointer"&&(u=!0)}p.push(c),b=c}var f=window.getComputedStyle(h);if(f&&f.getPropertyValue("cursor")==="pointer"&&l.type==="click")return!0;var v=h.tagName.toLowerCase();switch(v){case"html":return!1;case"form":return l.type==="submit";case"input":case"select":case"textarea":return l.type==="change"||l.type==="click";default:return u?l.type==="click":l.type==="click"&&(Qg.indexOf(v)>-1||h.getAttribute("contenteditable")==="true")}}(R,L,this.config)){for(var E=[R],e=R;e.parentNode&&!_f(e,"body");)Fb(e.parentNode)?(E.push(e.parentNode.host),e=e.parentNode.host):(E.push(e.parentNode),e=e.parentNode);var w,k=[],i={},_=!1;if(ji(E,function(h){var l=B0(h);h.tagName.toLowerCase()==="a"&&(w=h.getAttribute("href"),w=l&&yh(w)&&w),Yi(m1(h).split(" "),"ph-no-capture")&&(_=!0),k.push(se._getPropertiesFromElement(h,I.get_config("mask_all_element_attributes"),I.get_config("mask_all_text")));var t=se._getAugmentPropertiesFromElement(h);Lo(i,t)}),I.get_config("mask_all_text")||(R.tagName.toLowerCase()==="a"||R.tagName.toLowerCase()==="button"?k[0].$el_text=Bb(R):k[0].$el_text=y1(R)),w&&(k[0].attr__href=w),_)return!1;var y=Lo(this._getDefaultProperties(L.type),{$elements:k},this._getCustomProperties(E),i);return I.capture(Pe,y),!0}},_navigate:function(L){window.location.href=L},_addDomEventHandlers:function(L){var I=this,$=function(se){se=se||window.event,I._captureEvent(se,L)};jp(document,"submit",$,!1,!0),jp(document,"change",$,!1,!0),jp(document,"click",$,!1,!0)},_customProperties:[],rageclicks:null,config:void 0,init:function(L){var I;typeof L.__autocapture!="boolean"&&(this.config=L.__autocapture),(I=this.config)!==null&&I!==void 0&&I.url_allowlist&&(this.config.url_allowlist=this.config.url_allowlist.map(function($){return new RegExp($)})),this.rageclicks=new mT(L.get_config("rageclick"))},afterDecideResponse:function(L,I){this._setIsAutocaptureEnabled(I);var $=I.get_config("token");this._initializedTokens.indexOf($)>-1?Sa.log('autocapture already initialized for token "'+$+'"'):(I.persistence&&I.persistence.register(Jr({},Nb,!!L.autocapture_opt_out)),this._initializedTokens.push($),L&&L.config&&L.config.enable_collect_everything&&this._isAutocaptureEnabled?(L.custom_properties&&(this._customProperties=L.custom_properties),this._addDomEventHandlers(I)):I.__autocapture=!1)},enabledForProject:function(L,I,$){if(!L)return!0;I=nu(I)?10:I,$=nu($)?10:$;for(var se=0,Pe=0;Pe<L.length;Pe++)se+=L.charCodeAt(Pe);return se%I<$},isBrowserSupported:function(){return Zw(document.querySelectorAll)}};(function(L){for(var I in L)typeof L[I]=="function"&&(L[I]=L[I].bind(L))})(Cc),function(L){for(var I in L)typeof L[I]=="function"&&(L[I]=Xw(L[I]))}(Cc);var wT="__ph_opt_in_out_";function kT(L,I){r5(!0,L,I)}function TT(L,I){r5(!1,L,I)}function AT(L,I){return n5(L,I)==="1"}function t5(L,I){return!!function($){if($&&$.respectDnt){var se=$&&$.window||qr,Pe=se.navigator||{},R=!1;return ji([Pe.doNotTrack,Pe.msDoNotTrack,se.doNotTrack],function(E){Yi([!0,1,"1","yes"],E)&&(R=!0)}),R}return!1}(I)||n5(L,I)==="0"}function MT(L,I){Cy(I=I||{}).remove(Ly(L,I),!!I.crossSubdomainCookie)}function Cy(L){return(L=L||{}).persistenceType==="localStorage"?Ka:L.persistenceType==="localStorage+cookie"?pm:Tu}function Ly(L,I){return((I=I||{}).persistencePrefix||wT)+L}function n5(L,I){return Cy(I).get(Ly(L,I))}function r5(L,I,$){Yw(I)&&I.length?(Cy($=$||{}).set(Ly(I,$),L?1:0,fT($.cookieExpiration)?$.cookieExpiration:null,$.crossSubdomainCookie,$.secureCookie),$.capture&&L&&$.capture($.captureEventName||"$opt_in",$.captureProperties||{},{send_instantly:!0})):console.error("gdpr."+(L?"optIn":"optOut")+" called with an invalid token")}function i5(L,I){var $=!1;try{var se=L.get_config("token"),Pe=L.get_config("respect_dnt"),R=L.get_config("opt_out_capturing_persistence_type"),E=L.get_config("opt_out_capturing_cookie_prefix")||void 0,e=L.get_config("window");se&&($=t5(se,{respectDnt:Pe,persistenceType:R,persistencePrefix:E,window:e}))}catch(w){I||console.error("Unexpected error when checking capturing opt-out status: "+w)}return $}function Hb(L,I,$){return function(){for(var se=i5(L,$),Pe=arguments.length,R=new Array(Pe),E=0;E<Pe;E++)R[E]=arguments[E];if(!se)return I.apply(this,R);var e=R[R.length-1];typeof e=="function"&&e(0)}}var tv="$set",ST=function(){function L(I){var $=this;Ua(this,L),this._posthog=I,this.set=Hb(I,function(se,Pe,R){var E=$.set_action(se,Pe);return $._posthog.setPersonPropertiesForFlags(E.$set||{}),bf(se)&&(R=Pe),$._get_config("save_referrer")&&$._posthog.sessionPersistence.update_referrer_info(),E[tv]=Lo({},vo.people_properties(),$._posthog.sessionPersistence.get_referrer_info(),E[tv]),$._send_request(E,R)}),this.set_once=Hb(I,function(se,Pe,R){var E=$.set_once_action(se,Pe);return bf(se)&&(R=Pe),$._send_request(E,R)})}return Va(L,[{key:"toString",value:function(){return this._posthog.toString()+".people"}},{key:"_send_request",value:function(I,$){I.$token=this._get_config("token"),I.$distinct_id=this._posthog.get_distinct_id();var se=this._posthog.get_property("$device_id"),Pe=this._posthog.get_property("$user_id"),R=this._posthog.get_property("$had_persisted_distinct_id");se&&(I.$device_id=se),Pe&&(I.$user_id=Pe),R&&(I.$had_persisted_distinct_id=R);var E=hT(I),e=$w(E,this._get_config("properties_string_max_length")),w=F1(JSON.stringify(E));return this._posthog._send_request(this._get_config("api_host")+"/engage/",{data:w},{},this._posthog._prepare_callback($,e)),e}},{key:"_get_config",value:function(I){return this._posthog.get_config(I)}},{key:"_is_reserved_property",value:function(I){return I==="$distinct_id"||I==="$token"||I==="$device_id"||I==="$user_id"||I==="$had_persisted_distinct_id"}},{key:"set_action",value:function(I,$){return this.apiActionParser(tv,I,$)}},{key:"set_once_action",value:function(I,$){return this.apiActionParser("$set_once",I,$)}},{key:"apiActionParser",value:function(I,$,se){var Pe=this,R={},E={};return bf($)?ji($,function(e,w){Pe._is_reserved_property(w)||(E[w]=e)}):E[$]=se,R[I]=E,R}}]),L}(),nv="$active_feature_flags",x0="$override_feature_flags",qb="$feature_flag_payloads",Gb=function(L){var I,$={},se=nc(function(e){for(var w=Object.keys(e),k=w.length,i=new Array(k);k--;)i[k]=[w[k],e[w[k]]];return i}(L||{}));try{for(se.s();!(I=se.n()).done;){var Pe=Wc(I.value,2),R=Pe[0],E=Pe[1];E&&($[R]=E)}}catch(e){se.e(e)}finally{se.f()}return $},ET=function(){function L(I){Ua(this,L),this.instance=I,this._override_warning=!1,this.flagCallReported={},this.featureFlagEventHandlers=[],this.reloadFeatureFlagsQueued=!1,this.reloadFeatureFlagsInAction=!1}return Va(L,[{key:"getFlags",value:function(){return Object.keys(this.getFlagVariants())}},{key:"getFlagVariants",value:function(){var I=this.instance.get_property(xh),$=this.instance.get_property(x0);if(!$)return I||{};for(var se=Lo({},I),Pe=Object.keys($),R=0;R<Pe.length;R++)$[Pe[R]]===!1?delete se[Pe[R]]:se[Pe[R]]=$[Pe[R]];return this._override_warning||(console.warn("[PostHog] Overriding feature flags!",{enabledFlags:I,overriddenFlags:$,finalFlags:se}),this._override_warning=!0),se}},{key:"getFlagPayloads",value:function(){return this.instance.get_property(qb)||{}}},{key:"reloadFeatureFlags",value:function(){this.reloadFeatureFlagsQueued||(this.reloadFeatureFlagsQueued=!0,this._startReloadTimer())}},{key:"setAnonymousDistinctId",value:function(I){this.$anon_distinct_id=I}},{key:"setReloadingPaused",value:function(I){this.reloadFeatureFlagsInAction=I}},{key:"resetRequestQueue",value:function(){this.reloadFeatureFlagsQueued=!1}},{key:"_startReloadTimer",value:function(){var I=this;this.reloadFeatureFlagsQueued&&!this.reloadFeatureFlagsInAction&&setTimeout(function(){!I.reloadFeatureFlagsInAction&&I.reloadFeatureFlagsQueued&&(I.reloadFeatureFlagsQueued=!1,I._reloadFeatureFlagsRequest())},5)}},{key:"_reloadFeatureFlagsRequest",value:function(){var I=this;this.setReloadingPaused(!0);var $=this.instance.get_config("token"),se=this.instance.get_property(bh),Pe=this.instance.get_property(Mc),R=F1(JSON.stringify({token:$,distinct_id:this.instance.get_distinct_id(),groups:this.instance.getGroups(),$anon_distinct_id:this.$anon_distinct_id,person_properties:se,group_properties:Pe}));this.instance._send_request(this.instance.get_config("api_host")+"/decide/?v=3",{data:R},{method:"POST"},this.instance._prepare_callback(function(E){I.$anon_distinct_id=void 0,I.receivedFeatureFlags(E),I.setReloadingPaused(!1),I._startReloadTimer()}))}},{key:"getFeatureFlag",value:function(I){var $=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!this.getFlags())return console.warn('getFeatureFlag for key "'+I+`" failed. Feature flags didn't load in time.`),!1;var se=this.getFlagVariants()[I];return!$.send_event&&"send_event"in $||this.flagCallReported[I]||(this.flagCallReported[I]=!0,this.instance.capture("$feature_flag_called",{$feature_flag:I,$feature_flag_response:se})),se}},{key:"getFeatureFlagPayload",value:function(I){return this.getFlagPayloads()[I]}},{key:"isFeatureEnabled",value:function(I){var $=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return this.getFlags()?!!this.getFeatureFlag(I,$):(console.warn('isFeatureEnabled for key "'+I+`" failed. Feature flags didn't load in time.`),!1)}},{key:"addFeatureFlagsHandler",value:function(I){this.featureFlagEventHandlers.push(I)}},{key:"removeFeatureFlagsHandler",value:function(I){this.featureFlagEventHandlers=this.featureFlagEventHandlers.filter(function($){return $!==I})}},{key:"receivedFeatureFlags",value:function(I){this.instance.decideEndpointWasHit=!0;var $=this.getFlagVariants(),se=this.getFlagPayloads();(function(Pe,R){var E=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},e=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},w=Pe.featureFlags,k=Pe.featureFlagPayloads;if(w)if(Array.isArray(w)){var i,_={};if(w)for(var y=0;y<w.length;y++)_[w[y]]=!0;R&&R.register((Jr(i={},nv,w),Jr(i,xh,_),i))}else{var h,l=w,t=k;Pe.errorsWhileComputingFlags&&(l=Zr(Zr({},E),l),t=Zr(Zr({},e),t)),R&&R.register((Jr(h={},nv,Object.keys(Gb(l))),Jr(h,xh,l||{}),Jr(h,qb,t||{}),h))}})(I,this.instance.persistence,$,se),this._fireFeatureFlagsCallbacks()}},{key:"override",value:function(I){if(this._override_warning=!1,I===!1)this.instance.persistence.unregister(x0);else if(Array.isArray(I)){for(var $={},se=0;se<I.length;se++)$[I[se]]=!0;this.instance.persistence.register(Jr({},x0,$))}else this.instance.persistence.register(Jr({},x0,I))}},{key:"onFeatureFlags",value:function(I){var $=this;if(this.addFeatureFlagsHandler(I),this.instance.decideEndpointWasHit){var se=this._prepareFeatureFlagsForCallbacks(),Pe=se.flags,R=se.flagVariants;I(Pe,R)}return function(){return $.removeFeatureFlagsHandler(I)}}},{key:"updateEarlyAccessFeatureEnrollment",value:function(I,$){var se,Pe=Jr({},"$feature_enrollment/".concat(I),$);this.instance.capture("$feature_enrollment_update",{$feature_flag:I,$feature_enrollment:$,$set:Pe}),this.setPersonPropertiesForFlags(Pe,!1);var R=Zr(Zr({},this.getFlagVariants()),{},Jr({},I,$));this.instance.persistence.register((Jr(se={},nv,Object.keys(Gb(R))),Jr(se,xh,R),se)),this._fireFeatureFlagsCallbacks()}},{key:"getEarlyAccessFeatures",value:function(I){var $=this,se=arguments.length>1&&arguments[1]!==void 0&&arguments[1],Pe=this.instance.get_property(vm);if(Pe&&!se)return I(Pe);this.instance._send_request("".concat(this.instance.get_config("api_host"),"/api/early_access_features/?token=").concat(this.instance.get_config("token")),{},{method:"GET"},function(R){var E=R.earlyAccessFeatures;return $.instance.persistence.register(Jr({},vm,E)),I(E)})}},{key:"_prepareFeatureFlagsForCallbacks",value:function(){var I=this.getFlags(),$=this.getFlagVariants();return{flags:I.filter(function(se){return $[se]}),flagVariants:Object.keys($).filter(function(se){return $[se]}).reduce(function(se,Pe){return se[Pe]=$[Pe],se},{})}}},{key:"_fireFeatureFlagsCallbacks",value:function(){var I=this._prepareFeatureFlagsForCallbacks(),$=I.flags,se=I.flagVariants;this.featureFlagEventHandlers.forEach(function(Pe){return Pe($,se)})}},{key:"setPersonPropertiesForFlags",value:function(I){var $=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],se=this.instance.get_property(bh)||{};this.instance.register(Jr({},bh,Zr(Zr({},se),I))),$&&this.instance.reloadFeatureFlags()}},{key:"resetPersonPropertiesForFlags",value:function(){this.instance.unregister(bh)}},{key:"setGroupPropertiesForFlags",value:function(I){var $=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1],se=this.instance.get_property(Mc)||{};Object.keys(se).length!==0&&Object.keys(se).forEach(function(Pe){se[Pe]=Zr(Zr({},se[Pe]),I[Pe]),delete I[Pe]}),this.instance.register(Jr({},Mc,Zr(Zr({},se),I))),$&&this.instance.reloadFeatureFlags()}},{key:"resetGroupPropertiesForFlags",value:function(I){if(I){var $=this.instance.get_property(Mc)||{};this.instance.register(Jr({},Mc,Zr(Zr({},$),{},Jr({},I,{}))))}else this.instance.unregister(Mc)}}]),L}(),CT="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJibGFjayIvPgo8cGF0aCBkPSJNOCAwSDE2TDAgMTZWOEw4IDBaIiBmaWxsPSIjMkQyRDJEIi8+CjxwYXRoIGQ9Ik0xNiA4VjE2SDhMMTYgOFoiIGZpbGw9IiMyRDJEMkQiLz4KPC9zdmc+Cg==",Wb=2,LT=4,PT=6,OT="rrweb/console@1",_u,IT="/s/";(function(L){L[L.Mutation=0]="Mutation",L[L.MouseMove=1]="MouseMove",L[L.MouseInteraction=2]="MouseInteraction",L[L.Scroll=3]="Scroll",L[L.ViewportResize=4]="ViewportResize",L[L.Input=5]="Input",L[L.TouchMove=6]="TouchMove",L[L.MediaInteraction=7]="MediaInteraction",L[L.StyleSheetRule=8]="StyleSheetRule",L[L.CanvasMutation=9]="CanvasMutation",L[L.Font=10]="Font",L[L.Log=11]="Log",L[L.Drag=12]="Drag",L[L.StyleDeclaration=13]="StyleDeclaration",L[L.Selection=14]="Selection",L[L.AdoptedStyleSheet=15]="AdoptedStyleSheet"})(_u||(_u={}));var RT=[_u.MouseMove,_u.MouseInteraction,_u.Scroll,_u.ViewportResize,_u.Input,_u.TouchMove,_u.MediaInteraction,_u.Drag],zT=function(){function L(I){Ua(this,L),Jr(this,"lastActivityTimestamp",Date.now()),Jr(this,"isIdle",!1),this.instance=I,this.captureStarted=!1,this.snapshots=[],this.emit=!1,this.endpoint=IT,this.stopRrweb=void 0,this.windowId=null,this.sessionId=null,this.receivedDecide=!1}return Va(L,[{key:"startRecordingIfEnabled",value:function(){this.isRecordingEnabled()?this.startCaptureAndTrySendingQueuedSnapshots():this.stopRecording()}},{key:"started",value:function(){return this.captureStarted}},{key:"stopRecording",value:function(){this.captureStarted&&this.stopRrweb&&(this.stopRrweb(),this.stopRrweb=void 0,this.captureStarted=!1)}},{key:"isRecordingEnabled",value:function(){var I=!!this.instance.get_property(dm),$=!this.instance.get_config("disable_session_recording");return I&&$}},{key:"isConsoleLogCaptureEnabled",value:function(){var I=!!this.instance.get_property(jb),$=this.instance.get_config("enable_recording_console_log");return $??I}},{key:"getRecordingVersion",value:function(){var I,$=this.instance.get_property(Ub);return((I=this.instance.get_config("session_recording"))===null||I===void 0?void 0:I.recorderVersion)||$||"v1"}},{key:"afterDecideResponse",value:function(I){var $,se,Pe,R,E,e;this.receivedDecide=!0,this.instance.persistence&&this.instance.persistence.register((Jr(E={},dm,!!I.sessionRecording),Jr(E,jb,(Pe=I.sessionRecording)===null||Pe===void 0?void 0:Pe.consoleLogRecordingEnabled),Jr(E,Ub,(R=I.sessionRecording)===null||R===void 0?void 0:R.recorderVersion),E)),($=I.sessionRecording)!==null&&$!==void 0&&$.endpoint&&(this.endpoint=(e=I.sessionRecording)===null||e===void 0?void 0:e.endpoint),(se=I.sessionRecording)!==null&&se!==void 0&&se.recorderVersion&&(this.recorderVersion=I.sessionRecording.recorderVersion),this.startRecordingIfEnabled()}},{key:"startCaptureAndTrySendingQueuedSnapshots",value:function(){var I=this;this.receivedDecide&&(this.emit=!0,this.snapshots.forEach(function($){return I._captureSnapshot($)})),this._startCapture()}},{key:"_startCapture",value:function(){var I=this;if(Object.assign!==void 0&&!this.captureStarted&&!this.instance.get_config("disable_session_recording")){this.captureStarted=!0,this.instance.sessionManager.checkAndGetSessionAndWindowId();var $=this.getRecordingVersion()==="v2"?"recorder-v2.js":"recorder.js";this.instance.__loaded_recorder_version!==this.getRecordingVersion()?Ey(this.instance.get_config("api_host")+"/static/".concat($,"?v=").concat(Su.LIB_VERSION),function(se){if(se)return Sa.error("Could not load ".concat($),se);I._onScriptLoaded()}):this._onScriptLoaded()}}},{key:"_isInteractiveEvent",value:function(I){var $;return I.type===3&&RT.indexOf(($=I.data)===null||$===void 0?void 0:$.source)!==-1}},{key:"_updateWindowAndSessionIds",value:function(I){var $=this._isInteractiveEvent(I);if($||this.isIdle||I.timestamp-this.lastActivityTimestamp>3e5&&(this.isIdle=!0),$&&(this.lastActivityTimestamp=I.timestamp,this.isIdle&&(this.isIdle=!1,this._tryTakeFullSnapshot())),!this.isIdle){var se=this.instance.sessionManager.checkAndGetSessionAndWindowId(!$,I.timestamp),Pe=se.windowId,R=se.sessionId;[Wb,LT].indexOf(I.type)!==-1||this.windowId===Pe&&this.sessionId===R||this._tryTakeFullSnapshot(),this.windowId=Pe,this.sessionId=R}}},{key:"_tryTakeFullSnapshot",value:function(){if(!this.captureStarted)return!1;try{var I;return(I=this.rrwebRecord)===null||I===void 0||I.takeFullSnapshot(),!0}catch($){return Sa.error("Error taking full snapshot.",$),!1}}},{key:"_onScriptLoaded",value:function(){var I=this,$={blockClass:"ph-no-capture",blockSelector:void 0,ignoreClass:"ph-ignore-input",maskTextClass:"ph-mask",maskTextSelector:void 0,maskTextFn:void 0,maskAllInputs:!0,maskInputOptions:{},maskInputFn:void 0,slimDOMOptions:{},collectFonts:!1,inlineStylesheet:!0,recordCrossOriginIframes:!1};this.rrwebRecord=window.rrweb?window.rrweb.record:window.rrwebRecord;for(var se=this.instance.get_config("session_recording"),Pe=0,R=Object.entries(se||{});Pe<R.length;Pe++){var E=Wc(R[Pe],2),e=E[0],w=E[1];e in $&&($[e]=w)}this.rrwebRecord?(this.stopRrweb=this.rrwebRecord(Zr({emit:function(k){I.onRRwebEmit(k)},plugins:window.rrwebConsoleRecord&&this.isConsoleLogCaptureEnabled()?[window.rrwebConsoleRecord.getRecordConsolePlugin()]:[]},$)),this.instance._addCaptureHook(function(k){try{var i;k==="$pageview"&&((i=I.rrwebRecord)===null||i===void 0||i.addCustomEvent("$pageview",{href:window.location.href}))}catch(_){Sa.error("Could not add $pageview to rrweb session",_)}}),this.lastActivityTimestamp=Date.now(),this.isIdle=!1):Sa.error("onScriptLoaded was called but rrwebRecord is not available. This indicates something has gone wrong.")}},{key:"onRRwebEmit",value:function(I){if(I=function(se){if(se&&Hc(se)==="object"&&se.type===PT&&Hc(se.data)==="object"&&se.data.plugin===OT){se.data.payload.payload.length>10&&(se.data.payload.payload=se.data.payload.payload.slice(0,10),se.data.payload.payload.push("...[truncated]"));for(var Pe=[],R=0;R<se.data.payload.payload.length;R++)se.data.payload.payload[R]&&se.data.payload.payload[R].length>2e3?Pe.push(se.data.payload.payload[R].slice(0,2e3)+"...[truncated]"):Pe.push(se.data.payload.payload[R]);return se.data.payload.payload=Pe,se}return se}(function(se){if(se&&Hc(se)==="object"){var Pe=JSON.stringify(se);if(Pe.length>5e6){var R,E=nc(Pe.matchAll(/data:([\w\/\-\.]+);(\w+),([^)"]*)/gim));try{for(E.s();!(R=E.n()).done;){var e=R.value;Pe=e[1].toLocaleLowerCase().slice(0,6)==="image/"?Pe.replace(e[0],CT):Pe.replace(e[0],"")}}catch(w){E.e(w)}finally{E.f()}}return JSON.parse(Pe)}return se}(I)),this._updateWindowAndSessionIds(I),!this.isIdle){var $={$snapshot_data:I,$session_id:this.sessionId,$window_id:this.windowId};this.instance._captureMetrics.incr("rrweb-record"),this.instance._captureMetrics.incr("rrweb-record-".concat(I.type)),this.emit?this._captureSnapshot($):this.snapshots.push($)}}},{key:"_captureSnapshot",value:function(I){this.instance.capture("$snapshot",I,{transport:"XHR",method:"POST",endpoint:this.endpoint,_noTruncate:!0,_batchKey:"sessionRecording",_metrics:{rrweb_full_snapshot:I.$snapshot_data.type===Wb}})}}]),L}(),xu={entryType:0,timeOrigin:1,name:2,startTime:3,redirectStart:4,redirectEnd:5,workerStart:6,fetchStart:7,domainLookupStart:8,domainLookupEnd:9,connectStart:10,secureConnectionStart:11,connectEnd:12,requestStart:13,responseStart:14,responseEnd:15,decodedBodySize:16,encodedBodySize:17,initiatorType:18,nextHopProtocol:19,renderBlockingStatus:20,responseStatus:21,transferSize:22,element:23,renderTime:24,loadTime:25,size:26,id:27,url:28,domComplete:29,domContentLoadedEvent:30,domInteractive:31,loadEventEnd:32,loadEventStart:33,redirectCount:34,navigationType:35,unloadEventEnd:36,unloadEventStart:37,duration:39,timestamp:40},DT=["first-input","navigation","paint","resource"],FT=["/s/","/e/"],BT=function(){function L(I){Ua(this,L),Jr(this,"_forceAllowLocalhost",!1),this.instance=I}return Va(L,[{key:"startObservingIfEnabled",value:function(){this.isEnabled()?this.startObserving():this.stopObserving()}},{key:"startObserving",value:function(){var I,$,se=this;if(!this.observer)if(((I=window)===null||I===void 0||($=I.PerformanceObserver)===null||$===void 0?void 0:$.supportedEntryTypes)!==void 0)if(!uT.includes(location.hostname)||this._forceAllowLocalhost)try{this.observer=new PerformanceObserver(function(R){R.getEntries().forEach(function(E){se._capturePerformanceEvent(E)})});var Pe=PerformanceObserver.supportedEntryTypes.filter(function(R){return DT.includes(R)});Pe.forEach(function(R){var E;(E=se.observer)===null||E===void 0||E.observe({type:R,buffered:!0})})}catch(R){console.error("PostHog failed to start performance observer",R),this.stopObserving()}else Sa.log("PostHog Peformance observer not started because we are on localhost.");else Sa.log("PostHog Performance observer not started because PerformanceObserver is not supported by this browser.")}},{key:"stopObserving",value:function(){this.observer&&(this.observer.disconnect(),this.observer=void 0)}},{key:"isObserving",value:function(){return!!this.observer}},{key:"isEnabled",value:function(){var I,$;return(I=($=this.instance.get_config("capture_performance"))!==null&&$!==void 0?$:this.remoteEnabled)!==null&&I!==void 0&&I}},{key:"afterDecideResponse",value:function(I){this.remoteEnabled=I.capturePerformance||!1,this.isEnabled()&&this.startObserving()}},{key:"_capturePerformanceEvent",value:function(I){if(I.name.indexOf(this.instance.get_config("api_host"))===0){var $=I.name.replace(this.instance.get_config("api_host"),"");if(FT.find(function(h){return $.indexOf(h)===0}))return}var se={url:I.name},Pe=this.instance.get_config("session_recording");if(Pe.maskNetworkRequestFn&&(se=Pe.maskNetworkRequestFn(se)),se){var R=I.toJSON();R.name=se.url;var E={},e=Math.floor(Date.now()-performance.now());for(var w in E[xu.timeOrigin]=e,E[xu.timestamp]=Math.floor(e+I.startTime),xu)R[w]!==void 0&&(E[xu[w]]=R[w]);if(this.capturePerformanceEvent(E),NT(I)){var k,i=nc(I.serverTiming||[]);try{for(i.s();!(k=i.n()).done;){var _,y=k.value;this.capturePerformanceEvent((Jr(_={},xu.timeOrigin,e),Jr(_,xu.timestamp,Math.floor(e+I.startTime)),Jr(_,xu.name,y.name),Jr(_,xu.duration,y.duration),Jr(_,xu.entryType,"serverTiming"),_))}}catch(h){i.e(h)}finally{i.f()}}}}},{key:"capturePerformanceEvent",value:function(I){var $,se=I[xu.timestamp];($=this.instance.sessionRecording)===null||$===void 0||$.onRRwebEmit({type:6,data:{plugin:"posthog/network@1",payload:I},timestamp:se})}}]),L}(),NT=function(L){return L.entryType==="navigation"||L.entryType==="resource"},jT=function(){function L(I){Ua(this,L),this.instance=I,this.instance.decideEndpointWasHit=this.instance._hasBootstrappedFeatureFlags()}return Va(L,[{key:"call",value:function(){var I=this,$=F1(JSON.stringify({token:this.instance.get_config("token"),distinct_id:this.instance.get_distinct_id(),groups:this.instance.getGroups(),person_properties:this.instance.get_property(bh),group_properties:this.instance.get_property(Mc)}));this.instance._send_request("".concat(this.instance.get_config("api_host"),"/decide/?v=3"),{data:$,verbose:!0},{method:"POST"},function(se){return I.parseDecideResponse(se)})}},{key:"parseDecideResponse",value:function(I){var $,se,Pe,R=this;if((I==null?void 0:I.status)!==0){if(this.instance.decideEndpointWasHit=!0,!document||!document.body)return console.log("document not ready yet, trying again in 500 milliseconds..."),void setTimeout(function(){R.parseDecideResponse(I)},500);if(this.instance.toolbar.afterDecideResponse(I),($=this.instance.sessionRecording)===null||$===void 0||$.afterDecideResponse(I),Cc.afterDecideResponse(I,this.instance),(se=this.instance.webPerformance)===null||se===void 0||se.afterDecideResponse(I),(Pe=this.instance.exceptionAutocapture)===null||Pe===void 0||Pe.afterDecideResponse(I),this.instance.featureFlags.receivedFeatureFlags(I),this.instance.compression={},I.supportedCompression&&!this.instance.get_config("disable_compression")){var E,e={},w=nc(I.supportedCompression);try{for(w.s();!(E=w.n()).done;)e[E.value]=!0}catch(h){w.e(h)}finally{w.f()}this.instance.compression=e}if(I.siteApps)if(this.instance.get_config("opt_in_site_apps")){var k,i=this.instance.get_config("api_host"),_=nc(I.siteApps);try{var y=function(){var h=k.value,l=h.id,t=h.url,o=[i,i[i.length-1]==="/"&&t[0]==="/"?t.substring(1):t].join("");window["__$$ph_site_app_".concat(l)]=R.instance,Ey(o,function(r){r&&console.error("Error while initializing PostHog app with config id ".concat(l),r)})};for(_.s();!(k=_.n()).done;)y()}catch(h){_.e(h)}finally{_.f()}}else I.siteApps.length>0&&console.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.')}else console.error("Failed to fetch feature flags from PostHog.")}}]),L}(),UT=["https://app.posthog.com","https://eu.posthog.com"],VT=["source"],HT=function(){function L(I){Ua(this,L),this.instance=I}return Va(L,[{key:"afterDecideResponse",value:function(I){var $=I.toolbarParams||I.editorParams||(I.toolbarVersion?{toolbarVersion:I.toolbarVersion}:{});I.isAuthenticated&&$.toolbarVersion&&$.toolbarVersion.indexOf("toolbar")===0&&this.loadToolbar(Zr({},$))}},{key:"maybeLoadToolbar",value:function(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:window.location,$=arguments.length>1&&arguments[1]!==void 0?arguments[1]:void 0,se=arguments.length>2&&arguments[2]!==void 0?arguments[2]:window.history;try{if(!$){try{window.localStorage.setItem("test","test"),window.localStorage.removeItem("test")}catch{return!1}$=window.localStorage}var Pe,R=zb(I.hash,"__posthog")||zb(I.hash,"state"),E=R?JSON.parse(decodeURIComponent(R)):null;return E&&E.action==="ph_authorize"?((Pe=E).source="url",Pe&&Object.keys(Pe).length>0&&(E.desiredHash?I.hash=E.desiredHash:se?se.replaceState("",document.title,I.pathname+I.search):I.hash="")):((Pe=JSON.parse($.getItem("_postHogToolbarParams")||"{}")).source="localstorage",delete Pe.userIntent),!(!Pe.token||this.instance.get_config("token")!==Pe.token)&&(this.loadToolbar(Pe),!0)}catch{return!1}}},{key:"loadToolbar",value:function(I){var $=this;if(window._postHogToolbarLoaded)return!1;window._postHogToolbarLoaded=!0;var se=this.instance.get_config("api_host"),Pe=3e4*Math.floor(Date.now()/3e4),R="".concat(se).concat(se.endsWith("/")?"":"/","static/toolbar.js?_ts=").concat(Pe),E=!UT.includes(this.instance.get_config("api_host"))&&this.instance.get_config("advanced_disable_toolbar_metrics"),e=Zr(Zr({token:this.instance.get_config("token")},I),{},{apiURL:se},E?{instrument:!1}:{});e.source;var w=nT(e,VT);return window.localStorage.setItem("_postHogToolbarParams",JSON.stringify(w)),Ey(R,function(k){k?Sa.error("Failed to load toolbar",k):(window.ph_load_toolbar||window.ph_load_editor)(e,$.instance)}),jp(window,"turbolinks:load",function(){window._postHogToolbarLoaded=!1,$.loadToolbar(e)}),!0}},{key:"_loadEditor",value:function(I){return this.loadToolbar(I)}},{key:"maybeLoadEditor",value:function(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:window.location,$=arguments.length>1&&arguments[1]!==void 0?arguments[1]:void 0,se=arguments.length>2&&arguments[2]!==void 0?arguments[2]:window.history;return this.maybeLoadToolbar(I,$,se)}}]),L}(),a5=function(){function L(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:3e3;Ua(this,L),this.isPolling=!0,this._event_queue=[],this._empty_queue_count=0,this._poller=void 0,this._pollInterval=I}return Va(L,[{key:"setPollInterval",value:function(I){this._pollInterval=I,this.isPolling&&this.poll()}},{key:"poll",value:function(){}},{key:"unload",value:function(){}},{key:"getTime",value:function(){return new Date().getTime()}}]),L}(),qT=function(L){Vw($,a5);var I=Hw($);function $(se,Pe){var R,E=arguments.length>2&&arguments[2]!==void 0?arguments[2]:3e3;return Ua(this,$),(R=I.call(this,E)).handlePollRequest=Pe,R.captureMetrics=se,R}return Va($,[{key:"enqueue",value:function(se,Pe,R){this.captureMetrics.incr("batch-enqueue"),this._event_queue.push({url:se,data:Pe,options:R}),this.isPolling||(this.isPolling=!0,this.poll())}},{key:"poll",value:function(){var se=this;clearTimeout(this._poller),this._poller=setTimeout(function(){if(se._event_queue.length>0){var Pe=se.formatQueue(),R=function(e){var w=Pe[e],k=w.url,i=w.data,_=w.options;ji(i,function(y,h){i[h].offset=Math.abs(i[h].timestamp-se.getTime()),delete i[h].timestamp}),se.handlePollRequest(k,i,_),se.captureMetrics.incr("batch-requests"),se.captureMetrics.incr("batch-requests-".concat(k.slice(k.length-2))),se.captureMetrics.incr("batch-handle",i.length),se.captureMetrics.incr("batch-handle-".concat(k.slice(k.length-2)),i.length)};for(var E in Pe)R(E);se._event_queue.length=0,se._empty_queue_count=0}else se._empty_queue_count++;se._empty_queue_count>4&&(se.isPolling=!1,se._empty_queue_count=0),se.isPolling&&se.poll()},this._pollInterval)}},{key:"updateUnloadMetrics",value:function(){var se=this.formatQueue();for(var Pe in se){var R=se[Pe],E=R.url,e=R.data;this.captureMetrics.incr("batch-unload-requests"),this.captureMetrics.incr("batch-unload-requests-".concat(E.slice(E.length-2))),this.captureMetrics.incr("batch-unload",e.length),this.captureMetrics.incr("batch-unload-".concat(E.slice(E.length-2)),e.length)}}},{key:"unload",value:function(){var se=this;clearTimeout(this._poller);var Pe=this._event_queue.length>0?this.formatQueue():{};this._event_queue.length=0;var R=Object.values(Pe);[].concat(um(R.filter(function(E){return E.url.indexOf("/e")===0})),um(R.filter(function(E){return E.url.indexOf("/e")!==0}))).map(function(E){var e=E.url,w=E.data,k=E.options;se.handlePollRequest(e,w,Zr(Zr({},k),{},{transport:"sendBeacon"}))})}},{key:"formatQueue",value:function(){var se={};return ji(this._event_queue,function(Pe){var R=Pe.url,E=Pe.data,e=Pe.options,w=(e?e._batchKey:null)||R;se[w]===void 0&&(se[w]={data:[],url:R,options:e}),e&&se[w].options&&se[w].options._metrics&&!se[w].options._metrics.rrweb_full_snapshot&&(se[w].options._metrics.rrweb_full_snapshot=e._metrics.rrweb_full_snapshot),se[w].data.push(E)}),se}}]),$}(),GT=function(){function L(I){Ua(this,L),this.enabled=I,this.metrics={}}return Va(L,[{key:"incr",value:function(I){var $=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1;this.enabled&&(I="phjs-".concat(I),this.metrics[I]=(this.metrics[I]||0)+$)}},{key:"decr",value:function(I){this.enabled&&(I="phjs-".concat(I),this.metrics[I]=(this.metrics[I]||0)-1)}}]),L}(),fl=Uint8Array,gs=Uint16Array,zh=Uint32Array,Py=new fl([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),Oy=new fl([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),Zb=new fl([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),o5=function(L,I){for(var $=new gs(31),se=0;se<31;++se)$[se]=I+=1<<L[se-1];var Pe=new zh($[30]);for(se=1;se<30;++se)for(var R=$[se];R<$[se+1];++R)Pe[R]=R-$[se]<<5|se;return[$,Pe]},s5=o5(Py,2),WT=s5[0],xm=s5[1];WT[28]=258,xm[258]=28;for(var Yb=o5(Oy,0)[1],bm=new gs(32768),ha=0;ha<32768;++ha){var cf=(43690&ha)>>>1|(21845&ha)<<1;cf=(61680&(cf=(52428&cf)>>>2|(13107&cf)<<2))>>>4|(3855&cf)<<4,bm[ha]=((65280&cf)>>>8|(255&cf)<<8)>>>1}var Up=function(L,I,$){for(var se=L.length,Pe=0,R=new gs(I);Pe<se;++Pe)++R[L[Pe]-1];var E,e=new gs(I);for(Pe=0;Pe<I;++Pe)e[Pe]=e[Pe-1]+R[Pe-1]<<1;if($){E=new gs(1<<I);var w=15-I;for(Pe=0;Pe<se;++Pe)if(L[Pe])for(var k=Pe<<4|L[Pe],i=I-L[Pe],_=e[L[Pe]-1]++<<i,y=_|(1<<i)-1;_<=y;++_)E[bm[_]>>>w]=k}else for(E=new gs(se),Pe=0;Pe<se;++Pe)E[Pe]=bm[e[L[Pe]-1]++]>>>15-L[Pe];return E},Ef=new fl(288);for(ha=0;ha<144;++ha)Ef[ha]=8;for(ha=144;ha<256;++ha)Ef[ha]=9;for(ha=256;ha<280;++ha)Ef[ha]=7;for(ha=280;ha<288;++ha)Ef[ha]=8;var x1=new fl(32);for(ha=0;ha<32;++ha)x1[ha]=5;var df,Xb,$b,ZT=Up(Ef,9,0),YT=Up(x1,5,0),l5=function(L){return(L/8>>0)+(7&L&&1)},u5=function(L,I,$){(I==null||I<0)&&(I=0),($==null||$>L.length)&&($=L.length);var se=new(L instanceof gs?gs:L instanceof zh?zh:fl)($-I);return se.set(L.subarray(I,$)),se},Vu=function(L,I,$){$<<=7&I;var se=I/8>>0;L[se]|=$,L[se+1]|=$>>>8},Tp=function(L,I,$){$<<=7&I;var se=I/8>>0;L[se]|=$,L[se+1]|=$>>>8,L[se+2]|=$>>>16},rv=function(L,I){for(var $=[],se=0;se<L.length;++se)L[se]&&$.push({s:se,f:L[se]});var Pe=$.length,R=$.slice();if(!Pe)return[new fl(0),0];if(Pe==1){var E=new fl($[0].s+1);return E[$[0].s]=1,[E,1]}$.sort(function(u,p){return u.f-p.f}),$.push({s:-1,f:25001});var e=$[0],w=$[1],k=0,i=1,_=2;for($[0]={s:-1,f:e.f+w.f,l:e,r:w};i!=Pe-1;)e=$[$[k].f<$[_].f?k++:_++],w=$[k!=i&&$[k].f<$[_].f?k++:_++],$[i++]={s:-1,f:e.f+w.f,l:e,r:w};var y=R[0].s;for(se=1;se<Pe;++se)R[se].s>y&&(y=R[se].s);var h=new gs(y+1),l=XT($[i-1],h,0);if(l>I){se=0;var t=0,o=l-I,r=1<<o;for(R.sort(function(u,p){return h[p.s]-h[u.s]||u.f-p.f});se<Pe;++se){var n=R[se].s;if(!(h[n]>I))break;t+=r-(1<<l-h[n]),h[n]=I}for(t>>>=o;t>0;){var a=R[se].s;h[a]<I?t-=1<<I-h[a]++-1:++se}for(;se>=0&&t;--se){var s=R[se].s;h[s]==I&&(--h[s],++t)}l=I}return[new fl(h),l]},XT=function L(I,$,se){return I.s==-1?Math.max(L(I.l,$,se+1),L(I.r,$,se+1)):$[I.s]=se},Kb=function(L){for(var I=L.length;I&&!L[--I];);for(var $=new gs(++I),se=0,Pe=L[0],R=1,E=function(w){$[se++]=w},e=1;e<=I;++e)if(L[e]==Pe&&e!=I)++R;else{if(!Pe&&R>2){for(;R>138;R-=138)E(32754);R>2&&(E(R>10?R-11<<5|28690:R-3<<5|12305),R=0)}else if(R>3){for(E(Pe),--R;R>6;R-=6)E(8304);R>2&&(E(R-3<<5|8208),R=0)}for(;R--;)E(Pe);R=1,Pe=L[e]}return[$.subarray(0,se),I]},Ap=function(L,I){for(var $=0,se=0;se<I.length;++se)$+=L[se]*I[se];return $},j0=function(L,I,$){var se=$.length,Pe=l5(I+2);L[Pe]=255&se,L[Pe+1]=se>>>8,L[Pe+2]=255^L[Pe],L[Pe+3]=255^L[Pe+1];for(var R=0;R<se;++R)L[Pe+R+4]=$[R];return 8*(Pe+4+se)},Jb=function(L,I,$,se,Pe,R,E,e,w,k,i){Vu(I,i++,$),++Pe[256];for(var _=rv(Pe,15),y=_[0],h=_[1],l=rv(R,15),t=l[0],o=l[1],r=Kb(y),n=r[0],a=r[1],s=Kb(t),u=s[0],p=s[1],c=new gs(19),b=0;b<n.length;++b)c[31&n[b]]++;for(b=0;b<u.length;++b)c[31&u[b]]++;for(var g=rv(c,7),f=g[0],v=g[1],m=19;m>4&&!f[Zb[m-1]];--m);var x,T,d,M,A=k+5<<3,C=Ap(Pe,Ef)+Ap(R,x1)+E,P=Ap(Pe,y)+Ap(R,t)+E+14+3*m+Ap(c,f)+(2*c[16]+3*c[17]+7*c[18]);if(A<=C&&A<=P)return j0(I,i,L.subarray(w,w+k));if(Vu(I,i,1+(P<C)),i+=2,P<C){x=Up(y,h,0),T=y,d=Up(t,o,0),M=t;var O=Up(f,v,0);for(Vu(I,i,a-257),Vu(I,i+5,p-1),Vu(I,i+10,m-4),i+=14,b=0;b<m;++b)Vu(I,i+3*b,f[Zb[b]]);i+=3*m;for(var z=[n,u],B=0;B<2;++B){var Y=z[B];for(b=0;b<Y.length;++b){var D=31&Y[b];Vu(I,i,O[D]),i+=f[D],D>15&&(Vu(I,i,Y[b]>>>5&127),i+=Y[b]>>>12)}}}else x=ZT,T=Ef,d=YT,M=x1;for(b=0;b<e;++b)if(se[b]>255){D=se[b]>>>18&31,Tp(I,i,x[D+257]),i+=T[D+257],D>7&&(Vu(I,i,se[b]>>>23&31),i+=Py[D]);var G=31&se[b];Tp(I,i,d[G]),i+=M[G],G>3&&(Tp(I,i,se[b]>>>5&8191),i+=Oy[G])}else Tp(I,i,x[se[b]]),i+=T[se[b]];return Tp(I,i,x[256]),i+T[256]},$T=new zh([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),KT=new fl(0),JT=function(){for(var L=new zh(256),I=0;I<256;++I){for(var $=I,se=9;--se;)$=(1&$&&3988292384)^$>>>1;L[I]=$}return L}(),QT=function(){var L=4294967295;return{p:function(I){for(var $=L,se=0;se<I.length;++se)$=JT[255&$^I[se]]^$>>>8;L=$},d:function(){return 4294967295^L}}},e7=function(L,I,$,se,Pe){return function(R,E,e,w,k,i){var _=R.length,y=new fl(w+_+5*(1+Math.floor(_/7e3))+k),h=y.subarray(w,y.length-k),l=0;if(!E||_<8)for(var t=0;t<=_;t+=65535){var o=t+65535;o<_?l=j0(h,l,R.subarray(t,o)):(h[t]=i,l=j0(h,l,R.subarray(t,_)))}else{for(var r=$T[E-1],n=r>>>13,a=8191&r,s=(1<<e)-1,u=new gs(32768),p=new gs(s+1),c=Math.ceil(e/3),b=2*c,g=function(ue){return(R[ue]^R[ue+1]<<c^R[ue+2]<<b)&s},f=new zh(25e3),v=new gs(288),m=new gs(32),x=0,T=0,d=(t=0,0),M=0,A=0;t<_;++t){var C=g(t),P=32767&t,O=p[C];if(u[P]=O,p[C]=P,M<=t){var z=_-t;if((x>7e3||d>24576)&&z>423){l=Jb(R,h,0,f,v,m,T,d,A,t-A,l),d=x=T=0,A=t;for(var B=0;B<286;++B)v[B]=0;for(B=0;B<30;++B)m[B]=0}var Y=2,D=0,G=a,V=P-O&32767;if(z>2&&C==g(t-V))for(var j=Math.min(n,z)-1,W=Math.min(32767,t),Z=Math.min(258,z);V<=W&&--G&&P!=O;){if(R[t+Y]==R[t+Y-V]){for(var ie=0;ie<Z&&R[t+ie]==R[t+ie-V];++ie);if(ie>Y){if(Y=ie,D=V,ie>j)break;var te=Math.min(V,ie-2),J=0;for(B=0;B<te;++B){var X=t-V+B+32768&32767,ee=X-u[X]+32768&32767;ee>J&&(J=ee,O=X)}}}V+=(P=O)-(O=u[P])+32768&32767}if(D){f[d++]=268435456|xm[Y]<<18|Yb[D];var re=31&xm[Y],oe=31&Yb[D];T+=Py[re]+Oy[oe],++v[257+re],++m[oe],M=t+Y,++x}else f[d++]=R[t],++v[R[t]]}}l=Jb(R,h,i,f,v,m,T,d,A,t-A,l),i||(l=j0(h,l,KT))}return u5(y,0,w+l5(l)+k)}(L,I.level==null?6:I.level,I.mem==null?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(L.length)))):12+I.mem,$,se,!Pe)},_m=function(L,I,$){for(;$;++I)L[I]=$,$>>>=8},t7=function(L,I){var $=I.filename;if(L[0]=31,L[1]=139,L[2]=8,L[8]=I.level<2?4:I.level==9?2:0,L[9]=3,I.mtime!=0&&_m(L,4,Math.floor(new Date(I.mtime||Date.now())/1e3)),$){L[3]=8;for(var se=0;se<=$.length;++se)L[se+10]=$.charCodeAt(se)}},n7=function(L){return 10+(L.filename&&L.filename.length+1||0)};function r7(L,I){I===void 0&&(I={});var $=QT(),se=L.length;$.p(L);var Pe=e7(L,I,n7(I),8),R=Pe.length;return t7(Pe,I),_m(Pe,R-8,$.d()),_m(Pe,R-4,se),Pe}function i7(L,I){var $=L.length;if(!I&&typeof TextEncoder<"u")return new TextEncoder().encode(L);for(var se=new fl(L.length+(L.length>>>1)),Pe=0,R=function(k){se[Pe++]=k},E=0;E<$;++E){if(Pe+5>se.length){var e=new fl(Pe+8+($-E<<1));e.set(se),se=e}var w=L.charCodeAt(E);w<128||I?R(w):w<2048?(R(192|w>>>6),R(128|63&w)):w>55295&&w<57344?(R(240|(w=65536+(1047552&w)|1023&L.charCodeAt(++E))>>>18),R(128|w>>>12&63),R(128|w>>>6&63),R(128|63&w)):(R(224|w>>>12),R(128|w>>>6&63),R(128|63&w))}return u5(se,0,Pe)}(function(L){L.GZipJS="gzip-js",L.Base64="base64"})(df||(df={})),function(L){L.Popover="Popover",L.Button="Button",L.Email="Email",L.FullScreen="Fullscreen"}(Xb||(Xb={})),function(L){L.Open="open",L.MultipleChoiceSingle="multiple_single",L.MultipleChoiceMulti="multiple_multi",L.NPS="nps",L.Rating="rating",L.Link="link"}($b||($b={}));var a7=function(L,I,$){var se=I||{};se.ip=$.ip?1:0,se._=new Date().getTime().toString(),se.ver=Su.LIB_VERSION;var Pe=L.split("?");if(Pe.length>1){var R,E=nc(Pe[1].split("&"));try{for(E.s();!(R=E.n()).done;){var e=R.value.split("=")[0];se[e]&&delete se[e]}}catch(k){E.e(k)}finally{E.f()}}var w=L.indexOf("?")>-1?"&":"?";return L+w+function(k){var i,_,y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"&",h=[];return ji(k,function(l,t){i=encodeURIComponent(l.toString()),_=encodeURIComponent(t),h[h.length]=_+"="+i}),h.join(y)}(se)},Iy=function L(I,$){if($.blob&&I.buffer)return new Blob([I.buffer],{type:"text/plain"});if($.sendBeacon||$.blob){var se=L(I,{method:"POST"});return new Blob([se],{type:"application/x-www-form-urlencoded"})}if($.method!=="POST")return null;var Pe,R;return Pe=Array.isArray(I)||(R=I,Object.prototype.toString.call(R)==="[object Uint8Array]")?"data="+encodeURIComponent(I):"data="+encodeURIComponent(I.data),"compression"in I&&I.compression&&(Pe+="&compression="+I.compression),Pe},c5=function(L){var I=L.url,$=L.data,se=L.headers,Pe=L.options,R=L.captureMetrics,E=L.callback,e=L.retriesPerformedSoFar,w=L.retryQueue,k=L.onXHRError,i=L.timeout,_=i===void 0?1e4:i,y=new XMLHttpRequest;y.open(Pe.method||"GET",I,!0);var h=Iy($,Pe);R.incr("_send_request"),R.incr("_send_request_inflight"),ji(se,function(l,t){y.setRequestHeader(t,l)}),Pe.method!=="POST"||Pe.blob||y.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),y.timeout=_,y.withCredentials=!0,y.onreadystatechange=function(){if(y.readyState===4)if(R.incr("xhr-response"),R.incr("xhr-response-".concat(y.status)),R.decr("_send_request_inflight"),y.status===200){if(E){var l;try{l=JSON.parse(y.responseText)}catch(t){return void Sa.error(t)}E(l)}}else typeof k=="function"&&k(y),[401,403,404,500].indexOf(y.status)<0&&w.enqueue({url:I,data:$,options:Pe,headers:se,retriesPerformedSoFar:(e||0)+1,callback:E}),E&&E({status:0})},y.send(h)},o7=18e5,s7=function(L){Vw($,a5);var I=Hw($);function $(se,Pe){var R;return Ua(this,$),(R=I.call(this)).captureMetrics=se,R.isPolling=!1,R.queue=[],R.areWeOnline=!0,R.onXHRError=Pe,typeof window<"u"&&"onLine"in window.navigator&&(R.areWeOnline=window.navigator.onLine,window.addEventListener("online",function(){R._handleWeAreNowOnline()}),window.addEventListener("offline",function(){R.areWeOnline=!1})),R}return Va($,[{key:"enqueue",value:function(se){var Pe=se.retriesPerformedSoFar||0;if(!(Pe>=10)){var R=function(e){var w=3e3*Math.pow(2,e),k=w/2,i=Math.min(o7,w),_=(Math.random()-.5)*(i-k);return Math.ceil(i+_)}(Pe),E=new Date(Date.now()+R);this.queue.push({retryAt:E,requestData:se}),console.warn("Enqueued failed request for retry in ".concat(R)),this.isPolling||(this.isPolling=!0,this.poll())}}},{key:"poll",value:function(){var se=this;this._poller&&clearTimeout(this._poller),this._poller=setTimeout(function(){se.areWeOnline&&se.queue.length>0&&se.flush(),se.poll()},this._pollInterval)}},{key:"flush",value:function(){var se=new Date(Date.now()),Pe=this.queue.filter(function(w){return w.retryAt<se});if(Pe.length>0){this.queue=this.queue.filter(function(w){return w.retryAt>=se});var R,E=nc(Pe);try{for(E.s();!(R=E.n()).done;){var e=R.value.requestData;this._executeXhrRequest(e)}}catch(w){E.e(w)}finally{E.f()}}}},{key:"unload",value:function(){this._poller&&(clearTimeout(this._poller),this._poller=void 0);var se,Pe=nc(this.queue);try{for(Pe.s();!(se=Pe.n()).done;){var R=se.value.requestData,E=R.url,e=R.data,w=R.options;try{window.navigator.sendBeacon(E,Iy(e,Zr(Zr({},w),{},{sendBeacon:!0})))}catch(k){Su.DEBUG&&console.error(k)}}}catch(k){Pe.e(k)}finally{Pe.f()}this.queue=[]}},{key:"_executeXhrRequest",value:function(se){var Pe=se.url,R=se.data,E=se.options,e=se.headers,w=se.callback,k=se.retriesPerformedSoFar;c5({url:Pe,data:R||{},options:E||{},headers:e||{},retriesPerformedSoFar:k||0,callback:w,captureMetrics:this.captureMetrics,retryQueue:this,onXHRError:this.onXHRError})}},{key:"_handleWeAreNowOnline",value:function(){this.areWeOnline=!0,this.flush()}}]),$}(),l7=18e5,u7=864e5,c7=function(){function L(I,$){Ua(this,L),this.config=I,this.persistence=$,this._windowId=void 0,this._sessionId=void 0,this._sessionStartTimestamp=null,this._sessionActivityTimestamp=null;var se=I.persistence_name||I.token;if(this.window_id_storage_key="ph_"+se+"_window_id",this.primary_window_exists_storage_key="ph_"+se+"_primary_window_exists",this._canUseSessionStorage()){var Pe=Oo.parse(this.window_id_storage_key),R=Oo.parse(this.primary_window_exists_storage_key);Pe&&!R?this._windowId=Pe:Oo.remove(this.window_id_storage_key),Oo.set(this.primary_window_exists_storage_key,!0)}this._listenToReloadWindow()}return Va(L,[{key:"_canUseSessionStorage",value:function(){return this.config.persistence!=="memory"&&!this.persistence.disabled&&Oo.is_supported()}},{key:"_setWindowId",value:function(I){I!==this._windowId&&(this._windowId=I,this._canUseSessionStorage()&&Oo.set(this.window_id_storage_key,I))}},{key:"_getWindowId",value:function(){return this._windowId?this._windowId:this._canUseSessionStorage()?Oo.parse(this.window_id_storage_key):null}},{key:"_setSessionId",value:function(I,$,se){I===this._sessionId&&$===this._sessionActivityTimestamp&&se===this._sessionStartTimestamp||(this._sessionStartTimestamp=se,this._sessionActivityTimestamp=$,this._sessionId=I,this.persistence.register(Jr({},gm,[$,I,se])))}},{key:"_getSessionId",value:function(){if(this._sessionId&&this._sessionActivityTimestamp&&this._sessionStartTimestamp)return[this._sessionActivityTimestamp,this._sessionId,this._sessionStartTimestamp];var I=this.persistence.props[gm];return Array.isArray(I)&&I.length===2&&I.push(I[0]),I||[0,null,0]}},{key:"resetSessionId",value:function(){this._setSessionId(null,null,null)}},{key:"_listenToReloadWindow",value:function(){var I=this;window.addEventListener("beforeunload",function(){I._canUseSessionStorage()&&Oo.remove(I.primary_window_exists_storage_key)})}},{key:"checkAndGetSessionAndWindowId",value:function(){var I=arguments.length>0&&arguments[0]!==void 0&&arguments[0],$=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:null)||new Date().getTime(),se=Wc(this._getSessionId(),3),Pe=se[0],R=se[1],E=se[2],e=this._getWindowId(),w=E&&E>0&&Math.abs($-E)>u7;!R||!I&&Math.abs($-Pe)>l7||w?(R=Xu(),e=Xu(),E=$):e||(e=Xu());var k=Pe===0||!I||w?$:Pe,i=E===0?new Date().getTime():E;return this._setWindowId(e),this._setSessionId(R,k,i),{sessionId:R,windowId:e}}}]),L}(),f7=Va(function L(I,$,se,Pe){Ua(this,L),this.name="posthog-js",this.setupOnce=function(R){R(function(E){var e,w,k,i,_;if(E.level!=="error"||!I.__loaded)return E;E.tags||(E.tags={});var y=I.config.ui_host||I.config.api_host;E.tags["PostHog Person URL"]=y+"/person/"+I.get_distinct_id(),I.sessionRecordingStarted()&&(E.tags["PostHog Recording URL"]=I.get_session_replay_url({withTimestamp:!0}));var h=((e=E.exception)===null||e===void 0?void 0:e.values)||[],l={$exception_message:(w=h[0])===null||w===void 0?void 0:w.value,$exception_type:(k=h[0])===null||k===void 0?void 0:k.type,$exception_personURL:y+"/person/"+I.get_distinct_id(),$sentry_event_id:E.event_id,$sentry_exception:E.exception,$sentry_exception_message:(i=h[0])===null||i===void 0?void 0:i.value,$sentry_exception_type:(_=h[0])===null||_===void 0?void 0:_.type,$sentry_tags:E.tags};return $&&se&&(l.$sentry_url=(Pe||"https://sentry.io/organizations/")+$+"/issues/?project="+se+"&query="+E.event_id),I.capture("$exception",l),E})}}),h7=function(L){Promise&&Promise.resolve||console.warn("This browser does not have Promise support, and can not use the segment integration");var I=function($,se){$.event.userId||$.event.anonymousId===L.get_distinct_id()||L.reset(),$.event.userId&&$.event.userId!==L.get_distinct_id()&&(L.register({distinct_id:$.event.userId}),L.reloadFeatureFlags());var Pe=L._calculate_event_properties(se,$.event.properties);return $.event.properties=Object.assign({},Pe,$.event.properties),$};return{name:"PostHog JS",type:"enrichment",version:"1.0.0",isLoaded:function(){return!0},load:function(){return Promise.resolve()},track:function($){return I($,$.event.event)},page:function($){return I($,"$pageview")},identify:function($){return I($,"$identify")},screen:function($){return I($,"$screen")}}},p7=function(){function L(){Ua(this,L),Jr(this,"_seenFirstPageView",!1)}return Va(L,[{key:"onPageview",value:function(){this._seenFirstPageView&&(this._pageViewId=Xu()),this._seenFirstPageView=!0}},{key:"getPageViewId",value:function(){return this._pageViewId||(this._pageViewId=Xu()),this._pageViewId}}]),L}();function Qb(L){return typeof Event<"u"&&f5(L,Event)}function f5(L,I){try{return L instanceof I}catch{return!1}}function U0(L,I){return Object.prototype.toString.call(L)==="[object ".concat(I,"]")}function iv(L){return U0(L,"DOMError")}var e_=/\(error: (.*)\)/,t_=50,V0="?";function av(L,I,$,se){var Pe={filename:L,function:I,in_app:!0};return $!==void 0&&(Pe.lineno=$),se!==void 0&&(Pe.colno=se),Pe}var d7=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,g7=/\((\S*)(?::(\d+))(?::(\d+))\)/,v7=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,m7=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,y7=/^\s*at (?:((?:\[object object\])?.+) )?\(?((?:[-a-z]+):.*?):(\d+)(?::(\d+))?\)?\s*$/i,x7=function(){for(var L=arguments.length,I=new Array(L),$=0;$<L;$++)I[$]=arguments[$];var se=I.sort(function(Pe,R){return Pe[0]-R[0]}).map(function(Pe){return Pe[1]});return function(Pe){for(var R=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,E=[],e=Pe.split(`
|
||
`),w=R;w<e.length;w++){var k=e[w];if(!(k.length>1024)){var i=e_.test(k)?k.replace(e_,"$1"):k;if(!i.match(/\S*Error: /)){var _,y=nc(se);try{for(y.s();!(_=y.n()).done;){var h=(0,_.value)(i);if(h){E.push(h);break}}}catch(l){y.e(l)}finally{y.f()}if(E.length>=t_)break}}}return function(l){if(!l.length)return[];var t=l.slice(0,t_);return t.reverse(),t.map(function(o){return Zr(Zr({},o),{},{filename:o.filename||t[t.length-1].filename,function:o.function||"?"})})}(E)}}.apply(void 0,[[30,function(L){var I=d7.exec(L);if(I){if(I[2]&&I[2].indexOf("eval")===0){var $=g7.exec(I[2]);$&&(I[2]=$[1],I[3]=$[2],I[4]=$[3])}var se=Wc(n_(I[1]||V0,I[2]),2),Pe=se[0];return av(se[1],Pe,I[3]?+I[3]:void 0,I[4]?+I[4]:void 0)}}],[50,function(L){var I=v7.exec(L);if(I){if(I[3]&&I[3].indexOf(" > eval")>-1){var $=m7.exec(I[3]);$&&(I[1]=I[1]||"eval",I[3]=$[1],I[4]=$[2],I[5]="")}var se=I[3],Pe=I[1]||V0,R=Wc(n_(Pe,se),2);return Pe=R[0],av(se=R[1],Pe,I[4]?+I[4]:void 0,I[5]?+I[5]:void 0)}}],[40,function(L){var I=y7.exec(L);return I?av(I[2],I[1]||V0,+I[3],I[4]?+I[4]:void 0):void 0}]]),n_=function(L,I){var $=L.indexOf("safari-extension")!==-1,se=L.indexOf("safari-web-extension")!==-1;return $||se?[L.indexOf("@")!==-1?L.split("@")[0]:V0,$?"safari-extension:".concat(I):"safari-web-extension:".concat(I)]:[L,I]},b7=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i,_7=/Minified React error #\d+;/i;function w7(L){var I=L.stacktrace||L.stack||"",$=function(se){if(se){if(typeof se.framesToPop=="number")return se.framesToPop;if(_7.test(se.message))return 1}return 0}(L);try{return x7(I,$)}catch{}return[]}function ov(L){var I=w7(L);return{$exception_type:L.name,$exception_message:L.message,$exception_stack_trace_raw:JSON.stringify(I)}}function k7(L){var I=arguments.length>1&&arguments[1]!==void 0?arguments[1]:40,$=Object.keys(L);if($.sort(),!$.length)return"[object has no keys]";for(var se=$.length;se>0;se--){var Pe=$.slice(0,se).join(", ");if(!(Pe.length>I))return se===$.length||Pe.length<=I?Pe:"".concat(Pe.slice(0,I),"...")}return""}function h5(L){var I=Wc(L,5),$=I[0],se=I[1],Pe=I[2],R=I[3],E=I[4],e={};if(E===void 0&&typeof $=="string"){var w="Error",k=$,i=$.match(b7);i&&(w=i[1],k=i[2]),e={$exception_type:w,$exception_message:k}}var _=E||$;if(iv(_)||function(t){return U0(t,"DOMException")}(_)){var y=_;if(function(t){return"stack"in t}(_))e=ov(_);else{var h=y.name||(iv(y)?"DOMError":"DOMException"),l=y.message?"".concat(h,": ").concat(y.message):h;e=function(t){return{$exception_type:"Error",$exception_message:t}}(l),e.$exception_type=iv(y)?"DOMError":"DOMException",e.$exception_message=e.$exception_message||l}"code"in y&&(e.$exception_DOMException_code="".concat(y.code))}else(function(t){return U0(t,"ErrorEvent")})(_)&&_.error?e=ov(_.error):function(t){switch(Object.prototype.toString.call(t)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return f5(t,Error)}}(_)?e=ov(_):function(t){return U0(t,"Object")}(_)||Qb(_)?(e=function(t){return{$exception_type:Qb(t)?t.constructor.name:"Error",$exception_message:"Non-Error ".concat("exception"," captured with keys: ",k7(t))}}(_),e.$exception_is_synthetic=!0):(e.$exception_type=e.$exception_type||"Error",e.$exception_message=e.$exception_message||_,e.$exception_is_synthetic=!0);return Zr(Zr(Zr(Zr({},e),{},{$exception_type:e.$exception_type||"UnknownErrorType",$exception_message:e.$exception_message||""},se?{$exception_source:se}:{}),Pe?{$exception_lineno:Pe}:{}),R?{$exception_colno:R}:{})}function T7(L){var I=Wc(L,1)[0],$=I;try{"reason"in I?$=I.reason:"detail"in I&&"reason"in I.detail&&($=I.detail.reason)}catch{}var se,Pe={};return(Pe=(se=$)===null||Hc(se)!=="object"&&typeof se!="function"?{$exception_message:"Non-Error promise rejection captured with value: ".concat(String($))}:h5([$])).$exception_handled=!1,Zr(Zr({},Pe),{},{$exception_type:Pe.$exception_type="UnhandledRejection",$exception_message:Pe.$exception_message=Pe.$exception_message||I.reason||String($)})}var ad,Ry,Po,A7=function(){function L(I){Ua(this,L),Jr(this,"originalOnErrorHandler",void 0),Jr(this,"originalOnUnhandledRejectionHandler",void 0),this.instance=I}return Va(L,[{key:"startCapturing",value:function(){var I;if(this.isEnabled()&&((I=qr.onerror)===null||I===void 0||!I.__POSTHOG_INSTRUMENTED__))try{this.originalOnErrorHandler=qr.onerror,qr.onerror=function(){for(var $=arguments.length,se=new Array($),Pe=0;Pe<$;Pe++)se[Pe]=arguments[Pe];return this.captureException(se),!!this.originalOnErrorHandler&&this.originalOnErrorHandler.apply(this,se)}.bind(this),qr.onerror.__POSTHOG_INSTRUMENTED__=!0,this.originalOnUnhandledRejectionHandler=qr.onunhandledrejection,qr.onunhandledrejection=function(){for(var $=arguments.length,se=new Array($),Pe=0;Pe<$;Pe++)se[Pe]=arguments[Pe];var R=T7(se);return this.sendExceptionEvent(R),!this.originalOnUnhandledRejectionHandler||this.originalOnUnhandledRejectionHandler.apply(qr,se)}.bind(this),qr.onunhandledrejection.__POSTHOG_INSTRUMENTED__=!0}catch($){console.error("PostHog failed to start exception autocapture",$),this.stopCapturing()}}},{key:"stopCapturing",value:function(){var I,$;this.originalOnErrorHandler!==void 0&&(qr.onerror=this.originalOnErrorHandler,this.originalOnErrorHandler=null),(I=qr.onerror)===null||I===void 0||delete I.__POSTHOG_INSTRUMENTED__,this.originalOnUnhandledRejectionHandler!==void 0&&(qr.onunhandledrejection=this.originalOnUnhandledRejectionHandler,this.originalOnUnhandledRejectionHandler=null),($=qr.onunhandledrejection)===null||$===void 0||delete $.__POSTHOG_INSTRUMENTED__}},{key:"isCapturing",value:function(){var I;return!((I=qr.onerror)===null||I===void 0||!I.__POSTHOG_INSTRUMENTED__)}},{key:"isEnabled",value:function(){var I;return(I=this.remoteEnabled)!==null&&I!==void 0&&I}},{key:"afterDecideResponse",value:function(I){this.remoteEnabled=I.autocaptureExceptions||!1,this.isEnabled()&&this.startCapturing()}},{key:"captureException",value:function(I,$){var se=h5(I),Pe=Zr(Zr({},$),se),R=this.instance.config.ui_host||this.instance.config.api_host;se.$exception_personURL=R+"/person/"+this.instance.get_distinct_id(),this.sendExceptionEvent(Pe)}},{key:"sendExceptionEvent",value:function(I){this.instance.capture("$exception",I,{transport:"XHR",method:"POST",endpoint:"/e/",_noTruncate:!0,_batchKey:"exceptionEvent"})}}]),L}(),M7=function(){function L(I){Ua(this,L),this.instance=I}return Va(L,[{key:"getSurveys",value:function(I){var $=this,se=arguments.length>1&&arguments[1]!==void 0&&arguments[1],Pe=this.instance.get_property(mm);if(Pe&&!se)return I(Pe);this.instance._send_request("".concat(this.instance.get_config("api_host"),"/api/surveys/?token=").concat(this.instance.get_config("token")),{},{method:"GET"},function(R){var E=R.surveys;return $.instance.persistence.register(Jr({},mm,E)),I(E)})}},{key:"getActiveMatchingSurveys",value:function(I){var $=this,se=arguments.length>1&&arguments[1]!==void 0&&arguments[1];this.getSurveys(function(Pe){var R=Pe.filter(function(E){return!(!E.start_date||E.end_date)}).filter(function(E){var e,w;if(!E.conditions)return!0;var k=(e=E.conditions)===null||e===void 0||!e.url||window.location.href.indexOf(E.conditions.url)>-1,i=(w=E.conditions)===null||w===void 0||!w.selector||document.querySelector(E.conditions.selector);return k&&i}).filter(function(E){if(!E.linked_flag_key&&!E.targeting_flag_key)return!0;var e=!E.linked_flag_key||$.instance.featureFlags.isFeatureEnabled(E.linked_flag_key),w=!E.targeting_flag_key||$.instance.featureFlags.isFeatureEnabled(E.targeting_flag_key);return e&&w});return I(R)},se)}}]),L}();(function(L){L[L.INIT_MODULE=0]="INIT_MODULE",L[L.INIT_SNIPPET=1]="INIT_SNIPPET"})(ad||(ad={}));var wm=function(){},b0={},Bs="posthog",H0=qr.XMLHttpRequest&&"withCredentials"in new XMLHttpRequest,p5=!H0&&El.indexOf("MSIE")===-1&&El.indexOf("Mozilla")===-1,r_=function(){var L,I,$;return{api_host:"https://app.posthog.com",api_method:"POST",api_transport:"XHR",ui_host:null,token:"",autocapture:!0,rageclick:!0,cross_subdomain_cookie:(ao==null||(L=ao.location)===null||L===void 0||(I=L.hostname)===null||I===void 0?void 0:I.indexOf("herokuapp.com"))===-1,persistence:"cookie",persistence_name:"",cookie_name:"",loaded:wm,store_google:!0,custom_campaign_params:[],save_referrer:!0,test:!1,verbose:!1,capture_pageview:!0,capture_pageleave:!0,debug:!1,cookie_expiration:365,upgrade:!1,disable_session_recording:!1,disable_persistence:!1,disable_cookie:!1,enable_recording_console_log:void 0,secure_cookie:(qr==null||($=qr.location)===null||$===void 0?void 0:$.protocol)==="https:",ip:!0,opt_out_capturing_by_default:!1,opt_out_persistence_by_default:!1,opt_out_capturing_persistence_type:"localStorage",opt_out_capturing_cookie_prefix:null,opt_in_site_apps:!1,property_blacklist:[],respect_dnt:!1,sanitize_properties:null,xhr_headers:{},inapp_protocol:"//",inapp_link_new_window:!1,request_batching:!0,properties_string_max_length:65535,session_recording:{},mask_all_element_attributes:!1,mask_all_text:!1,advanced_disable_decide:!1,advanced_disable_toolbar_metrics:!1,on_xhr_error:function(se){var Pe="Bad HTTP status: "+se.status+" "+se.statusText;console.error(Pe)},get_device_id:function(se){return se},_onCapture:wm,_capture_metrics:!1,capture_performance:void 0,name:"posthog",callback_fn:"posthog._jsc",bootstrap:{},disable_compression:!1}},km=function(L,I,$,se){var Pe,R=$!==Bs&&Po?$?Po[$]:void 0:Po,E={initComplete:!1,syncCode:!1},e=function(w){return function(k){E[w]||(E[w]=!0,E.initComplete&&E.syncCode&&(se==null||se(k)))}};if(R&&Ry===ad.INIT_MODULE)Pe=R;else{if(R&&!Wu(R))return void console.error("You have already initialized "+$);Pe=new zy}return Pe._init(L,I,$,e("initComplete")),Pe.toolbar.maybeLoadToolbar(),Pe.sessionRecording=new zT(Pe),Pe.sessionRecording.startRecordingIfEnabled(),Pe.webPerformance=new BT(Pe),Pe.webPerformance.startObservingIfEnabled(),Pe.exceptionAutocapture=new A7(Pe),Pe.__autocapture=Pe.get_config("autocapture"),Cc._setIsAutocaptureEnabled(Pe),Cc._isAutocaptureEnabled&&(Pe.__autocapture=Pe.get_config("autocapture"),Cc.enabledForProject(Pe.get_config("token"),100,100)?Cc.isBrowserSupported()?Cc.init(Pe):(Pe.__autocapture=!1,Sa.log("Disabling Automatic Event Collection because this browser is not supported")):(Pe.__autocapture=!1,Sa.log("Not in active bucket: disabling Automatic Event Collection."))),Su.DEBUG=Su.DEBUG||Pe.get_config("debug"),R!==void 0&&Wu(R)&&(Pe._execute_array.call(Pe.people,R.people),Pe._execute_array(R)),e("syncCode")(Pe),Pe},zy=function(){function L(){var I=this;Ua(this,L),this.config=r_(),this.compression={},this.decideEndpointWasHit=!1,this.SentryIntegration=f7,this.segmentIntegration=function(){return h7(I)},this.__captureHooks=[],this.__request_queue=[],this.__loaded=!1,this.__loaded_recorder_version=void 0,this.__autocapture=void 0,this._jsc=function(){},this.people=new ST(this),this.featureFlags=new ET(this),this.feature_flags=this.featureFlags,this.toolbar=new HT(this),this.pageViewIdManager=new p7,this.surveys=new M7(this),this._captureMetrics=void 0,this._requestQueue=void 0,this._retryQueue=void 0,this.persistence=void 0,this.sessionPersistence=void 0,this.sessionManager=void 0}return Va(L,[{key:"init",value:function(I,$,se){if(nu(se))console.error("You must name your new library: init(token, config, name)");else{if(se!==Bs){var Pe=km(I,$,se,function(R){Po[se]=R,R._loaded()});return Po[se]=Pe,Pe}console.error("You must initialize the main posthog object right after you include the PostHog js snippet")}}},{key:"_init",value:function(I){var $,se,Pe=this,R=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},E=arguments.length>2?arguments[2]:void 0,e=arguments.length>3?arguments[3]:void 0;this.__loaded=!0,this.config={},this._triggered_notifs=[];var w,k={segmentRegister:!1,syncCode:!1},i=function(s){return function(){k[s]||(k[s]=!0,k.segmentRegister&&k.syncCode&&(e==null||e(Pe)))}};if(this.set_config(Lo({},r_(),R,{name:E,token:I,callback_fn:(E===Bs?E:Bs+"."+E)+"._jsc"})),this._jsc=function(){},(qr!=null&&($=qr.rrweb)!==null&&$!==void 0&&$.record||qr!=null&&qr.rrwebRecord)&&(this.__loaded_recorder_version=qr==null||(w=qr.rrweb)===null||w===void 0?void 0:w.version),this._captureMetrics=new GT(this.get_config("_capture_metrics")),this._requestQueue=new qT(this._captureMetrics,this._handle_queued_event.bind(this)),this._retryQueue=new s7(this._captureMetrics,this.get_config("on_xhr_error")),this.__captureHooks=[],this.__request_queue=[],this.persistence=new Vb(this.config),this.sessionManager=new c7(this.config,this.persistence),this.sessionPersistence=this.config.persistence==="sessionStorage"?this.persistence:new Vb(Zr(Zr({},this.config),{},{persistence:"sessionStorage"})),this._gdpr_init(),R.segment?(this.config.get_device_id=function(){return R.segment.user().anonymousId()},R.segment.user().id()&&(this.register({distinct_id:R.segment.user().id()}),this.persistence.set_user_state("identified")),R.segment.register(this.segmentIntegration()).then(i("segmentRegister"))):i("segmentRegister")(),((se=R.bootstrap)===null||se===void 0?void 0:se.distinctID)!==void 0){var _,y,h=this.get_config("get_device_id")(Xu()),l=(_=R.bootstrap)!==null&&_!==void 0&&_.isIdentifiedID?h:R.bootstrap.distinctID;this.persistence.set_user_state((y=R.bootstrap)!==null&&y!==void 0&&y.isIdentifiedID?"identified":"anonymous"),this.register({distinct_id:R.bootstrap.distinctID,$device_id:l})}if(this._hasBootstrappedFeatureFlags()){var t,o,r=Object.keys(((t=R.bootstrap)===null||t===void 0?void 0:t.featureFlags)||{}).filter(function(s){var u,p;return!((u=R.bootstrap)===null||u===void 0||(p=u.featureFlags)===null||p===void 0||!p[s])}).reduce(function(s,u){var p,c;return s[u]=((p=R.bootstrap)===null||p===void 0||(c=p.featureFlags)===null||c===void 0?void 0:c[u])||!1,s},{}),n=Object.keys(((o=R.bootstrap)===null||o===void 0?void 0:o.featureFlagPayloads)||{}).filter(function(s){return r[s]}).reduce(function(s,u){var p,c,b,g;return(p=R.bootstrap)!==null&&p!==void 0&&(c=p.featureFlagPayloads)!==null&&c!==void 0&&c[u]&&(s[u]=(b=R.bootstrap)===null||b===void 0||(g=b.featureFlagPayloads)===null||g===void 0?void 0:g[u]),s},{});this.featureFlags.receivedFeatureFlags({featureFlags:r,featureFlagPayloads:n})}if(!this.get_distinct_id()){var a=this.get_config("get_device_id")(Xu());this.register_once({distinct_id:a,$device_id:a},""),this.persistence.set_user_state("anonymous")}qr.addEventListener&&qr.addEventListener("onpagehide"in self?"pagehide":"unload",this._handle_unload.bind(this)),i("syncCode")()}},{key:"_loaded",value:function(){this.featureFlags.setReloadingPaused(!0);try{this.get_config("loaded")(this)}catch(I){console.error("`loaded` function failed",I)}this._start_queue_if_opted_in(),this.get_config("capture_pageview")&&this.capture("$pageview",{},{send_instantly:!0}),this.get_config("advanced_disable_decide")||new jT(this).call(),this.featureFlags.resetRequestQueue(),this.featureFlags.setReloadingPaused(!1)}},{key:"_start_queue_if_opted_in",value:function(){this.has_opted_out_capturing()||this.get_config("request_batching")&&this._requestQueue.poll()}},{key:"_dom_loaded",value:function(){var I=this;this.has_opted_out_capturing()||Ku(this.__request_queue,function($){I._send_request.apply(I,um($))}),this.__request_queue=[],this._start_queue_if_opted_in()}},{key:"_prepare_callback",value:function(I,$){if(nu(I))return null;if(H0)return function(E){I(E,$)};var se=this._jsc,Pe=""+Math.floor(1e8*Math.random()),R=this.get_config("callback_fn")+"["+Pe+"]";return se[Pe]=function(E){delete se[Pe],I(E,$)},R}},{key:"_handle_unload",value:function(){this.get_config("request_batching")?(this.get_config("capture_pageview")&&this.get_config("capture_pageleave")&&this.capture("$pageleave"),this.get_config("_capture_metrics")&&(this._requestQueue.updateUnloadMetrics(),this.capture("$capture_metrics",this._captureMetrics.metrics)),this._requestQueue.unload(),this._retryQueue.unload()):this.get_config("capture_pageview")&&this.get_config("capture_pageleave")&&this.capture("$pageleave",null,{transport:"sendBeacon"})}},{key:"_handle_queued_event",value:function(I,$,se){var Pe=JSON.stringify($);this.__compress_and_send_json_request(I,Pe,se||b0,wm)}},{key:"__compress_and_send_json_request",value:function(I,$,se,Pe){var R=function(k,i,_){return k===df.GZipJS?[r7(i7(i),{mtime:0}),Zr(Zr({},_),{},{blob:!0,urlQueryArgs:{compression:df.GZipJS}})]:[{data:F1(i)},_]}(this.compression[df.GZipJS]?df.GZipJS:df.Base64,$,se),E=Wc(R,2),e=E[0],w=E[1];this._send_request(I,e,w,Pe)}},{key:"_send_request",value:function(I,$,se,Pe){if(p5)this.__request_queue.push([I,$,se,Pe]);else{var R={method:this.get_config("api_method"),transport:this.get_config("api_transport"),verbose:this.get_config("verbose")};se=Lo(R,se||{}),H0||(se.method="GET");var E="sendBeacon"in qr.navigator&&se.transport==="sendBeacon";if(I=a7(I,se.urlQueryArgs||{},{ip:this.get_config("ip")}),E)try{qr.navigator.sendBeacon(I,Iy($,Zr(Zr({},se),{},{sendBeacon:!0})))}catch(i){this.get_config("debug")&&console.error(i)}else if(H0)try{c5({url:I,data:$,headers:this.get_config("xhr_headers"),options:se,captureMetrics:this._captureMetrics,callback:Pe,retriesPerformedSoFar:0,retryQueue:this._retryQueue,onXHRError:this.get_config("on_xhr_error")})}catch(i){console.error(i)}else{var e,w=ao.createElement("script");w.type="text/javascript",w.async=!0,w.defer=!0,w.src=I;var k=ao.getElementsByTagName("script")[0];(e=k.parentNode)===null||e===void 0||e.insertBefore(w,k)}}}},{key:"_execute_array",value:function(I){var $,se=this,Pe=[],R=[],E=[];Ku(I,function(w){w&&($=w[0],Wu($)?E.push(w):typeof w=="function"?w.call(se):Wu(w)&&$==="alias"?Pe.push(w):Wu(w)&&$.indexOf("capture")!==-1&&typeof se[$]=="function"?E.push(w):R.push(w))});var e=function(w,k){Ku(w,function(i){if(Wu(i[0])){var _=k;ji(i,function(y){_=_[y[0]].apply(_,y.slice(1))})}else this[i[0]].apply(this,i.slice(1))},k)};e(Pe,this),e(R,this),e(E,this)}},{key:"_hasBootstrappedFeatureFlags",value:function(){var I,$;return((I=this.config.bootstrap)===null||I===void 0?void 0:I.featureFlags)&&Object.keys(($=this.config.bootstrap)===null||$===void 0?void 0:$.featureFlags).length>0||!1}},{key:"push",value:function(I){this._execute_array([I])}},{key:"captureException",value:function(I,$){var se;(se=this.exceptionAutocapture)===null||se===void 0||se.captureException([I.name,void 0,void 0,void 0,I],$)}},{key:"capture",value:function(I,$){var se=arguments.length>2&&arguments[2]!==void 0?arguments[2]:b0;if(this.__loaded&&!i5(this,!1)){this._captureMetrics.incr("capture"),I==="$snapshot"&&this._captureMetrics.incr("snapshot");var Pe=(se=se||b0).transport;if(Pe&&(se.transport=Pe),nu(I)||typeof I!="string")console.error("No event name provided to posthog.capture");else if(!vT(El)){this.sessionPersistence.update_search_keyword(),this.get_config("store_google")&&this.sessionPersistence.update_campaign_params(),this.get_config("save_referrer")&&this.sessionPersistence.update_referrer_info();var R={uuid:Xu("v7"),event:I,properties:this._calculate_event_properties(I,$||{})};I==="$identify"&&(R.$set=se.$set,R.$set_once=se.$set_once),(R=$w(R,se._noTruncate?null:this.get_config("properties_string_max_length"))).timestamp=se.timestamp||new Date,this.get_config("debug")&&Sa.log("PostHog.js send",R);var E=JSON.stringify(R),e=this.get_config("api_host")+(se.endpoint||"/e/"),w=se!==b0;return!this.get_config("request_batching")||w&&!se._batchKey||se.send_instantly?this.__compress_and_send_json_request(e,E,se):this._requestQueue.enqueue(e,R,se),this._invokeCaptureHooks(I,R),R}}}},{key:"_addCaptureHook",value:function(I){this.__captureHooks.push(I)}},{key:"_invokeCaptureHooks",value:function(I,$){this.config._onCapture(I,$),ji(this.__captureHooks,function(se){return se(I)})}},{key:"_calculate_event_properties",value:function(I,$){var se,Pe=this.persistence.remove_event_timer(I),R=Zr({},$);if(R.token=this.get_config("token"),I==="$snapshot"){var E=Zr(Zr({},this.persistence.properties()),this.sessionPersistence.properties());return R.distinct_id=E.distinct_id,R}var e=vo.properties();if(this.sessionManager){var w=this.sessionManager.checkAndGetSessionAndWindowId(),k=w.sessionId,i=w.windowId;R.$session_id=k,R.$window_id=i}if((se=this.webPerformance)!==null&&se!==void 0&&se.isEnabled&&(I==="$pageview"&&this.pageViewIdManager.onPageview(),R=Lo(R,{$pageview_id:this.pageViewIdManager.getPageViewId()})),I==="$performance_event"){var _=this.persistence.properties();return R.distinct_id=_.distinct_id,R.$current_url=e.$current_url,R}if(Pe!==void 0){var y=new Date().getTime()-Pe;R.$duration=parseFloat((y/1e3).toFixed(3))}R=Lo({},vo.properties(),this.persistence.properties(),this.sessionPersistence.properties(),R);var h=this.get_config("property_blacklist");Wu(h)?ji(h,function(t){delete R[t]}):console.error("Invalid value for property_blacklist config: "+h);var l=this.get_config("sanitize_properties");return l&&(R=l(R,I)),R}},{key:"register",value:function(I,$){this.persistence.register(I,$)}},{key:"register_once",value:function(I,$,se){this.persistence.register_once(I,$,se)}},{key:"register_for_session",value:function(I){this.sessionPersistence.register(I)}},{key:"unregister",value:function(I){this.persistence.unregister(I)}},{key:"unregister_for_session",value:function(I){this.sessionPersistence.unregister(I)}},{key:"_register_single",value:function(I,$){this.register(Jr({},I,$))}},{key:"getFeatureFlag",value:function(I,$){return this.featureFlags.getFeatureFlag(I,$)}},{key:"getFeatureFlagPayload",value:function(I){var $=this.featureFlags.getFeatureFlagPayload(I);try{return JSON.parse($)}catch{return $}}},{key:"isFeatureEnabled",value:function(I,$){return this.featureFlags.isFeatureEnabled(I,$)}},{key:"reloadFeatureFlags",value:function(){this.featureFlags.reloadFeatureFlags()}},{key:"updateEarlyAccessFeatureEnrollment",value:function(I,$){this.featureFlags.updateEarlyAccessFeatureEnrollment(I,$)}},{key:"getEarlyAccessFeatures",value:function(I){var $=arguments.length>1&&arguments[1]!==void 0&&arguments[1];return this.featureFlags.getEarlyAccessFeatures(I,$)}},{key:"onFeatureFlags",value:function(I){return this.featureFlags.onFeatureFlags(I)}},{key:"getSurveys",value:function(I){var $=arguments.length>1&&arguments[1]!==void 0&&arguments[1];this.surveys.getSurveys(I,$)}},{key:"getActiveMatchingSurveys",value:function(I){var $=arguments.length>1&&arguments[1]!==void 0&&arguments[1];this.surveys.getActiveMatchingSurveys(I,$)}},{key:"identify",value:function(I,$,se){if(I){this._captureMetrics.incr("identify");var Pe=this.get_distinct_id();if(this.register({$user_id:I}),!this.get_property("$device_id")){var R=Pe;this.register_once({$had_persisted_distinct_id:!0,$device_id:R},"")}I!==Pe&&I!==this.get_property(N0)&&(this.unregister(N0),this.register({distinct_id:I}));var E=this.persistence.get_user_state()==="anonymous";I!==Pe&&E?(this.persistence.set_user_state("identified"),this.capture("$identify",{distinct_id:I,$anon_distinct_id:Pe},{$set:$||{},$set_once:se||{}}),this.featureFlags.setAnonymousDistinctId(Pe)):($&&this.people.set($),se&&this.people.set_once(se)),I!==Pe&&this.reloadFeatureFlags()}else console.error("Unique user id has not been set in posthog.identify")}},{key:"group",value:function(I,$,se){if(I&&$){this._captureMetrics.incr("group");var Pe=this.getGroups();Pe[I]!==$&&this.resetGroupPropertiesForFlags(I),this.register({$groups:Zr(Zr({},Pe),{},Jr({},I,$))}),se&&(this.capture("$groupidentify",{$group_type:I,$group_key:$,$group_set:se}),this.setGroupPropertiesForFlags(Jr({},I,se))),Pe[I]===$||se||this.reloadFeatureFlags()}else console.error("posthog.group requires a group type and group key")}},{key:"resetGroups",value:function(){this.register({$groups:{}}),this.resetGroupPropertiesForFlags(),this.reloadFeatureFlags()}},{key:"setPersonPropertiesForFlags",value:function(I){var $=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1];this.featureFlags.setPersonPropertiesForFlags(I,$)}},{key:"resetPersonPropertiesForFlags",value:function(){this.featureFlags.resetPersonPropertiesForFlags()}},{key:"setGroupPropertiesForFlags",value:function(I){var $=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1];this.featureFlags.setGroupPropertiesForFlags(I,$)}},{key:"resetGroupPropertiesForFlags",value:function(I){this.featureFlags.resetGroupPropertiesForFlags(I)}},{key:"reset",value:function(I){var $=this.get_property("$device_id");this.persistence.clear(),this.sessionPersistence.clear(),this.persistence.set_user_state("anonymous"),this.sessionManager.resetSessionId();var se=this.get_config("get_device_id")(Xu());this.register_once({distinct_id:se,$device_id:I?se:$},"")}},{key:"get_distinct_id",value:function(){return this.get_property("distinct_id")}},{key:"getGroups",value:function(){return this.get_property("$groups")||{}}},{key:"get_session_id",value:function(){return this.sessionManager.checkAndGetSessionAndWindowId(!0).sessionId}},{key:"get_session_replay_url",value:function(I){var $=(this.config.ui_host||this.config.api_host)+"/replay/"+this.get_session_id();if(I!=null&&I.withTimestamp&&this.sessionManager._sessionStartTimestamp){var se,Pe=(se=I.timestampLookBack)!==null&&se!==void 0?se:10;if(!this.sessionManager._sessionStartTimestamp)return $;var R=Math.max(Math.floor((new Date().getTime()-(this.sessionManager._sessionStartTimestamp||0))/1e3)-Pe,0);$+="?t=".concat(R)}return $}},{key:"alias",value:function(I,$){return I===this.get_property(e5)?(Sa.critical("Attempting to create alias for existing People user - aborting."),-2):(nu($)&&($=this.get_distinct_id()),I!==$?(this._register_single(N0,I),this.capture("$create_alias",{alias:I,distinct_id:$})):(console.error("alias matches current distinct_id - skipping api call."),this.identify(I),-1))}},{key:"set_config",value:function(I){var $=Zr({},this.config);bf(I)&&(Lo(this.config,I),this.get_config("persistence_name")||(this.config.persistence_name=this.config.cookie_name),this.get_config("disable_persistence")||(this.config.disable_persistence=this.config.disable_cookie),this.persistence&&this.persistence.update_config(this.config),this.sessionPersistence&&this.sessionPersistence.update_config(this.config),Ka.is_supported()&&Ka.get("ph_debug")==="true"&&(this.config.debug=!0),this.get_config("debug")&&(Su.DEBUG=!0),this.sessionRecording&&I.disable_session_recording!==void 0&&$.disable_session_recording!==I.disable_session_recording&&(I.disable_session_recording?this.sessionRecording.stopRecording():this.sessionRecording.startRecordingIfEnabled()))}},{key:"startSessionRecording",value:function(){this.set_config({disable_session_recording:!1})}},{key:"stopSessionRecording",value:function(){this.set_config({disable_session_recording:!0})}},{key:"sessionRecordingStarted",value:function(){var I;return!((I=this.sessionRecording)===null||I===void 0||!I.started())}},{key:"loadToolbar",value:function(I){return this.toolbar.loadToolbar(I)}},{key:"get_config",value:function(I){var $;return($=this.config)===null||$===void 0?void 0:$[I]}},{key:"get_property",value:function(I){return this.persistence.props[I]}},{key:"getSessionProperty",value:function(I){return this.sessionPersistence.props[I]}},{key:"toString",value:function(){var I,$=(I=this.get_config("name"))!==null&&I!==void 0?I:Bs;return $!==Bs&&($=Bs+"."+$),$}},{key:"_gdpr_init",value:function(){this.get_config("opt_out_capturing_persistence_type")==="localStorage"&&Ka.is_supported()&&(!this.has_opted_in_capturing()&&this.has_opted_in_capturing({persistence_type:"cookie"})&&this.opt_in_capturing({enable_persistence:!1}),!this.has_opted_out_capturing()&&this.has_opted_out_capturing({persistence_type:"cookie"})&&this.opt_out_capturing({clear_persistence:!1}),this.clear_opt_in_out_capturing({persistence_type:"cookie",enable_persistence:!1})),this.has_opted_out_capturing()?this._gdpr_update_persistence({clear_persistence:!0}):this.has_opted_in_capturing()||!this.get_config("opt_out_capturing_by_default")&&!Tu.get("ph_optout")||(Tu.remove("ph_optout"),this.opt_out_capturing({clear_persistence:this.get_config("opt_out_persistence_by_default")}))}},{key:"_gdpr_update_persistence",value:function(I){var $;if(I&&I.clear_persistence)$=!0;else{if(!I||!I.enable_persistence)return;$=!1}this.get_config("disable_persistence")||this.persistence.disabled===$||this.persistence.set_disabled($),this.get_config("disable_persistence")||this.sessionPersistence.disabled===$||this.sessionPersistence.set_disabled($)}},{key:"_gdpr_call_func",value:function(I,$){return $=Lo({capture:this.capture.bind(this),persistence_type:this.get_config("opt_out_capturing_persistence_type"),cookie_prefix:this.get_config("opt_out_capturing_cookie_prefix"),cookie_expiration:this.get_config("cookie_expiration"),cross_subdomain_cookie:this.get_config("cross_subdomain_cookie"),secure_cookie:this.get_config("secure_cookie")},$||{}),Ka.is_supported()||$.persistence_type!=="localStorage"||($.persistence_type="cookie"),I(this.get_config("token"),{capture:$.capture,captureEventName:$.capture_event_name,captureProperties:$.capture_properties,persistenceType:$.persistence_type,persistencePrefix:$.cookie_prefix,cookieExpiration:$.cookie_expiration,crossSubdomainCookie:$.cross_subdomain_cookie,secureCookie:$.secure_cookie})}},{key:"opt_in_capturing",value:function(I){I=Lo({enable_persistence:!0},I||{}),this._gdpr_call_func(kT,I),this._gdpr_update_persistence(I)}},{key:"opt_out_capturing",value:function(I){var $=Lo({clear_persistence:!0},I||{});this._gdpr_call_func(TT,$),this._gdpr_update_persistence($)}},{key:"has_opted_in_capturing",value:function(I){return this._gdpr_call_func(AT,I)}},{key:"has_opted_out_capturing",value:function(I){return this._gdpr_call_func(t5,I)}},{key:"clear_opt_in_out_capturing",value:function(I){var $=Lo({enable_persistence:!0},I??{});this._gdpr_call_func(MT,$),this._gdpr_update_persistence($)}},{key:"debug",value:function(I){I===!1?(qr.console.log("You've disabled debug mode."),localStorage&&localStorage.removeItem("ph_debug"),this.set_config({debug:!1})):(qr.console.log("You're now in debug mode. All calls to PostHog will be logged in your console.\nYou can disable this with `posthog.debug(false)`."),localStorage&&localStorage.setItem("ph_debug","true"),this.set_config({debug:!0}))}}]),L}();(function(L,I){for(var $=0;$<I.length;$++)L.prototype[I[$]]=Xw(L.prototype[I[$]])})(zy,["identify"]);var wc={},S7=function(){Po.init=function(L,I,$){if($)return Po[$]||(Po[$]=wc[$]=km(L||"",I||{},$,function(Pe){Po[$]=wc[$]=Pe,Pe._loaded()})),Po[$];var se=Po;return wc[Bs]?se=wc[Bs]:L&&(se=km(L,I||{},Bs,function(Pe){wc[Bs]=Pe,Pe._loaded()}),wc[Bs]=se),Po=se,Ry===ad.INIT_SNIPPET&&(qr[Bs]=Po),ji(wc,function(Pe,R){R!==Bs&&(Po[R]=Pe)}),se}},E7=function(){function L(){L.done||(L.done=!0,p5=!1,ji(wc,function(I){I._dom_loaded()}))}ao.addEventListener&&(ao.readyState==="complete"?L():ao.addEventListener("DOMContentLoaded",L,!1)),jp(qr,"load",L,!0)},i_=(Ry=ad.INIT_MODULE,Po=new zy,S7(),Po.init(),E7(),Po),d5=In.createContext({client:void 0});function C7(L){var I=L.children,$=L.client,se=L.apiKey,Pe=L.options,R=In.useState($),E=R[0],e=R[1];return In.useEffect(function(){$&&se&&console.warn("You have provided both a client and an apiKey to PostHogProvider. The apiKey will be ignored in favour of the client."),$&&Pe&&console.warn("You have provided both a client and options to PostHogProvider. The options will be ignored in favour of the client."),!E&&($?e($):se&&(i_.init(se,Pe),e(i_)))},[E,$,se,Pe]),In.createElement(d5.Provider,{value:{client:E}},I)}var L7=function(){var L=In.useContext(d5).client;return L};function g5(L){var I,$,se="";if(typeof L=="string"||typeof L=="number")se+=L;else if(typeof L=="object")if(Array.isArray(L))for(I=0;I<L.length;I++)L[I]&&($=g5(L[I]))&&(se&&(se+=" "),se+=$);else for(I in L)L[I]&&(se&&(se+=" "),se+=I);return se}function P7(){for(var L,I,$=0,se="";$<arguments.length;)(L=arguments[$++])&&(I=g5(L))&&(se&&(se+=" "),se+=I);return se}var v5={exports:{}};(function(L,I){/*! For license information please see plotly.min.js.LICENSE.txt */(function($,se){L.exports=se()})(self,function(){return function(){var $={98847:function(R,E,e){var w=e(71828),k={"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(var i in k){var _=i.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier");w.addStyleRule(_,k[i])}},98222:function(R,E,e){R.exports=e(82887)},27206:function(R,E,e){R.exports=e(60822)},59893:function(R,E,e){R.exports=e(23381)},5224:function(R,E,e){R.exports=e(83832)},59509:function(R,E,e){R.exports=e(72201)},75557:function(R,E,e){R.exports=e(91815)},40338:function(R,E,e){R.exports=e(21462)},35080:function(R,E,e){R.exports=e(51319)},61396:function(R,E,e){R.exports=e(57516)},40549:function(R,E,e){R.exports=e(98128)},49866:function(R,E,e){R.exports=e(99442)},36089:function(R,E,e){R.exports=e(93740)},19548:function(R,E,e){R.exports=e(8729)},35831:function(R,E,e){R.exports=e(93814)},61039:function(R,E,e){R.exports=e(14382)},97040:function(R,E,e){R.exports=e(51759)},77986:function(R,E,e){R.exports=e(10421)},24296:function(R,E,e){R.exports=e(43102)},58872:function(R,E,e){R.exports=e(92165)},29626:function(R,E,e){R.exports=e(3325)},65591:function(R,E,e){R.exports=e(36071)},69738:function(R,E,e){R.exports=e(43905)},92650:function(R,E,e){R.exports=e(35902)},35630:function(R,E,e){R.exports=e(69816)},73434:function(R,E,e){R.exports=e(94507)},27909:function(R,E,e){var w=e(19548);w.register([e(27206),e(5224),e(58872),e(65591),e(69738),e(92650),e(49866),e(25743),e(6197),e(97040),e(85461),e(73434),e(54201),e(81299),e(47645),e(35630),e(77986),e(83043),e(93005),e(96881),e(4534),e(50581),e(40549),e(77900),e(47582),e(35080),e(21641),e(17280),e(5861),e(29626),e(10021),e(65317),e(96268),e(61396),e(35831),e(16122),e(46163),e(40344),e(40338),e(48131),e(36089),e(55334),e(75557),e(19440),e(99488),e(59893),e(97393),e(98222),e(61039),e(24296),e(66398),e(59509)]),R.exports=w},46163:function(R,E,e){R.exports=e(15154)},96881:function(R,E,e){R.exports=e(64943)},50581:function(R,E,e){R.exports=e(21164)},55334:function(R,E,e){R.exports=e(54186)},65317:function(R,E,e){R.exports=e(94873)},10021:function(R,E,e){R.exports=e(67618)},54201:function(R,E,e){R.exports=e(58810)},5861:function(R,E,e){R.exports=e(20593)},16122:function(R,E,e){R.exports=e(29396)},83043:function(R,E,e){R.exports=e(13551)},48131:function(R,E,e){R.exports=e(46858)},47582:function(R,E,e){R.exports=e(17988)},21641:function(R,E,e){R.exports=e(68868)},96268:function(R,E,e){R.exports=e(20467)},19440:function(R,E,e){R.exports=e(91271)},99488:function(R,E,e){R.exports=e(21461)},97393:function(R,E,e){R.exports=e(85956)},25743:function(R,E,e){R.exports=e(52979)},66398:function(R,E,e){R.exports=e(32275)},17280:function(R,E,e){R.exports=e(6419)},77900:function(R,E,e){R.exports=e(61510)},81299:function(R,E,e){R.exports=e(87619)},93005:function(R,E,e){R.exports=e(93601)},40344:function(R,E,e){R.exports=e(96595)},47645:function(R,E,e){R.exports=e(70954)},6197:function(R,E,e){R.exports=e(47462)},4534:function(R,E,e){R.exports=e(17659)},85461:function(R,E,e){R.exports=e(19990)},82884:function(R){R.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}]},50215:function(R,E,e){var w=e(82884),k=e(41940),i=e(85555),_=e(44467).templatedArray;e(24695),R.exports=_("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:k({editType:"calc+arraydraw",colorEditType:"arraydraw"}),width:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},height:{valType:"number",min:1,dflt:null,editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},align:{valType:"enumerated",values:["left","center","right"],dflt:"center",editType:"arraydraw"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"arraydraw"},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},bordercolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},borderpad:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},borderwidth:{valType:"number",min:0,dflt:1,editType:"calc+arraydraw"},showarrow:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},arrowcolor:{valType:"color",editType:"arraydraw"},arrowhead:{valType:"integer",min:0,max:w.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:w.length,dflt:1,editType:"arraydraw"},arrowside:{valType:"flaglist",flags:["end","start"],extras:["none"],dflt:"end",editType:"arraydraw"},arrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},startarrowsize:{valType:"number",min:.3,dflt:1,editType:"calc+arraydraw"},arrowwidth:{valType:"number",min:.1,editType:"calc+arraydraw"},standoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},startstandoff:{valType:"number",min:0,dflt:0,editType:"calc+arraydraw"},ax:{valType:"any",editType:"calc+arraydraw"},ay:{valType:"any",editType:"calc+arraydraw"},axref:{valType:"enumerated",dflt:"pixel",values:["pixel",i.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",i.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",i.idRegex.x.toString()],editType:"calc"},x:{valType:"any",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},xshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},yref:{valType:"enumerated",values:["paper",i.idRegex.y.toString()],editType:"calc"},y:{valType:"any",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"auto",editType:"calc+arraydraw"},yshift:{valType:"number",dflt:0,editType:"calc+arraydraw"},clicktoshow:{valType:"enumerated",values:[!1,"onoff","onout"],dflt:!1,editType:"arraydraw"},xclick:{valType:"any",editType:"arraydraw"},yclick:{valType:"any",editType:"arraydraw"},hovertext:{valType:"string",editType:"arraydraw"},hoverlabel:{bgcolor:{valType:"color",editType:"arraydraw"},bordercolor:{valType:"color",editType:"arraydraw"},font:k({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc",_deprecated:{ref:{valType:"string",editType:"calc"}}})},3749:function(R,E,e){var w=e(71828),k=e(89298),i=e(92605).draw;function _(h){var l=h._fullLayout;w.filterVisible(l.annotations).forEach(function(t){var o=k.getFromId(h,t.xref),r=k.getFromId(h,t.yref),n=k.getRefType(t.xref),a=k.getRefType(t.yref);t._extremes={},n==="range"&&y(t,o),a==="range"&&y(t,r)})}function y(h,l){var t,o=l._id,r=o.charAt(0),n=h[r],a=h["a"+r],s=h[r+"ref"],u=h["a"+r+"ref"],p=h["_"+r+"padplus"],c=h["_"+r+"padminus"],b={x:1,y:-1}[r]*h[r+"shift"],g=3*h.arrowsize*h.arrowwidth||0,f=g+b,v=g-b,m=3*h.startarrowsize*h.arrowwidth||0,x=m+b,T=m-b;if(u===s){var d=k.findExtremes(l,[l.r2c(n)],{ppadplus:f,ppadminus:v}),M=k.findExtremes(l,[l.r2c(a)],{ppadplus:Math.max(p,x),ppadminus:Math.max(c,T)});t={min:[d.min[0],M.min[0]],max:[d.max[0],M.max[0]]}}else x=a?x+a:x,T=a?T-a:T,t=k.findExtremes(l,[l.r2c(n)],{ppadplus:Math.max(p,f,x),ppadminus:Math.max(c,v,T)});h._extremes[o]=t}R.exports=function(h){var l=h._fullLayout;if(w.filterVisible(l.annotations).length&&h._fullData.length)return w.syncOrAsync([i,_],h)}},44317:function(R,E,e){var w=e(71828),k=e(73972),i=e(44467).arrayEditor;function _(h,l){var t,o,r,n,a,s,u,p=h._fullLayout.annotations,c=[],b=[],g=[],f=(l||[]).length;for(t=0;t<p.length;t++)if(n=(r=p[t]).clicktoshow){for(o=0;o<f;o++)if(s=(a=l[o]).xaxis,u=a.yaxis,s._id===r.xref&&u._id===r.yref&&s.d2r(a.x)===y(r._xclick,s)&&u.d2r(a.y)===y(r._yclick,u)){(r.visible?n==="onout"?b:g:c).push(t);break}o===f&&r.visible&&n==="onout"&&b.push(t)}return{on:c,off:b,explicitOff:g}}function y(h,l){return l.type==="log"?l.l2r(h):l.d2r(h)}R.exports={hasClickToShow:function(h,l){var t=_(h,l);return t.on.length>0||t.explicitOff.length>0},onClick:function(h,l){var t,o,r=_(h,l),n=r.on,a=r.off.concat(r.explicitOff),s={},u=h._fullLayout.annotations;if(n.length||a.length){for(t=0;t<n.length;t++)(o=i(h.layout,"annotations",u[n[t]])).modifyItem("visible",!0),w.extendFlat(s,o.getUpdateObj());for(t=0;t<a.length;t++)(o=i(h.layout,"annotations",u[a[t]])).modifyItem("visible",!1),w.extendFlat(s,o.getUpdateObj());return k.call("update",h,{},s)}}}},25625:function(R,E,e){var w=e(71828),k=e(7901);R.exports=function(i,_,y,h){h("opacity");var l=h("bgcolor"),t=h("bordercolor"),o=k.opacity(t);h("borderpad");var r=h("borderwidth"),n=h("showarrow");if(h("text",n?" ":y._dfltTitle.annotation),h("textangle"),w.coerceFont(h,"font",y.font),h("width"),h("align"),h("height")&&h("valign"),n){var a,s,u=h("arrowside");u.indexOf("end")!==-1&&(a=h("arrowhead"),s=h("arrowsize")),u.indexOf("start")!==-1&&(h("startarrowhead",a),h("startarrowsize",s)),h("arrowcolor",o?_.bordercolor:k.defaultLine),h("arrowwidth",2*(o&&r||1)),h("standoff"),h("startstandoff")}var p=h("hovertext"),c=y.hoverlabel||{};if(p){var b=h("hoverlabel.bgcolor",c.bgcolor||(k.opacity(l)?k.rgb(l):k.defaultLine)),g=h("hoverlabel.bordercolor",c.bordercolor||k.contrast(b));w.coerceFont(h,"hoverlabel.font",{family:c.font.family,size:c.font.size,color:c.font.color||g})}h("captureevents",!!p)}},94128:function(R,E,e){var w=e(92770),k=e(58163);R.exports=function(i,_,y,h){_=_||{};var l=y==="log"&&_.type==="linear",t=y==="linear"&&_.type==="log";if(l||t)for(var o,r,n=i._fullLayout.annotations,a=_._id.charAt(0),s=0;s<n.length;s++)o=n[s],r="annotations["+s+"].",o[a+"ref"]===_._id&&u(a),o["a"+a+"ref"]===_._id&&u("a"+a);function u(p){var c=o[p],b=null;b=l?k(c,_.range):Math.pow(10,c),w(b)||(b=null),h(r+p,b)}}},84046:function(R,E,e){var w=e(71828),k=e(89298),i=e(85501),_=e(25625),y=e(50215);function h(l,t,o){function r(M,A){return w.coerce(l,t,y,M,A)}var n=r("visible"),a=r("clicktoshow");if(n||a){_(l,t,o,r);for(var s=t.showarrow,u=["x","y"],p=[-10,-30],c={_fullLayout:o},b=0;b<2;b++){var g=u[b],f=k.coerceRef(l,t,c,g,"","paper");if(f!=="paper"&&k.getFromId(c,f)._annIndices.push(t._index),k.coercePosition(t,c,r,f,g,.5),s){var v="a"+g,m=k.coerceRef(l,t,c,v,"pixel",["pixel","paper"]);m!=="pixel"&&m!==f&&(m=t[v]="pixel");var x=m==="pixel"?p[b]:.4;k.coercePosition(t,c,r,m,v,x)}r(g+"anchor"),r(g+"shift")}if(w.noneOrAll(l,t,["x","y"]),s&&w.noneOrAll(l,t,["ax","ay"]),a){var T=r("xclick"),d=r("yclick");t._xclick=T===void 0?t.x:k.cleanPosition(T,c,t.xref),t._yclick=d===void 0?t.y:k.cleanPosition(d,c,t.yref)}}}R.exports=function(l,t){i(l,t,{name:"annotations",handleItemDefaults:h})}},92605:function(R,E,e){var w=e(39898),k=e(73972),i=e(74875),_=e(71828),y=_.strTranslate,h=e(89298),l=e(7901),t=e(91424),o=e(30211),r=e(63893),n=e(6964),a=e(28569),s=e(44467).arrayEditor,u=e(13011);function p(g,f){var v=g._fullLayout.annotations[f]||{},m=h.getFromId(g,v.xref),x=h.getFromId(g,v.yref);m&&m.setScale(),x&&x.setScale(),b(g,v,f,!1,m,x)}function c(g,f,v,m,x){var T=x[v],d=x[v+"ref"],M=v.indexOf("y")!==-1,A=h.getRefType(d)==="domain",C=M?m.h:m.w;return g?A?T+(M?-f:f)/g._length:g.p2r(g.r2p(T)+f):T+(M?-f:f)/C}function b(g,f,v,m,x,T){var d,M,A=g._fullLayout,C=g._fullLayout._size,P=g._context.edits;m?(d="annotation-"+m,M=m+".annotations"):(d="annotation",M="annotations");var O=s(g.layout,M,f),z=O.modifyBase,B=O.modifyItem,Y=O.getUpdateObj;A._infolayer.selectAll("."+d+'[data-index="'+v+'"]').remove();var D="clip"+A._uid+"_ann"+v;if(f._input&&f.visible!==!1){var G={x:{},y:{}},V=+f.textangle||0,j=A._infolayer.append("g").classed(d,!0).attr("data-index",String(v)).style("opacity",f.opacity),W=j.append("g").classed("annotation-text-g",!0),Z=P[f.showarrow?"annotationTail":"annotationPosition"],ie=f.captureevents||P.annotationText||Z,te=W.append("g").style("pointer-events",ie?"all":null).call(n,"pointer").on("click",function(){g._dragging=!1,g.emit("plotly_clickannotation",_e(w.event))});f.hovertext&&te.on("mouseover",function(){var xe=f.hoverlabel,De=xe.font,Ee=this.getBoundingClientRect(),Me=g.getBoundingClientRect();o.loneHover({x0:Ee.left-Me.left,x1:Ee.right-Me.left,y:(Ee.top+Ee.bottom)/2-Me.top,text:f.hovertext,color:xe.bgcolor,borderColor:xe.bordercolor,fontFamily:De.family,fontSize:De.size,fontColor:De.color},{container:A._hoverlayer.node(),outerContainer:A._paper.node(),gd:g})}).on("mouseout",function(){o.loneUnhover(A._hoverlayer.node())});var J=f.borderwidth,X=f.borderpad,ee=J+X,re=te.append("rect").attr("class","bg").style("stroke-width",J+"px").call(l.stroke,f.bordercolor).call(l.fill,f.bgcolor),oe=f.width||f.height,ue=A._topclips.selectAll("#"+D).data(oe?[0]:[]);ue.enter().append("clipPath").classed("annclip",!0).attr("id",D).append("rect"),ue.exit().remove();var ce=f.font,de=A._meta?_.templateString(f.text,A._meta):f.text,me=te.append("text").classed("annotation-text",!0).text(de);P.annotationText?me.call(r.makeEditable,{delegate:te,gd:g}).call(Se).on("edit",function(xe){f.text=xe,this.call(Se),B("text",xe),x&&x.autorange&&z(x._name+".autorange",!0),T&&T.autorange&&z(T._name+".autorange",!0),k.call("_guiRelayout",g,Y())}):me.call(Se)}else w.selectAll("#"+D).remove();function _e(xe){var De={index:v,annotation:f._input,fullAnnotation:f,event:xe};return m&&(De.subplotId=m),De}function Se(xe){return xe.call(t.font,ce).attr({"text-anchor":{left:"start",right:"end"}[f.align]||"middle"}),r.convertToTspans(xe,g,we),xe}function we(){var xe=me.selectAll("a");xe.size()===1&&xe.text()===me.text()&&te.insert("a",":first-child").attr({"xlink:xlink:href":xe.attr("xlink:href"),"xlink:xlink:show":xe.attr("xlink:show")}).style({cursor:"pointer"}).node().appendChild(re.node());var De=te.select(".annotation-text-math-group"),Ee=!De.empty(),Me=t.bBox((Ee?De:me).node()),he=Me.width,fe=Me.height,ae=f.width||he,be=f.height||fe,Ie=Math.round(ae+2*ee),Te=Math.round(be+2*ee);function Ne(_t,gt){return gt==="auto"&&(gt=_t<.3333333333333333?"left":_t>.6666666666666666?"right":"center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[gt]}for(var qe=!1,ve=["x","y"],Ce=0;Ce<ve.length;Ce++){var Ae,ze,Ue,Ve,Ye,$e=ve[Ce],rt=f[$e+"ref"]||$e,ht=f["a"+$e+"ref"],nt={x,y:T}[$e],bt=(V+($e==="x"?0:-90))*Math.PI/180,wt=Ie*Math.cos(bt),ut=Te*Math.sin(bt),lt=Math.abs(wt)+Math.abs(ut),Tt=f[$e+"anchor"],Et=f[$e+"shift"]*($e==="x"?1:-1),St=G[$e],Ft=h.getRefType(rt);if(nt&&Ft!=="domain"){var zt=nt.r2fraction(f[$e]);(zt<0||zt>1)&&(ht===rt?((zt=nt.r2fraction(f["a"+$e]))<0||zt>1)&&(qe=!0):qe=!0),Ae=nt._offset+nt.r2p(f[$e]),Ve=.5}else{var Je=Ft==="domain";$e==="x"?(Ue=f[$e],Ae=Je?nt._offset+nt._length*Ue:Ae=C.l+C.w*Ue):(Ue=1-f[$e],Ae=Je?nt._offset+nt._length*Ue:Ae=C.t+C.h*Ue),Ve=f.showarrow?.5:Ue}if(f.showarrow){St.head=Ae;var et=f["a"+$e];if(Ye=wt*Ne(.5,f.xanchor)-ut*Ne(.5,f.yanchor),ht===rt){var Ze=h.getRefType(ht);Ze==="domain"?($e==="y"&&(et=1-et),St.tail=nt._offset+nt._length*et):Ze==="paper"?$e==="y"?(et=1-et,St.tail=C.t+C.h*et):St.tail=C.l+C.w*et:St.tail=nt._offset+nt.r2p(et),ze=Ye}else St.tail=Ae+et,ze=Ye+et;St.text=St.tail+Ye;var Qe=A[$e==="x"?"width":"height"];if(rt==="paper"&&(St.head=_.constrain(St.head,1,Qe-1)),ht==="pixel"){var st=-Math.max(St.tail-3,St.text),ft=Math.min(St.tail+3,St.text)-Qe;st>0?(St.tail+=st,St.text+=st):ft>0&&(St.tail-=ft,St.text-=ft)}St.tail+=Et,St.head+=Et}else ze=Ye=lt*Ne(Ve,Tt),St.text=Ae+Ye;St.text+=Et,Ye+=Et,ze+=Et,f["_"+$e+"padplus"]=lt/2+ze,f["_"+$e+"padminus"]=lt/2-ze,f["_"+$e+"size"]=lt,f["_"+$e+"shift"]=Ye}if(qe)te.remove();else{var Be=0,je=0;if(f.align!=="left"&&(Be=(ae-he)*(f.align==="center"?.5:1)),f.valign!=="top"&&(je=(be-fe)*(f.valign==="middle"?.5:1)),Ee)De.select("svg").attr({x:ee+Be-1,y:ee+je}).call(t.setClipUrl,oe?D:null,g);else{var at=ee+je-Me.top,ot=ee+Be-Me.left;me.call(r.positionText,ot,at).call(t.setClipUrl,oe?D:null,g)}ue.select("rect").call(t.setRect,ee,ee,ae,be),re.call(t.setRect,J/2,J/2,Ie-J,Te-J),te.call(t.setTranslate,Math.round(G.x.text-Ie/2),Math.round(G.y.text-Te/2)),W.attr({transform:"rotate("+V+","+G.x.text+","+G.y.text+")"});var xt,yt=function(_t,gt){j.selectAll(".annotation-arrow-g").remove();var Ct=G.x.head,dt=G.y.head,vt=G.x.tail+_t,At=G.y.tail+gt,Bt=G.x.text+_t,jt=G.y.text+gt,Ut=_.rotationXYMatrix(V,Bt,jt),tn=_.apply2DTransform(Ut),Xt=_.apply2DTransform2(Ut),Qt=+re.attr("width"),Gt=+re.attr("height"),vn=Bt-.5*Qt,Tn=vn+Qt,dn=jt-.5*Gt,Yt=dn+Gt,ln=[[vn,dn,vn,Yt],[vn,Yt,Tn,Yt],[Tn,Yt,Tn,dn],[Tn,dn,vn,dn]].map(Xt);if(!ln.reduce(function(ar,Kn){return ar^!!_.segmentsIntersect(Ct,dt,Ct+1e6,dt+1e6,Kn[0],Kn[1],Kn[2],Kn[3])},!1)){ln.forEach(function(ar){var Kn=_.segmentsIntersect(vt,At,Ct,dt,ar[0],ar[1],ar[2],ar[3]);Kn&&(vt=Kn.x,At=Kn.y)});var nn=f.arrowwidth,fn=f.arrowcolor,mn=f.arrowside,xn=j.append("g").style({opacity:l.opacity(fn)}).classed("annotation-arrow-g",!0),Pn=xn.append("path").attr("d","M"+vt+","+At+"L"+Ct+","+dt).style("stroke-width",nn+"px").call(l.stroke,l.rgb(fn));if(u(Pn,mn,f),P.annotationPosition&&Pn.node().parentNode&&!m){var Dn=Ct,En=dt;if(f.standoff){var Fn=Math.sqrt(Math.pow(Ct-vt,2)+Math.pow(dt-At,2));Dn+=f.standoff*(vt-Ct)/Fn,En+=f.standoff*(At-dt)/Fn}var er,ir,fr=xn.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(vt-Dn)+","+(At-En),transform:y(Dn,En)}).style("stroke-width",nn+6+"px").call(l.stroke,"rgba(0,0,0,0)").call(l.fill,"rgba(0,0,0,0)");a.init({element:fr.node(),gd:g,prepFn:function(){var ar=t.getTranslate(te);er=ar.x,ir=ar.y,x&&x.autorange&&z(x._name+".autorange",!0),T&&T.autorange&&z(T._name+".autorange",!0)},moveFn:function(ar,Kn){var wr=tn(er,ir),Ht=wr[0]+ar,sn=wr[1]+Kn;te.call(t.setTranslate,Ht,sn),B("x",c(x,ar,"x",C,f)),B("y",c(T,Kn,"y",C,f)),f.axref===f.xref&&B("ax",c(x,ar,"ax",C,f)),f.ayref===f.yref&&B("ay",c(T,Kn,"ay",C,f)),xn.attr("transform",y(ar,Kn)),W.attr({transform:"rotate("+V+","+Ht+","+sn+")"})},doneFn:function(){k.call("_guiRelayout",g,Y());var ar=document.querySelector(".js-notes-box-panel");ar&&ar.redraw(ar.selectedObj)}})}}};f.showarrow&&yt(0,0),Z&&a.init({element:te.node(),gd:g,prepFn:function(){xt=W.attr("transform")},moveFn:function(_t,gt){var Ct="pointer";if(f.showarrow)f.axref===f.xref?B("ax",c(x,_t,"ax",C,f)):B("ax",f.ax+_t),f.ayref===f.yref?B("ay",c(T,gt,"ay",C.w,f)):B("ay",f.ay+gt),yt(_t,gt);else{if(m)return;var dt,vt;if(x)dt=c(x,_t,"x",C,f);else{var At=f._xsize/C.w,Bt=f.x+(f._xshift-f.xshift)/C.w-At/2;dt=a.align(Bt+_t/C.w,At,0,1,f.xanchor)}if(T)vt=c(T,gt,"y",C,f);else{var jt=f._ysize/C.h,Ut=f.y-(f._yshift+f.yshift)/C.h-jt/2;vt=a.align(Ut-gt/C.h,jt,0,1,f.yanchor)}B("x",dt),B("y",vt),x&&T||(Ct=a.getCursor(x?.5:dt,T?.5:vt,f.xanchor,f.yanchor))}W.attr({transform:y(_t,gt)+xt}),n(te,Ct)},clickFn:function(_t,gt){f.captureevents&&g.emit("plotly_clickannotation",_e(gt))},doneFn:function(){n(te),k.call("_guiRelayout",g,Y());var _t=document.querySelector(".js-notes-box-panel");_t&&_t.redraw(_t.selectedObj)}})}}}R.exports={draw:function(g){var f=g._fullLayout;f._infolayer.selectAll(".annotation").remove();for(var v=0;v<f.annotations.length;v++)f.annotations[v].visible&&p(g,v);return i.previousPromises(g)},drawOne:p,drawRaw:b}},13011:function(R,E,e){var w=e(39898),k=e(7901),i=e(82884),_=e(71828),y=_.strScale,h=_.strRotate,l=_.strTranslate;R.exports=function(t,o,r){var n,a,s,u,p=t.node(),c=i[r.arrowhead||0],b=i[r.startarrowhead||0],g=(r.arrowwidth||1)*(r.arrowsize||1),f=(r.arrowwidth||1)*(r.startarrowsize||1),v=o.indexOf("start")>=0,m=o.indexOf("end")>=0,x=c.backoff*g+r.standoff,T=b.backoff*f+r.startstandoff;if(p.nodeName==="line"){n={x:+t.attr("x1"),y:+t.attr("y1")},a={x:+t.attr("x2"),y:+t.attr("y2")};var d=n.x-a.x,M=n.y-a.y;if(u=(s=Math.atan2(M,d))+Math.PI,x&&T&&x+T>Math.sqrt(d*d+M*M))return void j();if(x){if(x*x>d*d+M*M)return void j();var A=x*Math.cos(s),C=x*Math.sin(s);a.x+=A,a.y+=C,t.attr({x2:a.x,y2:a.y})}if(T){if(T*T>d*d+M*M)return void j();var P=T*Math.cos(s),O=T*Math.sin(s);n.x-=P,n.y-=O,t.attr({x1:n.x,y1:n.y})}}else if(p.nodeName==="path"){var z=p.getTotalLength(),B="";if(z<x+T)return void j();var Y=p.getPointAtLength(0),D=p.getPointAtLength(.1);s=Math.atan2(Y.y-D.y,Y.x-D.x),n=p.getPointAtLength(Math.min(T,z)),B="0px,"+T+"px,";var G=p.getPointAtLength(z),V=p.getPointAtLength(z-.1);u=Math.atan2(G.y-V.y,G.x-V.x),a=p.getPointAtLength(Math.max(0,z-x)),B+=z-(B?T+x:x)+"px,"+z+"px",t.style("stroke-dasharray",B)}function j(){t.style("stroke-dasharray","0px,100px")}function W(Z,ie,te,J){Z.path&&(Z.noRotate&&(te=0),w.select(p.parentNode).append("path").attr({class:t.attr("class"),d:Z.path,transform:l(ie.x,ie.y)+h(180*te/Math.PI)+y(J)}).style({fill:k.rgb(r.arrowcolor),"stroke-width":0}))}v&&W(b,n,s,f),m&&W(c,a,u,g)}},32745:function(R,E,e){var w=e(92605),k=e(44317);R.exports={moduleType:"component",name:"annotations",layoutAttributes:e(50215),supplyLayoutDefaults:e(84046),includeBasePlot:e(76325)("annotations"),calcAutorange:e(3749),draw:w.draw,drawOne:w.drawOne,drawRaw:w.drawRaw,hasClickToShow:k.hasClickToShow,onClick:k.onClick,convertCoords:e(94128)}},26997:function(R,E,e){var w=e(50215),k=e(30962).overrideAll,i=e(44467).templatedArray;R.exports=k(i("annotation",{visible:w.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:w.xanchor,xshift:w.xshift,yanchor:w.yanchor,yshift:w.yshift,text:w.text,textangle:w.textangle,font:w.font,width:w.width,height:w.height,opacity:w.opacity,align:w.align,valign:w.valign,bgcolor:w.bgcolor,bordercolor:w.bordercolor,borderpad:w.borderpad,borderwidth:w.borderwidth,showarrow:w.showarrow,arrowcolor:w.arrowcolor,arrowhead:w.arrowhead,startarrowhead:w.startarrowhead,arrowside:w.arrowside,arrowsize:w.arrowsize,startarrowsize:w.startarrowsize,arrowwidth:w.arrowwidth,standoff:w.standoff,startstandoff:w.startstandoff,hovertext:w.hovertext,hoverlabel:w.hoverlabel,captureevents:w.captureevents}),"calc","from-root")},5485:function(R,E,e){var w=e(71828),k=e(89298);function i(_,y){var h=y.fullSceneLayout.domain,l=y.fullLayout._size,t={pdata:null,type:"linear",autorange:!1,range:[-1/0,1/0]};_._xa={},w.extendFlat(_._xa,t),k.setConvert(_._xa),_._xa._offset=l.l+h.x[0]*l.w,_._xa.l2p=function(){return .5*(1+_._pdata[0]/_._pdata[3])*l.w*(h.x[1]-h.x[0])},_._ya={},w.extendFlat(_._ya,t),k.setConvert(_._ya),_._ya._offset=l.t+(1-h.y[1])*l.h,_._ya.l2p=function(){return .5*(1-_._pdata[1]/_._pdata[3])*l.h*(h.y[1]-h.y[0])}}R.exports=function(_){for(var y=_.fullSceneLayout.annotations,h=0;h<y.length;h++)i(y[h],_);_.fullLayout._infolayer.selectAll(".annotation-"+_.id).remove()}},20226:function(R,E,e){var w=e(71828),k=e(89298),i=e(85501),_=e(25625),y=e(26997);function h(l,t,o,r){function n(s,u){return w.coerce(l,t,y,s,u)}function a(s){var u=s+"axis",p={_fullLayout:{}};return p._fullLayout[u]=o[u],k.coercePosition(t,p,n,s,s,.5)}n("visible")&&(_(l,t,r.fullLayout,n),a("x"),a("y"),a("z"),w.noneOrAll(l,t,["x","y","z"]),t.xref="x",t.yref="y",t.zref="z",n("xanchor"),n("yanchor"),n("xshift"),n("yshift"),t.showarrow&&(t.axref="pixel",t.ayref="pixel",n("ax",-10),n("ay",-30),w.noneOrAll(l,t,["ax","ay"])))}R.exports=function(l,t,o){i(l,t,{name:"annotations",handleItemDefaults:h,fullLayout:o.fullLayout})}},82188:function(R,E,e){var w=e(92605).drawRaw,k=e(63538),i=["x","y","z"];R.exports=function(_){for(var y=_.fullSceneLayout,h=_.dataScale,l=y.annotations,t=0;t<l.length;t++){for(var o=l[t],r=!1,n=0;n<3;n++){var a=i[n],s=o[a],u=y[a+"axis"].r2fraction(s);if(u<0||u>1){r=!0;break}}r?_.fullLayout._infolayer.select(".annotation-"+_.id+'[data-index="'+t+'"]').remove():(o._pdata=k(_.glplot.cameraParams,[y.xaxis.r2l(o.x)*h[0],y.yaxis.r2l(o.y)*h[1],y.zaxis.r2l(o.z)*h[2]]),w(_.graphDiv,o,t,_.id,o._xa,o._ya))}}},2468:function(R,E,e){var w=e(73972),k=e(71828);R.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:e(26997)}}},layoutAttributes:e(26997),handleDefaults:e(20226),includeBasePlot:function(i,_){var y=w.subplotsRegistry.gl3d;if(y)for(var h=y.attrRegex,l=Object.keys(i),t=0;t<l.length;t++){var o=l[t];h.test(o)&&(i[o].annotations||[]).length&&(k.pushUnique(_._basePlotModules,y),k.pushUnique(_._subplots.gl3d,o))}},convert:e(5485),draw:e(82188)}},7561:function(R,E,e){R.exports=e(63489),e(94338),e(3961),e(38751),e(86825),e(37715),e(99384),e(43805),e(88874),e(83290),e(29108),e(55422),e(94320),e(31320),e(51367),e(21457)},72201:function(R,E,e){var w=e(7561),k=e(71828),i=e(50606),_=i.EPOCHJD,y=i.ONEDAY,h={valType:"enumerated",values:k.sortObjectKeys(w.calendars),editType:"calc",dflt:"gregorian"},l=function(g,f,v,m){var x={};return x[v]=h,k.coerce(g,f,x,v,m)},t="##",o={d:{0:"dd","-":"d"},e:{0:"d","-":"d"},a:{0:"D","-":"D"},A:{0:"DD","-":"DD"},j:{0:"oo","-":"o"},W:{0:"ww","-":"w"},m:{0:"mm","-":"m"},b:{0:"M","-":"M"},B:{0:"MM","-":"MM"},y:{0:"yy","-":"yy"},Y:{0:"yyyy","-":"yyyy"},U:t,w:t,c:{0:"D M d %X yyyy","-":"D M d %X yyyy"},x:{0:"mm/dd/yyyy","-":"mm/dd/yyyy"}},r={};function n(g){var f=r[g];return f||(r[g]=w.instance(g))}function a(g){return k.extendFlat({},h,{description:g})}function s(g){return"Sets the calendar system to use with `"+g+"` date data."}var u={xcalendar:a(s("x"))},p=k.extendFlat({},u,{ycalendar:a(s("y"))}),c=k.extendFlat({},p,{zcalendar:a(s("z"))}),b=a(["Sets the calendar system to use for `range` and `tick0`","if this is a date axis. This does not set the calendar for","interpreting data on this axis, that's specified in the trace","or via the global `layout.calendar`"].join(" "));R.exports={moduleType:"component",name:"calendars",schema:{traces:{scatter:p,bar:p,box:p,heatmap:p,contour:p,histogram:p,histogram2d:p,histogram2dcontour:p,scatter3d:c,surface:c,mesh3d:c,scattergl:p,ohlc:u,candlestick:u},layout:{calendar:a(["Sets the default calendar system to use for interpreting and","displaying dates throughout the plot."].join(" "))},subplots:{xaxis:{calendar:b},yaxis:{calendar:b},scene:{xaxis:{calendar:b},yaxis:{calendar:b},zaxis:{calendar:b}},polar:{radialaxis:{calendar:b}}},transforms:{filter:{valuecalendar:a(["WARNING: All transforms are deprecated and may be removed from the API in next major version.","Sets the calendar system to use for `value`, if it is a date."].join(" ")),targetcalendar:a(["WARNING: All transforms are deprecated and may be removed from the API in next major version.","Sets the calendar system to use for `target`, if it is an","array of dates. If `target` is a string (eg *x*) we use the","corresponding trace attribute (eg `xcalendar`) if it exists,","even if `targetcalendar` is provided."].join(" "))}}},layoutAttributes:h,handleDefaults:l,handleTraceDefaults:function(g,f,v,m){for(var x=0;x<v.length;x++)l(g,f,v[x]+"calendar",m.calendar)},CANONICAL_SUNDAY:{chinese:"2000-01-02",coptic:"2000-01-03",discworld:"2000-01-03",ethiopian:"2000-01-05",hebrew:"5000-01-01",islamic:"1000-01-02",julian:"2000-01-03",mayan:"5000-01-01",nanakshahi:"1000-01-05",nepali:"2000-01-05",persian:"1000-01-01",jalali:"1000-01-01",taiwan:"1000-01-04",thai:"2000-01-04",ummalqura:"1400-01-06"},CANONICAL_TICK:{chinese:"2000-01-01",coptic:"2000-01-01",discworld:"2000-01-01",ethiopian:"2000-01-01",hebrew:"5000-01-01",islamic:"1000-01-01",julian:"2000-01-01",mayan:"5000-01-01",nanakshahi:"1000-01-01",nepali:"2000-01-01",persian:"1000-01-01",jalali:"1000-01-01",taiwan:"1000-01-01",thai:"2000-01-01",ummalqura:"1400-01-01"},DFLTRANGE:{chinese:["2000-01-01","2001-01-01"],coptic:["1700-01-01","1701-01-01"],discworld:["1800-01-01","1801-01-01"],ethiopian:["2000-01-01","2001-01-01"],hebrew:["5700-01-01","5701-01-01"],islamic:["1400-01-01","1401-01-01"],julian:["2000-01-01","2001-01-01"],mayan:["5200-01-01","5201-01-01"],nanakshahi:["0500-01-01","0501-01-01"],nepali:["2000-01-01","2001-01-01"],persian:["1400-01-01","1401-01-01"],jalali:["1400-01-01","1401-01-01"],taiwan:["0100-01-01","0101-01-01"],thai:["2500-01-01","2501-01-01"],ummalqura:["1400-01-01","1401-01-01"]},getCal:n,worldCalFmt:function(g,f,v){for(var m,x,T,d,M,A=Math.floor((f+.05)/y)+_,C=n(v).fromJD(A),P=0;(P=g.indexOf("%",P))!==-1;)(m=g.charAt(P+1))==="0"||m==="-"||m==="_"?(T=3,x=g.charAt(P+2),m==="_"&&(m="-")):(x=m,m="0",T=2),(d=o[x])?(M=d===t?t:C.formatDate(d[m]),g=g.substr(0,P)+M+g.substr(P+T),P+=M.length):P+=T;return g}}},22399:function(R,E){E.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],E.defaultLine="#444",E.lightLine="#eee",E.background="#fff",E.borderLine="#BEC8D9",E.lightFraction=90.9090909090909},7901:function(R,E,e){var w=e(84267),k=e(92770),i=e(73627).isTypedArray,_=R.exports={},y=e(22399);_.defaults=y.defaults;var h=_.defaultLine=y.defaultLine;_.lightLine=y.lightLine;var l=_.background=y.background;function t(o){if(k(o)||typeof o!="string")return o;var r=o.trim();if(r.substr(0,3)!=="rgb")return o;var n=r.match(/^rgba?\s*\(([^()]*)\)$/);if(!n)return o;var a=n[1].trim().split(/\s*[\s,]\s*/),s=r.charAt(3)==="a"&&a.length===4;if(!s&&a.length!==3)return o;for(var u=0;u<a.length;u++){if(!a[u].length||(a[u]=Number(a[u]),!(a[u]>=0)))return o;if(u===3)a[u]>1&&(a[u]=1);else if(a[u]>=1)return o}var p=Math.round(255*a[0])+", "+Math.round(255*a[1])+", "+Math.round(255*a[2]);return s?"rgba("+p+", "+a[3]+")":"rgb("+p+")"}_.tinyRGB=function(o){var r=o.toRgb();return"rgb("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+")"},_.rgb=function(o){return _.tinyRGB(w(o))},_.opacity=function(o){return o?w(o).getAlpha():0},_.addOpacity=function(o,r){var n=w(o).toRgb();return"rgba("+Math.round(n.r)+", "+Math.round(n.g)+", "+Math.round(n.b)+", "+r+")"},_.combine=function(o,r){var n=w(o).toRgb();if(n.a===1)return w(o).toRgbString();var a=w(r||l).toRgb(),s=a.a===1?a:{r:255*(1-a.a)+a.r*a.a,g:255*(1-a.a)+a.g*a.a,b:255*(1-a.a)+a.b*a.a},u={r:s.r*(1-n.a)+n.r*n.a,g:s.g*(1-n.a)+n.g*n.a,b:s.b*(1-n.a)+n.b*n.a};return w(u).toRgbString()},_.contrast=function(o,r,n){var a=w(o);return a.getAlpha()!==1&&(a=w(_.combine(o,l))),(a.isDark()?r?a.lighten(r):l:n?a.darken(n):h).toString()},_.stroke=function(o,r){var n=w(r);o.style({stroke:_.tinyRGB(n),"stroke-opacity":n.getAlpha()})},_.fill=function(o,r){var n=w(r);o.style({fill:_.tinyRGB(n),"fill-opacity":n.getAlpha()})},_.clean=function(o){if(o&&typeof o=="object"){var r,n,a,s,u=Object.keys(o);for(r=0;r<u.length;r++)if(s=o[a=u[r]],a.substr(a.length-5)==="color")if(Array.isArray(s))for(n=0;n<s.length;n++)s[n]=t(s[n]);else o[a]=t(s);else if(a.substr(a.length-10)==="colorscale"&&Array.isArray(s))for(n=0;n<s.length;n++)Array.isArray(s[n])&&(s[n][1]=t(s[n][1]));else if(Array.isArray(s)){var p=s[0];if(!Array.isArray(p)&&p&&typeof p=="object")for(n=0;n<s.length;n++)_.clean(s[n])}else s&&typeof s=="object"&&!i(s)&&_.clean(s)}}},63583:function(R,E,e){var w=e(13838),k=e(41940),i=e(1426).extendFlat,_=e(30962).overrideAll;R.exports=_({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:w.linecolor,outlinewidth:w.linewidth,bordercolor:w.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:w.minor.tickmode,nticks:w.nticks,tick0:w.tick0,dtick:w.dtick,tickvals:w.tickvals,ticktext:w.ticktext,ticks:i({},w.ticks,{dflt:""}),ticklabeloverflow:i({},w.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:w.ticklen,tickwidth:w.tickwidth,tickcolor:w.tickcolor,ticklabelstep:w.ticklabelstep,showticklabels:w.showticklabels,labelalias:w.labelalias,tickfont:k({}),tickangle:w.tickangle,tickformat:w.tickformat,tickformatstops:w.tickformatstops,tickprefix:w.tickprefix,showtickprefix:w.showtickprefix,ticksuffix:w.ticksuffix,showticksuffix:w.showticksuffix,separatethousands:w.separatethousands,exponentformat:w.exponentformat,minexponent:w.minexponent,showexponent:w.showexponent,title:{text:{valType:"string"},font:k({}),side:{valType:"enumerated",values:["right","top","bottom"]}},_deprecated:{title:{valType:"string"},titlefont:k({}),titleside:{valType:"enumerated",values:["right","top","bottom"],dflt:"top"}}},"colorbars","from-root")},30939:function(R){R.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"}}},62499:function(R,E,e){var w=e(71828),k=e(44467),i=e(26218),_=e(38701),y=e(96115),h=e(89426),l=e(63583);R.exports=function(t,o,r){var n=k.newContainer(o,"colorbar"),a=t.colorbar||{};function s(B,Y){return w.coerce(a,n,l,B,Y)}var u=r.margin||{t:0,b:0,l:0,r:0},p=r.width-u.l-u.r,c=r.height-u.t-u.b,b=s("orientation")==="v",g=s("thicknessmode");s("thickness",g==="fraction"?30/(b?p:c):30);var f=s("lenmode");s("len",f==="fraction"?1:b?c:p);var v,m,x,T=s("yref")==="paper",d=s("xref")==="paper",M="left";b?(x="middle",M=d?"left":"right",v=d?1.02:1,m=.5):(x=T?"bottom":"top",M="center",v=.5,m=T?1.02:1),w.coerce(a,n,{x:{valType:"number",min:d?-2:0,max:d?3:1,dflt:v}},"x"),w.coerce(a,n,{y:{valType:"number",min:T?-2:0,max:T?3:1,dflt:m}},"y"),s("xanchor",M),s("xpad"),s("yanchor",x),s("ypad"),w.noneOrAll(a,n,["x","y"]),s("outlinecolor"),s("outlinewidth"),s("bordercolor"),s("borderwidth"),s("bgcolor");var A=w.coerce(a,n,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:b?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");s("ticklabeloverflow",A.indexOf("inside")!==-1?"hide past domain":"hide past div"),i(a,n,s,"linear");var C=r.font,P={outerTicks:!1,font:C};A.indexOf("inside")!==-1&&(P.bgColor="black"),h(a,n,s,"linear",P),y(a,n,s,"linear",P),_(a,n,s,"linear",P),s("title.text",r._dfltTitle.colorbar);var O=n.showticklabels?n.tickfont:C,z=w.extendFlat({},O,{color:C.color,size:w.bigFont(O.size)});w.coerceFont(s,"title.font",z),s("title.side",b?"top":"right")}},98981:function(R,E,e){var w=e(39898),k=e(84267),i=e(74875),_=e(73972),y=e(89298),h=e(28569),l=e(71828),t=l.strTranslate,o=e(1426).extendFlat,r=e(6964),n=e(91424),a=e(7901),s=e(92998),u=e(63893),p=e(52075).flipScale,c=e(71453),b=e(52830),g=e(13838),f=e(18783),v=f.LINE_SPACING,m=f.FROM_TL,x=f.FROM_BR,T=e(30939).cn;R.exports={draw:function(d){var M=d._fullLayout._infolayer.selectAll("g."+T.colorbar).data(function(A){var C,P,O,z,B=A._fullLayout,Y=A.calcdata,D=[];function G(oe){return o(oe,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function V(){typeof z.calc=="function"?z.calc(A,O,C):(C._fillgradient=P.reversescale?p(P.colorscale):P.colorscale,C._zrange=[P[z.min],P[z.max]])}for(var j=0;j<Y.length;j++){var W=Y[j],Z=(O=W[0].trace)._module.colorbar;if(O.visible===!0&&Z)for(var ie=Array.isArray(Z),te=ie?Z:[Z],J=0;J<te.length;J++){var X=(z=te[J]).container;(P=X?O[X]:O)&&P.showscale&&((C=G(P.colorbar))._id="cb"+O.uid+(ie&&X?"-"+X:""),C._traceIndex=O.index,C._propPrefix=(X?X+".":"")+"colorbar.",C._meta=O._meta,V(),D.push(C))}}for(var ee in B._colorAxes)if((P=B[ee]).showscale){var re=B._colorAxes[ee];(C=G(P.colorbar))._id="cb"+ee,C._propPrefix=ee+".colorbar.",C._meta=B._meta,z={min:"cmin",max:"cmax"},re[0]!=="heatmap"&&(O=re[1],z.calc=O._module.colorbar.calc),V(),D.push(C)}return D}(d),function(A){return A._id});M.enter().append("g").attr("class",function(A){return A._id}).classed(T.colorbar,!0),M.each(function(A){var C=w.select(this);l.ensureSingle(C,"rect",T.cbbg),l.ensureSingle(C,"g",T.cbfills),l.ensureSingle(C,"g",T.cblines),l.ensureSingle(C,"g",T.cbaxis,function(O){O.classed(T.crisp,!0)}),l.ensureSingle(C,"g",T.cbtitleunshift,function(O){O.append("g").classed(T.cbtitle,!0)}),l.ensureSingle(C,"rect",T.cboutline);var P=function(O,z,B){var Y=z.orientation==="v",D=z.len,G=z.lenmode,V=z.thickness,j=z.thicknessmode,W=z.outlinewidth,Z=z.borderwidth,ie=z.bgcolor,te=z.xanchor,J=z.yanchor,X=z.xpad,ee=z.ypad,re=z.x,oe=Y?z.y:1-z.y,ue=z.yref==="paper",ce=z.xref==="paper",de=B._fullLayout,me=de._size,_e=z._fillcolor,Se=z._line,we=z.title,xe=we.side,De=z._zrange||w.extent((typeof _e=="function"?_e:Se.color).domain()),Ee=typeof Se.color=="function"?Se.color:function(){return Se.color},Me=typeof _e=="function"?_e:function(){return _e},he=z._levels,fe=function(Ze,Qe,st){var ft,Be,je=Qe._levels,at=[],ot=[],xt=je.end+je.size/100,yt=je.size,_t=1.001*st[0]-.001*st[1],gt=1.001*st[1]-.001*st[0];for(Be=0;Be<1e5&&(ft=je.start+Be*yt,!(yt>0?ft>=xt:ft<=xt));Be++)ft>_t&&ft<gt&&at.push(ft);if(Qe._fillgradient)ot=[0];else if(typeof Qe._fillcolor=="function"){var Ct=Qe._filllevels;if(Ct)for(xt=Ct.end+Ct.size/100,yt=Ct.size,Be=0;Be<1e5&&(ft=Ct.start+Be*yt,!(yt>0?ft>=xt:ft<=xt));Be++)ft>st[0]&&ft<st[1]&&ot.push(ft);else(ot=at.map(function(dt){return dt-je.size/2})).push(ot[ot.length-1]+je.size)}else Qe._fillcolor&&typeof Qe._fillcolor=="string"&&(ot=[0]);return je.size<0&&(at.reverse(),ot.reverse()),{line:at,fill:ot}}(0,z,De),ae=fe.fill,be=fe.line,Ie=Math.round(V*(j==="fraction"?Y?me.w:me.h:1)),Te=Ie/(Y?me.w:me.h),Ne=Math.round(D*(G==="fraction"?Y?me.h:me.w:1)),qe=Ne/(Y?me.h:me.w),ve=ce?me.w:B._fullLayout.width,Ce=ue?me.h:B._fullLayout.height,Ae=Math.round(Y?re*ve+X:oe*Ce+ee),ze={center:.5,right:1}[te]||0,Ue={top:1,middle:.5}[J]||0,Ve=Y?re-ze*Te:oe-Ue*Te,Ye=Y?oe-Ue*qe:re-ze*qe,$e=Math.round(Y?Ce*(1-Ye):ve*Ye);z._lenFrac=qe,z._thickFrac=Te,z._uFrac=Ve,z._vFrac=Ye;var rt=z._axis=function(Ze,Qe,st){var ft=Ze._fullLayout,Be=Qe.orientation==="v",je={type:"linear",range:st,tickmode:Qe.tickmode,nticks:Qe.nticks,tick0:Qe.tick0,dtick:Qe.dtick,tickvals:Qe.tickvals,ticktext:Qe.ticktext,ticks:Qe.ticks,ticklen:Qe.ticklen,tickwidth:Qe.tickwidth,tickcolor:Qe.tickcolor,showticklabels:Qe.showticklabels,labelalias:Qe.labelalias,ticklabelposition:Qe.ticklabelposition,ticklabeloverflow:Qe.ticklabeloverflow,ticklabelstep:Qe.ticklabelstep,tickfont:Qe.tickfont,tickangle:Qe.tickangle,tickformat:Qe.tickformat,exponentformat:Qe.exponentformat,minexponent:Qe.minexponent,separatethousands:Qe.separatethousands,showexponent:Qe.showexponent,showtickprefix:Qe.showtickprefix,tickprefix:Qe.tickprefix,showticksuffix:Qe.showticksuffix,ticksuffix:Qe.ticksuffix,title:Qe.title,showline:!0,anchor:"free",side:Be?"right":"bottom",position:1},at=Be?"y":"x",ot={type:"linear",_id:at+Qe._id},xt={letter:at,font:ft.font,noHover:!0,noTickson:!0,noTicklabelmode:!0,calendar:ft.calendar};function yt(_t,gt){return l.coerce(je,ot,g,_t,gt)}return c(je,ot,yt,xt,ft),b(je,ot,yt,xt),ot}(B,z,De);rt.position=Te+(Y?re+X/me.w:oe+ee/me.h);var ht=["top","bottom"].indexOf(xe)!==-1;if(Y&&ht&&(rt.title.side=xe,rt.titlex=re+X/me.w,rt.titley=Ye+(we.side==="top"?qe-ee/me.h:ee/me.h)),Y||ht||(rt.title.side=xe,rt.titley=oe+ee/me.h,rt.titlex=Ye+X/me.w),Se.color&&z.tickmode==="auto"){rt.tickmode="linear",rt.tick0=he.start;var nt=he.size,bt=l.constrain(Ne/50,4,15)+1,wt=(De[1]-De[0])/((z.nticks||bt)*nt);if(wt>1){var ut=Math.pow(10,Math.floor(Math.log(wt)/Math.LN10));nt*=ut*l.roundUp(wt/ut,[2,5,10]),(Math.abs(he.start)/he.size+1e-6)%1<2e-6&&(rt.tick0=0)}rt.dtick=nt}rt.domain=Y?[Ye+ee/me.h,Ye+qe-ee/me.h]:[Ye+X/me.w,Ye+qe-X/me.w],rt.setScale(),O.attr("transform",t(Math.round(me.l),Math.round(me.t)));var lt,Tt=O.select("."+T.cbtitleunshift).attr("transform",t(-Math.round(me.l),-Math.round(me.t))),Et=rt.ticklabelposition,St=rt.title.font.size,Ft=O.select("."+T.cbaxis),zt=0,Je=0;function et(Ze,Qe){var st={propContainer:rt,propName:z._propPrefix+"title",traceIndex:z._traceIndex,_meta:z._meta,placeholder:de._dfltTitle.colorbar,containerGroup:O.select("."+T.cbtitle)},ft=Ze.charAt(0)==="h"?Ze.substr(1):"h"+Ze;O.selectAll("."+ft+",."+ft+"-math-group").remove(),s.draw(B,Ze,o(st,Qe||{}))}return l.syncOrAsync([i.previousPromises,function(){var Ze,Qe;(Y&&ht||!Y&&!ht)&&(xe==="top"&&(Ze=X+me.l+ve*re,Qe=ee+me.t+Ce*(1-Ye-qe)+3+.75*St),xe==="bottom"&&(Ze=X+me.l+ve*re,Qe=ee+me.t+Ce*(1-Ye)-3-.25*St),xe==="right"&&(Qe=ee+me.t+Ce*oe+3+.75*St,Ze=X+me.l+ve*Ye),et(rt._id+"title",{attributes:{x:Ze,y:Qe,"text-anchor":Y?"start":"middle"}}))},function(){if(!Y&&!ht||Y&&ht){var Ze,Qe=O.select("."+T.cbtitle),st=Qe.select("text"),ft=[-W/2,W/2],Be=Qe.select(".h"+rt._id+"title-math-group").node(),je=15.6;if(st.node()&&(je=parseInt(st.node().style.fontSize,10)*v),Be?(Ze=n.bBox(Be),Je=Ze.width,(zt=Ze.height)>je&&(ft[1]-=(zt-je)/2)):st.node()&&!st.classed(T.jsPlaceholder)&&(Ze=n.bBox(st.node()),Je=Ze.width,zt=Ze.height),Y){if(zt){if(zt+=5,xe==="top")rt.domain[1]-=zt/me.h,ft[1]*=-1;else{rt.domain[0]+=zt/me.h;var at=u.lineCount(st);ft[1]+=(1-at)*je}Qe.attr("transform",t(ft[0],ft[1])),rt.setScale()}}else Je&&(xe==="right"&&(rt.domain[0]+=(Je+St/2)/me.w),Qe.attr("transform",t(ft[0],ft[1])),rt.setScale())}O.selectAll("."+T.cbfills+",."+T.cblines).attr("transform",Y?t(0,Math.round(me.h*(1-rt.domain[1]))):t(Math.round(me.w*rt.domain[0]),0)),Ft.attr("transform",Y?t(0,Math.round(-me.t)):t(Math.round(-me.l),0));var ot=O.select("."+T.cbfills).selectAll("rect."+T.cbfill).attr("style","").data(ae);ot.enter().append("rect").classed(T.cbfill,!0).style("stroke","none"),ot.exit().remove();var xt=De.map(rt.c2p).map(Math.round).sort(function(dt,vt){return dt-vt});ot.each(function(dt,vt){var At=[vt===0?De[0]:(ae[vt]+ae[vt-1])/2,vt===ae.length-1?De[1]:(ae[vt]+ae[vt+1])/2].map(rt.c2p).map(Math.round);Y&&(At[1]=l.constrain(At[1]+(At[1]>At[0])?1:-1,xt[0],xt[1]));var Bt=w.select(this).attr(Y?"x":"y",Ae).attr(Y?"y":"x",w.min(At)).attr(Y?"width":"height",Math.max(Ie,2)).attr(Y?"height":"width",Math.max(w.max(At)-w.min(At),2));if(z._fillgradient)n.gradient(Bt,B,z._id,Y?"vertical":"horizontalreversed",z._fillgradient,"fill");else{var jt=Me(dt).replace("e-","");Bt.attr("fill",k(jt).toHexString())}});var yt=O.select("."+T.cblines).selectAll("path."+T.cbline).data(Se.color&&Se.width?be:[]);yt.enter().append("path").classed(T.cbline,!0),yt.exit().remove(),yt.each(function(dt){var vt=Ae,At=Math.round(rt.c2p(dt))+Se.width/2%1;w.select(this).attr("d","M"+(Y?vt+","+At:At+","+vt)+(Y?"h":"v")+Ie).call(n.lineGroupStyle,Se.width,Ee(dt),Se.dash)}),Ft.selectAll("g."+rt._id+"tick,path").remove();var _t=Ae+Ie+(W||0)/2-(z.ticks==="outside"?1:0),gt=y.calcTicks(rt),Ct=y.getTickSigns(rt)[2];return y.drawTicks(B,rt,{vals:rt.ticks==="inside"?y.clipEnds(rt,gt):gt,layer:Ft,path:y.makeTickPath(rt,_t,Ct),transFn:y.makeTransTickFn(rt)}),y.drawLabels(B,rt,{vals:gt,layer:Ft,transFn:y.makeTransTickLabelFn(rt),labelFns:y.makeLabelFns(rt,_t)})},function(){if(Y&&!ht||!Y&&ht){var Ze,Qe,st=rt.position||0,ft=rt._offset+rt._length/2;if(xe==="right")Qe=ft,Ze=me.l+ve*st+10+St*(rt.showticklabels?1:.5);else if(Ze=ft,xe==="bottom"&&(Qe=me.t+Ce*st+10+(Et.indexOf("inside")===-1?rt.tickfont.size:0)+(rt.ticks!=="intside"&&z.ticklen||0)),xe==="top"){var Be=we.text.split("<br>").length;Qe=me.t+Ce*st+10-Ie-v*St*Be}et((Y?"h":"v")+rt._id+"title",{avoid:{selection:w.select(B).selectAll("g."+rt._id+"tick"),side:xe,offsetTop:Y?0:me.t,offsetLeft:Y?me.l:0,maxShift:Y?de.width:de.height},attributes:{x:Ze,y:Qe,"text-anchor":"middle"},transform:{rotate:Y?-90:0,offset:0}})}},i.previousPromises,function(){var Ze,Qe=Ie+W/2;Et.indexOf("inside")===-1&&(Ze=n.bBox(Ft.node()),Qe+=Y?Ze.width:Ze.height),lt=Tt.select("text");var st=0,ft=Y&&xe==="top",Be=!Y&&xe==="right",je=0;if(lt.node()&&!lt.classed(T.jsPlaceholder)){var at,ot=Tt.select(".h"+rt._id+"title-math-group").node();ot&&(Y&&ht||!Y&&!ht)?(st=(Ze=n.bBox(ot)).width,at=Ze.height):(st=(Ze=n.bBox(Tt.node())).right-me.l-(Y?Ae:$e),at=Ze.bottom-me.t-(Y?$e:Ae),Y||xe!=="top"||(Qe+=Ze.height,je=Ze.height)),Be&&(lt.attr("transform",t(st/2+St/2,0)),st*=2),Qe=Math.max(Qe,Y?st:at)}var xt=2*(Y?X:ee)+Qe+Z+W/2,yt=0;!Y&&we.text&&J==="bottom"&&oe<=0&&(xt+=yt=xt/2,je+=yt),de._hColorbarMoveTitle=yt,de._hColorbarMoveCBTitle=je;var _t=Z+W,gt=(Y?Ae:$e)-_t/2-(Y?X:0),Ct=(Y?$e:Ae)-(Y?Ne:ee+je-yt);O.select("."+T.cbbg).attr("x",gt).attr("y",Ct).attr(Y?"width":"height",Math.max(xt-yt,2)).attr(Y?"height":"width",Math.max(Ne+_t,2)).call(a.fill,ie).call(a.stroke,z.bordercolor).style("stroke-width",Z);var dt=Be?Math.max(st-10,0):0;O.selectAll("."+T.cboutline).attr("x",(Y?Ae:$e+X)+dt).attr("y",(Y?$e+ee-Ne:Ae)+(ft?zt:0)).attr(Y?"width":"height",Math.max(Ie,2)).attr(Y?"height":"width",Math.max(Ne-(Y?2*ee+zt:2*X+dt),2)).call(a.stroke,z.outlinecolor).style({fill:"none","stroke-width":W});var vt=Y?ze*xt:0,At=Y?0:(1-Ue)*xt-je;if(vt=ce?me.l-vt:-vt,At=ue?me.t-At:-At,O.attr("transform",t(vt,At)),!Y&&(Z||k(ie).getAlpha()&&!k.equals(de.paper_bgcolor,ie))){var Bt=Ft.selectAll("text"),jt=Bt[0].length,Ut=O.select("."+T.cbbg).node(),tn=n.bBox(Ut),Xt=n.getTranslate(O);Bt.each(function(mn,xn){var Pn=jt-1;if(xn===0||xn===Pn){var Dn,En=n.bBox(this),Fn=n.getTranslate(this);if(xn===Pn){var er=En.right+Fn.x;(Dn=tn.right+Xt.x+$e-Z-2+re-er)>0&&(Dn=0)}else if(xn===0){var ir=En.left+Fn.x;(Dn=tn.left+Xt.x+$e+Z+2-ir)<0&&(Dn=0)}Dn&&(jt<3?this.setAttribute("transform","translate("+Dn+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var Qt={},Gt=m[te],vn=x[te],Tn=m[J],dn=x[J],Yt=xt-Ie;Y?(G==="pixels"?(Qt.y=oe,Qt.t=Ne*Tn,Qt.b=Ne*dn):(Qt.t=Qt.b=0,Qt.yt=oe+D*Tn,Qt.yb=oe-D*dn),j==="pixels"?(Qt.x=re,Qt.l=xt*Gt,Qt.r=xt*vn):(Qt.l=Yt*Gt,Qt.r=Yt*vn,Qt.xl=re-V*Gt,Qt.xr=re+V*vn)):(G==="pixels"?(Qt.x=re,Qt.l=Ne*Gt,Qt.r=Ne*vn):(Qt.l=Qt.r=0,Qt.xl=re+D*Gt,Qt.xr=re-D*vn),j==="pixels"?(Qt.y=1-oe,Qt.t=xt*Tn,Qt.b=xt*dn):(Qt.t=Yt*Tn,Qt.b=Yt*dn,Qt.yt=oe-V*Tn,Qt.yb=oe+V*dn));var ln=z.y<.5?"b":"t",nn=z.x<.5?"l":"r";B._fullLayout._reservedMargin[z._id]={};var fn={r:de.width-gt-vt,l:gt+Qt.r,b:de.height-Ct-At,t:Ct+Qt.b};ce&&ue?i.autoMargin(B,z._id,Qt):ce?B._fullLayout._reservedMargin[z._id][ln]=fn[ln]:ue||Y?B._fullLayout._reservedMargin[z._id][nn]=fn[nn]:B._fullLayout._reservedMargin[z._id][ln]=fn[ln]}],B)}(C,A,d);P&&P.then&&(d._promises||[]).push(P),d._context.edits.colorbarPosition&&function(O,z,B){var Y,D,G,V=z.orientation==="v",j=B._fullLayout._size;h.init({element:O.node(),gd:B,prepFn:function(){Y=O.attr("transform"),r(O)},moveFn:function(W,Z){O.attr("transform",Y+t(W,Z)),D=h.align((V?z._uFrac:z._vFrac)+W/j.w,V?z._thickFrac:z._lenFrac,0,1,z.xanchor),G=h.align((V?z._vFrac:1-z._uFrac)-Z/j.h,V?z._lenFrac:z._thickFrac,0,1,z.yanchor);var ie=h.getCursor(D,G,z.xanchor,z.yanchor);r(O,ie)},doneFn:function(){if(r(O),D!==void 0&&G!==void 0){var W={};W[z._propPrefix+"x"]=D,W[z._propPrefix+"y"]=G,z._traceIndex!==void 0?_.call("_guiRestyle",B,W,z._traceIndex):_.call("_guiRelayout",B,W)}}})}(C,A,d)}),M.exit().each(function(A){i.autoMargin(d,A._id)}).remove(),M.order()}}},76228:function(R,E,e){var w=e(71828);R.exports=function(k){return w.isPlainObject(k.colorbar)}},12311:function(R,E,e){R.exports={moduleType:"component",name:"colorbar",attributes:e(63583),supplyDefaults:e(62499),draw:e(98981).draw,hasColorbar:e(76228)}},50693:function(R,E,e){var w=e(63583),k=e(30587).counter,i=e(78607),_=e(63282).scales;function y(h){return"`"+h+"`"}i(_),R.exports=function(h,l){h=h||"";var t,o=(l=l||{}).cLetter||"c",r=("onlyIfNumerical"in l&&l.onlyIfNumerical,"noScale"in l?l.noScale:h==="marker.line"),n="showScaleDflt"in l?l.showScaleDflt:o==="z",a=typeof l.colorscaleDflt=="string"?_[l.colorscaleDflt]:null,s=l.editTypeOverride||"",u=h?h+".":"";"colorAttr"in l?(t=l.colorAttr,l.colorAttr):y(u+(t={z:"z",c:"color"}[o]));var p=o+"auto",c=o+"min",b=o+"max",g=o+"mid",f={};f[c]=f[b]=void 0;var v={};v[p]=!1;var m={};return t==="color"&&(m.color={valType:"color",arrayOk:!0,editType:s||"style"},l.anim&&(m.color.anim=!0)),m[p]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:f},m[c]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:v},m[b]={valType:"number",dflt:null,editType:s||"plot",impliedEdits:v},m[g]={valType:"number",dflt:null,editType:"calc",impliedEdits:f},m.colorscale={valType:"colorscale",editType:"calc",dflt:a,impliedEdits:{autocolorscale:!1}},m.autocolorscale={valType:"boolean",dflt:l.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},m.reversescale={valType:"boolean",dflt:!1,editType:"plot"},r||(m.showscale={valType:"boolean",dflt:n,editType:"calc"},m.colorbar=w),l.noColorAxis||(m.coloraxis={valType:"subplotid",regex:k("coloraxis"),dflt:null,editType:"calc"}),m}},78803:function(R,E,e){var w=e(92770),k=e(71828),i=e(52075).extractOpts;R.exports=function(_,y,h){var l,t=_._fullLayout,o=h.vals,r=h.containerStr,n=r?k.nestedProperty(y,r).get():y,a=i(n),s=a.auto!==!1,u=a.min,p=a.max,c=a.mid,b=function(){return k.aggNums(Math.min,null,o)},g=function(){return k.aggNums(Math.max,null,o)};u===void 0?u=b():s&&(u=n._colorAx&&w(u)?Math.min(u,b()):b()),p===void 0?p=g():s&&(p=n._colorAx&&w(p)?Math.max(p,g()):g()),s&&c!==void 0&&(p-c>c-u?u=c-(p-c):p-c<c-u&&(p=c+(c-u))),u===p&&(u-=.5,p+=.5),a._sync("min",u),a._sync("max",p),a.autocolorscale&&(l=u*p<0?t.colorscale.diverging:u>=0?t.colorscale.sequential:t.colorscale.sequentialminus,a._sync("colorscale",l))}},33046:function(R,E,e){var w=e(71828),k=e(52075).hasColorscale,i=e(52075).extractOpts;R.exports=function(_,y){function h(s,u){var p=s["_"+u];p!==void 0&&(s[u]=p)}function l(s,u){var p=u.container?w.nestedProperty(s,u.container).get():s;if(p)if(p.coloraxis)p._colorAx=y[p.coloraxis];else{var c=i(p),b=c.auto;(b||c.min===void 0)&&h(p,u.min),(b||c.max===void 0)&&h(p,u.max),c.autocolorscale&&h(p,"colorscale")}}for(var t=0;t<_.length;t++){var o=_[t],r=o._module.colorbar;if(r)if(Array.isArray(r))for(var n=0;n<r.length;n++)l(o,r[n]);else l(o,r);k(o,"marker.line")&&l(o,{container:"marker.line",min:"cmin",max:"cmax"})}for(var a in y._colorAxes)l(y[a],{min:"cmin",max:"cmax"})}},1586:function(R,E,e){var w=e(92770),k=e(71828),i=e(76228),_=e(62499),y=e(63282).isValid,h=e(73972).traceIs;function l(t,o){var r=o.slice(0,o.length-1);return o?k.nestedProperty(t,r).get()||{}:t}R.exports=function t(o,r,n,a,s){var u=s.prefix,p=s.cLetter,c="_module"in r,b=l(o,u),g=l(r,u),f=l(r._template||{},u)||{},v=function(){return delete o.coloraxis,delete r.coloraxis,t(o,r,n,a,s)};if(c){var m=n._colorAxes||{},x=a(u+"coloraxis");if(x){var T=h(r,"contour")&&k.nestedProperty(r,"contours.coloring").get()||"heatmap",d=m[x];return void(d?(d[2].push(v),d[0]!==T&&(d[0]=!1,k.warn(["Ignoring coloraxis:",x,"setting","as it is linked to incompatible colorscales."].join(" ")))):m[x]=[T,r,[v]])}}var M=b[p+"min"],A=b[p+"max"],C=w(M)&&w(A)&&M<A;a(u+p+"auto",!C)?a(u+p+"mid"):(a(u+p+"min"),a(u+p+"max"));var P,O,z=b.colorscale,B=f.colorscale;z!==void 0&&(P=!y(z)),B!==void 0&&(P=!y(B)),a(u+"autocolorscale",P),a(u+"colorscale"),a(u+"reversescale"),u!=="marker.line."&&(u&&c&&(O=i(b)),a(u+"showscale",O)&&(u&&f&&(g._template=f),_(b,g,n)))}},52075:function(R,E,e){var w=e(39898),k=e(84267),i=e(92770),_=e(71828),y=e(7901),h=e(63282).isValid,l=["showscale","autocolorscale","colorscale","reversescale","colorbar"],t=["min","max","mid","auto"];function o(u){var p,c,b,g=u._colorAx,f=g||u,v={};for(c=0;c<l.length;c++)v[b=l[c]]=f[b];if(g)for(p="c",c=0;c<t.length;c++)v[b=t[c]]=f["c"+b];else{var m;for(c=0;c<t.length;c++)((m="c"+(b=t[c]))in f||(m="z"+b)in f)&&(v[b]=f[m]);p=m.charAt(0)}return v._sync=function(x,T){var d=t.indexOf(x)!==-1?p+x:x;f[d]=f["_"+d]=T},v}function r(u){for(var p=o(u),c=p.min,b=p.max,g=p.reversescale?n(p.colorscale):p.colorscale,f=g.length,v=new Array(f),m=new Array(f),x=0;x<f;x++){var T=g[x];v[x]=c+T[0]*(b-c),m[x]=T[1]}return{domain:v,range:m}}function n(u){for(var p=u.length,c=new Array(p),b=p-1,g=0;b>=0;b--,g++){var f=u[b];c[g]=[1-f[0],f[1]]}return c}function a(u,p){p=p||{};for(var c=u.domain,b=u.range,g=b.length,f=new Array(g),v=0;v<g;v++){var m=k(b[v]).toRgb();f[v]=[m.r,m.g,m.b,m.a]}var x,T=w.scale.linear().domain(c).range(f).clamp(!0),d=p.noNumericCheck,M=p.returnArray;return(x=d&&M?T:d?function(A){return s(T(A))}:M?function(A){return i(A)?T(A):k(A).isValid()?A:y.defaultLine}:function(A){return i(A)?s(T(A)):k(A).isValid()?A:y.defaultLine}).domain=T.domain,x.range=function(){return b},x}function s(u){var p={r:u[0],g:u[1],b:u[2],a:u[3]};return k(p).toRgbString()}R.exports={hasColorscale:function(u,p,c){var b=p?_.nestedProperty(u,p).get()||{}:u,g=b[c||"color"],f=!1;if(_.isArrayOrTypedArray(g)){for(var v=0;v<g.length;v++)if(i(g[v])){f=!0;break}}return _.isPlainObject(b)&&(f||b.showscale===!0||i(b.cmin)&&i(b.cmax)||h(b.colorscale)||_.isPlainObject(b.colorbar))},extractOpts:o,extractScale:r,flipScale:n,makeColorScaleFunc:a,makeColorScaleFuncFromTrace:function(u,p){return a(r(u),p)}}},21081:function(R,E,e){var w=e(63282),k=e(52075);R.exports={moduleType:"component",name:"colorscale",attributes:e(50693),layoutAttributes:e(72673),supplyLayoutDefaults:e(30959),handleDefaults:e(1586),crossTraceDefaults:e(33046),calc:e(78803),scales:w.scales,defaultScale:w.defaultScale,getScale:w.get,isValidScale:w.isValid,hasColorscale:k.hasColorscale,extractOpts:k.extractOpts,extractScale:k.extractScale,flipScale:k.flipScale,makeColorScaleFunc:k.makeColorScaleFunc,makeColorScaleFuncFromTrace:k.makeColorScaleFuncFromTrace}},72673:function(R,E,e){var w=e(1426).extendFlat,k=e(50693),i=e(63282).scales;R.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:i.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:i.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:i.RdBu,editType:"calc"}},coloraxis:w({_isSubplotObj:!0,editType:"calc"},k("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}},30959:function(R,E,e){var w=e(71828),k=e(44467),i=e(72673),_=e(1586);R.exports=function(y,h){function l(p,c){return w.coerce(y,h,i,p,c)}l("colorscale.sequential"),l("colorscale.sequentialminus"),l("colorscale.diverging");var t,o,r=h._colorAxes;function n(p,c){return w.coerce(t,o,i.coloraxis,p,c)}for(var a in r){var s=r[a];if(s[0])t=y[a]||{},(o=k.newContainer(h,a,"coloraxis"))._name=a,_(t,o,h,n,{prefix:"",cLetter:"c"});else{for(var u=0;u<s[2].length;u++)s[2][u]();delete h._colorAxes[a]}}}},63282:function(R,E,e){var w=e(84267),k={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)"]]},i=k.RdBu;function _(y){var h=0;if(!Array.isArray(y)||y.length<2||!y[0]||!y[y.length-1]||+y[0][0]!=0||+y[y.length-1][0]!=1)return!1;for(var l=0;l<y.length;l++){var t=y[l];if(t.length!==2||+t[0]<h||!w(t[1]).isValid())return!1;h=+t[0]}return!0}R.exports={scales:k,defaultScale:i,get:function(y,h){if(h||(h=i),!y)return h;function l(){try{y=k[y]||JSON.parse(y)}catch{y=h}}return typeof y=="string"&&(l(),typeof y=="string"&&l()),_(y)?y:h},isValid:function(y){return k[y]!==void 0||_(y)}}},92807:function(R){R.exports=function(E,e,w,k,i){var _=(E-w)/(k-w),y=_+e/(k-w),h=(_+y)/2;return i==="left"||i==="bottom"?_:i==="center"||i==="middle"?h:i==="right"||i==="top"?y:_<.6666666666666666-h?_:y>1.3333333333333333-h?y:h}},70461:function(R,E,e){var w=e(71828),k=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];R.exports=function(i,_,y,h){return i=y==="left"?0:y==="center"?1:y==="right"?2:w.constrain(Math.floor(3*i),0,2),_=h==="bottom"?0:h==="middle"?1:h==="top"?2:w.constrain(Math.floor(3*_),0,2),k[_][i]}},64505:function(R,E){E.selectMode=function(e){return e==="lasso"||e==="select"},E.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"},E.openMode=function(e){return e==="drawline"||e==="drawopenpath"},E.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"},E.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"},E.selectingOrDrawing=function(e){return E.freeMode(e)||E.rectMode(e)}},28569:function(R,E,e){var w=e(48956),k=e(57035),i=e(38520),_=e(71828).removeElement,y=e(85555),h=R.exports={};h.align=e(92807),h.getCursor=e(70461);var l=e(26041);function t(){var r=document.createElement("div");r.className="dragcover";var n=r.style;return n.position="fixed",n.left=0,n.right=0,n.top=0,n.bottom=0,n.zIndex=999999999,n.background="none",document.body.appendChild(r),r}function o(r){return w(r.changedTouches?r.changedTouches[0]:r,document.body)}h.unhover=l.wrapped,h.unhoverRaw=l.raw,h.init=function(r){var n,a,s,u,p,c,b,g,f=r.gd,v=1,m=f._context.doubleClickDelay,x=r.element;f._mouseDownTime||(f._mouseDownTime=0),x.style.pointerEvents="all",x.onmousedown=d,i?(x._ontouchstart&&x.removeEventListener("touchstart",x._ontouchstart),x._ontouchstart=d,x.addEventListener("touchstart",d,{passive:!1})):x.ontouchstart=d;var T=r.clampFn||function(C,P,O){return Math.abs(C)<O&&(C=0),Math.abs(P)<O&&(P=0),[C,P]};function d(C){f._dragged=!1,f._dragging=!0;var P=o(C);n=P[0],a=P[1],b=C.target,c=C,g=C.buttons===2||C.ctrlKey,C.clientX===void 0&&C.clientY===void 0&&(C.clientX=n,C.clientY=a),(s=new Date().getTime())-f._mouseDownTime<m?v+=1:(v=1,f._mouseDownTime=s),r.prepFn&&r.prepFn(C,n,a),k&&!g?(p=t()).style.cursor=window.getComputedStyle(x).cursor:k||(p=document,u=window.getComputedStyle(document.documentElement).cursor,document.documentElement.style.cursor=window.getComputedStyle(x).cursor),document.addEventListener("mouseup",A),document.addEventListener("touchend",A),r.dragmode!==!1&&(C.preventDefault(),document.addEventListener("mousemove",M),document.addEventListener("touchmove",M,{passive:!1}))}function M(C){C.preventDefault();var P=o(C),O=r.minDrag||y.MINDRAG,z=T(P[0]-n,P[1]-a,O),B=z[0],Y=z[1];(B||Y)&&(f._dragged=!0,h.unhover(f,C)),f._dragged&&r.moveFn&&!g&&(f._dragdata={element:x,dx:B,dy:Y},r.moveFn(B,Y))}function A(C){if(delete f._dragdata,r.dragmode!==!1&&(C.preventDefault(),document.removeEventListener("mousemove",M),document.removeEventListener("touchmove",M)),document.removeEventListener("mouseup",A),document.removeEventListener("touchend",A),k?_(p):u&&(p.documentElement.style.cursor=u,u=null),f._dragging){if(f._dragging=!1,new Date().getTime()-f._mouseDownTime>m&&(v=Math.max(v-1,1)),f._dragged)r.doneFn&&r.doneFn();else if(r.clickFn&&r.clickFn(v,c),!g){var P;try{P=new MouseEvent("click",C)}catch{var O=o(C);(P=document.createEvent("MouseEvents")).initMouseEvent("click",C.bubbles,C.cancelable,C.view,C.detail,C.screenX,C.screenY,O[0],O[1],C.ctrlKey,C.altKey,C.shiftKey,C.metaKey,C.button,C.relatedTarget)}b.dispatchEvent(P)}f._dragging=!1,f._dragged=!1}else f._dragged=!1}},h.coverSlip=t},26041:function(R,E,e){var w=e(11086),k=e(79990),i=e(24401).getGraphDiv,_=e(26675),y=R.exports={};y.wrapped=function(h,l,t){(h=i(h))._fullLayout&&k.clear(h._fullLayout._uid+_.HOVERID),y.raw(h,l,t)},y.raw=function(h,l){var t=h._fullLayout,o=h._hoverdata;l||(l={}),l.target&&!h._dragged&&w.triggerHandler(h,"plotly_beforehover",l)===!1||(t._hoverlayer.selectAll("g").remove(),t._hoverlayer.selectAll("line").remove(),t._hoverlayer.selectAll("circle").remove(),h._hoverdata=void 0,l.target&&o&&h.emit("plotly_unhover",{event:l,points:o}))}},79952:function(R,E){E.P={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"},E.u={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}},91424:function(R,E,e){var w=e(39898),k=e(71828),i=k.numberFormat,_=e(92770),y=e(84267),h=e(73972),l=e(7901),t=e(21081),o=k.strTranslate,r=e(63893),n=e(77922),a=e(18783).LINE_SPACING,s=e(37822).DESELECTDIM,u=e(34098),p=e(39984),c=e(23469).appendArrayPointValue,b=R.exports={};function g(Ee,Me,he){var fe=Me.fillpattern,ae=fe&&b.getPatternAttr(fe.shape,0,"");if(ae){var be=b.getPatternAttr(fe.bgcolor,0,null),Ie=b.getPatternAttr(fe.fgcolor,0,null),Te=fe.fgopacity,Ne=b.getPatternAttr(fe.size,0,8),qe=b.getPatternAttr(fe.solidity,0,.3),ve=Me.uid;b.pattern(Ee,"point",he,ve,ae,Ne,qe,void 0,fe.fillmode,be,Ie,Te)}else Me.fillcolor&&Ee.call(l.fill,Me.fillcolor)}b.font=function(Ee,Me,he,fe){k.isPlainObject(Me)&&(fe=Me.color,he=Me.size,Me=Me.family),Me&&Ee.style("font-family",Me),he+1&&Ee.style("font-size",he+"px"),fe&&Ee.call(l.fill,fe)},b.setPosition=function(Ee,Me,he){Ee.attr("x",Me).attr("y",he)},b.setSize=function(Ee,Me,he){Ee.attr("width",Me).attr("height",he)},b.setRect=function(Ee,Me,he,fe,ae){Ee.call(b.setPosition,Me,he).call(b.setSize,fe,ae)},b.translatePoint=function(Ee,Me,he,fe){var ae=he.c2p(Ee.x),be=fe.c2p(Ee.y);return!!(_(ae)&&_(be)&&Me.node())&&(Me.node().nodeName==="text"?Me.attr("x",ae).attr("y",be):Me.attr("transform",o(ae,be)),!0)},b.translatePoints=function(Ee,Me,he){Ee.each(function(fe){var ae=w.select(this);b.translatePoint(fe,ae,Me,he)})},b.hideOutsideRangePoint=function(Ee,Me,he,fe,ae,be){Me.attr("display",he.isPtWithinRange(Ee,ae)&&fe.isPtWithinRange(Ee,be)?null:"none")},b.hideOutsideRangePoints=function(Ee,Me){if(Me._hasClipOnAxisFalse){var he=Me.xaxis,fe=Me.yaxis;Ee.each(function(ae){var be=ae[0].trace,Ie=be.xcalendar,Te=be.ycalendar,Ne=h.traceIs(be,"bar-like")?".bartext":".point,.textpoint";Ee.selectAll(Ne).each(function(qe){b.hideOutsideRangePoint(qe,w.select(this),he,fe,Ie,Te)})})}},b.crispRound=function(Ee,Me,he){return Me&&_(Me)?Ee._context.staticPlot?Me:Me<1?1:Math.round(Me):he||0},b.singleLineStyle=function(Ee,Me,he,fe,ae){Me.style("fill","none");var be=(((Ee||[])[0]||{}).trace||{}).line||{},Ie=he||be.width||0,Te=ae||be.dash||"";l.stroke(Me,fe||be.color),b.dashLine(Me,Te,Ie)},b.lineGroupStyle=function(Ee,Me,he,fe){Ee.style("fill","none").each(function(ae){var be=(((ae||[])[0]||{}).trace||{}).line||{},Ie=Me||be.width||0,Te=fe||be.dash||"";w.select(this).call(l.stroke,he||be.color).call(b.dashLine,Te,Ie)})},b.dashLine=function(Ee,Me,he){he=+he||0,Me=b.dashStyle(Me,he),Ee.style({"stroke-dasharray":Me,"stroke-width":he+"px"})},b.dashStyle=function(Ee,Me){Me=+Me||1;var he=Math.max(Me,3);return Ee==="solid"?Ee="":Ee==="dot"?Ee=he+"px,"+he+"px":Ee==="dash"?Ee=3*he+"px,"+3*he+"px":Ee==="longdash"?Ee=5*he+"px,"+5*he+"px":Ee==="dashdot"?Ee=3*he+"px,"+he+"px,"+he+"px,"+he+"px":Ee==="longdashdot"&&(Ee=5*he+"px,"+2*he+"px,"+he+"px,"+2*he+"px"),Ee},b.singleFillStyle=function(Ee,Me){var he=w.select(Ee.node());g(Ee,((he.data()[0]||[])[0]||{}).trace||{},Me)},b.fillGroupStyle=function(Ee,Me){Ee.style("stroke-width",0).each(function(he){var fe=w.select(this);he[0].trace&&g(fe,he[0].trace,Me)})};var f=e(90998);b.symbolNames=[],b.symbolFuncs=[],b.symbolBackOffs=[],b.symbolNeedLines={},b.symbolNoDot={},b.symbolNoFill={},b.symbolList=[],Object.keys(f).forEach(function(Ee){var Me=f[Ee],he=Me.n;b.symbolList.push(he,String(he),Ee,he+100,String(he+100),Ee+"-open"),b.symbolNames[he]=Ee,b.symbolFuncs[he]=Me.f,b.symbolBackOffs[he]=Me.backoff||0,Me.needLine&&(b.symbolNeedLines[he]=!0),Me.noDot?b.symbolNoDot[he]=!0:b.symbolList.push(he+200,String(he+200),Ee+"-dot",he+300,String(he+300),Ee+"-open-dot"),Me.noFill&&(b.symbolNoFill[he]=!0)});var v=b.symbolNames.length;function m(Ee,Me,he,fe){var ae=Ee%100;return b.symbolFuncs[ae](Me,he,fe)+(Ee>=200?"M0,0.5L0.5,0L0,-0.5L-0.5,0Z":"")}b.symbolNumber=function(Ee){if(_(Ee))Ee=+Ee;else if(typeof Ee=="string"){var Me=0;Ee.indexOf("-open")>0&&(Me=100,Ee=Ee.replace("-open","")),Ee.indexOf("-dot")>0&&(Me+=200,Ee=Ee.replace("-dot","")),(Ee=b.symbolNames.indexOf(Ee))>=0&&(Ee+=Me)}return Ee%100>=v||Ee>=400?0:Math.floor(Math.max(Ee,0))};var x={x1:1,x2:0,y1:0,y2:0},T={x1:0,x2:0,y1:1,y2:0},d=i("~f"),M={radial:{node:"radialGradient"},radialreversed:{node:"radialGradient",reversed:!0},horizontal:{node:"linearGradient",attrs:x},horizontalreversed:{node:"linearGradient",attrs:x,reversed:!0},vertical:{node:"linearGradient",attrs:T},verticalreversed:{node:"linearGradient",attrs:T,reversed:!0}};b.gradient=function(Ee,Me,he,fe,ae,be){for(var Ie=ae.length,Te=M[fe],Ne=new Array(Ie),qe=0;qe<Ie;qe++)Te.reversed?Ne[Ie-1-qe]=[d(100*(1-ae[qe][0])),ae[qe][1]]:Ne[qe]=[d(100*ae[qe][0]),ae[qe][1]];var ve=Me._fullLayout,Ce="g"+ve._uid+"-"+he,Ae=ve._defs.select(".gradients").selectAll("#"+Ce).data([fe+Ne.join(";")],k.identity);Ae.exit().remove(),Ae.enter().append(Te.node).each(function(){var ze=w.select(this);Te.attrs&&ze.attr(Te.attrs),ze.attr("id",Ce);var Ue=ze.selectAll("stop").data(Ne);Ue.exit().remove(),Ue.enter().append("stop"),Ue.each(function(Ve){var Ye=y(Ve[1]);w.select(this).attr({offset:Ve[0]+"%","stop-color":l.tinyRGB(Ye),"stop-opacity":Ye.getAlpha()})})}),Ee.style(be,te(Ce,Me)).style(be+"-opacity",null),Ee.classed("gradient_filled",!0)},b.pattern=function(Ee,Me,he,fe,ae,be,Ie,Te,Ne,qe,ve,Ce){var Ae=Me==="legend";Te&&(Ne==="overlay"?(qe=Te,ve=l.contrast(qe)):(qe=void 0,ve=Te));var ze,Ue,Ve,Ye,$e,rt,ht,nt,bt,wt=he._fullLayout,ut="p"+wt._uid+"-"+fe,lt={},Tt=y(ve),Et=l.tinyRGB(Tt),St=Ce*Tt.getAlpha();switch(ae){case"/":ze=be*Math.sqrt(2),Ue=be*Math.sqrt(2),rt="path",lt={d:Ve="M-"+ze/4+","+Ue/4+"l"+ze/2+",-"+Ue/2+"M0,"+Ue+"L"+ze+",0M"+ze/4*3+","+Ue/4*5+"l"+ze/2+",-"+Ue/2,opacity:St,stroke:Et,"stroke-width":(Ye=Ie*be)+"px"};break;case"\\":ze=be*Math.sqrt(2),Ue=be*Math.sqrt(2),rt="path",lt={d:Ve="M"+ze/4*3+",-"+Ue/4+"l"+ze/2+","+Ue/2+"M0,0L"+ze+","+Ue+"M-"+ze/4+","+Ue/4*3+"l"+ze/2+","+Ue/2,opacity:St,stroke:Et,"stroke-width":(Ye=Ie*be)+"px"};break;case"x":ze=be*Math.sqrt(2),Ue=be*Math.sqrt(2),Ve="M-"+ze/4+","+Ue/4+"l"+ze/2+",-"+Ue/2+"M0,"+Ue+"L"+ze+",0M"+ze/4*3+","+Ue/4*5+"l"+ze/2+",-"+Ue/2+"M"+ze/4*3+",-"+Ue/4+"l"+ze/2+","+Ue/2+"M0,0L"+ze+","+Ue+"M-"+ze/4+","+Ue/4*3+"l"+ze/2+","+Ue/2,Ye=be-be*Math.sqrt(1-Ie),rt="path",lt={d:Ve,opacity:St,stroke:Et,"stroke-width":Ye+"px"};break;case"|":rt="path",rt="path",lt={d:Ve="M"+(ze=be)/2+",0L"+ze/2+","+(Ue=be),opacity:St,stroke:Et,"stroke-width":(Ye=Ie*be)+"px"};break;case"-":rt="path",rt="path",lt={d:Ve="M0,"+(Ue=be)/2+"L"+(ze=be)+","+Ue/2,opacity:St,stroke:Et,"stroke-width":(Ye=Ie*be)+"px"};break;case"+":rt="path",Ve="M"+(ze=be)/2+",0L"+ze/2+","+(Ue=be)+"M0,"+Ue/2+"L"+ze+","+Ue/2,Ye=be-be*Math.sqrt(1-Ie),rt="path",lt={d:Ve,opacity:St,stroke:Et,"stroke-width":Ye+"px"};break;case".":ze=be,Ue=be,Ie<Math.PI/4?$e=Math.sqrt(Ie*be*be/Math.PI):(ht=Ie,nt=Math.PI/4,$e=(bt=be/2)+(be/Math.sqrt(2)-bt)*(ht-nt)/(1-nt)),rt="circle",lt={cx:ze/2,cy:Ue/2,r:$e,opacity:St,fill:Et}}var Ft=[ae||"noSh",qe||"noBg",ve||"noFg",be,Ie].join(";"),zt=wt._defs.select(".patterns").selectAll("#"+ut).data([Ft],k.identity);zt.exit().remove(),zt.enter().append("pattern").each(function(){var Je=w.select(this);if(Je.attr({id:ut,width:ze+"px",height:Ue+"px",patternUnits:"userSpaceOnUse",patternTransform:Ae?"scale(0.8)":""}),qe){var et=y(qe),Ze=l.tinyRGB(et),Qe=et.getAlpha(),st=Je.selectAll("rect").data([0]);st.exit().remove(),st.enter().append("rect").attr({width:ze+"px",height:Ue+"px",fill:Ze,"fill-opacity":Qe})}var ft=Je.selectAll(rt).data([0]);ft.exit().remove(),ft.enter().append(rt).attr(lt)}),Ee.style("fill",te(ut,he)).style("fill-opacity",null),Ee.classed("pattern_filled",!0)},b.initGradients=function(Ee){var Me=Ee._fullLayout;k.ensureSingle(Me._defs,"g","gradients").selectAll("linearGradient,radialGradient").remove(),w.select(Ee).selectAll(".gradient_filled").classed("gradient_filled",!1)},b.initPatterns=function(Ee){var Me=Ee._fullLayout;k.ensureSingle(Me._defs,"g","patterns").selectAll("pattern").remove(),w.select(Ee).selectAll(".pattern_filled").classed("pattern_filled",!1)},b.getPatternAttr=function(Ee,Me,he){return Ee&&k.isArrayOrTypedArray(Ee)?Me<Ee.length?Ee[Me]:he:Ee},b.pointStyle=function(Ee,Me,he,fe){if(Ee.size()){var ae=b.makePointStyleFns(Me);Ee.each(function(be){b.singlePointStyle(be,w.select(this),Me,ae,he,fe)})}},b.singlePointStyle=function(Ee,Me,he,fe,ae,be){var Ie=he.marker,Te=Ie.line;if(be&&be.i>=0&&Ee.i===void 0&&(Ee.i=be.i),Me.style("opacity",fe.selectedOpacityFn?fe.selectedOpacityFn(Ee):Ee.mo===void 0?Ie.opacity:Ee.mo),fe.ms2mrc){var Ne;Ne=Ee.ms==="various"||Ie.size==="various"?3:fe.ms2mrc(Ee.ms),Ee.mrc=Ne,fe.selectedSizeFn&&(Ne=Ee.mrc=fe.selectedSizeFn(Ee));var qe=b.symbolNumber(Ee.mx||Ie.symbol)||0;Ee.om=qe%200>=100;var ve=De(Ee,he),Ce=ee(Ee,he);Me.attr("d",m(qe,Ne,ve,Ce))}var Ae,ze,Ue,Ve=!1;if(Ee.so)Ue=Te.outlierwidth,ze=Te.outliercolor,Ae=Ie.outliercolor;else{var Ye=(Te||{}).width;Ue=(Ee.mlw+1||Ye+1||(Ee.trace?(Ee.trace.marker.line||{}).width:0)+1)-1||0,ze="mlc"in Ee?Ee.mlcc=fe.lineScale(Ee.mlc):k.isArrayOrTypedArray(Te.color)?l.defaultLine:Te.color,k.isArrayOrTypedArray(Ie.color)&&(Ae=l.defaultLine,Ve=!0),Ae="mc"in Ee?Ee.mcc=fe.markerScale(Ee.mc):Ie.color||Ie.colors||"rgba(0,0,0,0)",fe.selectedColorFn&&(Ae=fe.selectedColorFn(Ee))}if(Ee.om)Me.call(l.stroke,Ae).style({"stroke-width":(Ue||1)+"px",fill:"none"});else{Me.style("stroke-width",(Ee.isBlank?0:Ue)+"px");var $e=Ie.gradient,rt=Ee.mgt;rt?Ve=!0:rt=$e&&$e.type,k.isArrayOrTypedArray(rt)&&(rt=rt[0],M[rt]||(rt=0));var ht=Ie.pattern,nt=ht&&b.getPatternAttr(ht.shape,Ee.i,"");if(rt&&rt!=="none"){var bt=Ee.mgc;bt?Ve=!0:bt=$e.color;var wt=he.uid;Ve&&(wt+="-"+Ee.i),b.gradient(Me,ae,wt,rt,[[0,bt],[1,Ae]],"fill")}else if(nt){var ut=!1,lt=ht.fgcolor;!lt&&be&&be.color&&(lt=be.color,ut=!0);var Tt=b.getPatternAttr(lt,Ee.i,be&&be.color||null),Et=b.getPatternAttr(ht.bgcolor,Ee.i,null),St=ht.fgopacity,Ft=b.getPatternAttr(ht.size,Ee.i,8),zt=b.getPatternAttr(ht.solidity,Ee.i,.3);ut=ut||Ee.mcc||k.isArrayOrTypedArray(ht.shape)||k.isArrayOrTypedArray(ht.bgcolor)||k.isArrayOrTypedArray(ht.fgcolor)||k.isArrayOrTypedArray(ht.size)||k.isArrayOrTypedArray(ht.solidity);var Je=he.uid;ut&&(Je+="-"+Ee.i),b.pattern(Me,"point",ae,Je,nt,Ft,zt,Ee.mcc,ht.fillmode,Et,Tt,St)}else k.isArrayOrTypedArray(Ae)?l.fill(Me,Ae[Ee.i]):l.fill(Me,Ae);Ue&&l.stroke(Me,ze)}},b.makePointStyleFns=function(Ee){var Me={},he=Ee.marker;return Me.markerScale=b.tryColorscale(he,""),Me.lineScale=b.tryColorscale(he,"line"),h.traceIs(Ee,"symbols")&&(Me.ms2mrc=u.isBubble(Ee)?p(Ee):function(){return(he.size||6)/2}),Ee.selectedpoints&&k.extendFlat(Me,b.makeSelectedPointStyleFns(Ee)),Me},b.makeSelectedPointStyleFns=function(Ee){var Me={},he=Ee.selected||{},fe=Ee.unselected||{},ae=Ee.marker||{},be=he.marker||{},Ie=fe.marker||{},Te=ae.opacity,Ne=be.opacity,qe=Ie.opacity,ve=Ne!==void 0,Ce=qe!==void 0;(k.isArrayOrTypedArray(Te)||ve||Ce)&&(Me.selectedOpacityFn=function(nt){var bt=nt.mo===void 0?ae.opacity:nt.mo;return nt.selected?ve?Ne:bt:Ce?qe:s*bt});var Ae=ae.color,ze=be.color,Ue=Ie.color;(ze||Ue)&&(Me.selectedColorFn=function(nt){var bt=nt.mcc||Ae;return nt.selected?ze||bt:Ue||bt});var Ve=ae.size,Ye=be.size,$e=Ie.size,rt=Ye!==void 0,ht=$e!==void 0;return h.traceIs(Ee,"symbols")&&(rt||ht)&&(Me.selectedSizeFn=function(nt){var bt=nt.mrc||Ve/2;return nt.selected?rt?Ye/2:bt:ht?$e/2:bt}),Me},b.makeSelectedTextStyleFns=function(Ee){var Me={},he=Ee.selected||{},fe=Ee.unselected||{},ae=Ee.textfont||{},be=he.textfont||{},Ie=fe.textfont||{},Te=ae.color,Ne=be.color,qe=Ie.color;return Me.selectedTextColorFn=function(ve){var Ce=ve.tc||Te;return ve.selected?Ne||Ce:qe||(Ne?Ce:l.addOpacity(Ce,s))},Me},b.selectedPointStyle=function(Ee,Me){if(Ee.size()&&Me.selectedpoints){var he=b.makeSelectedPointStyleFns(Me),fe=Me.marker||{},ae=[];he.selectedOpacityFn&&ae.push(function(be,Ie){be.style("opacity",he.selectedOpacityFn(Ie))}),he.selectedColorFn&&ae.push(function(be,Ie){l.fill(be,he.selectedColorFn(Ie))}),he.selectedSizeFn&&ae.push(function(be,Ie){var Te=Ie.mx||fe.symbol||0,Ne=he.selectedSizeFn(Ie);be.attr("d",m(b.symbolNumber(Te),Ne,De(Ie,Me),ee(Ie,Me))),Ie.mrc2=Ne}),ae.length&&Ee.each(function(be){for(var Ie=w.select(this),Te=0;Te<ae.length;Te++)ae[Te](Ie,be)})}},b.tryColorscale=function(Ee,Me){var he=Me?k.nestedProperty(Ee,Me).get():Ee;if(he){var fe=he.color;if((he.colorscale||he._colorAx)&&k.isArrayOrTypedArray(fe))return t.makeColorScaleFuncFromTrace(he)}return k.identity};var A,C,P={start:1,end:-1,middle:0,bottom:1,top:-1};function O(Ee,Me,he,fe,ae){var be=w.select(Ee.node().parentNode),Ie=Me.indexOf("top")!==-1?"top":Me.indexOf("bottom")!==-1?"bottom":"middle",Te=Me.indexOf("left")!==-1?"end":Me.indexOf("right")!==-1?"start":"middle",Ne=fe?fe/.8+1:0,qe=(r.lineCount(Ee)-1)*a+1,ve=P[Te]*Ne,Ce=.75*he+P[Ie]*Ne+(P[Ie]-1)*qe*he/2;Ee.attr("text-anchor",Te),ae||be.attr("transform",o(ve,Ce))}function z(Ee,Me){var he=Ee.ts||Me.textfont.size;return _(he)&&he>0?he:0}function B(Ee,Me,he){return he&&(Ee=W(Ee)),Me?D(Ee[1]):Y(Ee[0])}function Y(Ee){var Me=w.round(Ee,2);return A=Me,Me}function D(Ee){var Me=w.round(Ee,2);return C=Me,Me}function G(Ee,Me,he,fe){var ae=Ee[0]-Me[0],be=Ee[1]-Me[1],Ie=he[0]-Me[0],Te=he[1]-Me[1],Ne=Math.pow(ae*ae+be*be,.25),qe=Math.pow(Ie*Ie+Te*Te,.25),ve=(qe*qe*ae-Ne*Ne*Ie)*fe,Ce=(qe*qe*be-Ne*Ne*Te)*fe,Ae=3*qe*(Ne+qe),ze=3*Ne*(Ne+qe);return[[Y(Me[0]+(Ae&&ve/Ae)),D(Me[1]+(Ae&&Ce/Ae))],[Y(Me[0]-(ze&&ve/ze)),D(Me[1]-(ze&&Ce/ze))]]}b.textPointStyle=function(Ee,Me,he){if(Ee.size()){var fe;if(Me.selectedpoints){var ae=b.makeSelectedTextStyleFns(Me);fe=ae.selectedTextColorFn}var be=Me.texttemplate,Ie=he._fullLayout;Ee.each(function(Te){var Ne=w.select(this),qe=be?k.extractOption(Te,Me,"txt","texttemplate"):k.extractOption(Te,Me,"tx","text");if(qe||qe===0){if(be){var ve=Me._module.formatLabels,Ce=ve?ve(Te,Me,Ie):{},Ae={};c(Ae,Me,Te.i);var ze=Me._meta||{};qe=k.texttemplateString(qe,Ce,Ie._d3locale,Ae,Te,ze)}var Ue=Te.tp||Me.textposition,Ve=z(Te,Me),Ye=fe?fe(Te):Te.tc||Me.textfont.color;Ne.call(b.font,Te.tf||Me.textfont.family,Ve,Ye).text(qe).call(r.convertToTspans,he).call(O,Ue,Ve,Te.mrc)}else Ne.remove()})}},b.selectedTextStyle=function(Ee,Me){if(Ee.size()&&Me.selectedpoints){var he=b.makeSelectedTextStyleFns(Me);Ee.each(function(fe){var ae=w.select(this),be=he.selectedTextColorFn(fe),Ie=fe.tp||Me.textposition,Te=z(fe,Me);l.fill(ae,be);var Ne=h.traceIs(Me,"bar-like");O(ae,Ie,Te,fe.mrc2||fe.mrc,Ne)})}},b.smoothopen=function(Ee,Me){if(Ee.length<3)return"M"+Ee.join("L");var he,fe="M"+Ee[0],ae=[];for(he=1;he<Ee.length-1;he++)ae.push(G(Ee[he-1],Ee[he],Ee[he+1],Me));for(fe+="Q"+ae[0][0]+" "+Ee[1],he=2;he<Ee.length-1;he++)fe+="C"+ae[he-2][1]+" "+ae[he-1][0]+" "+Ee[he];return fe+"Q"+ae[Ee.length-3][1]+" "+Ee[Ee.length-1]},b.smoothclosed=function(Ee,Me){if(Ee.length<3)return"M"+Ee.join("L")+"Z";var he,fe="M"+Ee[0],ae=Ee.length-1,be=[G(Ee[ae],Ee[0],Ee[1],Me)];for(he=1;he<ae;he++)be.push(G(Ee[he-1],Ee[he],Ee[he+1],Me));for(be.push(G(Ee[ae-1],Ee[ae],Ee[0],Me)),he=1;he<=ae;he++)fe+="C"+be[he-1][1]+" "+be[he][0]+" "+Ee[he];return fe+"C"+be[ae][1]+" "+be[0][0]+" "+Ee[0]+"Z"};var V={hv:function(Ee,Me,he){return"H"+Y(Me[0])+"V"+B(Me,1,he)},vh:function(Ee,Me,he){return"V"+D(Me[1])+"H"+B(Me,0,he)},hvh:function(Ee,Me,he){return"H"+Y((Ee[0]+Me[0])/2)+"V"+D(Me[1])+"H"+B(Me,0,he)},vhv:function(Ee,Me,he){return"V"+D((Ee[1]+Me[1])/2)+"H"+Y(Me[0])+"V"+B(Me,1,he)}},j=function(Ee,Me,he){return"L"+B(Me,0,he)+","+B(Me,1,he)};function W(Ee,Me){var he=Ee.backoff,fe=Ee.trace,ae=Ee.d,be=Ee.i;if(he&&fe&&fe.marker&&fe.marker.angle%360==0&&fe.line&&fe.line.shape!=="spline"){var Ie=k.isArrayOrTypedArray(he),Te=Ee,Ne=Me?Me[0]:A||0,qe=Me?Me[1]:C||0,ve=Te[0],Ce=Te[1],Ae=ve-Ne,ze=Ce-qe,Ue=Math.atan2(ze,Ae),Ve=Ie?he[be]:he;if(Ve==="auto"){var Ye=Te.i;fe.type==="scatter"&&Ye--;var $e=Te.marker,rt=$e.symbol;k.isArrayOrTypedArray(rt)&&(rt=rt[Ye]);var ht=$e.size;k.isArrayOrTypedArray(ht)&&(ht=ht[Ye]),Ve=$e?b.symbolBackOffs[b.symbolNumber(rt)]*ht:0,Ve+=b.getMarkerStandoff(ae[Ye],fe)||0}var nt=ve-Ve*Math.cos(Ue),bt=Ce-Ve*Math.sin(Ue);(nt<=ve&&nt>=Ne||nt>=ve&&nt<=Ne)&&(bt<=Ce&&bt>=qe||bt>=Ce&&bt<=qe)&&(Ee=[nt,bt])}return Ee}b.steps=function(Ee){var Me=V[Ee]||j;return function(he){for(var fe="M"+Y(he[0][0])+","+D(he[0][1]),ae=he.length,be=1;be<ae;be++)fe+=Me(he[be-1],he[be],be===ae-1);return fe}},b.applyBackoff=W,b.makeTester=function(){var Ee=k.ensureSingleById(w.select("body"),"svg","js-plotly-tester",function(he){he.attr(n.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),Me=k.ensureSingle(Ee,"path","js-reference-point",function(he){he.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});b.tester=Ee,b.testref=Me},b.savedBBoxes={};var Z=0;function ie(Ee){var Me=Ee.getAttribute("data-unformatted");if(Me!==null)return Me+Ee.getAttribute("data-math")+Ee.getAttribute("text-anchor")+Ee.getAttribute("style")}function te(Ee,Me){if(!Ee)return null;var he=Me._context,fe=he._exportedPlot?"":he._baseUrl||"";return fe?"url('"+fe+"#"+Ee+"')":"url(#"+Ee+")"}b.bBox=function(Ee,Me,he){var fe,ae,be;if(he||(he=ie(Ee)),he){if(fe=b.savedBBoxes[he])return k.extendFlat({},fe)}else if(Ee.childNodes.length===1){var Ie=Ee.childNodes[0];if(he=ie(Ie)){var Te=+Ie.getAttribute("x")||0,Ne=+Ie.getAttribute("y")||0,qe=Ie.getAttribute("transform");if(!qe){var ve=b.bBox(Ie,!1,he);return Te&&(ve.left+=Te,ve.right+=Te),Ne&&(ve.top+=Ne,ve.bottom+=Ne),ve}if(he+="~"+Te+"~"+Ne+"~"+qe,fe=b.savedBBoxes[he])return k.extendFlat({},fe)}}Me?ae=Ee:(be=b.tester.node(),ae=Ee.cloneNode(!0),be.appendChild(ae)),w.select(ae).attr("transform",null).call(r.positionText,0,0);var Ce=ae.getBoundingClientRect(),Ae=b.testref.node().getBoundingClientRect();Me||be.removeChild(ae);var ze={height:Ce.height,width:Ce.width,left:Ce.left-Ae.left,top:Ce.top-Ae.top,right:Ce.right-Ae.left,bottom:Ce.bottom-Ae.top};return Z>=1e4&&(b.savedBBoxes={},Z=0),he&&(b.savedBBoxes[he]=ze),Z++,k.extendFlat({},ze)},b.setClipUrl=function(Ee,Me,he){Ee.attr("clip-path",te(Me,he))},b.getTranslate=function(Ee){var Me=(Ee[Ee.attr?"attr":"getAttribute"]("transform")||"").replace(/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,function(he,fe,ae){return[fe,ae].join(" ")}).split(" ");return{x:+Me[0]||0,y:+Me[1]||0}},b.setTranslate=function(Ee,Me,he){var fe=Ee.attr?"attr":"getAttribute",ae=Ee.attr?"attr":"setAttribute",be=Ee[fe]("transform")||"";return Me=Me||0,he=he||0,be=be.replace(/(\btranslate\(.*?\);?)/,"").trim(),be=(be+=o(Me,he)).trim(),Ee[ae]("transform",be),be},b.getScale=function(Ee){var Me=(Ee[Ee.attr?"attr":"getAttribute"]("transform")||"").replace(/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,function(he,fe,ae){return[fe,ae].join(" ")}).split(" ");return{x:+Me[0]||1,y:+Me[1]||1}},b.setScale=function(Ee,Me,he){var fe=Ee.attr?"attr":"getAttribute",ae=Ee.attr?"attr":"setAttribute",be=Ee[fe]("transform")||"";return Me=Me||1,he=he||1,be=be.replace(/(\bscale\(.*?\);?)/,"").trim(),be=(be+="scale("+Me+","+he+")").trim(),Ee[ae]("transform",be),be};var J=/\s*sc.*/;b.setPointGroupScale=function(Ee,Me,he){if(Me=Me||1,he=he||1,Ee){var fe=Me===1&&he===1?"":"scale("+Me+","+he+")";Ee.each(function(){var ae=(this.getAttribute("transform")||"").replace(J,"");ae=(ae+=fe).trim(),this.setAttribute("transform",ae)})}};var X=/translate\([^)]*\)\s*$/;function ee(Ee,Me){var he;return Ee&&(he=Ee.mf),he===void 0&&(he=Me.marker&&Me.marker.standoff||0),Me._geo||Me._xA?he:-he}b.setTextPointsScale=function(Ee,Me,he){Ee&&Ee.each(function(){var fe,ae=w.select(this),be=ae.select("text");if(be.node()){var Ie=parseFloat(be.attr("x")||0),Te=parseFloat(be.attr("y")||0),Ne=(ae.attr("transform")||"").match(X);fe=Me===1&&he===1?[]:[o(Ie,Te),"scale("+Me+","+he+")",o(-Ie,-Te)],Ne&&fe.push(Ne),ae.attr("transform",fe.join(""))}})},b.getMarkerStandoff=ee;var re,oe,ue,ce,de,me,_e=Math.atan2,Se=Math.cos,we=Math.sin;function xe(Ee,Me){var he=Me[0],fe=Me[1];return[he*Se(Ee)-fe*we(Ee),he*we(Ee)+fe*Se(Ee)]}function De(Ee,Me){var he,fe,ae=Ee.ma;ae===void 0&&(ae=Me.marker.angle||0);var be=Me.marker.angleref;if(be==="previous"||be==="north"){if(Me._geo){var Ie=Me._geo.project(Ee.lonlat);he=Ie[0],fe=Ie[1]}else{var Te=Me._xA,Ne=Me._yA;if(!Te||!Ne)return 90;he=Te.c2p(Ee.x),fe=Ne.c2p(Ee.y)}if(Me._geo){var qe,ve=Ee.lonlat[0],Ce=Ee.lonlat[1],Ae=Me._geo.project([ve,Ce+1e-5]),ze=Me._geo.project([ve+1e-5,Ce]),Ue=_e(ze[1]-fe,ze[0]-he),Ve=_e(Ae[1]-fe,Ae[0]-he);if(be==="north")qe=ae/180*Math.PI;else if(be==="previous"){var Ye=ve/180*Math.PI,$e=Ce/180*Math.PI,rt=re/180*Math.PI,ht=oe/180*Math.PI,nt=rt-Ye,bt=Se(ht)*we(nt),wt=we(ht)*Se($e)-Se(ht)*we($e)*Se(nt);qe=-_e(bt,wt)-Math.PI,re=ve,oe=Ce}var ut=xe(Ue,[Se(qe),0]),lt=xe(Ve,[we(qe),0]);ae=_e(ut[1]+lt[1],ut[0]+lt[0])/Math.PI*180,be!=="previous"||me===Me.uid&&Ee.i===de+1||(ae=null)}if(be==="previous"&&!Me._geo)if(me===Me.uid&&Ee.i===de+1&&_(he)&&_(fe)){var Tt=he-ue,Et=fe-ce,St=Me.line&&Me.line.shape||"",Ft=St.slice(St.length-1);Ft==="h"&&(Et=0),Ft==="v"&&(Tt=0),ae+=_e(Et,Tt)/Math.PI*180+90}else ae=null}return ue=he,ce=fe,de=Ee.i,me=Me.uid,ae}b.getMarkerAngle=De},90998:function(R,E,e){var w,k,i,_,y=e(95616),h=e(39898).round,l="M0,0Z",t=Math.sqrt(2),o=Math.sqrt(3),r=Math.PI,n=Math.cos,a=Math.sin;function s(p){return p===null}function u(p,c,b){if(!(p&&p%360!=0||c))return b;if(i===p&&_===c&&w===b)return k;function g(B,Y){var D=n(B),G=a(B),V=Y[0],j=Y[1]+(c||0);return[V*D-j*G,V*G+j*D]}i=p,_=c,w=b;for(var f=p/180*r,v=0,m=0,x=y(b),T="",d=0;d<x.length;d++){var M=x[d],A=M[0],C=v,P=m;if(A==="M"||A==="L")v=+M[1],m=+M[2];else if(A==="m"||A==="l")v+=+M[1],m+=+M[2];else if(A==="H")v=+M[1];else if(A==="h")v+=+M[1];else if(A==="V")m=+M[1];else if(A==="v")m+=+M[1];else if(A==="A"){v=+M[1],m=+M[2];var O=g(f,[+M[6],+M[7]]);M[6]=O[0],M[7]=O[1],M[3]=+M[3]+p}A!=="H"&&A!=="V"||(A="L"),A!=="h"&&A!=="v"||(A="l"),A!=="m"&&A!=="l"||(v-=C,m-=P);var z=g(f,[v,m]);A!=="H"&&A!=="V"||(A="L"),A!=="M"&&A!=="L"&&A!=="m"&&A!=="l"||(M[1]=z[0],M[2]=z[1]),M[0]=A,T+=M[0]+M.slice(1).join(",")}return k=T,T}R.exports={circle:{n:0,f:function(p,c,b){if(s(c))return l;var g=h(p,2),f="M"+g+",0A"+g+","+g+" 0 1,1 0,-"+g+"A"+g+","+g+" 0 0,1 "+g+",0Z";return b?u(c,b,f):f}},square:{n:1,f:function(p,c,b){if(s(c))return l;var g=h(p,2);return u(c,b,"M"+g+","+g+"H-"+g+"V-"+g+"H"+g+"Z")}},diamond:{n:2,f:function(p,c,b){if(s(c))return l;var g=h(1.3*p,2);return u(c,b,"M"+g+",0L0,"+g+"L-"+g+",0L0,-"+g+"Z")}},cross:{n:3,f:function(p,c,b){if(s(c))return l;var g=h(.4*p,2),f=h(1.2*p,2);return u(c,b,"M"+f+","+g+"H"+g+"V"+f+"H-"+g+"V"+g+"H-"+f+"V-"+g+"H-"+g+"V-"+f+"H"+g+"V-"+g+"H"+f+"Z")}},x:{n:4,f:function(p,c,b){if(s(c))return l;var g=h(.8*p/t,2),f="l"+g+","+g,v="l"+g+",-"+g,m="l-"+g+",-"+g,x="l-"+g+","+g;return u(c,b,"M0,"+g+f+v+m+v+m+x+m+x+f+x+f+"Z")}},"triangle-up":{n:5,f:function(p,c,b){if(s(c))return l;var g=h(2*p/o,2);return u(c,b,"M-"+g+","+h(p/2,2)+"H"+g+"L0,-"+h(p,2)+"Z")}},"triangle-down":{n:6,f:function(p,c,b){if(s(c))return l;var g=h(2*p/o,2);return u(c,b,"M-"+g+",-"+h(p/2,2)+"H"+g+"L0,"+h(p,2)+"Z")}},"triangle-left":{n:7,f:function(p,c,b){if(s(c))return l;var g=h(2*p/o,2);return u(c,b,"M"+h(p/2,2)+",-"+g+"V"+g+"L-"+h(p,2)+",0Z")}},"triangle-right":{n:8,f:function(p,c,b){if(s(c))return l;var g=h(2*p/o,2);return u(c,b,"M-"+h(p/2,2)+",-"+g+"V"+g+"L"+h(p,2)+",0Z")}},"triangle-ne":{n:9,f:function(p,c,b){if(s(c))return l;var g=h(.6*p,2),f=h(1.2*p,2);return u(c,b,"M-"+f+",-"+g+"H"+g+"V"+f+"Z")}},"triangle-se":{n:10,f:function(p,c,b){if(s(c))return l;var g=h(.6*p,2),f=h(1.2*p,2);return u(c,b,"M"+g+",-"+f+"V"+g+"H-"+f+"Z")}},"triangle-sw":{n:11,f:function(p,c,b){if(s(c))return l;var g=h(.6*p,2),f=h(1.2*p,2);return u(c,b,"M"+f+","+g+"H-"+g+"V-"+f+"Z")}},"triangle-nw":{n:12,f:function(p,c,b){if(s(c))return l;var g=h(.6*p,2),f=h(1.2*p,2);return u(c,b,"M-"+g+","+f+"V-"+g+"H"+f+"Z")}},pentagon:{n:13,f:function(p,c,b){if(s(c))return l;var g=h(.951*p,2),f=h(.588*p,2),v=h(-p,2),m=h(-.309*p,2);return u(c,b,"M"+g+","+m+"L"+f+","+h(.809*p,2)+"H-"+f+"L-"+g+","+m+"L0,"+v+"Z")}},hexagon:{n:14,f:function(p,c,b){if(s(c))return l;var g=h(p,2),f=h(p/2,2),v=h(p*o/2,2);return u(c,b,"M"+v+",-"+f+"V"+f+"L0,"+g+"L-"+v+","+f+"V-"+f+"L0,-"+g+"Z")}},hexagon2:{n:15,f:function(p,c,b){if(s(c))return l;var g=h(p,2),f=h(p/2,2),v=h(p*o/2,2);return u(c,b,"M-"+f+","+v+"H"+f+"L"+g+",0L"+f+",-"+v+"H-"+f+"L-"+g+",0Z")}},octagon:{n:16,f:function(p,c,b){if(s(c))return l;var g=h(.924*p,2),f=h(.383*p,2);return u(c,b,"M-"+f+",-"+g+"H"+f+"L"+g+",-"+f+"V"+f+"L"+f+","+g+"H-"+f+"L-"+g+","+f+"V-"+f+"Z")}},star:{n:17,f:function(p,c,b){if(s(c))return l;var g=1.4*p,f=h(.225*g,2),v=h(.951*g,2),m=h(.363*g,2),x=h(.588*g,2),T=h(-g,2),d=h(-.309*g,2),M=h(.118*g,2),A=h(.809*g,2);return u(c,b,"M"+f+","+d+"H"+v+"L"+m+","+M+"L"+x+","+A+"L0,"+h(.382*g,2)+"L-"+x+","+A+"L-"+m+","+M+"L-"+v+","+d+"H-"+f+"L0,"+T+"Z")}},hexagram:{n:18,f:function(p,c,b){if(s(c))return l;var g=h(.66*p,2),f=h(.38*p,2),v=h(.76*p,2);return u(c,b,"M-"+v+",0l-"+f+",-"+g+"h"+v+"l"+f+",-"+g+"l"+f+","+g+"h"+v+"l-"+f+","+g+"l"+f+","+g+"h-"+v+"l-"+f+","+g+"l-"+f+",-"+g+"h-"+v+"Z")}},"star-triangle-up":{n:19,f:function(p,c,b){if(s(c))return l;var g=h(p*o*.8,2),f=h(.8*p,2),v=h(1.6*p,2),m=h(4*p,2),x="A "+m+","+m+" 0 0 1 ";return u(c,b,"M-"+g+","+f+x+g+","+f+x+"0,-"+v+x+"-"+g+","+f+"Z")}},"star-triangle-down":{n:20,f:function(p,c,b){if(s(c))return l;var g=h(p*o*.8,2),f=h(.8*p,2),v=h(1.6*p,2),m=h(4*p,2),x="A "+m+","+m+" 0 0 1 ";return u(c,b,"M"+g+",-"+f+x+"-"+g+",-"+f+x+"0,"+v+x+g+",-"+f+"Z")}},"star-square":{n:21,f:function(p,c,b){if(s(c))return l;var g=h(1.1*p,2),f=h(2*p,2),v="A "+f+","+f+" 0 0 1 ";return u(c,b,"M-"+g+",-"+g+v+"-"+g+","+g+v+g+","+g+v+g+",-"+g+v+"-"+g+",-"+g+"Z")}},"star-diamond":{n:22,f:function(p,c,b){if(s(c))return l;var g=h(1.4*p,2),f=h(1.9*p,2),v="A "+f+","+f+" 0 0 1 ";return u(c,b,"M-"+g+",0"+v+"0,"+g+v+g+",0"+v+"0,-"+g+v+"-"+g+",0Z")}},"diamond-tall":{n:23,f:function(p,c,b){if(s(c))return l;var g=h(.7*p,2),f=h(1.4*p,2);return u(c,b,"M0,"+f+"L"+g+",0L0,-"+f+"L-"+g+",0Z")}},"diamond-wide":{n:24,f:function(p,c,b){if(s(c))return l;var g=h(1.4*p,2),f=h(.7*p,2);return u(c,b,"M0,"+f+"L"+g+",0L0,-"+f+"L-"+g+",0Z")}},hourglass:{n:25,f:function(p,c,b){if(s(c))return l;var g=h(p,2);return u(c,b,"M"+g+","+g+"H-"+g+"L"+g+",-"+g+"H-"+g+"Z")},noDot:!0},bowtie:{n:26,f:function(p,c,b){if(s(c))return l;var g=h(p,2);return u(c,b,"M"+g+","+g+"V-"+g+"L-"+g+","+g+"V-"+g+"Z")},noDot:!0},"circle-cross":{n:27,f:function(p,c,b){if(s(c))return l;var g=h(p,2);return u(c,b,"M0,"+g+"V-"+g+"M"+g+",0H-"+g+"M"+g+",0A"+g+","+g+" 0 1,1 0,-"+g+"A"+g+","+g+" 0 0,1 "+g+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(p,c,b){if(s(c))return l;var g=h(p,2),f=h(p/t,2);return u(c,b,"M"+f+","+f+"L-"+f+",-"+f+"M"+f+",-"+f+"L-"+f+","+f+"M"+g+",0A"+g+","+g+" 0 1,1 0,-"+g+"A"+g+","+g+" 0 0,1 "+g+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(p,c,b){if(s(c))return l;var g=h(p,2);return u(c,b,"M0,"+g+"V-"+g+"M"+g+",0H-"+g+"M"+g+","+g+"H-"+g+"V-"+g+"H"+g+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(p,c,b){if(s(c))return l;var g=h(p,2);return u(c,b,"M"+g+","+g+"L-"+g+",-"+g+"M"+g+",-"+g+"L-"+g+","+g+"M"+g+","+g+"H-"+g+"V-"+g+"H"+g+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(p,c,b){if(s(c))return l;var g=h(1.3*p,2);return u(c,b,"M"+g+",0L0,"+g+"L-"+g+",0L0,-"+g+"ZM0,-"+g+"V"+g+"M-"+g+",0H"+g)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(p,c,b){if(s(c))return l;var g=h(1.3*p,2),f=h(.65*p,2);return u(c,b,"M"+g+",0L0,"+g+"L-"+g+",0L0,-"+g+"ZM-"+f+",-"+f+"L"+f+","+f+"M-"+f+","+f+"L"+f+",-"+f)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(p,c,b){if(s(c))return l;var g=h(1.4*p,2);return u(c,b,"M0,"+g+"V-"+g+"M"+g+",0H-"+g)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(p,c,b){if(s(c))return l;var g=h(p,2);return u(c,b,"M"+g+","+g+"L-"+g+",-"+g+"M"+g+",-"+g+"L-"+g+","+g)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(p,c,b){if(s(c))return l;var g=h(1.2*p,2),f=h(.85*p,2);return u(c,b,"M0,"+g+"V-"+g+"M"+g+",0H-"+g+"M"+f+","+f+"L-"+f+",-"+f+"M"+f+",-"+f+"L-"+f+","+f)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(p,c,b){if(s(c))return l;var g=h(p/2,2),f=h(p,2);return u(c,b,"M"+g+","+f+"V-"+f+"M"+(g-f)+",-"+f+"V"+f+"M"+f+","+g+"H-"+f+"M-"+f+","+(g-f)+"H"+f)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(p,c,b){if(s(c))return l;var g=h(1.2*p,2),f=h(1.6*p,2),v=h(.8*p,2);return u(c,b,"M-"+g+","+v+"L0,0M"+g+","+v+"L0,0M0,-"+f+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(p,c,b){if(s(c))return l;var g=h(1.2*p,2),f=h(1.6*p,2),v=h(.8*p,2);return u(c,b,"M-"+g+",-"+v+"L0,0M"+g+",-"+v+"L0,0M0,"+f+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(p,c,b){if(s(c))return l;var g=h(1.2*p,2),f=h(1.6*p,2),v=h(.8*p,2);return u(c,b,"M"+v+","+g+"L0,0M"+v+",-"+g+"L0,0M-"+f+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(p,c,b){if(s(c))return l;var g=h(1.2*p,2),f=h(1.6*p,2),v=h(.8*p,2);return u(c,b,"M-"+v+","+g+"L0,0M-"+v+",-"+g+"L0,0M"+f+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(p,c,b){if(s(c))return l;var g=h(1.4*p,2);return u(c,b,"M"+g+",0H-"+g)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(p,c,b){if(s(c))return l;var g=h(1.4*p,2);return u(c,b,"M0,"+g+"V-"+g)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(p,c,b){if(s(c))return l;var g=h(p,2);return u(c,b,"M"+g+",-"+g+"L-"+g+","+g)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(p,c,b){if(s(c))return l;var g=h(p,2);return u(c,b,"M"+g+","+g+"L-"+g+",-"+g)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(p,c,b){if(s(c))return l;var g=h(p,2);return u(c,b,"M0,0L-"+g+","+h(2*p,2)+"H"+g+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(p,c,b){if(s(c))return l;var g=h(p,2);return u(c,b,"M0,0L-"+g+",-"+h(2*p,2)+"H"+g+"Z")},noDot:!0},"arrow-left":{n:47,f:function(p,c,b){if(s(c))return l;var g=h(2*p,2),f=h(p,2);return u(c,b,"M0,0L"+g+",-"+f+"V"+f+"Z")},noDot:!0},"arrow-right":{n:48,f:function(p,c,b){if(s(c))return l;var g=h(2*p,2),f=h(p,2);return u(c,b,"M0,0L-"+g+",-"+f+"V"+f+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(p,c,b){if(s(c))return l;var g=h(p,2);return u(c,b,"M-"+g+",0H"+g+"M0,0L-"+g+","+h(2*p,2)+"H"+g+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(p,c,b){if(s(c))return l;var g=h(p,2);return u(c,b,"M-"+g+",0H"+g+"M0,0L-"+g+",-"+h(2*p,2)+"H"+g+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(p,c,b){if(s(c))return l;var g=h(2*p,2),f=h(p,2);return u(c,b,"M0,-"+f+"V"+f+"M0,0L"+g+",-"+f+"V"+f+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(p,c,b){if(s(c))return l;var g=h(2*p,2),f=h(p,2);return u(c,b,"M0,-"+f+"V"+f+"M0,0L-"+g+",-"+f+"V"+f+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(p,c,b){if(s(c))return l;var g=r/2.5,f=2*p*n(g),v=2*p*a(g);return u(c,b,"M0,0L"+-f+","+v+"L"+f+","+v+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(p,c,b){if(s(c))return l;var g=r/4,f=2*p*n(g),v=2*p*a(g);return u(c,b,"M0,0L"+-f+","+v+"A "+2*p+","+2*p+" 0 0 1 "+f+","+v+"Z")},backoff:.4,noDot:!0}}},25673:function(R){R.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},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"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc",_deprecated:{opacity:{valType:"number",editType:"style"}}}},84532:function(R,E,e){var w=e(92770),k=e(73972),i=e(89298),_=e(71828),y=e(45827);function h(l,t,o,r){var n=t["error_"+r]||{},a=[];if(n.visible&&["linear","log"].indexOf(o.type)!==-1){for(var s=y(n),u=0;u<l.length;u++){var p=l[u],c=p.i;if(c===void 0)c=u;else if(c===null)continue;var b=p[r];if(w(o.c2l(b))){var g=s(b,c);if(w(g[0])&&w(g[1])){var f=p[r+"s"]=b-g[0],v=p[r+"h"]=b+g[1];a.push(f,v)}}}var m=o._id,x=t._extremes[m],T=i.findExtremes(o,a,_.extendFlat({tozero:x.opts.tozero},{padded:!0}));x.min=x.min.concat(T.min),x.max=x.max.concat(T.max)}}R.exports=function(l){for(var t=l.calcdata,o=0;o<t.length;o++){var r=t[o],n=r[0].trace;if(n.visible===!0&&k.traceIs(n,"errorBarsOK")){var a=i.getFromId(l,n.xaxis),s=i.getFromId(l,n.yaxis);h(r,n,a,"x"),h(r,n,s,"y")}}}},45827:function(R){function E(e,w){return e==="percent"?function(k){return Math.abs(k*w/100)}:e==="constant"?function(){return Math.abs(w)}:e==="sqrt"?function(k){return Math.sqrt(Math.abs(k))}:void 0}R.exports=function(e){var w=e.type,k=e.symmetric;if(w==="data"){var i=e.array||[];if(k)return function(l,t){var o=+i[t];return[o,o]};var _=e.arrayminus||[];return function(l,t){var o=+i[t],r=+_[t];return isNaN(o)&&isNaN(r)?[NaN,NaN]:[r||0,o||0]}}var y=E(w,e.value),h=E(w,e.valueminus);return k||e.valueminus===void 0?function(l){var t=y(l);return[t,t]}:function(l){return[h(l),y(l)]}}},97587:function(R,E,e){var w=e(92770),k=e(73972),i=e(71828),_=e(44467),y=e(25673);R.exports=function(h,l,t,o){var r="error_"+o.axis,n=_.newContainer(l,r),a=h[r]||{};function s(b,g){return i.coerce(a,n,y,b,g)}if(s("visible",a.array!==void 0||a.value!==void 0||a.type==="sqrt")!==!1){var u=s("type","array"in a?"data":"percent"),p=!0;u!=="sqrt"&&(p=s("symmetric",!((u==="data"?"arrayminus":"valueminus")in a))),u==="data"?(s("array"),s("traceref"),p||(s("arrayminus"),s("tracerefminus"))):u!=="percent"&&u!=="constant"||(s("value"),p||s("valueminus"));var c="copy_"+o.inherit+"style";o.inherit&&(l["error_"+o.inherit]||{}).visible&&s(c,!(a.color||w(a.thickness)||w(a.width))),o.inherit&&n[c]||(s("color",t),s("thickness"),s("width",k.traceIs(l,"gl3d")?0:4))}}},37369:function(R,E,e){var w=e(71828),k=e(30962).overrideAll,i=e(25673),_={error_x:w.extendFlat({},i),error_y:w.extendFlat({},i)};delete _.error_x.copy_zstyle,delete _.error_y.copy_zstyle,delete _.error_y.copy_ystyle;var y={error_x:w.extendFlat({},i),error_y:w.extendFlat({},i),error_z:w.extendFlat({},i)};delete y.error_x.copy_ystyle,delete y.error_y.copy_ystyle,delete y.error_z.copy_ystyle,delete y.error_z.copy_zstyle,R.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:_,bar:_,histogram:_,scatter3d:k(y,"calc","nested"),scattergl:k(_,"calc","nested")}},supplyDefaults:e(97587),calc:e(84532),makeComputeError:e(45827),plot:e(19398),style:e(62662),hoverInfo:function(h,l,t){(l.error_y||{}).visible&&(t.yerr=h.yh-h.y,l.error_y.symmetric||(t.yerrneg=h.y-h.ys)),(l.error_x||{}).visible&&(t.xerr=h.xh-h.x,l.error_x.symmetric||(t.xerrneg=h.x-h.xs))}}},19398:function(R,E,e){var w=e(39898),k=e(92770),i=e(91424),_=e(34098);R.exports=function(y,h,l,t){var o=l.xaxis,r=l.yaxis,n=t&&t.duration>0,a=y._context.staticPlot;h.each(function(s){var u,p=s[0].trace,c=p.error_x||{},b=p.error_y||{};p.ids&&(u=function(m){return m.id});var g=_.hasMarkers(p)&&p.marker.maxdisplayed>0;b.visible||c.visible||(s=[]);var f=w.select(this).selectAll("g.errorbar").data(s,u);if(f.exit().remove(),s.length){c.visible||f.selectAll("path.xerror").remove(),b.visible||f.selectAll("path.yerror").remove(),f.style("opacity",1);var v=f.enter().append("g").classed("errorbar",!0);n&&v.style("opacity",0).transition().duration(t.duration).style("opacity",1),i.setClipUrl(f,l.layerClipId,y),f.each(function(m){var x=w.select(this),T=function(O,z,B){var Y={x:z.c2p(O.x),y:B.c2p(O.y)};return O.yh!==void 0&&(Y.yh=B.c2p(O.yh),Y.ys=B.c2p(O.ys),k(Y.ys)||(Y.noYS=!0,Y.ys=B.c2p(O.ys,!0))),O.xh!==void 0&&(Y.xh=z.c2p(O.xh),Y.xs=z.c2p(O.xs),k(Y.xs)||(Y.noXS=!0,Y.xs=z.c2p(O.xs,!0))),Y}(m,o,r);if(!g||m.vis){var d,M=x.select("path.yerror");if(b.visible&&k(T.x)&&k(T.yh)&&k(T.ys)){var A=b.width;d="M"+(T.x-A)+","+T.yh+"h"+2*A+"m-"+A+",0V"+T.ys,T.noYS||(d+="m-"+A+",0h"+2*A),M.size()?n&&(M=M.transition().duration(t.duration).ease(t.easing)):M=x.append("path").style("vector-effect",a?"none":"non-scaling-stroke").classed("yerror",!0),M.attr("d",d)}else M.remove();var C=x.select("path.xerror");if(c.visible&&k(T.y)&&k(T.xh)&&k(T.xs)){var P=(c.copy_ystyle?b:c).width;d="M"+T.xh+","+(T.y-P)+"v"+2*P+"m0,-"+P+"H"+T.xs,T.noXS||(d+="m0,-"+P+"v"+2*P),C.size()?n&&(C=C.transition().duration(t.duration).ease(t.easing)):C=x.append("path").style("vector-effect",a?"none":"non-scaling-stroke").classed("xerror",!0),C.attr("d",d)}else C.remove()}})}})}},62662:function(R,E,e){var w=e(39898),k=e(7901);R.exports=function(i){i.each(function(_){var y=_[0].trace,h=y.error_y||{},l=y.error_x||{},t=w.select(this);t.selectAll("path.yerror").style("stroke-width",h.thickness+"px").call(k.stroke,h.color),l.copy_ystyle&&(l=h),t.selectAll("path.xerror").style("stroke-width",l.thickness+"px").call(k.stroke,l.color)})}},77914:function(R,E,e){var w=e(41940),k=e(528).hoverlabel,i=e(1426).extendFlat;R.exports={hoverlabel:{bgcolor:i({},k.bgcolor,{arrayOk:!0}),bordercolor:i({},k.bordercolor,{arrayOk:!0}),font:w({arrayOk:!0,editType:"none"}),align:i({},k.align,{arrayOk:!0}),namelength:i({},k.namelength,{arrayOk:!0}),editType:"none"}}},30732:function(R,E,e){var w=e(71828),k=e(73972);function i(_,y,h,l){l=l||w.identity,Array.isArray(_)&&(y[0][h]=l(_))}R.exports=function(_){var y=_.calcdata,h=_._fullLayout;function l(a){return function(s){return w.coerceHoverinfo({hoverinfo:s},{_module:a._module},h)}}for(var t=0;t<y.length;t++){var o=y[t],r=o[0].trace;if(!k.traceIs(r,"pie-like")){var n=k.traceIs(r,"2dMap")?i:w.fillArray;n(r.hoverinfo,o,"hi",l(r)),r.hovertemplate&&n(r.hovertemplate,o,"ht"),r.hoverlabel&&(n(r.hoverlabel.bgcolor,o,"hbg"),n(r.hoverlabel.bordercolor,o,"hbc"),n(r.hoverlabel.font.size,o,"hts"),n(r.hoverlabel.font.color,o,"htc"),n(r.hoverlabel.font.family,o,"htf"),n(r.hoverlabel.namelength,o,"hnl"),n(r.hoverlabel.align,o,"hta"))}}}},75914:function(R,E,e){var w=e(73972),k=e(88335).hover;R.exports=function(i,_,y){var h=w.getComponentMethod("annotations","onClick")(i,i._hoverdata);function l(){i.emit("plotly_click",{points:i._hoverdata,event:_})}y!==void 0&&k(i,_,y,!0),i._hoverdata&&_&&_.target&&(h&&h.then?h.then(l):l(),_.stopImmediatePropagation&&_.stopImmediatePropagation())}},26675:function(R){R.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}},54268:function(R,E,e){var w=e(71828),k=e(77914),i=e(38048);R.exports=function(_,y,h,l){var t=w.extendFlat({},l.hoverlabel);y.hovertemplate&&(t.namelength=-1),i(_,y,function(o,r){return w.coerce(_,y,k,o,r)},t)}},23469:function(R,E,e){var w=e(71828);E.getSubplot=function(l){return l.subplot||l.xaxis+l.yaxis||l.geo},E.isTraceInSubplots=function(l,t){if(l.type==="splom"){for(var o=l.xaxes||[],r=l.yaxes||[],n=0;n<o.length;n++)for(var a=0;a<r.length;a++)if(t.indexOf(o[n]+r[a])!==-1)return!0;return!1}return t.indexOf(E.getSubplot(l))!==-1},E.flat=function(l,t){for(var o=new Array(l.length),r=0;r<l.length;r++)o[r]=t;return o},E.p2c=function(l,t){for(var o=new Array(l.length),r=0;r<l.length;r++)o[r]=l[r].p2c(t);return o},E.getDistanceFunction=function(l,t,o,r){return l==="closest"?r||E.quadrature(t,o):l.charAt(0)==="x"?t:o},E.getClosest=function(l,t,o){if(o.index!==!1)o.index>=0&&o.index<l.length?o.distance=0:o.index=!1;else for(var r=0;r<l.length;r++){var n=t(l[r]);n<=o.distance&&(o.index=r,o.distance=n)}return o},E.inbox=function(l,t,o){return l*t<0||l===0?o:1/0},E.quadrature=function(l,t){return function(o){var r=l(o),n=t(o);return Math.sqrt(r*r+n*n)}},E.makeEventData=function(l,t,o){var r="index"in l?l.index:l.pointNumber,n={data:t._input,fullData:t,curveNumber:t.index,pointNumber:r};if(t._indexToPoints){var a=t._indexToPoints[r];a.length===1?n.pointIndex=a[0]:n.pointIndices=a}else n.pointIndex=r;return t._module.eventData?n=t._module.eventData(n,l,t,o,r):("xVal"in l?n.x=l.xVal:"x"in l&&(n.x=l.x),"yVal"in l?n.y=l.yVal:"y"in l&&(n.y=l.y),l.xa&&(n.xaxis=l.xa),l.ya&&(n.yaxis=l.ya),l.zLabelVal!==void 0&&(n.z=l.zLabelVal)),E.appendArrayPointValue(n,t,r),n},E.appendArrayPointValue=function(l,t,o){var r=t._arrayAttrs;if(r)for(var n=0;n<r.length;n++){var a=r[n],s=i(a);if(l[s]===void 0){var u=_(w.nestedProperty(t,a).get(),o);u!==void 0&&(l[s]=u)}}},E.appendArrayMultiPointValues=function(l,t,o){var r=t._arrayAttrs;if(r)for(var n=0;n<r.length;n++){var a=r[n],s=i(a);if(l[s]===void 0){for(var u=w.nestedProperty(t,a).get(),p=new Array(o.length),c=0;c<o.length;c++)p[c]=_(u,o[c]);l[s]=p}}};var k={ids:"id",locations:"location",labels:"label",values:"value","marker.colors":"color",parents:"parent"};function i(l){return k[l]||l}function _(l,t){return Array.isArray(t)?Array.isArray(l)&&Array.isArray(l[t[0]])?l[t[0]][t[1]]:void 0:l[t]}var y={x:!0,y:!0},h={"x unified":!0,"y unified":!0};E.isUnifiedHover=function(l){return typeof l=="string"&&!!h[l]},E.isXYhover=function(l){return typeof l=="string"&&!!y[l]}},88335:function(R,E,e){var w=e(39898),k=e(92770),i=e(84267),_=e(71828),y=_.strTranslate,h=_.strRotate,l=e(11086),t=e(63893),o=e(39918),r=e(91424),n=e(7901),a=e(28569),s=e(89298),u=e(73972),p=e(23469),c=e(26675),b=e(99017),g=e(43969),f=c.YANGLE,v=Math.PI*f/180,m=1/Math.sin(v),x=Math.cos(v),T=Math.sin(v),d=c.HOVERARROWSIZE,M=c.HOVERTEXTPAD,A={box:!0,ohlc:!0,violin:!0,candlestick:!0},C={scatter:!0,scattergl:!0,splom:!0};function P(X){return[X.trace.index,X.index,X.x0,X.y0,X.name,X.attr,X.xa?X.xa._id:"",X.ya?X.ya._id:""].join(",")}E.hover=function(X,ee,re,oe){X=_.getGraphDiv(X);var ue=ee.target;_.throttle(X._fullLayout._uid+c.HOVERID,c.HOVERMINTIME,function(){(function(ce,de,me,_e,Se){me||(me="xy");var we=Array.isArray(me)?me:[me],xe=ce._fullLayout,De=xe._plots||[],Ee=De[me],Me=xe._has("cartesian");if(Ee){var he=Ee.overlays.map(function(Ht){return Ht.id});we=we.concat(he)}for(var fe=we.length,ae=new Array(fe),be=new Array(fe),Ie=!1,Te=0;Te<fe;Te++){var Ne=we[Te];if(De[Ne])Ie=!0,ae[Te]=De[Ne].xaxis,be[Te]=De[Ne].yaxis;else{if(!xe[Ne]||!xe[Ne]._subplot)return void _.warn("Unrecognized subplot: "+Ne);var qe=xe[Ne]._subplot;ae[Te]=qe.xaxis,be[Te]=qe.yaxis}}var ve=de.hovermode||xe.hovermode;if(ve&&!Ie&&(ve="closest"),["x","y","closest","x unified","y unified"].indexOf(ve)===-1||!ce.calcdata||ce.querySelector(".zoombox")||ce._dragging)return a.unhoverRaw(ce,de);var Ce=xe.hoverdistance;Ce===-1&&(Ce=1/0);var Ae=xe.spikedistance;Ae===-1&&(Ae=1/0);var ze,Ue,Ve,Ye,$e,rt,ht,nt,bt,wt,ut,lt,Tt,Et=[],St=[],Ft={hLinePoint:null,vLinePoint:null},zt=!1;if(Array.isArray(de))for(ve="array",Ve=0;Ve<de.length;Ve++)($e=ce.calcdata[de[Ve].curveNumber||0])&&(rt=$e[0].trace,$e[0].trace.hoverinfo!=="skip"&&(St.push($e),rt.orientation==="h"&&(zt=!0)));else{for(Ye=0;Ye<ce.calcdata.length;Ye++)$e=ce.calcdata[Ye],(rt=$e[0].trace).hoverinfo!=="skip"&&p.isTraceInSubplots(rt,we)&&(St.push($e),rt.orientation==="h"&&(zt=!0));var Je,et;if(Se){if(l.triggerHandler(ce,"plotly_beforehover",de)===!1)return;var Ze=Se.getBoundingClientRect();Je=de.clientX-Ze.left,et=de.clientY-Ze.top,xe._calcInverseTransform(ce);var Qe=_.apply3DTransform(xe._invTransform)(Je,et);if(Je=Qe[0],et=Qe[1],Je<0||Je>ae[0]._length||et<0||et>be[0]._length)return a.unhoverRaw(ce,de)}else Je="xpx"in de?de.xpx:ae[0]._length/2,et="ypx"in de?de.ypx:be[0]._length/2;if(de.pointerX=Je+ae[0]._offset,de.pointerY=et+be[0]._offset,ze="xval"in de?p.flat(we,de.xval):p.p2c(ae,Je),Ue="yval"in de?p.flat(we,de.yval):p.p2c(be,et),!k(ze[0])||!k(Ue[0]))return _.warn("Fx.hover failed",de,ce),a.unhoverRaw(ce,de)}var st=1/0;function ft(Ht,sn){for(Ye=0;Ye<St.length;Ye++)if(($e=St[Ye])&&$e[0]&&$e[0].trace&&(rt=$e[0].trace).visible===!0&&rt._length!==0&&["carpet","contourcarpet"].indexOf(rt._module.name)===-1){if(rt.type==="splom"?ht=we[nt=0]:(ht=p.getSubplot(rt),nt=we.indexOf(ht)),bt=ve,p.isUnifiedHover(bt)&&(bt=bt.charAt(0)),lt={cd:$e,trace:rt,xa:ae[nt],ya:be[nt],maxHoverDistance:Ce,maxSpikeDistance:Ae,index:!1,distance:Math.min(st,Ce),spikeDistance:1/0,xSpike:void 0,ySpike:void 0,color:n.defaultLine,name:rt.name,x0:void 0,x1:void 0,y0:void 0,y1:void 0,xLabelVal:void 0,yLabelVal:void 0,zLabelVal:void 0,text:void 0},xe[ht]&&(lt.subplot=xe[ht]._subplot),xe._splomScenes&&xe._splomScenes[rt.uid]&&(lt.scene=xe._splomScenes[rt.uid]),Tt=Et.length,bt==="array"){var gn=de[Ye];"pointNumber"in gn?(lt.index=gn.pointNumber,bt="closest"):(bt="","xval"in gn&&(wt=gn.xval,bt="x"),"yval"in gn&&(ut=gn.yval,bt=bt?"closest":"y"))}else Ht!==void 0&&sn!==void 0?(wt=Ht,ut=sn):(wt=ze[nt],ut=Ue[nt]);if(Ce!==0)if(rt._module&&rt._module.hoverPoints){var bn=rt._module.hoverPoints(lt,wt,ut,bt,{finiteRange:!0,hoverLayer:xe._hoverlayer});if(bn)for(var Cn,Yn=0;Yn<bn.length;Yn++)Cn=bn[Yn],k(Cn.x0)&&k(Cn.y0)&&Et.push(G(Cn,ve))}else _.log("Unrecognized trace type in hover:",rt);if(ve==="closest"&&Et.length>Tt&&(Et.splice(0,Tt),st=Et[0].distance),Me&&Ae!==0&&Et.length===0){lt.distance=Ae,lt.index=!1;var Nn=rt._module.hoverPoints(lt,wt,ut,"closest",{hoverLayer:xe._hoverlayer});if(Nn&&(Nn=Nn.filter(function($t){return $t.spikeDistance<=Ae})),Nn&&Nn.length){var jn,rr=Nn.filter(function($t){return $t.xa.showspikes&&$t.xa.spikesnap!=="hovered data"});if(rr.length){var Wt=rr[0];k(Wt.x0)&&k(Wt.y0)&&(jn=je(Wt),(!Ft.vLinePoint||Ft.vLinePoint.spikeDistance>jn.spikeDistance)&&(Ft.vLinePoint=jn))}var An=Nn.filter(function($t){return $t.ya.showspikes&&$t.ya.spikesnap!=="hovered data"});if(An.length){var Lt=An[0];k(Lt.x0)&&k(Lt.y0)&&(jn=je(Lt),(!Ft.hLinePoint||Ft.hLinePoint.spikeDistance>jn.spikeDistance)&&(Ft.hLinePoint=jn))}}}}}function Be(Ht,sn,gn){for(var bn,Cn=null,Yn=1/0,Nn=0;Nn<Ht.length;Nn++)bn=Ht[Nn].spikeDistance,gn&&Nn===0&&(bn=-1/0),bn<=Yn&&bn<=sn&&(Cn=Ht[Nn],Yn=bn);return Cn}function je(Ht){return Ht?{xa:Ht.xa,ya:Ht.ya,x:Ht.xSpike!==void 0?Ht.xSpike:(Ht.x0+Ht.x1)/2,y:Ht.ySpike!==void 0?Ht.ySpike:(Ht.y0+Ht.y1)/2,distance:Ht.distance,spikeDistance:Ht.spikeDistance,curveNumber:Ht.trace.index,color:Ht.color,pointNumber:Ht.index}:null}ft();var at={fullLayout:xe,container:xe._hoverlayer,event:de},ot=ce._spikepoints,xt={vLinePoint:Ft.vLinePoint,hLinePoint:Ft.hLinePoint};ce._spikepoints=xt;var yt=function(){Et.sort(function(Ht,sn){return Ht.distance-sn.distance}),Et=function(Ht,sn){for(var gn=sn.charAt(0),bn=[],Cn=[],Yn=[],Nn=0;Nn<Ht.length;Nn++){var jn=Ht[Nn];u.traceIs(jn.trace,"bar-like")||u.traceIs(jn.trace,"box-violin")?Yn.push(jn):jn.trace[gn+"period"]?Cn.push(jn):bn.push(jn)}return bn.concat(Cn).concat(Yn)}(Et,ve)};yt();var _t=ve.charAt(0),gt=(_t==="x"||_t==="y")&&Et[0]&&C[Et[0].trace.type];if(Me&&Ae!==0&&Et.length!==0){var Ct=Be(Et.filter(function(Ht){return Ht.ya.showspikes}),Ae,gt);Ft.hLinePoint=je(Ct);var dt=Be(Et.filter(function(Ht){return Ht.xa.showspikes}),Ae,gt);Ft.vLinePoint=je(dt)}if(Et.length===0){var vt=a.unhoverRaw(ce,de);return!Me||Ft.hLinePoint===null&&Ft.vLinePoint===null||j(ot)&&V(ce,Ft,at),vt}if(Me&&j(ot)&&V(ce,Ft,at),p.isXYhover(bt)&&Et[0].length!==0&&Et[0].trace.type!=="splom"){var At=Et[0],Bt=(Et=A[At.trace.type]?Et.filter(function(Ht){return Ht.trace.index===At.trace.index}):[At]).length;ft(Z("x",At,xe),Z("y",At,xe));var jt,Ut=[],tn={},Xt=0,Qt=function(Ht){var sn=A[Ht.trace.type]?P(Ht):Ht.trace.index;if(tn[sn]){var gn=tn[sn]-1,bn=Ut[gn];gn>0&&Math.abs(Ht.distance)<Math.abs(bn.distance)&&(Ut[gn]=Ht)}else Xt++,tn[sn]=Xt,Ut.push(Ht)};for(jt=0;jt<Bt;jt++)Qt(Et[jt]);for(jt=Et.length-1;jt>Bt-1;jt--)Qt(Et[jt]);Et=Ut,yt()}var Gt=ce._hoverdata,vn=[],Tn=ie(ce),dn=te(ce);for(Ve=0;Ve<Et.length;Ve++){var Yt=Et[Ve],ln=p.makeEventData(Yt,Yt.trace,Yt.cd);if(Yt.hovertemplate!==!1){var nn=!1;Yt.cd[Yt.index]&&Yt.cd[Yt.index].ht&&(nn=Yt.cd[Yt.index].ht),Yt.hovertemplate=nn||Yt.trace.hovertemplate||!1}if(Yt.xa&&Yt.ya){var fn=Yt.x0+Yt.xa._offset,mn=Yt.x1+Yt.xa._offset,xn=Yt.y0+Yt.ya._offset,Pn=Yt.y1+Yt.ya._offset,Dn=Math.min(fn,mn),En=Math.max(fn,mn),Fn=Math.min(xn,Pn),er=Math.max(xn,Pn);ln.bbox={x0:Dn+dn,x1:En+dn,y0:Fn+Tn,y1:er+Tn}}Yt.eventData=[ln],vn.push(ln)}ce._hoverdata=vn;var ir=ve==="y"&&(St.length>1||Et.length>1)||ve==="closest"&&zt&&Et.length>1,fr=n.combine(xe.plot_bgcolor||n.background,xe.paper_bgcolor),ar=z(Et,{gd:ce,hovermode:ve,rotateLabels:ir,bgColor:fr,container:xe._hoverlayer,outerContainer:xe._paper.node(),commonLabelOpts:xe.hoverlabel,hoverdistance:xe.hoverdistance}),Kn=ar.hoverLabels;if(p.isUnifiedHover(ve)||(function(Ht,sn,gn,bn){var Cn,Yn,Nn,jn,rr,Wt,An,Lt=sn?"xa":"ya",$t=sn?"ya":"xa",rn=0,wn=1,kn=Ht.size(),Ln=new Array(kn),hn=0,Jt=bn.minX,en=bn.maxX,cn=bn.minY,pn=bn.maxY,On=function(vr){return vr*gn._invScaleX},Rn=function(vr){return vr*gn._invScaleY};function Wn(vr){var Er=vr[0],Jn=vr[vr.length-1];if(Yn=Er.pmin-Er.pos-Er.dp+Er.size,Nn=Jn.pos+Jn.dp+Jn.size-Er.pmax,Yn>.01){for(rr=vr.length-1;rr>=0;rr--)vr[rr].dp+=Yn;Cn=!1}if(!(Nn<.01)){if(Yn<-.01){for(rr=vr.length-1;rr>=0;rr--)vr[rr].dp-=Nn;Cn=!1}if(Cn){var br=0;for(jn=0;jn<vr.length;jn++)(Wt=vr[jn]).pos+Wt.dp+Wt.size>Er.pmax&&br++;for(jn=vr.length-1;jn>=0&&!(br<=0);jn--)(Wt=vr[jn]).pos>Er.pmax-1&&(Wt.del=!0,br--);for(jn=0;jn<vr.length&&!(br<=0);jn++)if((Wt=vr[jn]).pos<Er.pmin+1)for(Wt.del=!0,br--,Nn=2*Wt.size,rr=vr.length-1;rr>=0;rr--)vr[rr].dp-=Nn;for(jn=vr.length-1;jn>=0&&!(br<=0);jn--)(Wt=vr[jn]).pos+Wt.dp+Wt.size>Er.pmax&&(Wt.del=!0,br--)}}}for(Ht.each(function(vr){var Er=vr[Lt],Jn=vr[$t],br=Er._id.charAt(0)==="x",zr=Er.range;hn===0&&zr&&zr[0]>zr[1]!==br&&(wn=-1);var ii=0,xi=br?gn.width:gn.height;if(gn.hovermode==="x"||gn.hovermode==="y"){var vi,Ai,ci=Y(vr,sn),zi=vr.anchor,Do=zi==="end"?-1:1;if(zi==="middle")Ai=(vi=vr.crossPos+(br?Rn(ci.y-vr.by/2):On(vr.bx/2+vr.tx2width/2)))+(br?Rn(vr.by):On(vr.bx));else if(br)Ai=(vi=vr.crossPos+Rn(d+ci.y)-Rn(vr.by/2-d))+Rn(vr.by);else{var Ha=On(Do*d+ci.x),Ko=Ha+On(Do*vr.bx);vi=vr.crossPos+Math.min(Ha,Ko),Ai=vr.crossPos+Math.max(Ha,Ko)}br?cn!==void 0&&pn!==void 0&&Math.min(Ai,pn)-Math.max(vi,cn)>1&&(Jn.side==="left"?(ii=Jn._mainLinePosition,xi=gn.width):xi=Jn._mainLinePosition):Jt!==void 0&&en!==void 0&&Math.min(Ai,en)-Math.max(vi,Jt)>1&&(Jn.side==="top"?(ii=Jn._mainLinePosition,xi=gn.height):xi=Jn._mainLinePosition)}Ln[hn++]=[{datum:vr,traceIndex:vr.trace.index,dp:0,pos:vr.pos,posref:vr.posref,size:vr.by*(br?m:1)/2,pmin:ii,pmax:xi}]}),Ln.sort(function(vr,Er){return vr[0].posref-Er[0].posref||wn*(Er[0].traceIndex-vr[0].traceIndex)});!Cn&&rn<=kn;){for(rn++,Cn=!0,jn=0;jn<Ln.length-1;){var Hn=Ln[jn],tr=Ln[jn+1],Xn=Hn[Hn.length-1],lr=tr[0];if((Yn=Xn.pos+Xn.dp+Xn.size-lr.pos-lr.dp+lr.size)>.01&&Xn.pmin===lr.pmin&&Xn.pmax===lr.pmax){for(rr=tr.length-1;rr>=0;rr--)tr[rr].dp+=Yn;for(Hn.push.apply(Hn,tr),Ln.splice(jn+1,1),An=0,rr=Hn.length-1;rr>=0;rr--)An+=Hn[rr].dp;for(Nn=An/Hn.length,rr=Hn.length-1;rr>=0;rr--)Hn[rr].dp-=Nn;Cn=!1}else jn++}Ln.forEach(Wn)}for(jn=Ln.length-1;jn>=0;jn--){var or=Ln[jn];for(rr=or.length-1;rr>=0;rr--){var sr=or[rr],gr=sr.datum;gr.offset=sr.dp,gr.del=sr.del}}}(Kn,ir,xe,ar.commonLabelBoundingBox),D(Kn,ir,xe._invScaleX,xe._invScaleY)),Se&&Se.tagName){var wr=u.getComponentMethod("annotations","hasClickToShow")(ce,vn);o(w.select(Se),wr?"pointer":"")}Se&&!_e&&function(Ht,sn,gn){if(!gn||gn.length!==Ht._hoverdata.length)return!0;for(var bn=gn.length-1;bn>=0;bn--){var Cn=gn[bn],Yn=Ht._hoverdata[bn];if(Cn.curveNumber!==Yn.curveNumber||String(Cn.pointNumber)!==String(Yn.pointNumber)||String(Cn.pointNumbers)!==String(Yn.pointNumbers))return!0}return!1}(ce,0,Gt)&&(Gt&&ce.emit("plotly_unhover",{event:de,points:Gt}),ce.emit("plotly_hover",{event:de,points:ce._hoverdata,xaxes:ae,yaxes:be,xvals:ze,yvals:Ue}))})(X,ee,re,oe,ue)})},E.loneHover=function(X,ee){var re=!0;Array.isArray(X)||(re=!1,X=[X]);var oe=ee.gd,ue=ie(oe),ce=te(oe),de=z(X.map(function(Se){var we=Se._x0||Se.x0||Se.x||0,xe=Se._x1||Se.x1||Se.x||0,De=Se._y0||Se.y0||Se.y||0,Ee=Se._y1||Se.y1||Se.y||0,Me=Se.eventData;if(Me){var he=Math.min(we,xe),fe=Math.max(we,xe),ae=Math.min(De,Ee),be=Math.max(De,Ee),Ie=Se.trace;if(u.traceIs(Ie,"gl3d")){var Te=oe._fullLayout[Ie.scene]._scene.container,Ne=Te.offsetLeft,qe=Te.offsetTop;he+=Ne,fe+=Ne,ae+=qe,be+=qe}Me.bbox={x0:he+ce,x1:fe+ce,y0:ae+ue,y1:be+ue},ee.inOut_bbox&&ee.inOut_bbox.push(Me.bbox)}else Me=!1;return{color:Se.color||n.defaultLine,x0:Se.x0||Se.x||0,x1:Se.x1||Se.x||0,y0:Se.y0||Se.y||0,y1:Se.y1||Se.y||0,xLabel:Se.xLabel,yLabel:Se.yLabel,zLabel:Se.zLabel,text:Se.text,name:Se.name,idealAlign:Se.idealAlign,borderColor:Se.borderColor,fontFamily:Se.fontFamily,fontSize:Se.fontSize,fontColor:Se.fontColor,nameLength:Se.nameLength,textAlign:Se.textAlign,trace:Se.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:Se.hovertemplate||!1,hovertemplateLabels:Se.hovertemplateLabels||!1,eventData:Me}}),{gd:oe,hovermode:"closest",rotateLabels:!1,bgColor:ee.bgColor||n.background,container:w.select(ee.container),outerContainer:ee.outerContainer||ee.container}).hoverLabels,me=0,_e=0;return de.sort(function(Se,we){return Se.y0-we.y0}).each(function(Se,we){var xe=Se.y0-Se.by/2;Se.offset=xe-5<me?me-xe+5:0,me=xe+Se.by+Se.offset,we===ee.anchorIndex&&(_e=Se.offset)}).each(function(Se){Se.offset-=_e}),D(de,!1,oe._fullLayout._invScaleX,oe._fullLayout._invScaleY),re?de:de.node()};var O=/<extra>([\s\S]*)<\/extra>/;function z(X,ee){var re=ee.gd,oe=re._fullLayout,ue=ee.hovermode,ce=ee.rotateLabels,de=ee.bgColor,me=ee.container,_e=ee.outerContainer,Se=ee.commonLabelOpts||{};if(X.length===0)return[[]];var we=ee.fontFamily||c.HOVERFONT,xe=ee.fontSize||c.HOVERFONTSIZE,De=X[0],Ee=De.xa,Me=De.ya,he=ue.charAt(0),fe=he+"Label",ae=De[fe];if(ae===void 0&&Ee.type==="multicategory")for(var be=0;be<X.length&&(ae=X[be][fe])===void 0;be++);var Ie=J(re,_e),Te=Ie.top,Ne=Ie.width,qe=Ie.height,ve=ae!==void 0&&De.distance<=ee.hoverdistance&&(ue==="x"||ue==="y");if(ve){var Ce,Ae,ze=!0;for(Ce=0;Ce<X.length;Ce++)if(ze&&X[Ce].zLabel===void 0&&(ze=!1),Ae=X[Ce].hoverinfo||X[Ce].trace.hoverinfo){var Ue=Array.isArray(Ae)?Ae:Ae.split("+");if(Ue.indexOf("all")===-1&&Ue.indexOf(ue)===-1){ve=!1;break}}ze&&(ve=!1)}var Ve=me.selectAll("g.axistext").data(ve?[0]:[]);Ve.enter().append("g").classed("axistext",!0),Ve.exit().remove();var Ye={minX:0,maxX:0,minY:0,maxY:0};if(Ve.each(function(){var vt=w.select(this),At=_.ensureSingle(vt,"path","",function(Fn){Fn.style({"stroke-width":"1px"})}),Bt=_.ensureSingle(vt,"text","",function(Fn){Fn.attr("data-notex",1)}),jt=Se.bgcolor||n.defaultLine,Ut=Se.bordercolor||n.contrast(jt),tn=n.contrast(jt),Xt={family:Se.font.family||we,size:Se.font.size||xe,color:Se.font.color||tn};At.style({fill:jt,stroke:Ut}),Bt.text(ae).call(r.font,Xt).call(t.positionText,0,0).call(t.convertToTspans,re),vt.attr("transform","");var Qt,Gt,vn=J(re,Bt.node());if(ue==="x"){var Tn=Ee.side==="top"?"-":"";Bt.attr("text-anchor","middle").call(t.positionText,0,Ee.side==="top"?Te-vn.bottom-d-M:Te-vn.top+d+M),Qt=Ee._offset+(De.x0+De.x1)/2,Gt=Me._offset+(Ee.side==="top"?0:Me._length);var dn=vn.width/2+M;Qt<dn?(Qt=dn,At.attr("d","M-"+(dn-d)+",0L-"+(dn-2*d)+","+Tn+d+"H"+dn+"v"+Tn+(2*M+vn.height)+"H-"+dn+"V"+Tn+d+"Z")):Qt>oe.width-dn?(Qt=oe.width-dn,At.attr("d","M"+(dn-d)+",0L"+dn+","+Tn+d+"v"+Tn+(2*M+vn.height)+"H-"+dn+"V"+Tn+d+"H"+(dn-2*d)+"Z")):At.attr("d","M0,0L"+d+","+Tn+d+"H"+dn+"v"+Tn+(2*M+vn.height)+"H-"+dn+"V"+Tn+d+"H-"+d+"Z"),Ye.minX=Qt-dn,Ye.maxX=Qt+dn,Ee.side==="top"?(Ye.minY=Gt-(2*M+vn.height),Ye.maxY=Gt-M):(Ye.minY=Gt+M,Ye.maxY=Gt+(2*M+vn.height))}else{var Yt,ln,nn;Me.side==="right"?(Yt="start",ln=1,nn="",Qt=Ee._offset+Ee._length):(Yt="end",ln=-1,nn="-",Qt=Ee._offset),Gt=Me._offset+(De.y0+De.y1)/2,Bt.attr("text-anchor",Yt),At.attr("d","M0,0L"+nn+d+","+d+"V"+(M+vn.height/2)+"h"+nn+(2*M+vn.width)+"V-"+(M+vn.height/2)+"H"+nn+d+"V-"+d+"Z"),Ye.minY=Gt-(M+vn.height/2),Ye.maxY=Gt+(M+vn.height/2),Me.side==="right"?(Ye.minX=Qt+d,Ye.maxX=Qt+d+(2*M+vn.width)):(Ye.minX=Qt-d-(2*M+vn.width),Ye.maxX=Qt-d);var fn,mn=vn.height/2,xn=Te-vn.top-mn,Pn="clip"+oe._uid+"commonlabel"+Me._id;if(Qt<vn.width+2*M+d){fn="M-"+(d+M)+"-"+mn+"h-"+(vn.width-M)+"V"+mn+"h"+(vn.width-M)+"Z";var Dn=vn.width-Qt+M;t.positionText(Bt,Dn,xn),Yt==="end"&&Bt.selectAll("tspan").each(function(){var Fn=w.select(this),er=r.tester.append("text").text(Fn.text()).call(r.font,Xt),ir=J(re,er.node());Math.round(ir.width)<Math.round(vn.width)&&Fn.attr("x",Dn-ir.width),er.remove()})}else t.positionText(Bt,ln*(M+d),xn),fn=null;var En=oe._topclips.selectAll("#"+Pn).data(fn?[0]:[]);En.enter().append("clipPath").attr("id",Pn).append("path"),En.exit().remove(),En.select("path").attr("d",fn),r.setClipUrl(Bt,fn?Pn:null,re)}vt.attr("transform",y(Qt,Gt))}),p.isUnifiedHover(ue)){me.selectAll("g.hovertext").remove();var $e=X.filter(function(vt){return vt.hoverinfo!=="none"});if($e.length===0)return[];var rt=oe.hoverlabel,ht=rt.font,nt={showlegend:!0,legend:{title:{text:ae,font:ht},font:ht,bgcolor:rt.bgcolor,bordercolor:rt.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:oe.legend?oe.legend.traceorder:void 0,orientation:"v"}},bt={font:ht};b(nt,bt,re._fullData);var wt=bt.legend;wt.entries=[];for(var ut=0;ut<$e.length;ut++){var lt=$e[ut];if(lt.hoverinfo!=="none"){var Tt=B(lt,!0,ue,oe,ae),Et=Tt[0],St=Tt[1];lt.name=St,lt.text=St!==""?St+" : "+Et:Et;var Ft=lt.cd[lt.index];Ft&&(Ft.mc&&(lt.mc=Ft.mc),Ft.mcc&&(lt.mc=Ft.mcc),Ft.mlc&&(lt.mlc=Ft.mlc),Ft.mlcc&&(lt.mlc=Ft.mlcc),Ft.mlw&&(lt.mlw=Ft.mlw),Ft.mrc&&(lt.mrc=Ft.mrc),Ft.dir&&(lt.dir=Ft.dir)),lt._distinct=!0,wt.entries.push([lt])}}wt.entries.sort(function(vt,At){return vt[0].trace.index-At[0].trace.index}),wt.layer=me,wt._inHover=!0,wt._groupTitleFont=rt.grouptitlefont,g(re,wt);var zt,Je,et,Ze,Qe=me.select("g.legend"),st=J(re,Qe.node()),ft=st.width+2*M,Be=st.height+2*M,je=$e[0],at=(je.x0+je.x1)/2,ot=(je.y0+je.y1)/2,xt=!(u.traceIs(je.trace,"bar-like")||u.traceIs(je.trace,"box-violin"));he==="y"?xt?(Je=ot-M,zt=ot+M):(Je=Math.min.apply(null,$e.map(function(vt){return Math.min(vt.y0,vt.y1)})),zt=Math.max.apply(null,$e.map(function(vt){return Math.max(vt.y0,vt.y1)}))):Je=zt=_.mean($e.map(function(vt){return(vt.y0+vt.y1)/2}))-Be/2,he==="x"?xt?(et=at+M,Ze=at-M):(et=Math.max.apply(null,$e.map(function(vt){return Math.max(vt.x0,vt.x1)})),Ze=Math.min.apply(null,$e.map(function(vt){return Math.min(vt.x0,vt.x1)}))):et=Ze=_.mean($e.map(function(vt){return(vt.x0+vt.x1)/2}))-ft/2;var yt,_t,gt=Ee._offset,Ct=Me._offset;return Ze+=gt-ft,Je+=Ct-Be,yt=(et+=gt)+ft<Ne&&et>=0?et:Ze+ft<Ne&&Ze>=0?Ze:gt+ft<Ne?gt:et-at<at-Ze+ft?Ne-ft:0,yt+=M,_t=(zt+=Ct)+Be<qe&&zt>=0?zt:Je+Be<qe&&Je>=0?Je:Ct+Be<qe?Ct:zt-ot<ot-Je+Be?qe-Be:0,_t+=M,Qe.attr("transform",y(yt-1,_t-1)),Qe}var dt=me.selectAll("g.hovertext").data(X,function(vt){return P(vt)});return dt.enter().append("g").classed("hovertext",!0).each(function(){var vt=w.select(this);vt.append("rect").call(n.fill,n.addOpacity(de,.8)),vt.append("text").classed("name",!0),vt.append("path").style("stroke-width","1px"),vt.append("text").classed("nums",!0).call(r.font,we,xe)}),dt.exit().remove(),dt.each(function(vt){var At=w.select(this).attr("transform",""),Bt=vt.color;Array.isArray(Bt)&&(Bt=Bt[vt.eventData[0].pointNumber]);var jt=vt.bgcolor||Bt,Ut=n.combine(n.opacity(jt)?jt:n.defaultLine,de),tn=n.combine(n.opacity(Bt)?Bt:n.defaultLine,de),Xt=vt.borderColor||n.contrast(Ut),Qt=B(vt,ve,ue,oe,ae,At),Gt=Qt[0],vn=Qt[1],Tn=At.select("text.nums").call(r.font,vt.fontFamily||we,vt.fontSize||xe,vt.fontColor||Xt).text(Gt).attr("data-notex",1).call(t.positionText,0,0).call(t.convertToTspans,re),dn=At.select("text.name"),Yt=0,ln=0;if(vn&&vn!==Gt){dn.call(r.font,vt.fontFamily||we,vt.fontSize||xe,tn).text(vn).attr("data-notex",1).call(t.positionText,0,0).call(t.convertToTspans,re);var nn=J(re,dn.node());Yt=nn.width+2*M,ln=nn.height+2*M}else dn.remove(),At.select("rect").remove();At.select("path").style({fill:Ut,stroke:Xt});var fn=vt.xa._offset+(vt.x0+vt.x1)/2,mn=vt.ya._offset+(vt.y0+vt.y1)/2,xn=Math.abs(vt.x1-vt.x0),Pn=Math.abs(vt.y1-vt.y0),Dn=J(re,Tn.node()),En=Dn.width/oe._invScaleX,Fn=Dn.height/oe._invScaleY;vt.ty0=(Te-Dn.top)/oe._invScaleY,vt.bx=En+2*M,vt.by=Math.max(Fn+2*M,ln),vt.anchor="start",vt.txwidth=En,vt.tx2width=Yt,vt.offset=0;var er,ir,fr=(En+d+M+Yt)*oe._invScaleX;if(ce)vt.pos=fn,er=mn+Pn/2+fr<=qe,ir=mn-Pn/2-fr>=0,vt.idealAlign!=="top"&&er||!ir?er?(mn+=Pn/2,vt.anchor="start"):vt.anchor="middle":(mn-=Pn/2,vt.anchor="end"),vt.crossPos=mn;else{if(vt.pos=mn,er=fn+xn/2+fr<=Ne,ir=fn-xn/2-fr>=0,vt.idealAlign!=="left"&&er||!ir)if(er)fn+=xn/2,vt.anchor="start";else{vt.anchor="middle";var ar=fr/2,Kn=fn+ar-Ne,wr=fn-ar;Kn>0&&(fn-=Kn),wr<0&&(fn+=-wr)}else fn-=xn/2,vt.anchor="end";vt.crossPos=fn}Tn.attr("text-anchor",vt.anchor),Yt&&dn.attr("text-anchor",vt.anchor),At.attr("transform",y(fn,mn)+(ce?h(f):""))}),{hoverLabels:dt,commonLabelBoundingBox:Ye}}function B(X,ee,re,oe,ue,ce){var de="",me="";X.nameOverride!==void 0&&(X.name=X.nameOverride),X.name&&(X.trace._meta&&(X.name=_.templateString(X.name,X.trace._meta)),de=W(X.name,X.nameLength));var _e=re.charAt(0),Se=_e==="x"?"y":"x";X.zLabel!==void 0?(X.xLabel!==void 0&&(me+="x: "+X.xLabel+"<br>"),X.yLabel!==void 0&&(me+="y: "+X.yLabel+"<br>"),X.trace.type!=="choropleth"&&X.trace.type!=="choroplethmapbox"&&(me+=(me?"z: ":"")+X.zLabel)):ee&&X[_e+"Label"]===ue?me=X[Se+"Label"]||"":X.xLabel===void 0?X.yLabel!==void 0&&X.trace.type!=="scattercarpet"&&(me=X.yLabel):me=X.yLabel===void 0?X.xLabel:"("+X.xLabel+", "+X.yLabel+")",!X.text&&X.text!==0||Array.isArray(X.text)||(me+=(me?"<br>":"")+X.text),X.extraText!==void 0&&(me+=(me?"<br>":"")+X.extraText),ce&&me===""&&!X.hovertemplate&&(de===""&&ce.remove(),me=de);var we=X.hovertemplate||!1;if(we){var xe=X.hovertemplateLabels||X;X[_e+"Label"]!==ue&&(xe[_e+"other"]=xe[_e+"Val"],xe[_e+"otherLabel"]=xe[_e+"Label"]),me=(me=_.hovertemplateString(we,xe,oe._d3locale,X.eventData[0]||{},X.trace._meta)).replace(O,function(De,Ee){return de=W(Ee,X.nameLength),""})}return[me,de]}function Y(X,ee){var re=0,oe=X.offset;return ee&&(oe*=-T,re=X.offset*x),{x:re,y:oe}}function D(X,ee,re,oe){var ue=function(de){return de*re},ce=function(de){return de*oe};X.each(function(de){var me=w.select(this);if(de.del)return me.remove();var _e,Se,we,xe,De=me.select("text.nums"),Ee=de.anchor,Me=Ee==="end"?-1:1,he=(xe=(we=(Se={start:1,end:-1,middle:0}[(_e=de).anchor])*(d+M))+Se*(_e.txwidth+M),_e.anchor==="middle"&&(we-=_e.tx2width/2,xe+=_e.txwidth/2+M),{alignShift:Se,textShiftX:we,text2ShiftX:xe}),fe=Y(de,ee),ae=fe.x,be=fe.y,Ie=Ee==="middle";me.select("path").attr("d",Ie?"M-"+ue(de.bx/2+de.tx2width/2)+","+ce(be-de.by/2)+"h"+ue(de.bx)+"v"+ce(de.by)+"h-"+ue(de.bx)+"Z":"M0,0L"+ue(Me*d+ae)+","+ce(d+be)+"v"+ce(de.by/2-d)+"h"+ue(Me*de.bx)+"v-"+ce(de.by)+"H"+ue(Me*d+ae)+"V"+ce(be-d)+"Z");var Te=ae+he.textShiftX,Ne=be+de.ty0-de.by/2+M,qe=de.textAlign||"auto";qe!=="auto"&&(qe==="left"&&Ee!=="start"?(De.attr("text-anchor","start"),Te=Ie?-de.bx/2-de.tx2width/2+M:-de.bx-M):qe==="right"&&Ee!=="end"&&(De.attr("text-anchor","end"),Te=Ie?de.bx/2-de.tx2width/2-M:de.bx+M)),De.call(t.positionText,ue(Te),ce(Ne)),de.tx2width&&(me.select("text.name").call(t.positionText,ue(he.text2ShiftX+he.alignShift*M+ae),ce(be+de.ty0-de.by/2+M)),me.select("rect").call(r.setRect,ue(he.text2ShiftX+(he.alignShift-1)*de.tx2width/2+ae),ce(be-de.by/2-1),ue(de.tx2width),ce(de.by+2)))})}function G(X,ee){var re=X.index,oe=X.trace||{},ue=X.cd[0],ce=X.cd[re]||{};function de(De){return De||k(De)&&De===0}var me=Array.isArray(re)?function(De,Ee){var Me=_.castOption(ue,re,De);return de(Me)?Me:_.extractOption({},oe,"",Ee)}:function(De,Ee){return _.extractOption(ce,oe,De,Ee)};function _e(De,Ee,Me){var he=me(Ee,Me);de(he)&&(X[De]=he)}if(_e("hoverinfo","hi","hoverinfo"),_e("bgcolor","hbg","hoverlabel.bgcolor"),_e("borderColor","hbc","hoverlabel.bordercolor"),_e("fontFamily","htf","hoverlabel.font.family"),_e("fontSize","hts","hoverlabel.font.size"),_e("fontColor","htc","hoverlabel.font.color"),_e("nameLength","hnl","hoverlabel.namelength"),_e("textAlign","hta","hoverlabel.align"),X.posref=ee==="y"||ee==="closest"&&oe.orientation==="h"?X.xa._offset+(X.x0+X.x1)/2:X.ya._offset+(X.y0+X.y1)/2,X.x0=_.constrain(X.x0,0,X.xa._length),X.x1=_.constrain(X.x1,0,X.xa._length),X.y0=_.constrain(X.y0,0,X.ya._length),X.y1=_.constrain(X.y1,0,X.ya._length),X.xLabelVal!==void 0&&(X.xLabel="xLabel"in X?X.xLabel:s.hoverLabelText(X.xa,X.xLabelVal,oe.xhoverformat),X.xVal=X.xa.c2d(X.xLabelVal)),X.yLabelVal!==void 0&&(X.yLabel="yLabel"in X?X.yLabel:s.hoverLabelText(X.ya,X.yLabelVal,oe.yhoverformat),X.yVal=X.ya.c2d(X.yLabelVal)),X.zLabelVal!==void 0&&X.zLabel===void 0&&(X.zLabel=String(X.zLabelVal)),!(isNaN(X.xerr)||X.xa.type==="log"&&X.xerr<=0)){var Se=s.tickText(X.xa,X.xa.c2l(X.xerr),"hover").text;X.xerrneg!==void 0?X.xLabel+=" +"+Se+" / -"+s.tickText(X.xa,X.xa.c2l(X.xerrneg),"hover").text:X.xLabel+=" ± "+Se,ee==="x"&&(X.distance+=1)}if(!(isNaN(X.yerr)||X.ya.type==="log"&&X.yerr<=0)){var we=s.tickText(X.ya,X.ya.c2l(X.yerr),"hover").text;X.yerrneg!==void 0?X.yLabel+=" +"+we+" / -"+s.tickText(X.ya,X.ya.c2l(X.yerrneg),"hover").text:X.yLabel+=" ± "+we,ee==="y"&&(X.distance+=1)}var xe=X.hoverinfo||X.trace.hoverinfo;return xe&&xe!=="all"&&((xe=Array.isArray(xe)?xe:xe.split("+")).indexOf("x")===-1&&(X.xLabel=void 0),xe.indexOf("y")===-1&&(X.yLabel=void 0),xe.indexOf("z")===-1&&(X.zLabel=void 0),xe.indexOf("text")===-1&&(X.text=void 0),xe.indexOf("name")===-1&&(X.name=void 0)),X}function V(X,ee,re){var oe,ue,ce=re.container,de=re.fullLayout,me=de._size,_e=re.event,Se=!!ee.hLinePoint,we=!!ee.vLinePoint;if(ce.selectAll(".spikeline").remove(),we||Se){var xe=n.combine(de.plot_bgcolor,de.paper_bgcolor);if(Se){var De,Ee,Me=ee.hLinePoint;oe=Me&&Me.xa,(ue=Me&&Me.ya).spikesnap==="cursor"?(De=_e.pointerX,Ee=_e.pointerY):(De=oe._offset+Me.x,Ee=ue._offset+Me.y);var he,fe,ae=i.readability(Me.color,xe)<1.5?n.contrast(xe):Me.color,be=ue.spikemode,Ie=ue.spikethickness,Te=ue.spikecolor||ae,Ne=s.getPxPosition(X,ue);if(be.indexOf("toaxis")!==-1||be.indexOf("across")!==-1){if(be.indexOf("toaxis")!==-1&&(he=Ne,fe=De),be.indexOf("across")!==-1){var qe=ue._counterDomainMin,ve=ue._counterDomainMax;ue.anchor==="free"&&(qe=Math.min(qe,ue.position),ve=Math.max(ve,ue.position)),he=me.l+qe*me.w,fe=me.l+ve*me.w}ce.insert("line",":first-child").attr({x1:he,x2:fe,y1:Ee,y2:Ee,"stroke-width":Ie,stroke:Te,"stroke-dasharray":r.dashStyle(ue.spikedash,Ie)}).classed("spikeline",!0).classed("crisp",!0),ce.insert("line",":first-child").attr({x1:he,x2:fe,y1:Ee,y2:Ee,"stroke-width":Ie+2,stroke:xe}).classed("spikeline",!0).classed("crisp",!0)}be.indexOf("marker")!==-1&&ce.insert("circle",":first-child").attr({cx:Ne+(ue.side!=="right"?Ie:-Ie),cy:Ee,r:Ie,fill:Te}).classed("spikeline",!0)}if(we){var Ce,Ae,ze=ee.vLinePoint;oe=ze&&ze.xa,ue=ze&&ze.ya,oe.spikesnap==="cursor"?(Ce=_e.pointerX,Ae=_e.pointerY):(Ce=oe._offset+ze.x,Ae=ue._offset+ze.y);var Ue,Ve,Ye=i.readability(ze.color,xe)<1.5?n.contrast(xe):ze.color,$e=oe.spikemode,rt=oe.spikethickness,ht=oe.spikecolor||Ye,nt=s.getPxPosition(X,oe);if($e.indexOf("toaxis")!==-1||$e.indexOf("across")!==-1){if($e.indexOf("toaxis")!==-1&&(Ue=nt,Ve=Ae),$e.indexOf("across")!==-1){var bt=oe._counterDomainMin,wt=oe._counterDomainMax;oe.anchor==="free"&&(bt=Math.min(bt,oe.position),wt=Math.max(wt,oe.position)),Ue=me.t+(1-wt)*me.h,Ve=me.t+(1-bt)*me.h}ce.insert("line",":first-child").attr({x1:Ce,x2:Ce,y1:Ue,y2:Ve,"stroke-width":rt,stroke:ht,"stroke-dasharray":r.dashStyle(oe.spikedash,rt)}).classed("spikeline",!0).classed("crisp",!0),ce.insert("line",":first-child").attr({x1:Ce,x2:Ce,y1:Ue,y2:Ve,"stroke-width":rt+2,stroke:xe}).classed("spikeline",!0).classed("crisp",!0)}$e.indexOf("marker")!==-1&&ce.insert("circle",":first-child").attr({cx:Ce,cy:nt-(oe.side!=="top"?rt:-rt),r:rt,fill:ht}).classed("spikeline",!0)}}}function j(X,ee){return!ee||ee.vLinePoint!==X._spikepoints.vLinePoint||ee.hLinePoint!==X._spikepoints.hLinePoint}function W(X,ee){return t.plainText(X||"",{len:ee,allowedTags:["br","sub","sup","b","i","em"]})}function Z(X,ee,re){var oe=ee[X+"a"],ue=ee[X+"Val"],ce=ee.cd[0];if(oe.type==="category"||oe.type==="multicategory")ue=oe._categoriesMap[ue];else if(oe.type==="date"){var de=ee.trace[X+"periodalignment"];if(de){var me=ee.cd[ee.index],_e=me[X+"Start"];_e===void 0&&(_e=me[X]);var Se=me[X+"End"];Se===void 0&&(Se=me[X]);var we=Se-_e;de==="end"?ue+=we:de==="middle"&&(ue+=we/2)}ue=oe.d2c(ue)}return ce&&ce.t&&ce.t.posLetter===oe._id&&(re.boxmode!=="group"&&re.violinmode!=="group"||(ue+=ce.t.dPos)),ue}function ie(X){return X.offsetTop+X.clientTop}function te(X){return X.offsetLeft+X.clientLeft}function J(X,ee){var re=X._fullLayout,oe=ee.getBoundingClientRect(),ue=oe.left,ce=oe.top,de=ue+oe.width,me=ce+oe.height,_e=_.apply3DTransform(re._invTransform)(ue,ce),Se=_.apply3DTransform(re._invTransform)(de,me),we=_e[0],xe=_e[1],De=Se[0],Ee=Se[1];return{x:we,y:xe,width:De-we,height:Ee-xe,top:Math.min(xe,Ee),left:Math.min(we,De),right:Math.max(we,De),bottom:Math.max(xe,Ee)}}},38048:function(R,E,e){var w=e(71828),k=e(7901),i=e(23469).isUnifiedHover;R.exports=function(_,y,h,l){l=l||{};var t=y.legend;function o(r){l.font[r]||(l.font[r]=t?y.legend.font[r]:y.font[r])}y&&i(y.hovermode)&&(l.font||(l.font={}),o("size"),o("family"),o("color"),t?(l.bgcolor||(l.bgcolor=k.combine(y.legend.bgcolor,y.paper_bgcolor)),l.bordercolor||(l.bordercolor=y.legend.bordercolor)):l.bgcolor||(l.bgcolor=y.paper_bgcolor)),h("hoverlabel.bgcolor",l.bgcolor),h("hoverlabel.bordercolor",l.bordercolor),h("hoverlabel.namelength",l.namelength),w.coerceFont(h,"hoverlabel.font",l.font),h("hoverlabel.align",l.align)}},98212:function(R,E,e){var w=e(71828),k=e(528);R.exports=function(i,_){function y(h,l){return _[h]!==void 0?_[h]:w.coerce(i,_,k,h,l)}return y("clickmode"),y("hovermode")}},30211:function(R,E,e){var w=e(39898),k=e(71828),i=e(28569),_=e(23469),y=e(528),h=e(88335);R.exports={moduleType:"component",name:"fx",constants:e(26675),schema:{layout:y},attributes:e(77914),layoutAttributes:y,supplyLayoutGlobalDefaults:e(22774),supplyDefaults:e(54268),supplyLayoutDefaults:e(34938),calc:e(30732),getDistanceFunction:_.getDistanceFunction,getClosest:_.getClosest,inbox:_.inbox,quadrature:_.quadrature,appendArrayPointValue:_.appendArrayPointValue,castHoverOption:function(l,t,o){return k.castOption(l,t,"hoverlabel."+o)},castHoverinfo:function(l,t,o){return k.castOption(l,o,"hoverinfo",function(r){return k.coerceHoverinfo({hoverinfo:r},{_module:l._module},t)})},hover:h.hover,unhover:i.unhover,loneHover:h.loneHover,loneUnhover:function(l){var t=k.isD3Selection(l)?l:w.select(l);t.selectAll("g.hovertext").remove(),t.selectAll(".spikeline").remove()},click:e(75914)}},528:function(R,E,e){var w=e(26675),k=e(41940),i=k({editType:"none"});i.family.dflt=w.HOVERFONT,i.size.dflt=w.HOVERFONTSIZE,R.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:i,grouptitlefont:k({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}},34938:function(R,E,e){var w=e(71828),k=e(528),i=e(98212),_=e(38048);R.exports=function(y,h){function l(n,a){return w.coerce(y,h,k,n,a)}i(y,h)&&(l("hoverdistance"),l("spikedistance")),l("dragmode")==="select"&&l("selectdirection");var t=h._has("mapbox"),o=h._has("geo"),r=h._basePlotModules.length;h.dragmode==="zoom"&&((t||o)&&r===1||t&&o&&r===2)&&(h.dragmode="pan"),_(y,h,l),w.coerceFont(l,"hoverlabel.grouptitlefont",h.hoverlabel.font)}},22774:function(R,E,e){var w=e(71828),k=e(38048),i=e(528);R.exports=function(_,y){k(_,y,function(h,l){return w.coerce(_,y,i,h,l)})}},83312:function(R,E,e){var w=e(71828),k=e(30587).counter,i=e(27670).Y,_=e(85555).idRegex,y=e(44467),h={rows:{valType:"integer",min:1,editType:"plot"},roworder:{valType:"enumerated",values:["top to bottom","bottom to top"],dflt:"top to bottom",editType:"plot"},columns:{valType:"integer",min:1,editType:"plot"},subplots:{valType:"info_array",freeLength:!0,dimensions:2,items:{valType:"enumerated",values:[k("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[_.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[_.y.toString(),""],editType:"plot"},editType:"plot"},pattern:{valType:"enumerated",values:["independent","coupled"],dflt:"coupled",editType:"plot"},xgap:{valType:"number",min:0,max:1,editType:"plot"},ygap:{valType:"number",min:0,max:1,editType:"plot"},domain:i({name:"grid",editType:"plot",noGridCell:!0},{}),xside:{valType:"enumerated",values:["bottom","bottom plot","top plot","top"],dflt:"bottom plot",editType:"plot"},yside:{valType:"enumerated",values:["left","left plot","right plot","right"],dflt:"left plot",editType:"plot"},editType:"plot"};function l(r,n,a){var s=n[a+"axes"],u=Object.keys((r._splomAxes||{})[a]||{});return Array.isArray(s)?s:u.length?u:void 0}function t(r,n,a,s,u,p){var c=n(r+"gap",a),b=n("domain."+r);n(r+"side",s);for(var g=new Array(u),f=b[0],v=(b[1]-f)/(u-c),m=v*(1-c),x=0;x<u;x++){var T=f+v*x;g[p?u-1-x:x]=[T,T+m]}return g}function o(r,n,a,s,u){var p,c=new Array(a);function b(g,f){n.indexOf(f)!==-1&&s[f]===void 0?(c[g]=f,s[f]=g):c[g]=""}if(Array.isArray(r))for(p=0;p<a;p++)b(p,r[p]);else for(b(0,u),p=1;p<a;p++)b(p,u+(p+1));return c}R.exports={moduleType:"component",name:"grid",schema:{layout:{grid:h}},layoutAttributes:h,sizeDefaults:function(r,n){var a=r.grid||{},s=l(n,a,"x"),u=l(n,a,"y");if(r.grid||s||u){var p,c,b=Array.isArray(a.subplots)&&Array.isArray(a.subplots[0]),g=Array.isArray(s),f=Array.isArray(u),v=g&&s!==a.xaxes&&f&&u!==a.yaxes;b?(p=a.subplots.length,c=a.subplots[0].length):(f&&(p=u.length),g&&(c=s.length));var m=y.newContainer(n,"grid"),x=O("rows",p),T=O("columns",c);if(x*T>1){b||g||f||O("pattern")==="independent"&&(b=!0),m._hasSubplotGrid=b;var d,M,A=O("roworder")==="top to bottom",C=b?.2:.1,P=b?.3:.1;v&&n._splomGridDflt&&(d=n._splomGridDflt.xside,M=n._splomGridDflt.yside),m._domains={x:t("x",O,C,d,T),y:t("y",O,P,M,x,A)}}else delete n.grid}function O(z,B){return w.coerce(a,m,h,z,B)}},contentDefaults:function(r,n){var a=n.grid;if(a&&a._domains){var s,u,p,c,b,g,f,v=r.grid||{},m=n._subplots,x=a._hasSubplotGrid,T=a.rows,d=a.columns,M=a.pattern==="independent",A=a._axisMap={};if(x){var C=v.subplots||[];g=a.subplots=new Array(T);var P=1;for(s=0;s<T;s++){var O=g[s]=new Array(d),z=C[s]||[];for(u=0;u<d;u++)if(M?(b=P===1?"xy":"x"+P+"y"+P,P++):b=z[u],O[u]="",m.cartesian.indexOf(b)!==-1){if(f=b.indexOf("y"),p=b.slice(0,f),c=b.slice(f),A[p]!==void 0&&A[p]!==u||A[c]!==void 0&&A[c]!==s)continue;O[u]=b,A[p]=u,A[c]=s}}}else{var B=l(n,v,"x"),Y=l(n,v,"y");a.xaxes=o(B,m.xaxis,d,A,"x"),a.yaxes=o(Y,m.yaxis,T,A,"y")}var D=a._anchors={},G=a.roworder==="top to bottom";for(var V in A){var j,W,Z,ie=V.charAt(0),te=a[ie+"side"];if(te.length<8)D[V]="free";else if(ie==="x"){if(te.charAt(0)==="t"===G?(j=0,W=1,Z=T):(j=T-1,W=-1,Z=-1),x){var J=A[V];for(s=j;s!==Z;s+=W)if((b=g[s][J])&&(f=b.indexOf("y"),b.slice(0,f)===V)){D[V]=b.slice(f);break}}else for(s=j;s!==Z;s+=W)if(c=a.yaxes[s],m.cartesian.indexOf(V+c)!==-1){D[V]=c;break}}else if(te.charAt(0)==="l"?(j=0,W=1,Z=d):(j=d-1,W=-1,Z=-1),x){var X=A[V];for(s=j;s!==Z;s+=W)if((b=g[X][s])&&(f=b.indexOf("y"),b.slice(f)===V)){D[V]=b.slice(0,f);break}}else for(s=j;s!==Z;s+=W)if(p=a.xaxes[s],m.cartesian.indexOf(p+V)!==-1){D[V]=p;break}}}}}},69819:function(R,E,e){var w=e(85555),k=e(44467).templatedArray;e(24695),R.exports=k("image",{visible:{valType:"boolean",dflt:!0,editType:"arraydraw"},source:{valType:"string",editType:"arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},sizex:{valType:"number",dflt:0,editType:"arraydraw"},sizey:{valType:"number",dflt:0,editType:"arraydraw"},sizing:{valType:"enumerated",values:["fill","contain","stretch"],dflt:"contain",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},x:{valType:"any",dflt:0,editType:"arraydraw"},y:{valType:"any",dflt:0,editType:"arraydraw"},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left",editType:"arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],dflt:"top",editType:"arraydraw"},xref:{valType:"enumerated",values:["paper",w.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",w.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})},75378:function(R,E,e){var w=e(92770),k=e(58163);R.exports=function(i,_,y,h){_=_||{};var l=y==="log"&&_.type==="linear",t=y==="linear"&&_.type==="log";if(l||t){for(var o,r,n=i._fullLayout.images,a=_._id.charAt(0),s=0;s<n.length;s++)if(r="images["+s+"].",(o=n[s])[a+"ref"]===_._id){var u=o[a],p=o["size"+a],c=null,b=null;if(l){c=k(u,_.range);var g=p/Math.pow(10,c)/2;b=2*Math.log(g+Math.sqrt(1+g*g))/Math.LN10}else b=(c=Math.pow(10,u))*(Math.pow(10,p/2)-Math.pow(10,-p/2));w(c)?w(b)||(b=null):(c=null,b=null),h(r+a,c),h(r+"size"+a,b)}}}},81603:function(R,E,e){var w=e(71828),k=e(89298),i=e(85501),_=e(69819);function y(h,l,t){function o(c,b){return w.coerce(h,l,_,c,b)}var r=o("source");if(!o("visible",!!r))return l;o("layer"),o("xanchor"),o("yanchor"),o("sizex"),o("sizey"),o("sizing"),o("opacity");for(var n={_fullLayout:t},a=["x","y"],s=0;s<2;s++){var u=a[s],p=k.coerceRef(h,l,n,u,"paper",void 0);p!=="paper"&&k.getFromId(n,p)._imgIndices.push(l._index),k.coercePosition(l,n,o,p,u,0)}return l}R.exports=function(h,l){i(h,l,{name:"images",handleItemDefaults:y})}},80750:function(R,E,e){var w=e(39898),k=e(91424),i=e(89298),_=e(41675),y=e(77922);R.exports=function(h){var l,t,o=h._fullLayout,r=[],n={},a=[];for(t=0;t<o.images.length;t++){var s=o.images[t];if(s.visible)if(s.layer==="below"&&s.xref!=="paper"&&s.yref!=="paper"){l=_.ref2id(s.xref)+_.ref2id(s.yref);var u=o._plots[l];if(!u){a.push(s);continue}u.mainplot&&(l=u.mainplot.id),n[l]||(n[l]=[]),n[l].push(s)}else s.layer==="above"?r.push(s):a.push(s)}var p={left:{sizing:"xMin",offset:0},center:{sizing:"xMid",offset:-.5},right:{sizing:"xMax",offset:-1}},c={top:{sizing:"YMin",offset:0},middle:{sizing:"YMid",offset:-.5},bottom:{sizing:"YMax",offset:-1}};function b(d){var M=w.select(this);if(this._imgSrc!==d.source)if(M.attr("xmlns",y.svg),d.source&&d.source.slice(0,5)==="data:")M.attr("xlink:href",d.source),this._imgSrc=d.source;else{var A=new Promise(function(C){var P=new Image;function O(){M.remove(),C()}this.img=P,P.setAttribute("crossOrigin","anonymous"),P.onerror=O,P.onload=function(){var z=document.createElement("canvas");z.width=this.width,z.height=this.height,z.getContext("2d",{willReadFrequently:!0}).drawImage(this,0,0);var B=z.toDataURL("image/png");M.attr("xlink:href",B),C()},M.on("error",O),P.src=d.source,this._imgSrc=d.source}.bind(this));h._promises.push(A)}}function g(d){var M,A,C=w.select(this),P=i.getFromId(h,d.xref),O=i.getFromId(h,d.yref),z=i.getRefType(d.xref)==="domain",B=i.getRefType(d.yref)==="domain",Y=o._size;M=P!==void 0?typeof d.xref=="string"&&z?P._length*d.sizex:Math.abs(P.l2p(d.sizex)-P.l2p(0)):d.sizex*Y.w,A=O!==void 0?typeof d.yref=="string"&&B?O._length*d.sizey:Math.abs(O.l2p(d.sizey)-O.l2p(0)):d.sizey*Y.h;var D,G,V=M*p[d.xanchor].offset,j=A*c[d.yanchor].offset,W=p[d.xanchor].sizing+c[d.yanchor].sizing;switch(D=P!==void 0?typeof d.xref=="string"&&z?P._length*d.x+P._offset:P.r2p(d.x)+P._offset:d.x*Y.w+Y.l,D+=V,G=O!==void 0?typeof d.yref=="string"&&B?O._length*(1-d.y)+O._offset:O.r2p(d.y)+O._offset:Y.h-d.y*Y.h+Y.t,G+=j,d.sizing){case"fill":W+=" slice";break;case"stretch":W="none"}C.attr({x:D,y:G,width:M,height:A,preserveAspectRatio:W,opacity:d.opacity});var Z=(P&&i.getRefType(d.xref)!=="domain"?P._id:"")+(O&&i.getRefType(d.yref)!=="domain"?O._id:"");k.setClipUrl(C,Z?"clip"+o._uid+Z:null,h)}var f=o._imageLowerLayer.selectAll("image").data(a),v=o._imageUpperLayer.selectAll("image").data(r);f.enter().append("image"),v.enter().append("image"),f.exit().remove(),v.exit().remove(),f.each(function(d){b.bind(this)(d),g.bind(this)(d)}),v.each(function(d){b.bind(this)(d),g.bind(this)(d)});var m=Object.keys(o._plots);for(t=0;t<m.length;t++){l=m[t];var x=o._plots[l];if(x.imagelayer){var T=x.imagelayer.selectAll("image").data(n[l]||[]);T.enter().append("image"),T.exit().remove(),T.each(function(d){b.bind(this)(d),g.bind(this)(d)})}}}},68804:function(R,E,e){R.exports={moduleType:"component",name:"images",layoutAttributes:e(69819),supplyLayoutDefaults:e(81603),includeBasePlot:e(76325)("images"),draw:e(80750),convertCoords:e(75378)}},33030:function(R,E,e){var w=e(41940),k=e(22399);R.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:k.defaultLine,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:w({editType:"legend"}),grouptitlefont:w({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:w({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left"],editType:"legend"},editType:"legend"},editType:"legend"}},14928:function(R){R.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}},99017:function(R,E,e){var w=e(73972),k=e(71828),i=e(44467),_=e(9012),y=e(33030),h=e(10820),l=e(10130);function t(o,r,n,a){var s=r[o]||{},u=i.newContainer(n,o);function p(G,V){return k.coerce(s,u,y,G,V)}var c=k.coerceFont(p,"font",n.font);if(p("bgcolor",n.paper_bgcolor),p("bordercolor"),p("visible")){for(var b,g=function(G,V){var j=b._input,W=b;return k.coerce(j,W,_,G,V)},f=n.font||{},v=k.coerceFont(p,"grouptitlefont",k.extendFlat({},f,{size:Math.round(1.1*f.size)})),m=0,x=!1,T="normal",d=0;d<a.length;d++)(b=a[d]).visible&&((b.showlegend||b._dfltShowLegend&&!(b._module&&b._module.attributes&&b._module.attributes.showlegend&&b._module.attributes.showlegend.dflt===!1))&&(m++,b.showlegend&&(x=!0,(w.traceIs(b,"pie-like")||b._input.showlegend===!0)&&m++),k.coerceFont(g,"legendgrouptitle.font",v)),(w.traceIs(b,"bar")&&n.barmode==="stack"||["tonextx","tonexty"].indexOf(b.fill)!==-1)&&(T=l.isGrouped({traceorder:T})?"grouped+reversed":"reversed"),b.legendgroup!==void 0&&b.legendgroup!==""&&(T=l.isReversed({traceorder:T})?"reversed+grouped":"grouped"));var M=k.coerce(r,n,h,"showlegend",x&&m>1);if(M===!1&&(n.legend=void 0),(M!==!1||s.uirevision)&&(p("uirevision",n.uirevision),M!==!1)){p("borderwidth");var A,C,P,O=p("orientation")==="h",z=p("yref")==="paper",B=p("xref")==="paper",Y="left";if(O?(A=0,w.getComponentMethod("rangeslider","isVisible")(r.xaxis)?z?(C=1.1,P="bottom"):(C=1,P="top"):z?(C=-.1,P="top"):(C=0,P="bottom")):(C=1,P="auto",B?A=1.02:(A=1,Y="right")),k.coerce(s,u,{x:{valType:"number",editType:"legend",min:B?-2:0,max:B?3:1,dflt:A}},"x"),k.coerce(s,u,{y:{valType:"number",editType:"legend",min:z?-2:0,max:z?3:1,dflt:C}},"y"),p("traceorder",T),l.isGrouped(n.legend)&&p("tracegroupgap"),p("entrywidth"),p("entrywidthmode"),p("itemsizing"),p("itemwidth"),p("itemclick"),p("itemdoubleclick"),p("groupclick"),p("xanchor",Y),p("yanchor",P),p("valign"),k.noneOrAll(s,u,["x","y"]),p("title.text")){p("title.side",O?"left":"top");var D=k.extendFlat({},c,{size:k.bigFont(c.size)});k.coerceFont(p,"title.font",D)}}}}R.exports=function(o,r,n){var a,s=["legend"];for(a=0;a<n.length;a++)k.pushUnique(s,n[a].legend);for(r._legends=[],a=0;a<s.length;a++){var u=s[a];t(u,o,r,n),r[u]&&r[u].visible&&(r[u]._id=u),r._legends.push(u)}}},43969:function(R,E,e){var w=e(39898),k=e(71828),i=e(74875),_=e(73972),y=e(11086),h=e(28569),l=e(91424),t=e(7901),o=e(63893),r=e(85167),n=e(14928),a=e(18783),s=a.LINE_SPACING,u=a.FROM_TL,p=a.FROM_BR,c=e(82424),b=e(53630),g=e(10130),f=1,v=/^legend[0-9]*$/;function m(B,Y){var D,G,V=Y||{},j=B._fullLayout,W=z(V),Z=V._inHover;if(Z?(G=V.layer,D="hover"):(G=j._infolayer,D=W),G){var ie;if(D+=j._uid,B._legendMouseDownTime||(B._legendMouseDownTime=0),Z){if(!V.entries)return;ie=c(V.entries,V)}else{if(!B.calcdata)return;ie=j.showlegend&&c(B.calcdata,V,j._legends.length>1)}var te=j.hiddenlabels||[];if(!(Z||j.showlegend&&ie.length))return G.selectAll("."+W).remove(),j._topdefs.select("#"+D).remove(),i.autoMargin(B,W);var J=k.ensureSingle(G,"g",W,function(_e){Z||_e.attr("pointer-events","all")}),X=k.ensureSingleById(j._topdefs,"clipPath",D,function(_e){_e.append("rect")}),ee=k.ensureSingle(J,"rect","bg",function(_e){_e.attr("shape-rendering","crispEdges")});ee.call(t.stroke,V.bordercolor).call(t.fill,V.bgcolor).style("stroke-width",V.borderwidth+"px");var re=k.ensureSingle(J,"g","scrollbox"),oe=V.title;if(V._titleWidth=0,V._titleHeight=0,oe.text){var ue=k.ensureSingle(re,"text",W+"titletext");ue.attr("text-anchor","start").call(l.font,oe.font).text(oe.text),C(ue,re,B,V,f)}else re.selectAll("."+W+"titletext").remove();var ce=k.ensureSingle(J,"rect","scrollbar",function(_e){_e.attr(n.scrollBarEnterAttrs).call(t.fill,n.scrollBarColor)}),de=re.selectAll("g.groups").data(ie);de.enter().append("g").attr("class","groups"),de.exit().remove();var me=de.selectAll("g.traces").data(k.identity);me.enter().append("g").attr("class","traces"),me.exit().remove(),me.style("opacity",function(_e){var Se=_e[0].trace;return _.traceIs(Se,"pie-like")?te.indexOf(_e[0].label)!==-1?.5:1:Se.visible==="legendonly"?.5:1}).each(function(){w.select(this).call(d,B,V)}).call(b,B,V).each(function(){Z||w.select(this).call(A,B,W)}),k.syncOrAsync([i.previousPromises,function(){return function(_e,Se,we,xe){var De=_e._fullLayout,Ee=z(xe);xe||(xe=De[Ee]);var Me=De._size,he=g.isVertical(xe),fe=g.isGrouped(xe),ae=xe.entrywidthmode==="fraction",be=xe.borderwidth,Ie=2*be,Te=n.itemGap,Ne=xe.itemwidth+2*Te,qe=2*(be+Te),ve=O(xe),Ce=xe.y<0||xe.y===0&&ve==="top",Ae=xe.y>1||xe.y===1&&ve==="bottom",ze=xe.tracegroupgap,Ue={};xe._maxHeight=Math.max(Ce||Ae?De.height/2:Me.h,30);var Ve=0;xe._width=0,xe._height=0;var Ye=function(Be){var je=0,at=0,ot=Be.title.side;return ot&&(ot.indexOf("left")!==-1&&(je=Be._titleWidth),ot.indexOf("top")!==-1&&(at=Be._titleHeight)),[je,at]}(xe);if(he)we.each(function(Be){var je=Be[0].height;l.setTranslate(this,be+Ye[0],be+Ye[1]+xe._height+je/2+Te),xe._height+=je,xe._width=Math.max(xe._width,Be[0].width)}),Ve=Ne+xe._width,xe._width+=Te+Ne+Ie,xe._height+=qe,fe&&(Se.each(function(Be,je){l.setTranslate(this,0,je*xe.tracegroupgap)}),xe._height+=(xe._lgroupsLength-1)*xe.tracegroupgap);else{var $e=P(xe),rt=xe.x<0||xe.x===0&&$e==="right",ht=xe.x>1||xe.x===1&&$e==="left",nt=Ae||Ce,bt=De.width/2;xe._maxWidth=Math.max(rt?nt&&$e==="left"?Me.l+Me.w:bt:ht?nt&&$e==="right"?Me.r+Me.w:bt:Me.w,2*Ne);var wt=0,ut=0;we.each(function(Be){var je=x(Be,xe,Ne);wt=Math.max(wt,je),ut+=je}),Ve=null;var lt=0;if(fe){var Tt=0,Et=0,St=0;Se.each(function(){var Be=0,je=0;w.select(this).selectAll("g.traces").each(function(ot){var xt=x(ot,xe,Ne),yt=ot[0].height;l.setTranslate(this,Ye[0],Ye[1]+be+Te+yt/2+je),je+=yt,Be=Math.max(Be,xt),Ue[ot[0].trace.legendgroup]=Be});var at=Be+Te;Et>0&&at+be+Et>xe._maxWidth?(lt=Math.max(lt,Et),Et=0,St+=Tt+ze,Tt=je):Tt=Math.max(Tt,je),l.setTranslate(this,Et,St),Et+=at}),xe._width=Math.max(lt,Et)+be,xe._height=St+Tt+qe}else{var Ft=we.size(),zt=ut+Ie+(Ft-1)*Te<xe._maxWidth,Je=0,et=0,Ze=0,Qe=0;we.each(function(Be){var je=Be[0].height,at=x(Be,xe,Ne),ot=zt?at:wt;ae||(ot+=Te),ot+be+et-Te>=xe._maxWidth&&(lt=Math.max(lt,Qe),et=0,Ze+=Je,xe._height+=Je,Je=0),l.setTranslate(this,Ye[0]+be+et,Ye[1]+be+Ze+je/2+Te),Qe=et+at+Te,et+=ot,Je=Math.max(Je,je)}),zt?(xe._width=et+Ie,xe._height=Je+qe):(xe._width=Math.max(lt,Qe)+Ie,xe._height+=Je+qe)}}xe._width=Math.ceil(Math.max(xe._width+Ye[0],xe._titleWidth+2*(be+n.titlePad))),xe._height=Math.ceil(Math.max(xe._height+Ye[1],xe._titleHeight+2*(be+n.itemGap))),xe._effHeight=Math.min(xe._height,xe._maxHeight);var st=_e._context.edits,ft=st.legendText||st.legendPosition;we.each(function(Be){var je=w.select(this).select("."+Ee+"toggle"),at=Be[0].height,ot=Be[0].trace.legendgroup,xt=x(Be,xe,Ne);fe&&ot!==""&&(xt=Ue[ot]);var yt=ft?Ne:Ve||xt;he||ae||(yt+=Te/2),l.setRect(je,0,-at/2,yt,at)})}(B,de,me,V)},function(){var _e,Se,we,xe,De=j._size,Ee=V.borderwidth,Me=V.xref==="paper",he=V.yref==="paper";if(!Z){var fe,ae;fe=Me?De.l+De.w*V.x-u[P(V)]*V._width:j.width*V.x-u[P(V)]*V._width,ae=he?De.t+De.h*(1-V.y)-u[O(V)]*V._effHeight:j.height*(1-V.y)-u[O(V)]*V._effHeight;var be=function(nt,bt,wt,ut){var lt=nt._fullLayout,Tt=lt[bt],Et=P(Tt),St=O(Tt),Ft=Tt.xref==="paper",zt=Tt.yref==="paper";nt._fullLayout._reservedMargin[bt]={};var Je=Tt.y<.5?"b":"t",et=Tt.x<.5?"l":"r",Ze={r:lt.width-wt,l:wt+Tt._width,b:lt.height-ut,t:ut+Tt._effHeight};if(Ft&&zt)return i.autoMargin(nt,bt,{x:Tt.x,y:Tt.y,l:Tt._width*u[Et],r:Tt._width*p[Et],b:Tt._effHeight*p[St],t:Tt._effHeight*u[St]});Ft?nt._fullLayout._reservedMargin[bt][Je]=Ze[Je]:zt||Tt.orientation==="v"?nt._fullLayout._reservedMargin[bt][et]=Ze[et]:nt._fullLayout._reservedMargin[bt][Je]=Ze[Je]}(B,W,fe,ae);if(be)return;if(j.margin.autoexpand){var Ie=fe,Te=ae;fe=Me?k.constrain(fe,0,j.width-V._width):Ie,ae=he?k.constrain(ae,0,j.height-V._effHeight):Te,fe!==Ie&&k.log("Constrain "+W+".x to make legend fit inside graph"),ae!==Te&&k.log("Constrain "+W+".y to make legend fit inside graph")}l.setTranslate(J,fe,ae)}if(ce.on(".drag",null),J.on("wheel",null),Z||V._height<=V._maxHeight||B._context.staticPlot){var Ne=V._effHeight;Z&&(Ne=V._height),ee.attr({width:V._width-Ee,height:Ne-Ee,x:Ee/2,y:Ee/2}),l.setTranslate(re,0,0),X.select("rect").attr({width:V._width-2*Ee,height:Ne-2*Ee,x:Ee,y:Ee}),l.setClipUrl(re,D,B),l.setRect(ce,0,0,0,0),delete V._scrollY}else{var qe,ve,Ce,Ae=Math.max(n.scrollBarMinHeight,V._effHeight*V._effHeight/V._height),ze=V._effHeight-Ae-2*n.scrollBarMargin,Ue=V._height-V._effHeight,Ve=ze/Ue,Ye=Math.min(V._scrollY||0,Ue);ee.attr({width:V._width-2*Ee+n.scrollBarWidth+n.scrollBarMargin,height:V._effHeight-Ee,x:Ee/2,y:Ee/2}),X.select("rect").attr({width:V._width-2*Ee+n.scrollBarWidth+n.scrollBarMargin,height:V._effHeight-2*Ee,x:Ee,y:Ee+Ye}),l.setClipUrl(re,D,B),ht(Ye,Ae,Ve),J.on("wheel",function(){ht(Ye=k.constrain(V._scrollY+w.event.deltaY/ze*Ue,0,Ue),Ae,Ve),Ye!==0&&Ye!==Ue&&w.event.preventDefault()});var $e=w.behavior.drag().on("dragstart",function(){var nt=w.event.sourceEvent;qe=nt.type==="touchstart"?nt.changedTouches[0].clientY:nt.clientY,Ce=Ye}).on("drag",function(){var nt=w.event.sourceEvent;nt.buttons===2||nt.ctrlKey||(ve=nt.type==="touchmove"?nt.changedTouches[0].clientY:nt.clientY,Ye=function(bt,wt,ut){var lt=(ut-wt)/Ve+bt;return k.constrain(lt,0,Ue)}(Ce,qe,ve),ht(Ye,Ae,Ve))});ce.call($e);var rt=w.behavior.drag().on("dragstart",function(){var nt=w.event.sourceEvent;nt.type==="touchstart"&&(qe=nt.changedTouches[0].clientY,Ce=Ye)}).on("drag",function(){var nt=w.event.sourceEvent;nt.type==="touchmove"&&(ve=nt.changedTouches[0].clientY,Ye=function(bt,wt,ut){var lt=(wt-ut)/Ve+bt;return k.constrain(lt,0,Ue)}(Ce,qe,ve),ht(Ye,Ae,Ve))});re.call(rt)}function ht(nt,bt,wt){V._scrollY=B._fullLayout[W]._scrollY=nt,l.setTranslate(re,0,-nt),l.setRect(ce,V._width,n.scrollBarMargin+nt*wt,n.scrollBarWidth,bt),X.select("rect").attr("y",Ee+nt)}B._context.edits.legendPosition&&(J.classed("cursor-move",!0),h.init({element:J.node(),gd:B,prepFn:function(){var nt=l.getTranslate(J);we=nt.x,xe=nt.y},moveFn:function(nt,bt){var wt=we+nt,ut=xe+bt;l.setTranslate(J,wt,ut),_e=h.align(wt,V._width,De.l,De.l+De.w,V.xanchor),Se=h.align(ut+V._height,-V._height,De.t+De.h,De.t,V.yanchor)},doneFn:function(){if(_e!==void 0&&Se!==void 0){var nt={};nt[W+".x"]=_e,nt[W+".y"]=Se,_.call("_guiRelayout",B,nt)}},clickFn:function(nt,bt){var wt=G.selectAll("g.traces").filter(function(){var ut=this.getBoundingClientRect();return bt.clientX>=ut.left&&bt.clientX<=ut.right&&bt.clientY>=ut.top&&bt.clientY<=ut.bottom});wt.size()>0&&T(B,J,wt,nt,bt)}}))}],B)}}function x(B,Y,D){var G=B[0],V=G.width,j=Y.entrywidthmode,W=G.trace.legendwidth||Y.entrywidth;return j==="fraction"?Y._maxWidth*W:D+(W||V)}function T(B,Y,D,G,V){var j=D.data()[0][0].trace,W={event:V,node:D.node(),curveNumber:j.index,expandedIndex:j._expandedIndex,data:B.data,layout:B.layout,frames:B._transitionData._frames,config:B._context,fullData:B._fullData,fullLayout:B._fullLayout};j._group&&(W.group=j._group),_.traceIs(j,"pie-like")&&(W.label=D.datum()[0].label),y.triggerHandler(B,"plotly_legendclick",W)!==!1&&(G===1?Y._clickTimeout=setTimeout(function(){B._fullLayout&&r(D,B,G)},B._context.doubleClickDelay):G===2&&(Y._clickTimeout&&clearTimeout(Y._clickTimeout),B._legendMouseDownTime=0,y.triggerHandler(B,"plotly_legenddoubleclick",W)!==!1&&r(D,B,G)))}function d(B,Y,D){var G,V,j=z(D),W=B.data()[0][0],Z=W.trace,ie=_.traceIs(Z,"pie-like"),te=!D._inHover&&Y._context.edits.legendText&&!ie,J=D._maxNameLength;W.groupTitle?(G=W.groupTitle.text,V=W.groupTitle.font):(V=D.font,D.entries?G=W.text:(G=ie?W.label:Z.name,Z._meta&&(G=k.templateString(G,Z._meta))));var X=k.ensureSingle(B,"text",j+"text");X.attr("text-anchor","start").call(l.font,V).text(te?M(G,J):G);var ee=D.itemwidth+2*n.itemGap;o.positionText(X,ee,0),te?X.call(o.makeEditable,{gd:Y,text:G}).call(C,B,Y,D).on("edit",function(re){this.text(M(re,J)).call(C,B,Y,D);var oe=W.trace._fullInput||{},ue={};if(_.hasTransform(oe,"groupby")){var ce=_.getTransformIndices(oe,"groupby"),de=ce[ce.length-1],me=k.keyedContainer(oe,"transforms["+de+"].styles","target","value.name");me.set(W.trace._group,re),ue=me.constructUpdate()}else ue.name=re;return _.call("_guiRestyle",Y,ue,Z.index)}):C(X,B,Y,D)}function M(B,Y){var D=Math.max(4,Y);if(B&&B.trim().length>=D/2)return B;for(var G=D-(B=B||"").length;G>0;G--)B+=" ";return B}function A(B,Y,D){var G,V=Y._context.doubleClickDelay,j=1,W=k.ensureSingle(B,"rect",D+"toggle",function(Z){Y._context.staticPlot||Z.style("cursor","pointer").attr("pointer-events","all"),Z.call(t.fill,"rgba(0,0,0,0)")});Y._context.staticPlot||(W.on("mousedown",function(){(G=new Date().getTime())-Y._legendMouseDownTime<V?j+=1:(j=1,Y._legendMouseDownTime=G)}),W.on("mouseup",function(){if(!Y._dragged&&!Y._editing){var Z=Y._fullLayout[D];new Date().getTime()-Y._legendMouseDownTime>V&&(j=Math.max(j-1,1)),T(Y,Z,B,j,w.event)}}))}function C(B,Y,D,G,V){G._inHover&&B.attr("data-notex",!0),o.convertToTspans(B,D,function(){(function(j,W,Z,ie){var te=j.data()[0][0];if(Z._inHover||!te||te.trace.showlegend){var J=j.select("g[class*=math-group]"),X=J.node(),ee=z(Z);Z||(Z=W._fullLayout[ee]);var re,oe,ue=Z.borderwidth,ce=(ie===f?Z.title.font:te.groupTitle?te.groupTitle.font:Z.font).size*s;if(X){var de=l.bBox(X);re=de.height,oe=de.width,ie===f?l.setTranslate(J,ue,ue+.75*re):l.setTranslate(J,0,.25*re)}else{var me="."+ee+(ie===f?"title":"")+"text",_e=j.select(me),Se=o.lineCount(_e),we=_e.node();if(re=ce*Se,oe=we?l.bBox(we).width:0,ie===f)Z.title.side==="left"&&(oe+=2*n.itemGap),o.positionText(_e,ue+n.titlePad,ue+ce);else{var xe=2*n.itemGap+Z.itemwidth;te.groupTitle&&(xe=n.itemGap,oe-=Z.itemwidth),o.positionText(_e,xe,-ce*((Se-1)/2-.3))}}ie===f?(Z._titleWidth=oe,Z._titleHeight=re):(te.lineHeight=ce,te.height=Math.max(re,16)+3,te.width=oe)}else j.remove()})(Y,D,G,V)})}function P(B){return k.isRightAnchor(B)?"right":k.isCenterAnchor(B)?"center":"left"}function O(B){return k.isBottomAnchor(B)?"bottom":k.isMiddleAnchor(B)?"middle":"top"}function z(B){return B._id||"legend"}R.exports=function(B,Y){if(Y)m(B,Y);else{var D=B._fullLayout,G=D._legends;D._infolayer.selectAll('[class^="legend"]').each(function(){var W=w.select(this),Z=W.attr("class").split(" ")[0];Z.match(v)&&G.indexOf(Z)===-1&&W.remove()});for(var V=0;V<G.length;V++){var j=G[V];m(B,B._fullLayout[j])}}}},82424:function(R,E,e){var w=e(73972),k=e(10130);R.exports=function(i,_,y){var h,l,t=_._inHover,o=k.isGrouped(_),r=k.isReversed(_),n={},a=[],s=!1,u={},p=0,c=0;function b(G,V,j){if(_.visible!==!1&&(!y||G===_._id))if(V!==""&&k.isGrouped(_))a.indexOf(V)===-1?(a.push(V),s=!0,n[V]=[j]):n[V].push(j);else{var W="~~i"+p;a.push(W),n[W]=[j],p++}}for(h=0;h<i.length;h++){var g=i[h],f=g[0],v=f.trace,m=v.legend,x=v.legendgroup;if(t||v.visible&&v.showlegend)if(w.traceIs(v,"pie-like"))for(u[x]||(u[x]={}),l=0;l<g.length;l++){var T=g[l].label;u[x][T]||(b(m,x,{label:T,color:g[l].color,i:g[l].i,trace:v,pts:g[l].pts}),u[x][T]=!0,c=Math.max(c,(T||"").length))}else b(m,x,f),c=Math.max(c,(v.name||"").length)}if(!a.length)return[];var d=!s||!o,M=[];for(h=0;h<a.length;h++){var A=n[a[h]];d?M.push(A[0]):M.push(A)}for(d&&(M=[M]),h=0;h<M.length;h++){var C=1/0;for(l=0;l<M[h].length;l++){var P=M[h][l].trace.legendrank;C>P&&(C=P)}M[h][0]._groupMinRank=C,M[h][0]._preGroupSort=h}var O=function(G,V){return G.trace.legendrank-V.trace.legendrank||G._preSort-V._preSort};for(M.forEach(function(G,V){G[0]._preGroupSort=V}),M.sort(function(G,V){return G[0]._groupMinRank-V[0]._groupMinRank||G[0]._preGroupSort-V[0]._preGroupSort}),h=0;h<M.length;h++){M[h].forEach(function(G,V){G._preSort=V}),M[h].sort(O);var z=M[h][0].trace,B=null;for(l=0;l<M[h].length;l++){var Y=M[h][l].trace.legendgrouptitle;if(Y&&Y.text){B=Y,t&&(Y.font=_._groupTitleFont);break}}if(r&&M[h].reverse(),B){var D=!1;for(l=0;l<M[h].length;l++)if(w.traceIs(M[h][l].trace,"pie-like")){D=!0;break}M[h].unshift({i:-1,groupTitle:B,noClick:D,trace:{showlegend:z.showlegend,legendgroup:z.legendgroup,visible:_.groupclick==="toggleitem"||z.visible}})}for(l=0;l<M[h].length;l++)M[h][l]=[M[h][l]]}return _._lgroupsLength=M.length,_._maxNameLength=c,M}},85167:function(R,E,e){var w=e(71828),k=e(73972),i=!0;R.exports=function(_,y,h){var l=y._fullLayout;if(!y._dragged&&!y._editing){var t,o=l.legend.itemclick,r=l.legend.itemdoubleclick,n=l.legend.groupclick;if(h===1&&o==="toggle"&&r==="toggleothers"&&i&&y.data&&y._context.showTips&&w.notifier(w._(y,"Double-click on legend to isolate one trace"),"long"),i=!1,h===1?t=o:h===2&&(t=r),t){var a=n==="togglegroup",s=l.hiddenlabels?l.hiddenlabels.slice():[],u=_.data()[0][0];if(!u.groupTitle||!u.noClick){var p,c,b,g,f,v=y._fullData,m=u.trace,x=m.legendgroup,T={},d=[],M=[],A=[];if(k.traceIs(m,"pie-like")){var C=u.label,P=s.indexOf(C);t==="toggle"?P===-1?s.push(C):s.splice(P,1):t==="toggleothers"&&(s=[],y.calcdata[0].forEach(function(X){C!==X.label&&s.push(X.label)}),y._fullLayout.hiddenlabels&&y._fullLayout.hiddenlabels.length===s.length&&P===-1&&(s=[])),k.call("_guiRelayout",y,"hiddenlabels",s)}else{var O,z=x&&x.length,B=[];if(z)for(p=0;p<v.length;p++)(O=v[p]).visible&&O.legendgroup===x&&B.push(p);if(t==="toggle"){var Y;switch(m.visible){case!0:Y="legendonly";break;case!1:Y=!1;break;case"legendonly":Y=!0}if(z)if(a)for(p=0;p<v.length;p++)v[p].visible!==!1&&v[p].legendgroup===x&&J(v[p],Y);else J(m,Y);else J(m,Y)}else if(t==="toggleothers"){var D,G,V,j,W=!0;for(p=0;p<v.length;p++)if(D=v[p]===m,V=v[p].showlegend!==!0,!(D||V||(G=z&&v[p].legendgroup===x)||v[p].visible!==!0||k.traceIs(v[p],"notLegendIsolatable"))){W=!1;break}for(p=0;p<v.length;p++)if(v[p].visible!==!1&&!k.traceIs(v[p],"notLegendIsolatable"))switch(m.visible){case"legendonly":J(v[p],!0);break;case!0:j=!!W||"legendonly",D=v[p]===m,V=v[p].showlegend!==!0&&!v[p].legendgroup,G=D||z&&v[p].legendgroup===x,J(v[p],!(!G&&!V)||j)}}for(p=0;p<M.length;p++)if(b=M[p]){var Z=b.constructUpdate(),ie=Object.keys(Z);for(c=0;c<ie.length;c++)g=ie[c],(T[g]=T[g]||[])[A[p]]=Z[g]}for(f=Object.keys(T),p=0;p<f.length;p++)for(g=f[p],c=0;c<d.length;c++)T[g].hasOwnProperty(c)||(T[g][c]=void 0);k.call("_guiRestyle",y,T,d)}}}}function te(X,ee,re){var oe=d.indexOf(X),ue=T[ee];return ue||(ue=T[ee]=[]),d.indexOf(X)===-1&&(d.push(X),oe=d.length-1),ue[oe]=re,oe}function J(X,ee){if(!u.groupTitle||a){var re=X._fullInput;if(k.hasTransform(re,"groupby")){var oe=M[re.index];if(!oe){var ue=k.getTransformIndices(re,"groupby"),ce=ue[ue.length-1];oe=w.keyedContainer(re,"transforms["+ce+"].styles","target","value.visible"),M[re.index]=oe}var de=oe.get(X._group);de===void 0&&(de=!0),de!==!1&&oe.set(X._group,ee),A[re.index]=te(re.index,"visible",re.visible!==!1)}else{var me=re.visible!==!1&ⅇte(re.index,"visible",me)}}}}},10130:function(R,E){E.isGrouped=function(e){return(e.traceorder||"").indexOf("grouped")!==-1},E.isVertical=function(e){return e.orientation!=="h"},E.isReversed=function(e){return(e.traceorder||"").indexOf("reversed")!==-1}},2199:function(R,E,e){R.exports={moduleType:"component",name:"legend",layoutAttributes:e(33030),supplyLayoutDefaults:e(99017),draw:e(43969),style:e(53630)}},53630:function(R,E,e){var w=e(39898),k=e(73972),i=e(71828),_=i.strTranslate,y=e(91424),h=e(7901),l=e(52075).extractOpts,t=e(34098),o=e(63463),r=e(53581).castOption,n=e(14928);function a(p,c){return(c?"radial":"horizontal")+(p?"":"reversed")}function s(p){var c=p[0].trace,b=c.contours,g=t.hasLines(c),f=t.hasMarkers(c),v=c.visible&&c.fill&&c.fill!=="none",m=!1,x=!1;if(b){var T=b.coloring;T==="lines"?m=!0:g=T==="none"||T==="heatmap"||b.showlines,b.type==="constraint"?v=b._operation!=="=":T!=="fill"&&T!=="heatmap"||(x=!0)}return{showMarker:f,showLine:g,showFill:v,showGradientLine:m,showGradientFill:x,anyLine:g||m,anyFill:v||x}}function u(p,c,b){return p&&i.isArrayOrTypedArray(p)?c:p>b?b:p}R.exports=function(p,c,b){var g=c._fullLayout;b||(b=g.legend);var f=b.itemsizing==="constant",v=b.itemwidth,m=(v+2*n.itemGap)/2,x=_(m,0),T=function(A,C,P,O){var z;if(A+1)z=A;else{if(!(C&&C.width>0))return 0;z=C.width}return f?O:Math.min(z,P)};function d(A,C,P){var O=A[0].trace,z=O.marker||{},B=z.line||{},Y=P?O.visible&&O.type===P:k.traceIs(O,"bar"),D=w.select(C).select("g.legendpoints").selectAll("path.legend"+P).data(Y?[A]:[]);D.enter().append("path").classed("legend"+P,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",x),D.exit().remove(),D.each(function(G){var V=w.select(this),j=G[0],W=T(j.mlw,z.line,5,2);V.style("stroke-width",W+"px");var Z=j.mcc;if(!b._inHover&&"mc"in j){var ie=l(z),te=ie.mid;te===void 0&&(te=(ie.max+ie.min)/2),Z=y.tryColorscale(z,"")(te)}var J=Z||j.mc||z.color,X=z.pattern,ee=X&&y.getPatternAttr(X.shape,0,"");if(ee){var re=y.getPatternAttr(X.bgcolor,0,null),oe=y.getPatternAttr(X.fgcolor,0,null),ue=X.fgopacity,ce=u(X.size,8,10),de=u(X.solidity,.5,1),me="legend-"+O.uid;V.call(y.pattern,"legend",c,me,ee,ce,de,Z,X.fillmode,re,oe,ue)}else V.call(h.fill,J);W&&h.stroke(V,j.mlc||B.color)})}function M(A,C,P){var O=A[0],z=O.trace,B=P?z.visible&&z.type===P:k.traceIs(z,P),Y=w.select(C).select("g.legendpoints").selectAll("path.legend"+P).data(B?[A]:[]);if(Y.enter().append("path").classed("legend"+P,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",x),Y.exit().remove(),Y.size()){var D=z.marker||{},G=T(r(D.line.width,O.pts),D.line,5,2),V="pieLike",j=i.minExtend(z,{marker:{line:{width:G}}},V),W=i.minExtend(O,{trace:j},V);o(Y,W,j,c)}}p.each(function(A){var C=w.select(this),P=i.ensureSingle(C,"g","layers");P.style("opacity",A[0].trace.opacity);var O=b.valign,z=A[0].lineHeight,B=A[0].height;if(O!=="middle"&&z&&B){var Y={top:1,bottom:-1}[O]*(.5*(z-B+3));P.attr("transform",_(0,Y))}else P.attr("transform",null);P.selectAll("g.legendfill").data([A]).enter().append("g").classed("legendfill",!0),P.selectAll("g.legendlines").data([A]).enter().append("g").classed("legendlines",!0);var D=P.selectAll("g.legendsymbols").data([A]);D.enter().append("g").classed("legendsymbols",!0),D.selectAll("g.legendpoints").data([A]).enter().append("g").classed("legendpoints",!0)}).each(function(A){var C,P=A[0].trace,O=[];if(P.visible)switch(P.type){case"histogram2d":case"heatmap":O=[["M-15,-2V4H15V-2Z"]],C=!0;break;case"choropleth":case"choroplethmapbox":O=[["M-6,-6V6H6V-6Z"]],C=!0;break;case"densitymapbox":O=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],C="radial";break;case"cone":O=[["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"]],C=!1;break;case"streamtube":O=[["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"]],C=!1;break;case"surface":O=[["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"]],C=!0;break;case"mesh3d":O=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],C=!1;break;case"volume":O=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],C=!0;break;case"isosurface":O=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],C=!1}var z=w.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(O);z.enter().append("path").classed("legend3dandfriends",!0).attr("transform",x).style("stroke-miterlimit",1),z.exit().remove(),z.each(function(B,Y){var D,G=w.select(this),V=l(P),j=V.colorscale,W=V.reversescale;if(j){if(!C){var Z=j.length;D=Y===0?j[W?Z-1:0][1]:Y===1?j[W?0:Z-1][1]:j[Math.floor((Z-1)/2)][1]}}else{var ie=P.vertexcolor||P.facecolor||P.color;D=i.isArrayOrTypedArray(ie)?ie[Y]||ie[0]:ie}G.attr("d",B[0]),D?G.call(h.fill,D):G.call(function(te){if(te.size()){var J="legendfill-"+P.uid;y.gradient(te,c,J,a(W,C==="radial"),j,"fill")}})})}).each(function(A){var C=A[0].trace,P=C.type==="waterfall";if(A[0]._distinct&&P){var O=A[0].trace[A[0].dir].marker;return A[0].mc=O.color,A[0].mlw=O.line.width,A[0].mlc=O.line.color,d(A,this,"waterfall")}var z=[];C.visible&&P&&(z=A[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 B=w.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(z);B.enter().append("path").classed("legendwaterfall",!0).attr("transform",x).style("stroke-miterlimit",1),B.exit().remove(),B.each(function(Y){var D=w.select(this),G=C[Y[0]].marker,V=T(void 0,G.line,5,2);D.attr("d",Y[1]).style("stroke-width",V+"px").call(h.fill,G.color),V&&D.call(h.stroke,G.line.color)})}).each(function(A){d(A,this,"funnel")}).each(function(A){d(A,this)}).each(function(A){var C=A[0].trace,P=w.select(this).select("g.legendpoints").selectAll("path.legendbox").data(C.visible&&k.traceIs(C,"box-violin")?[A]:[]);P.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",x),P.exit().remove(),P.each(function(){var O=w.select(this);if(C.boxpoints!=="all"&&C.points!=="all"||h.opacity(C.fillcolor)!==0||h.opacity((C.line||{}).color)!==0){var z=T(void 0,C.line,5,2);O.style("stroke-width",z+"px").call(h.fill,C.fillcolor),z&&h.stroke(O,C.line.color)}else{var B=i.minExtend(C,{marker:{size:f?12:i.constrain(C.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});P.call(y.pointStyle,B,c)}})}).each(function(A){M(A,this,"funnelarea")}).each(function(A){M(A,this,"pie")}).each(function(A){var C,P,O=s(A),z=O.showFill,B=O.showLine,Y=O.showGradientLine,D=O.showGradientFill,G=O.anyFill,V=O.anyLine,j=A[0],W=j.trace,Z=l(W),ie=Z.colorscale,te=Z.reversescale,J=t.hasMarkers(W)||!G?"M5,0":V?"M5,-2":"M5,-3",X=w.select(this),ee=X.select(".legendfill").selectAll("path").data(z||D?[A]:[]);if(ee.enter().append("path").classed("js-fill",!0),ee.exit().remove(),ee.attr("d",J+"h"+v+"v6h-"+v+"z").call(function(ue){if(ue.size())if(z)y.fillGroupStyle(ue,c);else{var ce="legendfill-"+W.uid;y.gradient(ue,c,ce,a(te),ie,"fill")}}),B||Y){var re=T(void 0,W.line,10,5);P=i.minExtend(W,{line:{width:re}}),C=[i.minExtend(j,{trace:P})]}var oe=X.select(".legendlines").selectAll("path").data(B||Y?[C]:[]);oe.enter().append("path").classed("js-line",!0),oe.exit().remove(),oe.attr("d",J+(Y?"l"+v+",0.0001":"h"+v)).call(B?y.lineGroupStyle:function(ue){if(ue.size()){var ce="legendline-"+W.uid;y.lineGroupStyle(ue),y.gradient(ue,c,ce,a(te),ie,"stroke")}})}).each(function(A){var C,P,O=s(A),z=O.anyFill,B=O.anyLine,Y=O.showLine,D=O.showMarker,G=A[0],V=G.trace,j=!D&&!B&&!z&&t.hasText(V);function W(oe,ue,ce,de){var me=i.nestedProperty(V,oe).get(),_e=i.isArrayOrTypedArray(me)&&ue?ue(me):me;if(f&&_e&&de!==void 0&&(_e=de),ce){if(_e<ce[0])return ce[0];if(_e>ce[1])return ce[1]}return _e}function Z(oe){return G._distinct&&G.index&&oe[G.index]?oe[G.index]:oe[0]}if(D||j||Y){var ie={},te={};if(D){ie.mc=W("marker.color",Z),ie.mx=W("marker.symbol",Z),ie.mo=W("marker.opacity",i.mean,[.2,1]),ie.mlc=W("marker.line.color",Z),ie.mlw=W("marker.line.width",i.mean,[0,5],2),te.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var J=W("marker.size",i.mean,[2,16],12);ie.ms=J,te.marker.size=J}Y&&(te.line={width:W("line.width",Z,[0,10],5)}),j&&(ie.tx="Aa",ie.tp=W("textposition",Z),ie.ts=10,ie.tc=W("textfont.color",Z),ie.tf=W("textfont.family",Z)),C=[i.minExtend(G,ie)],(P=i.minExtend(V,te)).selectedpoints=null,P.texttemplate=null}var X=w.select(this).select("g.legendpoints"),ee=X.selectAll("path.scatterpts").data(D?C:[]);ee.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",x),ee.exit().remove(),ee.call(y.pointStyle,P,c),D&&(C[0].mrc=3);var re=X.selectAll("g.pointtext").data(j?C:[]);re.enter().append("g").classed("pointtext",!0).append("text").attr("transform",x),re.exit().remove(),re.selectAll("text").call(y.textPointStyle,P,c)}).each(function(A){var C=A[0].trace,P=w.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(C.visible&&C.type==="candlestick"?[A,A]:[]);P.enter().append("path").classed("legendcandle",!0).attr("d",function(O,z){return z?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",x).style("stroke-miterlimit",1),P.exit().remove(),P.each(function(O,z){var B=w.select(this),Y=C[z?"increasing":"decreasing"],D=T(void 0,Y.line,5,2);B.style("stroke-width",D+"px").call(h.fill,Y.fillcolor),D&&h.stroke(B,Y.line.color)})}).each(function(A){var C=A[0].trace,P=w.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(C.visible&&C.type==="ohlc"?[A,A]:[]);P.enter().append("path").classed("legendohlc",!0).attr("d",function(O,z){return z?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",x).style("stroke-miterlimit",1),P.exit().remove(),P.each(function(O,z){var B=w.select(this),Y=C[z?"increasing":"decreasing"],D=T(void 0,Y.line,5,2);B.style("fill","none").call(y.dashLine,Y.line.dash,D),D&&h.stroke(B,Y.line.color)})})}},42068:function(R,E,e){e(93348),R.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}},26023:function(R,E,e){var w=e(73972),k=e(74875),i=e(41675),_=e(24255),y=e(34031).eraseActiveShape,h=e(71828),l=h._,t=R.exports={};function o(g,f){var v,m,x=f.currentTarget,T=x.getAttribute("data-attr"),d=x.getAttribute("data-val")||!0,M=g._fullLayout,A={},C=i.list(g,null,!0),P=M._cartesianSpikesEnabled;if(T==="zoom"){var O,z=d==="in"?.5:2,B=(1+z)/2,Y=(1-z)/2;for(m=0;m<C.length;m++)if(!(v=C[m]).fixedrange)if(O=v._name,d==="auto")A[O+".autorange"]=!0;else if(d==="reset"){if(v._rangeInitial===void 0)A[O+".autorange"]=!0;else{var D=v._rangeInitial.slice();A[O+".range[0]"]=D[0],A[O+".range[1]"]=D[1]}v._showSpikeInitial!==void 0&&(A[O+".showspikes"]=v._showSpikeInitial,P!=="on"||v._showSpikeInitial||(P="off"))}else{var G=[v.r2l(v.range[0]),v.r2l(v.range[1])],V=[B*G[0]+Y*G[1],B*G[1]+Y*G[0]];A[O+".range[0]"]=v.l2r(V[0]),A[O+".range[1]"]=v.l2r(V[1])}}else T!=="hovermode"||d!=="x"&&d!=="y"||(d=M._isHoriz?"y":"x",x.setAttribute("data-val",d)),A[T]=d;M._cartesianSpikesEnabled=P,w.call("_guiRelayout",g,A)}function r(g,f){for(var v=f.currentTarget,m=v.getAttribute("data-attr"),x=v.getAttribute("data-val")||!0,T=g._fullLayout._subplots.gl3d||[],d={},M=m.split("."),A=0;A<T.length;A++)d[T[A]+"."+M[1]]=x;var C=x==="pan"?x:"zoom";d.dragmode=C,w.call("_guiRelayout",g,d)}function n(g,f){for(var v=f.currentTarget.getAttribute("data-attr"),m=v==="resetLastSave",x=v==="resetDefault",T=g._fullLayout,d=T._subplots.gl3d||[],M={},A=0;A<d.length;A++){var C,P=d[A],O=P+".camera",z=P+".aspectratio",B=P+".aspectmode",Y=T[P]._scene;m?(M[O+".up"]=Y.viewInitial.up,M[O+".eye"]=Y.viewInitial.eye,M[O+".center"]=Y.viewInitial.center,C=!0):x&&(M[O+".up"]=null,M[O+".eye"]=null,M[O+".center"]=null,C=!0),C&&(M[z+".x"]=Y.viewInitial.aspectratio.x,M[z+".y"]=Y.viewInitial.aspectratio.y,M[z+".z"]=Y.viewInitial.aspectratio.z,M[B]=Y.viewInitial.aspectmode)}w.call("_guiRelayout",g,M)}function a(g,f){var v=f.currentTarget,m=v._previousVal,x=g._fullLayout,T=x._subplots.gl3d||[],d=["xaxis","yaxis","zaxis"],M={},A={};if(m)A=m,v._previousVal=null;else{for(var C=0;C<T.length;C++){var P=T[C],O=x[P],z=P+".hovermode";M[z]=O.hovermode,A[z]=!1;for(var B=0;B<3;B++){var Y=d[B],D=P+"."+Y+".showspikes";A[D]=!1,M[D]=O[Y].showspikes}}v._previousVal=M}return A}function s(g,f){for(var v=f.currentTarget,m=v.getAttribute("data-attr"),x=v.getAttribute("data-val")||!0,T=g._fullLayout,d=T._subplots.geo||[],M=0;M<d.length;M++){var A=d[M],C=T[A];if(m==="zoom"){var P=C.projection.scale,O=x==="in"?2*P:.5*P;w.call("_guiRelayout",g,A+".projection.scale",O)}}m==="reset"&&b(g,"geo")}function u(g){var f=g._fullLayout;return!f.hovermode&&(f._has("cartesian")?f._isHoriz?"y":"x":"closest")}function p(g){var f=u(g);w.call("_guiRelayout",g,"hovermode",f)}function c(g,f){for(var v=f.currentTarget.getAttribute("data-val"),m=g._fullLayout,x=m._subplots.mapbox||[],T={},d=0;d<x.length;d++){var M=x[d],A=m[M].zoom,C=v==="in"?1.05*A:A/1.05;T[M+".zoom"]=C}w.call("_guiRelayout",g,T)}function b(g,f){for(var v=g._fullLayout,m=v._subplots[f]||[],x={},T=0;T<m.length;T++)for(var d=m[T],M=v[d]._subplot.viewInitial,A=Object.keys(M),C=0;C<A.length;C++){var P=A[C];x[d+"."+P]=M[P]}w.call("_guiRelayout",g,x)}t.toImage={name:"toImage",title:function(g){var f=(g._context.toImageButtonOptions||{}).format||"png";return l(g,f==="png"?"Download plot as a png":"Download plot")},icon:_.camera,click:function(g){var f=g._context.toImageButtonOptions,v={format:f.format||"png"};h.notifier(l(g,"Taking snapshot - this may take a few seconds"),"long"),v.format!=="svg"&&h.isIE()&&(h.notifier(l(g,"IE only supports svg. Changing format to svg."),"long"),v.format="svg"),["filename","width","height","scale"].forEach(function(m){m in f&&(v[m]=f[m])}),w.call("downloadImage",g,v).then(function(m){h.notifier(l(g,"Snapshot succeeded")+" - "+m,"long")}).catch(function(){h.notifier(l(g,"Sorry, there was a problem downloading your snapshot!"),"long")})}},t.sendDataToCloud={name:"sendDataToCloud",title:function(g){return l(g,"Edit in Chart Studio")},icon:_.disk,click:function(g){k.sendDataToCloud(g)}},t.editInChartStudio={name:"editInChartStudio",title:function(g){return l(g,"Edit in Chart Studio")},icon:_.pencil,click:function(g){k.sendDataToCloud(g)}},t.zoom2d={name:"zoom2d",_cat:"zoom",title:function(g){return l(g,"Zoom")},attr:"dragmode",val:"zoom",icon:_.zoombox,click:o},t.pan2d={name:"pan2d",_cat:"pan",title:function(g){return l(g,"Pan")},attr:"dragmode",val:"pan",icon:_.pan,click:o},t.select2d={name:"select2d",_cat:"select",title:function(g){return l(g,"Box Select")},attr:"dragmode",val:"select",icon:_.selectbox,click:o},t.lasso2d={name:"lasso2d",_cat:"lasso",title:function(g){return l(g,"Lasso Select")},attr:"dragmode",val:"lasso",icon:_.lasso,click:o},t.drawclosedpath={name:"drawclosedpath",title:function(g){return l(g,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:_.drawclosedpath,click:o},t.drawopenpath={name:"drawopenpath",title:function(g){return l(g,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:_.drawopenpath,click:o},t.drawline={name:"drawline",title:function(g){return l(g,"Draw line")},attr:"dragmode",val:"drawline",icon:_.drawline,click:o},t.drawrect={name:"drawrect",title:function(g){return l(g,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:_.drawrect,click:o},t.drawcircle={name:"drawcircle",title:function(g){return l(g,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:_.drawcircle,click:o},t.eraseshape={name:"eraseshape",title:function(g){return l(g,"Erase active shape")},icon:_.eraseshape,click:y},t.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(g){return l(g,"Zoom in")},attr:"zoom",val:"in",icon:_.zoom_plus,click:o},t.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(g){return l(g,"Zoom out")},attr:"zoom",val:"out",icon:_.zoom_minus,click:o},t.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(g){return l(g,"Autoscale")},attr:"zoom",val:"auto",icon:_.autoscale,click:o},t.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(g){return l(g,"Reset axes")},attr:"zoom",val:"reset",icon:_.home,click:o},t.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(g){return l(g,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:_.tooltip_basic,gravity:"ne",click:o},t.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(g){return l(g,"Compare data on hover")},attr:"hovermode",val:function(g){return g._fullLayout._isHoriz?"y":"x"},icon:_.tooltip_compare,gravity:"ne",click:o},t.zoom3d={name:"zoom3d",_cat:"zoom",title:function(g){return l(g,"Zoom")},attr:"scene.dragmode",val:"zoom",icon:_.zoombox,click:r},t.pan3d={name:"pan3d",_cat:"pan",title:function(g){return l(g,"Pan")},attr:"scene.dragmode",val:"pan",icon:_.pan,click:r},t.orbitRotation={name:"orbitRotation",title:function(g){return l(g,"Orbital rotation")},attr:"scene.dragmode",val:"orbit",icon:_["3d_rotate"],click:r},t.tableRotation={name:"tableRotation",title:function(g){return l(g,"Turntable rotation")},attr:"scene.dragmode",val:"turntable",icon:_["z-axis"],click:r},t.resetCameraDefault3d={name:"resetCameraDefault3d",_cat:"resetCameraDefault",title:function(g){return l(g,"Reset camera to default")},attr:"resetDefault",icon:_.home,click:n},t.resetCameraLastSave3d={name:"resetCameraLastSave3d",_cat:"resetCameraLastSave",title:function(g){return l(g,"Reset camera to last save")},attr:"resetLastSave",icon:_.movie,click:n},t.hoverClosest3d={name:"hoverClosest3d",_cat:"hoverclosest",title:function(g){return l(g,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:_.tooltip_basic,gravity:"ne",click:function(g,f){var v=a(g,f);w.call("_guiRelayout",g,v)}},t.zoomInGeo={name:"zoomInGeo",_cat:"zoomin",title:function(g){return l(g,"Zoom in")},attr:"zoom",val:"in",icon:_.zoom_plus,click:s},t.zoomOutGeo={name:"zoomOutGeo",_cat:"zoomout",title:function(g){return l(g,"Zoom out")},attr:"zoom",val:"out",icon:_.zoom_minus,click:s},t.resetGeo={name:"resetGeo",_cat:"reset",title:function(g){return l(g,"Reset")},attr:"reset",val:null,icon:_.autoscale,click:s},t.hoverClosestGeo={name:"hoverClosestGeo",_cat:"hoverclosest",title:function(g){return l(g,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:_.tooltip_basic,gravity:"ne",click:p},t.hoverClosestGl2d={name:"hoverClosestGl2d",_cat:"hoverclosest",title:function(g){return l(g,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:_.tooltip_basic,gravity:"ne",click:p},t.hoverClosestPie={name:"hoverClosestPie",_cat:"hoverclosest",title:function(g){return l(g,"Toggle show closest data on hover")},attr:"hovermode",val:"closest",icon:_.tooltip_basic,gravity:"ne",click:p},t.resetViewSankey={name:"resetSankeyGroup",title:function(g){return l(g,"Reset view")},icon:_.home,click:function(g){for(var f={"node.groups":[],"node.x":[],"node.y":[]},v=0;v<g._fullData.length;v++){var m=g._fullData[v]._viewInitial;f["node.groups"].push(m.node.groups.slice()),f["node.x"].push(m.node.x.slice()),f["node.y"].push(m.node.y.slice())}w.call("restyle",g,f)}},t.toggleHover={name:"toggleHover",title:function(g){return l(g,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:_.tooltip_basic,gravity:"ne",click:function(g,f){var v=a(g,f);v.hovermode=u(g),w.call("_guiRelayout",g,v)}},t.resetViews={name:"resetViews",title:function(g){return l(g,"Reset views")},icon:_.home,click:function(g,f){var v=f.currentTarget;v.setAttribute("data-attr","zoom"),v.setAttribute("data-val","reset"),o(g,f),v.setAttribute("data-attr","resetLastSave"),n(g,f),b(g,"geo"),b(g,"mapbox")}},t.toggleSpikelines={name:"toggleSpikelines",title:function(g){return l(g,"Toggle Spike Lines")},icon:_.spikeline,attr:"_cartesianSpikesEnabled",val:"on",click:function(g){var f=g._fullLayout,v=f._cartesianSpikesEnabled;f._cartesianSpikesEnabled=v==="on"?"off":"on",w.call("_guiRelayout",g,function(m){for(var x=m._fullLayout._cartesianSpikesEnabled==="on",T=i.list(m,null,!0),d={},M=0;M<T.length;M++){var A=T[M];d[A._name+".showspikes"]=!!x||A._showSpikeInitial}return d}(g))}},t.resetViewMapbox={name:"resetViewMapbox",_cat:"resetView",title:function(g){return l(g,"Reset view")},attr:"reset",icon:_.home,click:function(g){b(g,"mapbox")}},t.zoomInMapbox={name:"zoomInMapbox",_cat:"zoomin",title:function(g){return l(g,"Zoom in")},attr:"zoom",val:"in",icon:_.zoom_plus,click:c},t.zoomOutMapbox={name:"zoomOutMapbox",_cat:"zoomout",title:function(g){return l(g,"Zoom out")},attr:"zoom",val:"out",icon:_.zoom_minus,click:c}},93348:function(R,E,e){var w=e(26023),k=Object.keys(w),i=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],_=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(i),y=[];k.forEach(function(h){(function(l){if(_.indexOf(l._cat||l.name)===-1){var t=l.name,o=(l._cat||l.name).toLowerCase();y.indexOf(t)===-1&&y.push(t),y.indexOf(o)===-1&&y.push(o)}})(w[h])}),y.sort(),R.exports={DRAW_MODES:i,backButtons:_,foreButtons:y}},35750:function(R,E,e){var w=e(71828),k=e(7901),i=e(44467),_=e(42068);R.exports=function(y,h){var l=y.modebar||{},t=i.newContainer(h,"modebar");function o(n,a){return w.coerce(l,t,_,n,a)}o("orientation"),o("bgcolor",k.addOpacity(h.paper_bgcolor,.5));var r=k.contrast(k.rgb(h.modebar.bgcolor));o("color",k.addOpacity(r,.3)),o("activecolor",k.addOpacity(r,.7)),o("uirevision",h.uirevision),o("add"),o("remove")}},64168:function(R,E,e){R.exports={moduleType:"component",name:"modebar",layoutAttributes:e(42068),supplyLayoutDefaults:e(35750),manage:e(14192)}},14192:function(R,E,e){var w=e(41675),k=e(34098),i=e(73972),_=e(23469).isUnifiedHover,y=e(37676),h=e(26023),l=e(93348).DRAW_MODES,t=e(71828).extendDeep;R.exports=function(o){var r=o._fullLayout,n=o._context,a=r._modeBar;if(n.displayModeBar||n.watermark){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 s,u=n.modeBarButtons;s=Array.isArray(u)&&u.length?function(p){for(var c=t([],p),b=0;b<c.length;b++)for(var g=c[b],f=0;f<g.length;f++){var v=g[f];if(typeof v=="string"){if(h[v]===void 0)throw new Error(["*modeBarButtons* configuration options","invalid button name"].join(" "));c[b][f]=h[v]}}return c}(u):!n.displayModeBar&&n.watermark?[]:function(p){var c=p._fullLayout,b=p._fullData,g=p._context;function f(me,_e){if(typeof _e=="string"){if(_e.toLowerCase()===me.toLowerCase())return!0}else{var Se=_e.name,we=_e._cat||_e.name;if(Se===me||we===me.toLowerCase())return!0}return!1}var v=c.modebar.add;typeof v=="string"&&(v=[v]);var m=c.modebar.remove;typeof m=="string"&&(m=[m]);var x=g.modeBarButtonsToAdd.concat(v.filter(function(me){for(var _e=0;_e<g.modeBarButtonsToRemove.length;_e++)if(f(me,g.modeBarButtonsToRemove[_e]))return!1;return!0})),T=g.modeBarButtonsToRemove.concat(m.filter(function(me){for(var _e=0;_e<g.modeBarButtonsToAdd.length;_e++)if(f(me,g.modeBarButtonsToAdd[_e]))return!1;return!0})),d=c._has("cartesian"),M=c._has("gl3d"),A=c._has("geo"),C=c._has("pie"),P=c._has("funnelarea"),O=c._has("gl2d"),z=c._has("ternary"),B=c._has("mapbox"),Y=c._has("polar"),D=c._has("smith"),G=c._has("sankey"),V=function(me){for(var _e=w.list({_fullLayout:me},null,!0),Se=0;Se<_e.length;Se++)if(!_e[Se].fixedrange)return!1;return!0}(c),j=_(c.hovermode),W=[];function Z(me){if(me.length){for(var _e=[],Se=0;Se<me.length;Se++){for(var we=me[Se],xe=h[we],De=xe.name.toLowerCase(),Ee=(xe._cat||xe.name).toLowerCase(),Me=!1,he=0;he<T.length;he++){var fe=T[he].toLowerCase();if(fe===De||fe===Ee){Me=!0;break}}Me||_e.push(h[we])}W.push(_e)}}var ie=["toImage"];g.showEditInChartStudio?ie.push("editInChartStudio"):g.showSendToCloud&&ie.push("sendDataToCloud"),Z(ie);var te=[],J=[],X=[],ee=[];(d||O||C||P||z)+A+M+B+Y+D>1?(J=["toggleHover"],X=["resetViews"]):A?(te=["zoomInGeo","zoomOutGeo"],J=["hoverClosestGeo"],X=["resetGeo"]):M?(J=["hoverClosest3d"],X=["resetCameraDefault3d","resetCameraLastSave3d"]):B?(te=["zoomInMapbox","zoomOutMapbox"],J=["toggleHover"],X=["resetViewMapbox"]):O?J=["hoverClosestGl2d"]:C?J=["hoverClosestPie"]:G?(J=["hoverClosestCartesian","hoverCompareCartesian"],X=["resetViewSankey"]):J=["toggleHover"],d&&(J=["toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"]),(function(me){for(var _e=0;_e<me.length;_e++)if(!i.traceIs(me[_e],"noHover"))return!1;return!0}(b)||j)&&(J=[]),!d&&!O||V||(te=["zoomIn2d","zoomOut2d","autoScale2d"],X[0]!=="resetViews"&&(X=["resetScale2d"])),M?ee=["zoom3d","pan3d","orbitRotation","tableRotation"]:(d||O)&&!V||z?ee=["zoom2d","pan2d"]:B||A?ee=["pan2d"]:Y&&(ee=["zoom2d"]),function(me){for(var _e=!1,Se=0;Se<me.length&&!_e;Se++){var we=me[Se];we._module&&we._module.selectPoints&&(i.traceIs(we,"scatter-like")?(k.hasMarkers(we)||k.hasText(we))&&(_e=!0):i.traceIs(we,"box-violin")&&we.boxpoints!=="all"&&we.points!=="all"||(_e=!0))}return _e}(b)&&ee.push("select2d","lasso2d");var re=[],oe=function(me){re.indexOf(me)===-1&&J.indexOf(me)!==-1&&re.push(me)};if(Array.isArray(x)){for(var ue=[],ce=0;ce<x.length;ce++){var de=x[ce];typeof de=="string"?(de=de.toLowerCase(),l.indexOf(de)!==-1?(c._has("mapbox")||c._has("cartesian"))&&ee.push(de):de==="togglespikelines"?oe("toggleSpikelines"):de==="togglehover"?oe("toggleHover"):de==="hovercompare"?oe("hoverCompareCartesian"):de==="hoverclosest"?(oe("hoverClosestCartesian"),oe("hoverClosestGeo"),oe("hoverClosest3d"),oe("hoverClosestGl2d"),oe("hoverClosestPie")):de==="v1hovermode"&&(oe("toggleHover"),oe("hoverClosestCartesian"),oe("hoverCompareCartesian"),oe("hoverClosestGeo"),oe("hoverClosest3d"),oe("hoverClosestGl2d"),oe("hoverClosestPie"))):ue.push(de)}x=ue}return Z(ee),Z(te.concat(X)),Z(re),function(me,_e){if(_e.length)if(Array.isArray(_e[0]))for(var Se=0;Se<_e.length;Se++)me.push(_e[Se]);else me.push(_e);return me}(W,x)}(o),a?a.update(o,s):r._modeBar=y(o,s)}else a&&(a.destroy(),delete r._modeBar)}},37676:function(R,E,e){var w=e(39898),k=e(92770),i=e(71828),_=e(24255),y=e(11506).version,h=new DOMParser;function l(o){this.container=o.container,this.element=document.createElement("div"),this.update(o.graphInfo,o.buttons),this.container.appendChild(this.element)}var t=l.prototype;t.update=function(o,r){this.graphInfo=o;var n=this.graphInfo._context,a=this.graphInfo._fullLayout,s="modebar-"+a._uid;this.element.setAttribute("id",s),this._uid=s,this.element.className="modebar",n.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),a.modebar.orientation==="v"&&(this.element.className+=" vertical",r=r.reverse());var u=a.modebar,p=n.displayModeBar==="hover"?".js-plotly-plot .plotly:hover ":"";i.deleteRelatedStyleRule(s),i.addRelatedStyleRule(s,p+"#"+s+" .modebar-group","background-color: "+u.bgcolor),i.addRelatedStyleRule(s,"#"+s+" .modebar-btn .icon path","fill: "+u.color),i.addRelatedStyleRule(s,"#"+s+" .modebar-btn:hover .icon path","fill: "+u.activecolor),i.addRelatedStyleRule(s,"#"+s+" .modebar-btn.active .icon path","fill: "+u.activecolor);var c=!this.hasButtons(r),b=this.hasLogo!==n.displaylogo,g=this.locale!==n.locale;if(this.locale=n.locale,(c||b||g)&&(this.removeAllButtons(),this.updateButtons(r),n.watermark||n.displaylogo)){var f=this.getLogo();n.watermark&&(f.className=f.className+" watermark"),a.modebar.orientation==="v"?this.element.insertBefore(f,this.element.childNodes[0]):this.element.appendChild(f),this.hasLogo=!0}this.updateActiveButton()},t.updateButtons=function(o){var r=this;this.buttons=o,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(n){var a=r.createGroup();n.forEach(function(s){var u=s.name;if(!u)throw new Error("must provide button 'name' in button config");if(r.buttonsNames.indexOf(u)!==-1)throw new Error("button name '"+u+"' is taken");r.buttonsNames.push(u);var p=r.createButton(s);r.buttonElements.push(p),a.appendChild(p)}),r.element.appendChild(a)})},t.createGroup=function(){var o=document.createElement("div");return o.className="modebar-group",o},t.createButton=function(o){var r=this,n=document.createElement("a");n.setAttribute("rel","tooltip"),n.className="modebar-btn";var a=o.title;a===void 0?a=o.name:typeof a=="function"&&(a=a(this.graphInfo)),(a||a===0)&&n.setAttribute("data-title",a),o.attr!==void 0&&n.setAttribute("data-attr",o.attr);var s=o.val;if(s!==void 0&&(typeof s=="function"&&(s=s(this.graphInfo)),n.setAttribute("data-val",s)),typeof o.click!="function")throw new Error("must provide button 'click' function in button config");n.addEventListener("click",function(p){o.click(r.graphInfo,p),r.updateActiveButton(p.currentTarget)}),n.setAttribute("data-toggle",o.toggle||!1),o.toggle&&w.select(n).classed("active",!0);var u=o.icon;return typeof u=="function"?n.appendChild(u()):n.appendChild(this.createIcon(u||_.question)),n.setAttribute("data-gravity",o.gravity||"n"),n},t.createIcon=function(o){var r,n=k(o.height)?Number(o.height):o.ascent-o.descent,a="http://www.w3.org/2000/svg";if(o.path){(r=document.createElementNS(a,"svg")).setAttribute("viewBox",[0,0,o.width,n].join(" ")),r.setAttribute("class","icon");var s=document.createElementNS(a,"path");s.setAttribute("d",o.path),o.transform?s.setAttribute("transform",o.transform):o.ascent!==void 0&&s.setAttribute("transform","matrix(1 0 0 -1 0 "+o.ascent+")"),r.appendChild(s)}return o.svg&&(r=h.parseFromString(o.svg,"application/xml").childNodes[0]),r.setAttribute("height","1em"),r.setAttribute("width","1em"),r},t.updateActiveButton=function(o){var r=this.graphInfo._fullLayout,n=o!==void 0?o.getAttribute("data-attr"):null;this.buttonElements.forEach(function(a){var s=a.getAttribute("data-val")||!0,u=a.getAttribute("data-attr"),p=a.getAttribute("data-toggle")==="true",c=w.select(a);if(p)u===n&&c.classed("active",!c.classed("active"));else{var b=u===null?u:i.nestedProperty(r,u).get();c.classed("active",b===s)}})},t.hasButtons=function(o){var r=this.buttons;if(!r||o.length!==r.length)return!1;for(var n=0;n<o.length;++n){if(o[n].length!==r[n].length)return!1;for(var a=0;a<o[n].length;a++)if(o[n][a].name!==r[n][a].name)return!1}return!0},t.getLogo=function(){var o=this.createGroup(),r=document.createElement("a");return r.href="https://plotly.com/",r.target="_blank",r.setAttribute("data-title",i._(this.graphInfo,"Produced with Plotly.js")+" (v"+y+")"),r.className="modebar-btn plotlyjsicon modebar-btn--logo",r.appendChild(this.createIcon(_.newplotlylogo)),o.appendChild(r),o},t.removeAllButtons=function(){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.hasLogo=!1},t.destroy=function(){i.removeElement(this.container.querySelector(".modebar")),i.deleteRelatedStyleRule(this._uid)},R.exports=function(o,r){var n=o._fullLayout,a=new l({graphInfo:o,container:n._modebardiv.node(),buttons:r});return n._privateplot&&w.select(a.element).append("span").classed("badge-private float--left",!0).text("PRIVATE"),a}},37113:function(R,E,e){var w=e(41940),k=e(22399),i=(0,e(44467).templatedArray)("button",{visible:{valType:"boolean",dflt:!0,editType:"plot"},step:{valType:"enumerated",values:["month","year","day","hour","minute","second","all"],dflt:"month",editType:"plot"},stepmode:{valType:"enumerated",values:["backward","todate"],dflt:"backward",editType:"plot"},count:{valType:"number",min:0,dflt:1,editType:"plot"},label:{valType:"string",editType:"plot"},editType:"plot"});R.exports={visible:{valType:"boolean",editType:"plot"},buttons:i,x:{valType:"number",min:-2,max:3,editType:"plot"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"plot"},y:{valType:"number",min:-2,max:3,editType:"plot"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"bottom",editType:"plot"},font:w({editType:"plot"}),bgcolor:{valType:"color",dflt:k.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:k.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}},89573:function(R){R.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}},28674:function(R,E,e){var w=e(71828),k=e(7901),i=e(44467),_=e(85501),y=e(37113),h=e(89573);function l(t,o,r,n){var a=n.calendar;function s(p,c){return w.coerce(t,o,y.buttons,p,c)}if(s("visible")){var u=s("step");u!=="all"&&(!a||a==="gregorian"||u!=="month"&&u!=="year"?s("stepmode"):o.stepmode="backward",s("count")),s("label")}}R.exports=function(t,o,r,n,a){var s=t.rangeselector||{},u=i.newContainer(o,"rangeselector");function p(g,f){return w.coerce(s,u,y,g,f)}if(p("visible",_(s,u,{name:"buttons",handleItemDefaults:l,calendar:a}).length>0)){var c=function(g,f,v){for(var m=v.filter(function(M){return f[M].anchor===g._id}),x=0,T=0;T<m.length;T++){var d=f[m[T]].domain;d&&(x=Math.max(d[1],x))}return[g.domain[0],x+h.yPad]}(o,r,n);p("x",c[0]),p("y",c[1]),w.noneOrAll(t,o,["x","y"]),p("xanchor"),p("yanchor"),w.coerceFont(p,"font",r.font);var b=p("bgcolor");p("activecolor",k.contrast(b,h.lightAmount,h.darkAmount)),p("bordercolor"),p("borderwidth")}}},21598:function(R,E,e){var w=e(39898),k=e(73972),i=e(74875),_=e(7901),y=e(91424),h=e(71828),l=h.strTranslate,t=e(63893),o=e(41675),r=e(18783),n=r.LINE_SPACING,a=r.FROM_TL,s=r.FROM_BR,u=e(89573),p=e(70565);function c(f){return f._id}function b(f,v,m){var x=h.ensureSingle(f,"rect","selector-rect",function(T){T.attr("shape-rendering","crispEdges")});x.attr({rx:u.rx,ry:u.ry}),x.call(_.stroke,v.bordercolor).call(_.fill,function(T,d){return d._isActive||d._isHovered?T.activecolor:T.bgcolor}(v,m)).style("stroke-width",v.borderwidth+"px")}function g(f,v,m,x){var T,d;h.ensureSingle(f,"text","selector-text",function(M){M.attr("text-anchor","middle")}).call(y.font,v.font).text((T=m,d=x._fullLayout._meta,T.label?d?h.templateString(T.label,d):T.label:T.step==="all"?"all":T.count+T.step.charAt(0))).call(function(M){t.convertToTspans(M,x)})}R.exports=function(f){var v=f._fullLayout._infolayer.selectAll(".rangeselector").data(function(m){for(var x=o.list(m,"x",!0),T=[],d=0;d<x.length;d++){var M=x[d];M.rangeselector&&M.rangeselector.visible&&T.push(M)}return T}(f),c);v.enter().append("g").classed("rangeselector",!0),v.exit().remove(),v.style({cursor:"pointer","pointer-events":"all"}),v.each(function(m){var x=w.select(this),T=m,d=T.rangeselector,M=x.selectAll("g.button").data(h.filterVisible(d.buttons));M.enter().append("g").classed("button",!0),M.exit().remove(),M.each(function(A){var C=w.select(this),P=p(T,A);A._isActive=function(O,z,B){if(z.step==="all")return O.autorange===!0;var Y=Object.keys(B);return O.range[0]===B[Y[0]]&&O.range[1]===B[Y[1]]}(T,A,P),C.call(b,d,A),C.call(g,d,A,f),C.on("click",function(){f._dragged||k.call("_guiRelayout",f,P)}),C.on("mouseover",function(){A._isHovered=!0,C.call(b,d,A)}),C.on("mouseout",function(){A._isHovered=!1,C.call(b,d,A)})}),function(A,C,P,O,z){var B=0,Y=0,D=P.borderwidth;C.each(function(){var ie=w.select(this).select(".selector-text"),te=P.font.size*n,J=Math.max(te*t.lineCount(ie),16)+3;Y=Math.max(Y,J)}),C.each(function(){var ie=w.select(this),te=ie.select(".selector-rect"),J=ie.select(".selector-text"),X=J.node()&&y.bBox(J.node()).width,ee=P.font.size*n,re=t.lineCount(J),oe=Math.max(X+10,u.minButtonWidth);ie.attr("transform",l(D+B,D)),te.attr({x:0,y:0,width:oe,height:Y}),t.positionText(J,oe/2,Y/2-(re-1)*ee/2+3),B+=oe+5});var G=A._fullLayout._size,V=G.l+G.w*P.x,j=G.t+G.h*(1-P.y),W="left";h.isRightAnchor(P)&&(V-=B,W="right"),h.isCenterAnchor(P)&&(V-=B/2,W="center");var Z="top";h.isBottomAnchor(P)&&(j-=Y,Z="bottom"),h.isMiddleAnchor(P)&&(j-=Y/2,Z="middle"),B=Math.ceil(B),Y=Math.ceil(Y),V=Math.round(V),j=Math.round(j),i.autoMargin(A,O+"-range-selector",{x:P.x,y:P.y,l:B*a[W],r:B*s[W],b:Y*s[Z],t:Y*a[Z]}),z.attr("transform",l(V,j))}(f,M,d,T._name,x)})}},70565:function(R,E,e){var w=e(81041),k=e(71828).titleCase;R.exports=function(i,_){var y=i._name,h={};if(_.step==="all")h[y+".autorange"]=!0;else{var l=function(t,o){var r,n=t.range,a=new Date(t.r2l(n[1])),s=o.step,u=w["utc"+k(s)],p=o.count;switch(o.stepmode){case"backward":r=t.l2r(+u.offset(a,-p));break;case"todate":var c=u.offset(a,-p);r=t.l2r(+u.ceil(c))}return[r,n[1]]}(i,_);h[y+".range[0]"]=l[0],h[y+".range[1]"]=l[1]}return h}},97218:function(R,E,e){R.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:e(37113)}}},layoutAttributes:e(37113),handleDefaults:e(28674),draw:e(21598)}},75148:function(R,E,e){var w=e(22399);R.exports={bgcolor:{valType:"color",dflt:w.background,editType:"plot"},bordercolor:{valType:"color",dflt:w.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}},88443:function(R,E,e){var w=e(41675).list,k=e(71739).getAutoRange,i=e(73251);R.exports=function(_){for(var y=w(_,"x",!0),h=0;h<y.length;h++){var l=y[h],t=l[i.name];t&&t.visible&&t.autorange&&(t._input.autorange=!0,t._input.range=t.range=k(_,l))}}},73251:function(R){R.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}},26377:function(R,E,e){var w=e(71828),k=e(44467),i=e(41675),_=e(75148),y=e(47850);R.exports=function(h,l,t){var o=h[t],r=l[t];if(o.rangeslider||l._requestRangeslider[r._id]){w.isPlainObject(o.rangeslider)||(o.rangeslider={});var n,a,s=o.rangeslider,u=k.newContainer(r,"rangeslider");if(x("visible")){x("bgcolor",l.plot_bgcolor),x("bordercolor"),x("borderwidth"),x("thickness"),x("autorange",!r.isValidRange(s.range)),x("range");var p=l._subplots;if(p)for(var c=p.cartesian.filter(function(d){return d.substr(0,d.indexOf("y"))===i.name2id(t)}).map(function(d){return d.substr(d.indexOf("y"),d.length)}),b=w.simpleMap(c,i.id2name),g=0;g<b.length;g++){var f=b[g];n=s[f]||{},a=k.newContainer(u,f,"yaxis");var v,m=l[f];n.range&&m.isValidRange(n.range)&&(v="fixed"),T("rangemode",v)!=="match"&&T("range",m.range.slice())}u._input=s}}function x(d,M){return w.coerce(s,u,_,d,M)}function T(d,M){return w.coerce(n,a,y,d,M)}}},72413:function(R,E,e){var w=e(39898),k=e(73972),i=e(74875),_=e(71828),y=_.strTranslate,h=e(91424),l=e(7901),t=e(92998),o=e(93612),r=e(41675),n=e(28569),a=e(6964),s=e(73251);function u(v,m,x,T){var d=_.ensureSingle(v,"rect",s.bgClassName,function(P){P.attr({x:0,y:0,"shape-rendering":"crispEdges"})}),M=T.borderwidth%2==0?T.borderwidth:T.borderwidth-1,A=-T._offsetShift,C=h.crispRound(m,T.borderwidth);d.attr({width:T._width+M,height:T._height+M,transform:y(A,A),"stroke-width":C}).call(l.stroke,T.bordercolor).call(l.fill,T.bgcolor)}function p(v,m,x,T){var d=m._fullLayout;_.ensureSingleById(d._topdefs,"clipPath",T._clipId,function(M){M.append("rect").attr({x:0,y:0})}).select("rect").attr({width:T._width,height:T._height})}function c(v,m,x,T){var d,M=m.calcdata,A=v.selectAll("g."+s.rangePlotClassName).data(x._subplotsWith,_.identity);A.enter().append("g").attr("class",function(C){return s.rangePlotClassName+" "+C}).call(h.setClipUrl,T._clipId,m),A.order(),A.exit().remove(),A.each(function(C,P){var O=w.select(this),z=P===0,B=r.getFromId(m,C,"y"),Y=B._name,D=T[Y],G={data:[],layout:{xaxis:{type:x.type,domain:[0,1],range:T.range.slice(),calendar:x.calendar},width:T._width,height:T._height,margin:{t:0,b:0,l:0,r:0}},_context:m._context};x.rangebreaks&&(G.layout.xaxis.rangebreaks=x.rangebreaks),G.layout[Y]={type:B.type,domain:[0,1],range:D.rangemode!=="match"?D.range.slice():B.range.slice(),calendar:B.calendar},B.rangebreaks&&(G.layout[Y].rangebreaks=B.rangebreaks),i.supplyDefaults(G);var V=G._fullLayout.xaxis,j=G._fullLayout[Y];V.clearCalc(),V.setScale(),j.clearCalc(),j.setScale();var W={id:C,plotgroup:O,xaxis:V,yaxis:j,isRangePlot:!0};z?d=W:(W.mainplot="xy",W.mainplotinfo=d),o.rangePlot(m,W,function(Z,ie){for(var te=[],J=0;J<Z.length;J++){var X=Z[J],ee=X[0].trace;ee.xaxis+ee.yaxis===ie&&te.push(X)}return te}(M,C))})}function b(v,m,x,T,d){_.ensureSingle(v,"rect",s.maskMinClassName,function(M){M.attr({x:0,y:0,"shape-rendering":"crispEdges"})}).attr("height",T._height).call(l.fill,s.maskColor),_.ensureSingle(v,"rect",s.maskMaxClassName,function(M){M.attr({y:0,"shape-rendering":"crispEdges"})}).attr("height",T._height).call(l.fill,s.maskColor),d.rangemode!=="match"&&(_.ensureSingle(v,"rect",s.maskMinOppAxisClassName,function(M){M.attr({y:0,"shape-rendering":"crispEdges"})}).attr("width",T._width).call(l.fill,s.maskOppAxisColor),_.ensureSingle(v,"rect",s.maskMaxOppAxisClassName,function(M){M.attr({y:0,"shape-rendering":"crispEdges"})}).attr("width",T._width).style("border-top",s.maskOppBorder).call(l.fill,s.maskOppAxisColor))}function g(v,m,x,T){m._context.staticPlot||_.ensureSingle(v,"rect",s.slideBoxClassName,function(d){d.attr({y:0,cursor:s.slideBoxCursor,"shape-rendering":"crispEdges"})}).attr({height:T._height,fill:s.slideBoxFill})}function f(v,m,x,T){var d=_.ensureSingle(v,"g",s.grabberMinClassName),M=_.ensureSingle(v,"g",s.grabberMaxClassName),A={x:0,width:s.handleWidth,rx:s.handleRadius,fill:l.background,stroke:l.defaultLine,"stroke-width":s.handleStrokeWidth,"shape-rendering":"crispEdges"},C={y:Math.round(T._height/4),height:Math.round(T._height/2)};_.ensureSingle(d,"rect",s.handleMinClassName,function(O){O.attr(A)}).attr(C),_.ensureSingle(M,"rect",s.handleMaxClassName,function(O){O.attr(A)}).attr(C);var P={width:s.grabAreaWidth,x:0,y:0,fill:s.grabAreaFill,cursor:m._context.staticPlot?void 0:s.grabAreaCursor};_.ensureSingle(d,"rect",s.grabAreaMinClassName,function(O){O.attr(P)}).attr("height",T._height),_.ensureSingle(M,"rect",s.grabAreaMaxClassName,function(O){O.attr(P)}).attr("height",T._height)}R.exports=function(v){for(var m=v._fullLayout,x=m._rangeSliderData,T=0;T<x.length;T++){var d=x[T][s.name];d._clipId=d._id+"-"+m._uid}var M=m._infolayer.selectAll("g."+s.containerClassName).data(x,function(A){return A._name});M.exit().each(function(A){var C=A[s.name];m._topdefs.select("#"+C._clipId).remove()}).remove(),x.length!==0&&(M.enter().append("g").classed(s.containerClassName,!0).attr("pointer-events","all"),M.each(function(A){var C=w.select(this),P=A[s.name],O=m[r.id2name(A.anchor)],z=P[r.id2name(A.anchor)];if(P.range){var B,Y=_.simpleMap(P.range,A.r2l),D=_.simpleMap(A.range,A.r2l);B=D[0]<D[1]?[Math.min(Y[0],D[0]),Math.max(Y[1],D[1])]:[Math.max(Y[0],D[0]),Math.min(Y[1],D[1])],P.range=P._input.range=_.simpleMap(B,A.l2r)}A.cleanRange("rangeslider.range");var G=m._size,V=A.domain;P._width=G.w*(V[1]-V[0]);var j=Math.round(G.l+G.w*V[0]),W=Math.round(G.t+G.h*(1-A._counterDomainMin)+(A.side==="bottom"?A._depth:0)+P._offsetShift+s.extraPad);C.attr("transform",y(j,W)),P._rl=_.simpleMap(P.range,A.r2l);var Z=P._rl[0],ie=P._rl[1],te=ie-Z;if(P.p2d=function(me){return me/P._width*te+Z},P.d2p=function(me){return(me-Z)/te*P._width},A.rangebreaks){var J=A.locateBreaks(Z,ie);if(J.length){var X,ee,re=0;for(X=0;X<J.length;X++)re+=(ee=J[X]).max-ee.min;var oe=P._width/(ie-Z-re),ue=[-oe*Z];for(X=0;X<J.length;X++)ee=J[X],ue.push(ue[ue.length-1]-oe*(ee.max-ee.min));for(P.d2p=function(me){for(var _e=ue[0],Se=0;Se<J.length;Se++){var we=J[Se];if(me>=we.max)_e=ue[Se+1];else if(me<we.min)break}return _e+oe*me},X=0;X<J.length;X++)(ee=J[X]).pmin=P.d2p(ee.min),ee.pmax=P.d2p(ee.max);P.p2d=function(me){for(var _e=ue[0],Se=0;Se<J.length;Se++){var we=J[Se];if(me>=we.pmax)_e=ue[Se+1];else if(me<we.pmin)break}return(me-_e)/oe}}}if(z.rangemode!=="match"){var ce=O.r2l(z.range[0]),de=O.r2l(z.range[1])-ce;P.d2pOppAxis=function(me){return(me-ce)/de*P._height}}C.call(u,v,A,P).call(p,v,A,P).call(c,v,A,P).call(b,v,A,P,z).call(g,v,A,P).call(f,v,A,P),function(me,_e,Se,we){if(!_e._context.staticPlot){var xe=me.select("rect."+s.slideBoxClassName).node(),De=me.select("rect."+s.grabAreaMinClassName).node(),Ee=me.select("rect."+s.grabAreaMaxClassName).node();me.on("mousedown",Me),me.on("touchstart",Me)}function Me(){var he=w.event,fe=he.target,ae=he.clientX||he.touches[0].clientX,be=ae-me.node().getBoundingClientRect().left,Ie=we.d2p(Se._rl[0]),Te=we.d2p(Se._rl[1]),Ne=n.coverSlip();function qe(Ce){var Ae,ze,Ue,Ve=+(Ce.clientX||Ce.touches[0].clientX)-ae;switch(fe){case xe:if(Ue="ew-resize",Ie+Ve>Se._length||Te+Ve<0)return;Ae=Ie+Ve,ze=Te+Ve;break;case De:if(Ue="col-resize",Ie+Ve>Se._length)return;Ae=Ie+Ve,ze=Te;break;case Ee:if(Ue="col-resize",Te+Ve<0)return;Ae=Ie,ze=Te+Ve;break;default:Ue="ew-resize",Ae=be,ze=be+Ve}if(ze<Ae){var Ye=ze;ze=Ae,Ae=Ye}we._pixelMin=Ae,we._pixelMax=ze,a(w.select(Ne),Ue),function($e,rt,ht,nt){function bt(lt){return ht.l2r(_.constrain(lt,nt._rl[0],nt._rl[1]))}var wt=bt(nt.p2d(nt._pixelMin)),ut=bt(nt.p2d(nt._pixelMax));window.requestAnimationFrame(function(){k.call("_guiRelayout",rt,ht._name+".range",[wt,ut])})}(0,_e,Se,we)}function ve(){Ne.removeEventListener("mousemove",qe),Ne.removeEventListener("mouseup",ve),this.removeEventListener("touchmove",qe),this.removeEventListener("touchend",ve),_.removeElement(Ne)}this.addEventListener("touchmove",qe),this.addEventListener("touchend",ve),Ne.addEventListener("mousemove",qe),Ne.addEventListener("mouseup",ve)}}(C,v,A,P),function(me,_e,Se,we,xe,De){var Ee=s.handleWidth/2;function Me(Ce){return _.constrain(Ce,0,we._width)}function he(Ce){return _.constrain(Ce,0,we._height)}function fe(Ce){return _.constrain(Ce,-Ee,we._width+Ee)}var ae=Me(we.d2p(Se._rl[0])),be=Me(we.d2p(Se._rl[1]));if(me.select("rect."+s.slideBoxClassName).attr("x",ae).attr("width",be-ae),me.select("rect."+s.maskMinClassName).attr("width",ae),me.select("rect."+s.maskMaxClassName).attr("x",be).attr("width",we._width-be),De.rangemode!=="match"){var Ie=we._height-he(we.d2pOppAxis(xe._rl[1])),Te=we._height-he(we.d2pOppAxis(xe._rl[0]));me.select("rect."+s.maskMinOppAxisClassName).attr("x",ae).attr("height",Ie).attr("width",be-ae),me.select("rect."+s.maskMaxOppAxisClassName).attr("x",ae).attr("y",Te).attr("height",we._height-Te).attr("width",be-ae),me.select("rect."+s.slideBoxClassName).attr("y",Ie).attr("height",Te-Ie)}var Ne=.5,qe=Math.round(fe(ae-Ee))-Ne,ve=Math.round(fe(be-Ee))+Ne;me.select("g."+s.grabberMinClassName).attr("transform",y(qe,Ne)),me.select("g."+s.grabberMaxClassName).attr("transform",y(ve,Ne))}(C,0,A,P,O,z),A.side==="bottom"&&t.draw(v,A._id+"title",{propContainer:A,propName:A._name+".title",placeholder:m._dfltTitle.x,attributes:{x:A._offset+A._length/2,y:W+P._height+P._offsetShift+10+1.5*A.title.font.size,"text-anchor":"middle"}})}))}},549:function(R,E,e){var w=e(41675),k=e(63893),i=e(73251),_=e(18783).LINE_SPACING,y=i.name;function h(l){var t=l&&l[y];return t&&t.visible}E.isVisible=h,E.makeData=function(l){var t=w.list({_fullLayout:l},"x",!0),o=l.margin,r=[];if(!l._has("gl2d"))for(var n=0;n<t.length;n++){var a=t[n];if(h(a)){r.push(a);var s=a[y];s._id=y+a._id,s._height=(l.height-o.b-o.t)*s.thickness,s._offsetShift=Math.floor(s.borderwidth/2)}}l._rangeSliderData=r},E.autoMarginOpts=function(l,t){var o=l._fullLayout,r=t[y],n=t._id.charAt(0),a=0,s=0;return t.side==="bottom"&&(a=t._depth,t.title.text!==o._dfltTitle[n]&&(s=1.5*t.title.font.size+10+r._offsetShift,s+=(t.title.text.match(k.BR_TAG_ALL)||[]).length*t.title.font.size*_)),{x:0,y:t._counterDomainMin,l:0,r:0,t:0,b:r._height+a+Math.max(o.margin.b,s),pad:i.extraPad+2*r._offsetShift}}},13137:function(R,E,e){var w=e(71828),k=e(75148),i=e(47850),_=e(549);R.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:w.extendFlat({},k,{yaxis:i})}}},layoutAttributes:e(75148),handleDefaults:e(26377),calcAutorange:e(88443),draw:e(72413),isVisible:_.isVisible,makeData:_.makeData,autoMarginOpts:_.autoMarginOpts}},47850:function(R){R.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}},8389:function(R,E,e){var w=e(50215),k=e(82196).line,i=e(79952).P,_=e(1426).extendFlat,y=e(30962).overrideAll,h=e(44467).templatedArray;e(24695),R.exports=y(h("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:_({},w.xref,{}),yref:_({},w.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:k.color,width:_({},k.width,{min:1,dflt:1}),dash:_({},i,{dflt:"dot"})}}),"arraydraw","from-root")},34122:function(R){R.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}},59402:function(R,E,e){var w=e(71828),k=e(89298),i=e(85501),_=e(8389),y=e(30477);function h(l,t,o){function r(C,P){return w.coerce(l,t,_,C,P)}var n=r("path"),a=r("type",n?"path":"rect")!=="path";a&&delete t.path,r("opacity"),r("line.color"),r("line.width"),r("line.dash");for(var s=["x","y"],u=0;u<2;u++){var p,c,b,g=s[u],f={_fullLayout:o},v=k.coerceRef(l,t,f,g);if((p=k.getFromId(f,v))._selectionIndices.push(t._index),b=y.rangeToShapePosition(p),c=y.shapePositionToRange(p),a){var m=g+"0",x=g+"1",T=l[m],d=l[x];l[m]=c(l[m],!0),l[x]=c(l[x],!0),k.coercePosition(t,f,r,v,m),k.coercePosition(t,f,r,v,x);var M=t[m],A=t[x];M!==void 0&&A!==void 0&&(t[m]=b(M),t[x]=b(A),l[m]=T,l[x]=d)}}a&&w.noneOrAll(l,t,["x0","x1","y0","y1"])}R.exports=function(l,t){i(l,t,{name:"selections",handleItemDefaults:h});for(var o=t.selections,r=0;r<o.length;r++){var n=o[r];n&&n.path===void 0&&(n.x0!==void 0&&n.x1!==void 0&&n.y0!==void 0&&n.y1!==void 0||(t.selections[r]=null))}}},32485:function(R,E,e){var w=e(60165).readPaths,k=e(42359),i=e(51873).clearOutlineControllers,_=e(7901),y=e(91424),h=e(44467).arrayEditor,l=e(30477),t=l.getPathString;function o(u){var p=u._fullLayout;for(var c in i(u),p._selectionLayer.selectAll("path").remove(),p._plots){var b=p._plots[c].selectionLayer;b&&b.selectAll("path").remove()}for(var g=0;g<p.selections.length;g++)n(u,g)}function r(u){return u._context.editSelection}function n(u,p){u._fullLayout._paperdiv.selectAll('.selectionlayer [data-index="'+p+'"]').remove();var c=l.makeSelectionsOptionsAndPlotinfo(u,p),b=c.options,g=c.plotinfo;b._input&&function(f){var v=t(u,b),m={"data-index":p,"fill-rule":"evenodd",d:v},x=b.opacity,T="rgba(0,0,0,0)",d=b.line.color||_.contrast(u._fullLayout.plot_bgcolor),M=b.line.width,A=b.line.dash;M||(M=5,A="solid");var C=r(u)&&u._fullLayout._activeSelectionIndex===p;C&&(T=u._fullLayout.activeselection.fillcolor,x=u._fullLayout.activeselection.opacity);for(var P=[],O=1;O>=0;O--){var z=f.append("path").attr(m).style("opacity",O?.1:x).call(_.stroke,d).call(_.fill,T).call(y.dashLine,O?"solid":A,O?4+M:M);if(a(z,u,b),C){var B=h(u.layout,"selections",b);z.style({cursor:"move"});var Y={element:z.node(),plotinfo:g,gd:u,editHelpers:B,isActiveSelection:!0},D=w(v,u);k(D,z,Y)}else z.style("pointer-events",O?"all":"none");P[O]=z}var G=P[0];P[1].node().addEventListener("click",function(){return function(V,j){if(r(V)){var W=+j.node().getAttribute("data-index");if(W>=0){if(W===V._fullLayout._activeSelectionIndex)return void s(V);V._fullLayout._activeSelectionIndex=W,V._fullLayout._deactivateSelection=s,o(V)}}}(u,G)})}(u._fullLayout._selectionLayer)}function a(u,p,c){var b=c.xref+c.yref;y.setClipUrl(u,"clip"+p._fullLayout._uid+b,p)}function s(u){r(u)&&u._fullLayout._activeSelectionIndex>=0&&(i(u),delete u._fullLayout._activeSelectionIndex,o(u))}R.exports={draw:o,drawOne:n,activateLastSelection:function(u){if(r(u)){var p=u._fullLayout.selections.length-1;u._fullLayout._activeSelectionIndex=p,u._fullLayout._deactivateSelection=s,o(u)}}}},53777:function(R,E,e){var w=e(79952).P,k=e(1426).extendFlat;R.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:k({},w,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}},90849:function(R){R.exports=function(E,e,w){w("newselection.mode"),w("newselection.line.width")&&(w("newselection.line.color"),w("newselection.line.dash")),w("activeselection.fillcolor"),w("activeselection.opacity")}},35855:function(R,E,e){var w=e(64505).selectMode,k=e(51873).clearOutline,i=e(60165),_=i.readPaths,y=i.writePaths,h=i.fixDatesForPaths;R.exports=function(l,t){if(l.length){var o=l[0][0];if(o){var r=o.getAttribute("d"),n=t.gd,a=n._fullLayout.newselection,s=t.plotinfo,u=s.xaxis,p=s.yaxis,c=t.isActiveSelection,b=t.dragmode,g=(n.layout||{}).selections||[];if(!w(b)&&c!==void 0){var f=n._fullLayout._activeSelectionIndex;if(f<g.length)switch(n._fullLayout.selections[f].type){case"rect":b="select";break;case"path":b="lasso"}}var v,m=_(r,n,s,c),x={xref:u._id,yref:p._id,opacity:a.opacity,line:{color:a.line.color,width:a.line.width,dash:a.line.dash}};m.length===1&&(v=m[0]),v&&v.length===5&&b==="select"?(x.type="rect",x.x0=v[0][1],x.y0=v[0][2],x.x1=v[2][1],x.y1=v[2][2]):(x.type="path",u&&p&&h(m,u,p),x.path=y(m),v=null),k(n);for(var T=t.editHelpers,d=(T||{}).modifyItem,M=[],A=0;A<g.length;A++){var C=n._fullLayout.selections[A];if(C){if(M[A]=C._input,c!==void 0&&A===n._fullLayout._activeSelectionIndex){var P=x;switch(C.type){case"rect":d("x0",P.x0),d("x1",P.x1),d("y0",P.y0),d("y1",P.y1);break;case"path":d("path",P.path)}}}else M[A]=C}return c===void 0?(M.push(x),M):T?T.getUpdateObj():{}}}}},75549:function(R,E,e){var w=e(71828).strTranslate;function k(i,_){switch(i.type){case"log":return i.p2d(_);case"date":return i.p2r(_,0,i.calendar);default:return i.p2r(_)}}R.exports={p2r:k,r2p:function(i,_){switch(i.type){case"log":return i.d2p(_);case"date":return i.r2p(_,0,i.calendar);default:return i.r2p(_)}},axValue:function(i){var _=i._id.charAt(0)==="y"?1:0;return function(y){return k(i,y[_])}},getTransform:function(i){return w(i.xaxis._offset,i.yaxis._offset)}}},47322:function(R,E,e){var w=e(32485),k=e(3937);R.exports={moduleType:"component",name:"selections",layoutAttributes:e(8389),supplyLayoutDefaults:e(59402),supplyDrawNewSelectionDefaults:e(90849),includeBasePlot:e(76325)("selections"),draw:w.draw,drawOne:w.drawOne,reselect:k.reselect,prepSelect:k.prepSelect,clearOutline:k.clearOutline,clearSelectionsCache:k.clearSelectionsCache,selectOnClick:k.selectOnClick}},3937:function(R,E,e){var w=e(52142),k=e(38258),i=e(73972),_=e(91424).dashStyle,y=e(7901),h=e(30211),l=e(23469).makeEventData,t=e(64505),o=t.freeMode,r=t.rectMode,n=t.drawMode,a=t.openMode,s=t.selectMode,u=e(30477),p=e(21459),c=e(42359),b=e(51873).clearOutline,g=e(60165),f=g.handleEllipse,v=g.readPaths,m=e(90551).newShapes,x=e(35855),T=e(32485).activateLastSelection,d=e(71828),M=d.sorterAsc,A=e(61082),C=e(79990),P=e(41675).getFromId,O=e(33306),z=e(61549).redrawReglTraces,B=e(34122),Y=B.MINSELECT,D=A.filter,G=A.tester,V=e(75549),j=V.p2r,W=V.axValue,Z=V.getTransform;function ie(ve){return ve.subplot!==void 0}function te(ve,Ce,Ae,ze,Ue,Ve,Ye){var $e,rt,ht,nt,bt,wt,ut,lt,Tt,Et=Ce._hoverdata,St=Ce._fullLayout.clickmode.indexOf("event")>-1,Ft=[];if(function(Qe){return Qe&&Array.isArray(Qe)&&Qe[0].hoverOnBox!==!0}(Et)){re(ve,Ce,Ve);var zt=function(Qe,st){var ft,Be,je=Qe[0],at=-1,ot=[];for(Be=0;Be<st.length;Be++)if(ft=st[Be],je.fullData._expandedIndex===ft.cd[0].trace._expandedIndex){if(je.hoverOnBox===!0)break;je.pointNumber!==void 0?at=je.pointNumber:je.binNumber!==void 0&&(at=je.binNumber,ot=je.pointNumbers);break}return{pointNumber:at,pointNumbers:ot,searchInfo:ft}}(Et,$e=ce(Ce,Ae,ze,Ue));if(zt.pointNumbers.length>0?function(Qe,st){var ft,Be,je,at=[];for(je=0;je<Qe.length;je++)(ft=Qe[je]).cd[0].trace.selectedpoints&&ft.cd[0].trace.selectedpoints.length>0&&at.push(ft);if(at.length===1&&at[0]===st.searchInfo&&(Be=st.searchInfo.cd[0].trace).selectedpoints.length===st.pointNumbers.length){for(je=0;je<st.pointNumbers.length;je++)if(Be.selectedpoints.indexOf(st.pointNumbers[je])<0)return!1;return!0}return!1}($e,zt):function(Qe){var st,ft,Be=0;for(ft=0;ft<Qe.length;ft++)if((st=Qe[ft].cd[0].trace).selectedpoints&&(st.selectedpoints.length>1||(Be+=st.selectedpoints.length)>1))return!1;return Be===1}($e)&&(wt=me(zt))){for(Ye&&Ye.remove(),Tt=0;Tt<$e.length;Tt++)(rt=$e[Tt])._module.selectPoints(rt,!1);_e(Ce,$e),oe(Ve),St&&qe(Ce)}else{for(ut=ve.shiftKey&&(wt!==void 0?wt:me(zt)),ht=function(Qe,st,ft){return{pointNumber:Qe,searchInfo:st,subtract:!!ft}}(zt.pointNumber,zt.searchInfo,ut),nt=ee(Ve.selectionDefs.concat([ht])),Tt=0;Tt<$e.length;Tt++)if(bt=we($e[Tt]._module.selectPoints($e[Tt],nt),$e[Tt]),Ft.length)for(var Je=0;Je<bt.length;Je++)Ft.push(bt[Je]);else Ft=bt;if(_e(Ce,$e,lt={points:Ft}),ht&&Ve&&Ve.selectionDefs.push(ht),Ye){var et=Ve.mergedPolygons,Ze=a(Ve.dragmode);c(xe(et,Ze),Ye,Ve)}St&&Ne(Ce,lt)}}}function J(ve){return"pointNumber"in ve&&"searchInfo"in ve}function X(ve){return{xmin:0,xmax:0,ymin:0,ymax:0,pts:[],contains:function(Ce,Ae,ze,Ue){var Ve=ve.searchInfo.cd[0].trace._expandedIndex;return Ue.cd[0].trace._expandedIndex===Ve&&ze===ve.pointNumber},isRect:!1,degenerate:!1,subtract:!!ve.subtract}}function ee(ve){if(ve.length){for(var Ce=[],Ae=J(ve[0])?0:ve[0][0][0],ze=Ae,Ue=J(ve[0])?0:ve[0][0][1],Ve=Ue,Ye=0;Ye<ve.length;Ye++)if(J(ve[Ye]))Ce.push(X(ve[Ye]));else{var $e=G(ve[Ye]);$e.subtract=!!ve[Ye].subtract,Ce.push($e),Ae=Math.min(Ae,$e.xmin),ze=Math.max(ze,$e.xmax),Ue=Math.min(Ue,$e.ymin),Ve=Math.max(Ve,$e.ymax)}return{xmin:Ae,xmax:ze,ymin:Ue,ymax:Ve,pts:[],contains:function(rt,ht,nt,bt){for(var wt=!1,ut=0;ut<Ce.length;ut++)Ce[ut].contains(rt,ht,nt,bt)&&(wt=!Ce[ut].subtract);return wt},isRect:!1,degenerate:!1}}}function re(ve,Ce,Ae){var ze=Ce._fullLayout,Ue=Ae.plotinfo,Ve=Ae.dragmode,Ye=ze._lastSelectedSubplot&&ze._lastSelectedSubplot===Ue.id,$e=(ve.shiftKey||ve.altKey)&&!(n(Ve)&&a(Ve));Ye&&$e&&Ue.selection&&Ue.selection.selectionDefs&&!Ae.selectionDefs?(Ae.selectionDefs=Ue.selection.selectionDefs,Ae.mergedPolygons=Ue.selection.mergedPolygons):$e&&Ue.selection||oe(Ae),Ye||(b(Ce),ze._lastSelectedSubplot=Ue.id)}function oe(ve,Ce){var Ae=ve.dragmode,ze=ve.plotinfo,Ue=ve.gd;(function(bt){return bt._fullLayout._activeShapeIndex>=0})(Ue)&&Ue._fullLayout._deactivateShape(Ue),function(bt){return bt._fullLayout._activeSelectionIndex>=0}(Ue)&&Ue._fullLayout._deactivateSelection(Ue);var Ve=Ue._fullLayout._zoomlayer,Ye=n(Ae),$e=s(Ae);if(Ye||$e){var rt,ht,nt=Ve.selectAll(".select-outline-"+ze.id);nt&&Ue._fullLayout._outlining&&(Ye&&(rt=m(nt,ve)),rt&&i.call("_guiRelayout",Ue,{shapes:rt}),$e&&!ie(ve)&&(ht=x(nt,ve)),ht&&(Ue._fullLayout._noEmitSelectedAtStart=!0,i.call("_guiRelayout",Ue,{selections:ht}).then(function(){Ce&&T(Ue)})),Ue._fullLayout._outlining=!1)}ze.selection={},ze.selection.selectionDefs=ve.selectionDefs=[],ze.selection.mergedPolygons=ve.mergedPolygons=[]}function ue(ve){return ve._id}function ce(ve,Ce,Ae,ze){if(!ve.calcdata)return[];var Ue,Ve,Ye,$e=[],rt=Ce.map(ue),ht=Ae.map(ue);for(Ye=0;Ye<ve.calcdata.length;Ye++)if((Ve=(Ue=ve.calcdata[Ye])[0].trace).visible===!0&&Ve._module&&Ve._module.selectPoints)if(!ie({subplot:ze})||Ve.subplot!==ze&&Ve.geo!==ze)if(Ve.type==="splom"){if(Ve._xaxes[rt[0]]&&Ve._yaxes[ht[0]]){var nt=de(Ve._module,Ue,Ce[0],Ae[0]);nt.scene=ve._fullLayout._splomScenes[Ve.uid],$e.push(nt)}}else if(Ve.type==="sankey"){var bt=de(Ve._module,Ue,Ce[0],Ae[0]);$e.push(bt)}else{if(rt.indexOf(Ve.xaxis)===-1||ht.indexOf(Ve.yaxis)===-1)continue;$e.push(de(Ve._module,Ue,P(ve,Ve.xaxis),P(ve,Ve.yaxis)))}else $e.push(de(Ve._module,Ue,Ce[0],Ae[0]));return $e}function de(ve,Ce,Ae,ze){return{_module:ve,cd:Ce,xaxis:Ae,yaxis:ze}}function me(ve){var Ce=ve.searchInfo.cd[0].trace,Ae=ve.pointNumber,ze=ve.pointNumbers,Ue=ze.length>0?ze[0]:Ae;return!!Ce.selectedpoints&&Ce.selectedpoints.indexOf(Ue)>-1}function _e(ve,Ce,Ae){var ze,Ue;for(ze=0;ze<Ce.length;ze++){var Ve=Ce[ze].cd[0].trace._fullInput,Ye=ve._fullLayout._tracePreGUI[Ve.uid]||{};Ye.selectedpoints===void 0&&(Ye.selectedpoints=Ve._input.selectedpoints||null)}if(Ae){var $e=Ae.points||[];for(ze=0;ze<Ce.length;ze++)(Ue=Ce[ze].cd[0].trace)._input.selectedpoints=Ue._fullInput.selectedpoints=[],Ue._fullInput!==Ue&&(Ue.selectedpoints=[]);for(var rt=0;rt<$e.length;rt++){var ht=$e[rt],nt=ht.data,bt=ht.fullData,wt=ht.pointIndex,ut=ht.pointIndices;ut?([].push.apply(nt.selectedpoints,ut),Ue._fullInput!==Ue&&[].push.apply(bt.selectedpoints,ut)):(nt.selectedpoints.push(wt),Ue._fullInput!==Ue&&bt.selectedpoints.push(wt))}}else for(ze=0;ze<Ce.length;ze++)delete(Ue=Ce[ze].cd[0].trace).selectedpoints,delete Ue._input.selectedpoints,Ue._fullInput!==Ue&&delete Ue._fullInput.selectedpoints;(function(lt,Tt){for(var Et=!1,St=0;St<Tt.length;St++){var Ft=Tt[St],zt=Ft.cd;i.traceIs(zt[0].trace,"regl")&&(Et=!0);var Je=Ft._module,et=Je.styleOnSelect||Je.style;et&&(et(lt,zt,zt[0].node3),zt[0].nodeRangePlot3&&et(lt,zt,zt[0].nodeRangePlot3))}Et&&(O(lt),z(lt))})(ve,Ce)}function Se(ve,Ce,Ae){for(var ze=(Ae?w.difference:w.union)({regions:ve},{regions:[Ce]}).regions.reverse(),Ue=0;Ue<ze.length;Ue++){var Ve=ze[Ue];Ve.subtract=ae(Ve,ze.slice(0,Ue))}return ze}function we(ve,Ce){if(Array.isArray(ve))for(var Ae=Ce.cd,ze=Ce.cd[0].trace,Ue=0;Ue<ve.length;Ue++)ve[Ue]=l(ve[Ue],ze,Ae);return ve}function xe(ve,Ce){for(var Ae=[],ze=0;ze<ve.length;ze++){Ae[ze]=[];for(var Ue=0;Ue<ve[ze].length;Ue++){Ae[ze][Ue]=[],Ae[ze][Ue][0]=Ue?"L":"M";for(var Ve=0;Ve<ve[ze][Ue].length;Ve++)Ae[ze][Ue].push(ve[ze][Ue][Ve])}Ce||Ae[ze].push(["Z",Ae[ze][0][1],Ae[ze][0][2]])}return Ae}function De(ve,Ce){for(var Ae,ze,Ue=[],Ve=[],Ye=0;Ye<Ce.length;Ye++){var $e=Ce[Ye];ze=$e._module.selectPoints($e,ve),Ve.push(ze),Ae=we(ze,$e),Ue=Ue.concat(Ae)}return Ue}function Ee(ve,Ce,Ae,ze,Ue){var Ve,Ye,$e,rt=!!ze;Ue&&(Ve=Ue.plotinfo,Ye=Ue.xaxes[0]._id,$e=Ue.yaxes[0]._id);var ht=[],nt=[],bt=fe(ve),wt=ve._fullLayout;if(Ve){var ut=wt._zoomlayer,lt=wt.dragmode,Tt=n(lt),Et=s(lt);if(Tt||Et){var St=P(ve,Ye,"x"),Ft=P(ve,$e,"y");if(St&&Ft){var zt=ut.selectAll(".select-outline-"+Ve.id);if(zt&&ve._fullLayout._outlining&&zt.length){for(var Je=zt[0][0].getAttribute("d"),et=v(Je,ve,Ve),Ze=[],Qe=0;Qe<et.length;Qe++){for(var st=et[Qe],ft=[],Be=0;Be<st.length;Be++)ft.push([be(St,st[Be][1]),be(Ft,st[Be][2])]);ft.xref=Ye,ft.yref=$e,ft.subtract=ae(ft,Ze),Ze.push(ft)}bt=bt.concat(Ze)}}}}var je=Ye&&$e?[Ye+$e]:wt._subplots.cartesian;(function(Pn){var Dn=Pn.calcdata;if(Dn)for(var En=0;En<Dn.length;En++){var Fn=Dn[En][0].trace,er=Pn._fullLayout._splomScenes;if(er){var ir=er[Fn.uid];ir&&(ir.selectBatch=[])}}})(ve);for(var at={},ot=0;ot<je.length;ot++){var xt=je[ot],yt=xt.indexOf("y"),_t=xt.slice(0,yt),gt=xt.slice(yt),Ct=Ye&&$e?Ae:void 0;if(Ct=he(bt,_t,gt,Ct)){var dt=ze;if(!rt){var vt=P(ve,_t,"x"),At=P(ve,gt,"y");dt=ce(ve,[vt],[At],xt);for(var Bt=0;Bt<dt.length;Bt++){var jt=dt[Bt],Ut=jt.cd[0],tn=Ut.trace;if(jt._module.name==="scattergl"&&!Ut.t.xpx){var Xt=tn.x,Qt=tn.y,Gt=tn._length;Ut.t.xpx=[],Ut.t.ypx=[];for(var vn=0;vn<Gt;vn++)Ut.t.xpx[vn]=vt.c2p(Xt[vn]),Ut.t.ypx[vn]=At.c2p(Qt[vn])}jt._module.name==="splom"&&(at[tn.uid]||(at[tn.uid]=!0))}}var Tn=De(Ct,dt);ht=ht.concat(Tn),nt=nt.concat(dt)}}var dn={points:ht};_e(ve,nt,dn);var Yt=wt.clickmode.indexOf("event")>-1&&Ce;if(!Ve&&Ce){var ln=fe(ve,!0);if(ln.length){var nn=ln[0].xref,fn=ln[0].yref;if(nn&&fn){var mn=Ie(ln);Te([P(ve,nn,"x"),P(ve,fn,"y")])(dn,mn)}}ve._fullLayout._noEmitSelectedAtStart?ve._fullLayout._noEmitSelectedAtStart=!1:Yt&&Ne(ve,dn),wt._reselect=!1}if(!Ve&&wt._deselect){var xn=wt._deselect;(function(Pn,Dn,En){for(var Fn=0;Fn<En.length;Fn++){var er=En[Fn];if(er.xaxis&&er.xaxis._id===Pn&&er.yaxis&&er.yaxis._id===Dn)return!0}return!1})(Ye=xn.xref,$e=xn.yref,nt)||Me(ve,Ye,$e,ze),Yt&&(dn.points.length?Ne(ve,dn):qe(ve)),wt._deselect=!1}return{eventData:dn,selectionTesters:Ae}}function Me(ve,Ce,Ae,ze){ze=ce(ve,[P(ve,Ce,"x")],[P(ve,Ae,"y")],Ce+Ae);for(var Ue=0;Ue<ze.length;Ue++){var Ve=ze[Ue];Ve._module.selectPoints(Ve,!1)}_e(ve,ze)}function he(ve,Ce,Ae,ze){for(var Ue,Ve=0;Ve<ve.length;Ve++){var Ye=ve[Ve];Ce===Ye.xref&&Ae===Ye.yref&&(Ue?ze=ee(Ue=Se(Ue,Ye,!!Ye.subtract)):(Ue=[Ye],ze=G(Ye)))}return ze}function fe(ve,Ce){for(var Ae=[],ze=ve._fullLayout,Ue=ze.selections,Ve=Ue.length,Ye=0;Ye<Ve;Ye++)if(!Ce||Ye===ze._activeSelectionIndex){var $e=Ue[Ye];if($e){var rt,ht,nt,bt,wt,ut=$e.xref,lt=$e.yref,Tt=P(ve,ut,"x"),Et=P(ve,lt,"y");if($e.type==="rect"){wt=[];var St=be(Tt,$e.x0),Ft=be(Tt,$e.x1),zt=be(Et,$e.y0),Je=be(Et,$e.y1);wt=[[St,zt],[St,Je],[Ft,Je],[Ft,zt]],rt=Math.min(St,Ft),ht=Math.max(St,Ft),nt=Math.min(zt,Je),bt=Math.max(zt,Je),wt.xmin=rt,wt.xmax=ht,wt.ymin=nt,wt.ymax=bt,wt.xref=ut,wt.yref=lt,wt.subtract=!1,wt.isRect=!0,Ae.push(wt)}else if($e.type==="path")for(var et=$e.path.split("Z"),Ze=[],Qe=0;Qe<et.length;Qe++){var st=et[Qe];if(st){st+="Z";var ft=u.extractPathCoords(st,p.paramIsX,"raw"),Be=u.extractPathCoords(st,p.paramIsY,"raw");rt=1/0,ht=-1/0,nt=1/0,bt=-1/0,wt=[];for(var je=0;je<ft.length;je++){var at=be(Tt,ft[je]),ot=be(Et,Be[je]);wt.push([at,ot]),rt=Math.min(at,rt),ht=Math.max(at,ht),nt=Math.min(ot,nt),bt=Math.max(ot,bt)}wt.xmin=rt,wt.xmax=ht,wt.ymin=nt,wt.ymax=bt,wt.xref=ut,wt.yref=lt,wt.subtract=ae(wt,Ze),Ze.push(wt),Ae.push(wt)}}}}return Ae}function ae(ve,Ce){for(var Ae=!1,ze=0;ze<Ce.length;ze++)for(var Ue=Ce[ze],Ve=0;Ve<ve.length;Ve++)if(k(ve[Ve],Ue)){Ae=!Ae;break}return Ae}function be(ve,Ce){return ve.type==="date"&&(Ce=Ce.replace("_"," ")),ve.type==="log"?ve.c2p(Ce):ve.r2p(Ce,null,ve.calendar)}function Ie(ve){for(var Ce=ve.length,Ae=[],ze=0;ze<Ce;ze++){var Ue=ve[ze];Ae=(Ae=Ae.concat(Ue)).concat([Ue[0]])}return(Ve=Ae).isRect=Ve.length===5&&Ve[0][0]===Ve[4][0]&&Ve[0][1]===Ve[4][1]&&Ve[0][0]===Ve[1][0]&&Ve[2][0]===Ve[3][0]&&Ve[0][1]===Ve[3][1]&&Ve[1][1]===Ve[2][1]||Ve[0][1]===Ve[1][1]&&Ve[2][1]===Ve[3][1]&&Ve[0][0]===Ve[3][0]&&Ve[1][0]===Ve[2][0],Ve.isRect&&(Ve.xmin=Math.min(Ve[0][0],Ve[2][0]),Ve.xmax=Math.max(Ve[0][0],Ve[2][0]),Ve.ymin=Math.min(Ve[0][1],Ve[2][1]),Ve.ymax=Math.max(Ve[0][1],Ve[2][1])),Ve;var Ve}function Te(ve){return function(Ce,Ae){for(var ze,Ue,Ve=0;Ve<ve.length;Ve++){var Ye=ve[Ve],$e=Ye._id,rt=$e.charAt(0);if(Ae.isRect){ze||(ze={});var ht=Ae[rt+"min"],nt=Ae[rt+"max"];ht!==void 0&&nt!==void 0&&(ze[$e]=[j(Ye,ht),j(Ye,nt)].sort(M))}else Ue||(Ue={}),Ue[$e]=Ae.map(W(Ye))}ze&&(Ce.range=ze),Ue&&(Ce.lassoPoints=Ue)}}function Ne(ve,Ce){Ce&&(Ce.selections=(ve.layout||{}).selections||[]),ve.emit("plotly_selected",Ce)}function qe(ve){ve.emit("plotly_deselect",null)}R.exports={reselect:Ee,prepSelect:function(ve,Ce,Ae,ze,Ue){var Ve=!ie(ze),Ye=o(Ue),$e=r(Ue),rt=a(Ue),ht=n(Ue),nt=s(Ue),bt=Ue==="drawcircle",wt=Ue==="drawline"||bt,ut=ze.gd,lt=ut._fullLayout,Tt=nt&<.newselection.mode==="immediate"&&Ve,Et=lt._zoomlayer,St=ze.element.getBoundingClientRect(),Ft=ze.plotinfo,zt=Z(Ft),Je=Ce-St.left,et=Ae-St.top;lt._calcInverseTransform(ut);var Ze=d.apply3DTransform(lt._invTransform)(Je,et);Je=Ze[0],et=Ze[1];var Qe,st,ft,Be,je,at,ot,xt=lt._invScaleX,yt=lt._invScaleY,_t=Je,gt=et,Ct="M"+Je+","+et,dt=ze.xaxes[0],vt=ze.yaxes[0],At=dt._length,Bt=vt._length,jt=ve.altKey&&!(n(Ue)&&rt);re(ve,ut,ze),Ye&&(Qe=D([[Je,et]],B.BENDPX));var Ut=Et.selectAll("path.select-outline-"+Ft.id).data([1]),tn=ht?lt.newshape:lt.newselection;ht&&(ze.hasText=tn.label.text||tn.label.texttemplate);var Xt=ht&&!rt?tn.fillcolor:"rgba(0,0,0,0)",Qt=tn.line.color||(Ve?y.contrast(ut._fullLayout.plot_bgcolor):"#7f7f7f");Ut.enter().append("path").attr("class","select-outline select-outline-"+Ft.id).style({opacity:ht?tn.opacity/2:1,"stroke-dasharray":_(tn.line.dash,tn.line.width),"stroke-width":tn.line.width+"px","shape-rendering":"crispEdges"}).call(y.stroke,Qt).call(y.fill,Xt).attr("fill-rule","evenodd").classed("cursor-move",!!ht).attr("transform",zt).attr("d",Ct+"Z");var Gt=Et.append("path").attr("class","zoombox-corners").style({fill:y.background,stroke:y.defaultLine,"stroke-width":1}).attr("transform",zt).attr("d","M0,0Z");if(ht&&ze.hasText){var vn=Et.select(".label-temp");vn.empty()&&(vn=Et.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var Tn=lt._uid+B.SELECTID,dn=[],Yt=ce(ut,ze.xaxes,ze.yaxes,ze.subplot);Tt&&!ve.shiftKey&&(ze._clearSubplotSelections=function(){if(Ve){var nn=dt._id,fn=vt._id;Me(ut,nn,fn,Yt);for(var mn=(ut.layout||{}).selections||[],xn=[],Pn=!1,Dn=0;Dn<mn.length;Dn++){var En=lt.selections[Dn];En.xref!==nn||En.yref!==fn?xn.push(mn[Dn]):Pn=!0}Pn&&(ut._fullLayout._noEmitSelectedAtStart=!0,i.call("_guiRelayout",ut,{selections:xn}))}});var ln=function(nn){return nn.plotinfo.fillRangeItems||Te(nn.xaxes.concat(nn.yaxes))}(ze);ze.moveFn=function(nn,fn){ze._clearSubplotSelections&&(ze._clearSubplotSelections(),ze._clearSubplotSelections=void 0),_t=Math.max(0,Math.min(At,xt*nn+Je)),gt=Math.max(0,Math.min(Bt,yt*fn+et));var mn=Math.abs(_t-Je),xn=Math.abs(gt-et);if($e){var Pn,Dn,En;if(nt){var Fn=lt.selectdirection;switch(Pn=Fn==="any"?xn<Math.min(.6*mn,Y)?"h":mn<Math.min(.6*xn,Y)?"v":"d":Fn){case"h":Dn=bt?Bt/2:0,En=Bt;break;case"v":Dn=bt?At/2:0,En=At}}if(ht)switch(lt.newshape.drawdirection){case"vertical":Pn="h",Dn=bt?Bt/2:0,En=Bt;break;case"horizontal":Pn="v",Dn=bt?At/2:0,En=At;break;case"ortho":mn<xn?(Pn="h",Dn=et,En=gt):(Pn="v",Dn=Je,En=_t);break;default:Pn="d"}Pn==="h"?((Be=wt?f(bt,[_t,Dn],[_t,En]):[[Je,Dn],[Je,En],[_t,En],[_t,Dn]]).xmin=wt?_t:Math.min(Je,_t),Be.xmax=wt?_t:Math.max(Je,_t),Be.ymin=Math.min(Dn,En),Be.ymax=Math.max(Dn,En),Gt.attr("d","M"+Be.xmin+","+(et-Y)+"h-4v"+2*Y+"h4ZM"+(Be.xmax-1)+","+(et-Y)+"h4v"+2*Y+"h-4Z")):Pn==="v"?((Be=wt?f(bt,[Dn,gt],[En,gt]):[[Dn,et],[Dn,gt],[En,gt],[En,et]]).xmin=Math.min(Dn,En),Be.xmax=Math.max(Dn,En),Be.ymin=wt?gt:Math.min(et,gt),Be.ymax=wt?gt:Math.max(et,gt),Gt.attr("d","M"+(Je-Y)+","+Be.ymin+"v-4h"+2*Y+"v4ZM"+(Je-Y)+","+(Be.ymax-1)+"v4h"+2*Y+"v-4Z")):Pn==="d"&&((Be=wt?f(bt,[Je,et],[_t,gt]):[[Je,et],[Je,gt],[_t,gt],[_t,et]]).xmin=Math.min(Je,_t),Be.xmax=Math.max(Je,_t),Be.ymin=Math.min(et,gt),Be.ymax=Math.max(et,gt),Gt.attr("d","M0,0Z"))}else Ye&&(Qe.addPt([_t,gt]),Be=Qe.filtered);if(ze.selectionDefs&&ze.selectionDefs.length?(ft=Se(ze.mergedPolygons,Be,jt),Be.subtract=jt,st=ee(ze.selectionDefs.concat([Be]))):(ft=[Be],st=G(Be)),c(xe(ft,rt),Ut,ze),nt){var er,ir=Ee(ut,!1),fr=ir.eventData?ir.eventData.points.slice():[];ir=Ee(ut,!1,st,Yt,ze),st=ir.selectionTesters,ot=ir.eventData,er=Qe?Qe.filtered:Ie(ft),C.throttle(Tn,B.SELECTDELAY,function(){for(var ar=(dn=De(st,Yt)).slice(),Kn=0;Kn<fr.length;Kn++){for(var wr=fr[Kn],Ht=!1,sn=0;sn<ar.length;sn++)if(ar[sn].curveNumber===wr.curveNumber&&ar[sn].pointNumber===wr.pointNumber){Ht=!0;break}Ht||ar.push(wr)}ar.length&&(ot||(ot={}),ot.points=ar),ln(ot,er),function(gn,bn){gn.emit("plotly_selecting",bn)}(ut,ot)})}},ze.clickFn=function(nn,fn){if(Gt.remove(),ut._fullLayout._activeShapeIndex>=0)ut._fullLayout._deactivateShape(ut);else if(!ht){var mn=lt.clickmode;C.done(Tn).then(function(){if(C.clear(Tn),nn===2){for(Ut.remove(),je=0;je<Yt.length;je++)(at=Yt[je])._module.selectPoints(at,!1);if(_e(ut,Yt),oe(ze),qe(ut),Yt.length){var xn=Yt[0].xaxis,Pn=Yt[0].yaxis;if(xn&&Pn){for(var Dn=[],En=ut._fullLayout.selections,Fn=0;Fn<En.length;Fn++){var er=En[Fn];er&&(er.xref===xn._id&&er.yref===Pn._id||Dn.push(er))}Dn.length<En.length&&(ut._fullLayout._noEmitSelectedAtStart=!0,i.call("_guiRelayout",ut,{selections:Dn}))}}}else mn.indexOf("select")>-1&&te(fn,ut,ze.xaxes,ze.yaxes,ze.subplot,ze,Ut),mn==="event"&&Ne(ut,void 0);h.click(ut,fn)}).catch(d.error)}},ze.doneFn=function(){Gt.remove(),C.done(Tn).then(function(){C.clear(Tn),!Tt&&Be&&ze.selectionDefs&&(Be.subtract=jt,ze.selectionDefs.push(Be),ze.mergedPolygons.length=0,[].push.apply(ze.mergedPolygons,ft)),(Tt||ht)&&oe(ze,Tt),ze.doneFnCompleted&&ze.doneFnCompleted(dn),nt&&Ne(ut,ot)}).catch(d.error)}},clearOutline:b,clearSelectionsCache:oe,selectOnClick:te}},89827:function(R,E,e){var w=e(50215),k=e(41940),i=e(82196).line,_=e(79952).P,y=e(1426).extendFlat,h=e(44467).templatedArray,l=(e(24695),e(5386).R),t=e(37281);R.exports=h("shape",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"arraydraw"},xref:y({},w.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},yref:y({},w.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:y({},i.color,{editType:"arraydraw"}),width:y({},i.width,{editType:"calc+arraydraw"}),dash:y({},_,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:l({},{keys:Object.keys(t)}),font:k({editType:"calc+arraydraw",colorEditType:"arraydraw"}),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"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})},5627:function(R,E,e){var w=e(71828),k=e(89298),i=e(21459),_=e(30477);function y(o){return l(o.line.width,o.xsizemode,o.x0,o.x1,o.path,!1)}function h(o){return l(o.line.width,o.ysizemode,o.y0,o.y1,o.path,!0)}function l(o,r,n,a,s,u){var p=o/2,c=u;if(r==="pixel"){var b=s?_.extractPathCoords(s,u?i.paramIsY:i.paramIsX):[n,a],g=w.aggNums(Math.max,null,b),f=w.aggNums(Math.min,null,b),v=f<0?Math.abs(f)+p:p,m=g>0?g+p:p;return{ppad:p,ppadplus:c?v:m,ppadminus:c?m:v}}return{ppad:p}}function t(o,r,n,a,s){var u=o.type==="category"||o.type==="multicategory"?o.r2c:o.d2c;if(r!==void 0)return[u(r),u(n)];if(a){var p,c,b,g,f=1/0,v=-1/0,m=a.match(i.segmentRE);for(o.type==="date"&&(u=_.decodeDate(u)),p=0;p<m.length;p++)(c=s[m[p].charAt(0)].drawn)!==void 0&&(!(b=m[p].substr(1).match(i.paramRE))||b.length<c||((g=u(b[c]))<f&&(f=g),g>v&&(v=g)));return v>=f?[f,v]:void 0}}R.exports=function(o){var r=o._fullLayout,n=w.filterVisible(r.shapes);if(n.length&&o._fullData.length)for(var a=0;a<n.length;a++){var s,u,p=n[a];p._extremes={};var c=k.getRefType(p.xref),b=k.getRefType(p.yref);if(p.xref!=="paper"&&c!=="domain"){var g=p.xsizemode==="pixel"?p.xanchor:p.x0,f=p.xsizemode==="pixel"?p.xanchor:p.x1;(u=t(s=k.getFromId(o,p.xref),g,f,p.path,i.paramIsX))&&(p._extremes[s._id]=k.findExtremes(s,u,y(p)))}if(p.yref!=="paper"&&b!=="domain"){var v=p.ysizemode==="pixel"?p.yanchor:p.y0,m=p.ysizemode==="pixel"?p.yanchor:p.y1;(u=t(s=k.getFromId(o,p.yref),v,m,p.path,i.paramIsY))&&(p._extremes[s._id]=k.findExtremes(s,u,h(p)))}}}},21459:function(R){R.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}}},84726:function(R,E,e){var w=e(71828),k=e(89298),i=e(85501),_=e(89827),y=e(30477);function h(l,t,o){function r(V,j){return w.coerce(l,t,_,V,j)}if(r("visible")){var n=r("path"),a=r("type",n?"path":"rect"),s=a!=="path";s&&delete t.path,r("editable"),r("layer"),r("opacity"),r("fillcolor"),r("fillrule"),r("line.width")&&(r("line.color"),r("line.dash"));for(var u=r("xsizemode"),p=r("ysizemode"),c=["x","y"],b=0;b<2;b++){var g,f,v,m=c[b],x=m+"anchor",T=m==="x"?u:p,d={_fullLayout:o},M=k.coerceRef(l,t,d,m,void 0,"paper");if(k.getRefType(M)==="range"?((g=k.getFromId(d,M))._shapeIndices.push(t._index),v=y.rangeToShapePosition(g),f=y.shapePositionToRange(g)):f=v=w.identity,s){var A=m+"0",C=m+"1",P=l[A],O=l[C];l[A]=f(l[A],!0),l[C]=f(l[C],!0),T==="pixel"?(r(A,0),r(C,10)):(k.coercePosition(t,d,r,M,A,.25),k.coercePosition(t,d,r,M,C,.75)),t[A]=v(t[A]),t[C]=v(t[C]),l[A]=P,l[C]=O}if(T==="pixel"){var z=l[x];l[x]=f(l[x],!0),k.coercePosition(t,d,r,M,x,.25),t[x]=v(t[x]),l[x]=z}}s&&w.noneOrAll(l,t,["x0","x1","y0","y1"]);var B,Y,D=a==="line";if(s&&(B=r("label.texttemplate")),B||(Y=r("label.text")),Y||B){r("label.textangle");var G=r("label.textposition",D?"middle":"middle center");r("label.xanchor"),r("label.yanchor",function(V,j){return V?"bottom":j.indexOf("top")!==-1?"top":j.indexOf("bottom")!==-1?"bottom":"middle"}(D,G)),r("label.padding"),w.coerceFont(r,"label.font",o.font)}}}R.exports=function(l,t){i(l,t,{name:"shapes",handleItemDefaults:h})}},48100:function(R,E,e){var w=e(71828),k=e(89298),i=e(63893),_=e(91424),y=e(60165).readPaths,h=e(30477),l=h.getPathString,t=e(37281),o=e(18783).FROM_TL;R.exports=function(r,n,a,s){if(s.selectAll(".shape-label").remove(),a.label.text||a.label.texttemplate){var u;if(a.label.texttemplate){var p={};if(a.type!=="path"){var c=k.getFromId(r,a.xref),b=k.getFromId(r,a.yref);for(var g in t){var f=t[g](a,c,b);f!==void 0&&(p[g]=f)}}u=w.texttemplateStringForShapes(a.label.texttemplate,{},r._fullLayout._d3locale,p)}else u=a.label.text;var v,m,x,T,d={"data-index":n},M=a.label.font,A=s.append("g").attr(d).classed("shape-label",!0).append("text").attr({"data-notex":1}).classed("shape-label-text",!0).text(u);if(a.path){var C=l(r,a),P=y(C,r);v=1/0,x=1/0,m=-1/0,T=-1/0;for(var O=0;O<P.length;O++)for(var z=0;z<P[O].length;z++)for(var B=P[O][z],Y=1;Y<B.length;Y+=2){var D=B[Y],G=B[Y+1];v=Math.min(v,D),m=Math.max(m,D),x=Math.min(x,G),T=Math.max(T,G)}}else{var V=k.getFromId(r,a.xref),j=k.getRefType(a.xref),W=k.getFromId(r,a.yref),Z=k.getRefType(a.yref),ie=h.getDataToPixel(r,V,!1,j),te=h.getDataToPixel(r,W,!0,Z);v=ie(a.x0),m=ie(a.x1),x=te(a.y0),T=te(a.y1)}var J=a.label.textangle;J==="auto"&&(J=a.type==="line"?function(ue,ce,de,me){var _e,Se;return Se=Math.abs(de-ue),_e=de>=ue?ce-me:me-ce,-180/Math.PI*Math.atan2(_e,Se)}(v,x,m,T):0),A.call(function(ue){return ue.call(_.font,M).attr({}),i.convertToTspans(ue,r),ue});var X=function(ue,ce,de,me,_e,Se,we){var xe,De,Ee,Me,he=_e.label.textposition,fe=_e.label.textangle,ae=_e.label.padding,be=_e.type,Ie=Math.PI/180*Se,Te=Math.sin(Ie),Ne=Math.cos(Ie),qe=_e.label.xanchor,ve=_e.label.yanchor;if(be==="line"){he==="start"?(xe=ue,De=ce):he==="end"?(xe=de,De=me):(xe=(ue+de)/2,De=(ce+me)/2),qe==="auto"&&(qe=he==="start"?fe==="auto"?de>ue?"left":de<ue?"right":"center":de>ue?"right":de<ue?"left":"center":he==="end"?fe==="auto"?de>ue?"right":de<ue?"left":"center":de>ue?"left":de<ue?"right":"center":"center");var Ce={bottom:-1,middle:0,top:1};if(fe==="auto"){var Ae=Ce[ve];Ee=-ae*Te*Ae,Me=ae*Ne*Ae}else Ee=ae*{left:1,center:0,right:-1}[qe],Me=ae*Ce[ve];xe+=Ee,De+=Me}else Ee=ae+3,he.indexOf("right")!==-1?(xe=Math.max(ue,de)-Ee,qe==="auto"&&(qe="right")):he.indexOf("left")!==-1?(xe=Math.min(ue,de)+Ee,qe==="auto"&&(qe="left")):(xe=(ue+de)/2,qe==="auto"&&(qe="center")),De=he.indexOf("top")!==-1?Math.min(ce,me):he.indexOf("bottom")!==-1?Math.max(ce,me):(ce+me)/2,Me=ae,ve==="bottom"?De-=Me:ve==="top"&&(De+=Me);var ze=o[ve],Ue=_e.label.font.size,Ve=we.height;return{textx:xe+(Ve*ze-Ue)*Te,texty:De+-(Ve*ze-Ue)*Ne,xanchor:qe}}(v,x,m,T,a,J,_.bBox(A.node())),ee=X.textx,re=X.texty,oe=X.xanchor;A.attr({"text-anchor":{left:"start",center:"middle",right:"end"}[oe],y:re,x:ee,transform:"rotate("+J+","+ee+","+re+")"}).call(i.positionText,ee,re)}}},42359:function(R,E,e){var w=e(71828).strTranslate,k=e(28569),i=e(64505),_=i.drawMode,y=i.selectMode,h=e(73972),l=e(7901),t=e(89995),o=t.i000,r=t.i090,n=t.i180,a=t.i270,s=e(51873).clearOutlineControllers,u=e(60165),p=u.pointsOnRectangle,c=u.pointsOnEllipse,b=u.writePaths,g=e(90551).newShapes,f=e(90551).createShapeObj,v=e(35855),m=e(48100);function x(T,d){var M,A,C,P=T[d][1],O=T[d][2],z=T.length;return A=T[M=(d+1)%z][1],C=T[M][2],A===P&&C===O&&(A=T[M=(d+2)%z][1],C=T[M][2]),[M,A,C]}R.exports=function T(d,M,A,C){C||(C=0);var P=A.gd;function O(){T(d,M,A,C++),(c(d[0])||A.hasText)&&z({redrawing:!0})}function z(_e){var Se={};A.isActiveShape!==void 0&&(A.isActiveShape=!1,Se=g(M,A)),A.isActiveSelection!==void 0&&(A.isActiveSelection=!1,Se=v(M,A),P._fullLayout._reselect=!0),Object.keys(Se).length&&h.call((_e||{}).redrawing?"relayout":"_guiRelayout",P,Se)}var B,Y,D,G,V,j=P._fullLayout._zoomlayer,W=A.dragmode,Z=_(W),ie=y(W);if((Z||ie)&&(P._fullLayout._outlining=!0),s(P),M.attr("d",b(d)),C||!A.isActiveShape&&!A.isActiveSelection||(V=function(_e,Se){for(var we=0;we<Se.length;we++){var xe=Se[we];_e[we]=[];for(var De=0;De<xe.length;De++){_e[we][De]=[];for(var Ee=0;Ee<xe[De].length;Ee++)_e[we][De][Ee]=xe[De][Ee]}}return _e}([],d),function(_e){B=[];for(var Se=0;Se<d.length;Se++){var we=d[Se],xe=p(we),De=!xe&&c(we);B[Se]=[];for(var Ee=we.length,Me=0;Me<Ee;Me++)if(we[Me][0]!=="Z"&&(!De||Me===o||Me===r||Me===n||Me===a)){var he,fe=xe&&A.isActiveSelection;fe&&(he=x(we,Me));var ae=we[Me][1],be=we[Me][2],Ie=_e.append(fe?"rect":"circle").attr("data-i",Se).attr("data-j",Me).style({fill:l.background,stroke:l.defaultLine,"stroke-width":1,"shape-rendering":"crispEdges"});if(fe){var Te=he[1]-ae,Ne=he[2]-be,qe=Ne?5:Math.max(Math.min(25,Math.abs(Te)-5),5),ve=Te?5:Math.max(Math.min(25,Math.abs(Ne)-5),5);Ie.classed(Ne?"cursor-ew-resize":"cursor-ns-resize",!0).attr("width",qe).attr("height",ve).attr("x",ae-qe/2).attr("y",be-ve/2).attr("transform",w(Te/2,Ne/2))}else Ie.classed("cursor-grab",!0).attr("r",5).attr("cx",ae).attr("cy",be);B[Se][Me]={element:Ie.node(),gd:P,prepFn:X,doneFn:re,clickFn:oe},k.init(B[Se][Me])}}}(j.append("g").attr("class","outline-controllers")),function(){Y=[],d.length&&(Y[0]={element:M[0][0],gd:P,prepFn:ce,doneFn:de,clickFn:me},k.init(Y[0]))}()),Z&&A.hasText){var te=j.select(".label-temp"),J=f(M,A,A.dragmode);m(P,"label-temp",J,te)}function X(_e){D=+_e.srcElement.getAttribute("data-i"),G=+_e.srcElement.getAttribute("data-j"),B[D][G].moveFn=ee}function ee(_e,Se){if(d.length){var we=V[D][G][1],xe=V[D][G][2],De=d[D],Ee=De.length;if(p(De)){var Me=_e,he=Se;A.isActiveSelection&&(x(De,G)[1]===De[G][1]?he=0:Me=0);for(var fe=0;fe<Ee;fe++)if(fe!==G){var ae=De[fe];ae[1]===De[G][1]&&(ae[1]=we+Me),ae[2]===De[G][2]&&(ae[2]=xe+he)}if(De[G][1]=we+Me,De[G][2]=xe+he,!p(De))for(var be=0;be<Ee;be++)for(var Ie=0;Ie<De[be].length;Ie++)De[be][Ie]=V[D][be][Ie]}else De[G][1]=we+_e,De[G][2]=xe+Se;O()}}function re(){z()}function oe(_e,Se){if(_e===2){D=+Se.srcElement.getAttribute("data-i"),G=+Se.srcElement.getAttribute("data-j");var we=d[D];p(we)||c(we)||function(){if(d.length&&d[D]&&d[D].length){for(var xe=[],De=0;De<d[D].length;De++)De!==G&&xe.push(d[D][De]);xe.length>1&&(xe.length!==2||xe[1][0]!=="Z")&&(G===0&&(xe[0][0]="M"),d[D]=xe,O(),z())}}()}}function ue(_e,Se){(function(we,xe){if(d.length)for(var De=0;De<d.length;De++)for(var Ee=0;Ee<d[De].length;Ee++)for(var Me=0;Me+2<d[De][Ee].length;Me+=2)d[De][Ee][Me+1]=V[De][Ee][Me+1]+we,d[De][Ee][Me+2]=V[De][Ee][Me+2]+xe})(_e,Se),O()}function ce(_e){(D=+_e.srcElement.getAttribute("data-i"))||(D=0),Y[D].moveFn=ue}function de(){z()}function me(_e){_e===2&&function(Se){if(y(Se._fullLayout.dragmode)){s(Se);var we=Se._fullLayout._activeSelectionIndex,xe=(Se.layout||{}).selections||[];if(we<xe.length){for(var De=[],Ee=0;Ee<xe.length;Ee++)Ee!==we&&De.push(xe[Ee]);delete Se._fullLayout._activeSelectionIndex;var Me=Se._fullLayout.selections[we];Se._fullLayout._deselect={xref:Me.xref,yref:Me.yref},h.call("_guiRelayout",Se,{selections:De})}}}(P)}}},34031:function(R,E,e){var w=e(39898),k=e(73972),i=e(71828),_=e(89298),y=e(60165).readPaths,h=e(42359),l=e(48100),t=e(51873).clearOutlineControllers,o=e(7901),r=e(91424),n=e(44467).arrayEditor,a=e(28569),s=e(6964),u=e(21459),p=e(30477),c=p.getPathString;function b(d){var M=d._fullLayout;for(var A in M._shapeUpperLayer.selectAll("path").remove(),M._shapeLowerLayer.selectAll("path").remove(),M._shapeUpperLayer.selectAll("text").remove(),M._shapeLowerLayer.selectAll("text").remove(),M._plots){var C=M._plots[A].shapelayer;C&&(C.selectAll("path").remove(),C.selectAll("text").remove())}for(var P=0;P<M.shapes.length;P++)M.shapes[P].visible&&v(d,P)}function g(d){return!!d._fullLayout._outlining}function f(d){return!d._context.edits.shapePosition}function v(d,M){d._fullLayout._paperdiv.selectAll('.shapelayer [data-index="'+M+'"]').remove();var A=p.makeShapesOptionsAndPlotinfo(d,M),C=A.options,P=A.plotinfo;function O(z){var B=c(d,C),Y={"data-index":M,"fill-rule":C.fillrule,d:B},D=C.opacity,G=C.fillcolor,V=C.line.width?C.line.color:"rgba(0,0,0,0)",j=C.line.width,W=C.line.dash;j||C.editable!==!0||(j=5,W="solid");var Z=B[B.length-1]!=="Z",ie=f(d)&&C.editable&&d._fullLayout._activeShapeIndex===M;ie&&(G=Z?"rgba(0,0,0,0)":d._fullLayout.activeshape.fillcolor,D=d._fullLayout.activeshape.opacity);var te,J=z.append("g").classed("shape-group",!0).attr({"data-index":M}),X=J.append("path").attr(Y).style("opacity",D).call(o.stroke,V).call(o.fill,G).call(r.dashLine,W,j);if(m(J,d,C),l(d,M,C,J),(ie||d._context.edits.shapePosition)&&(te=n(d.layout,"shapes",C)),ie){X.style({cursor:"move"});var ee={element:X.node(),plotinfo:P,gd:d,editHelpers:te,hasText:C.label.text||C.label.texttemplate,isActiveShape:!0},re=y(B,d);h(re,X,ee)}else d._context.edits.shapePosition?function(oe,ue,ce,de,me,_e){var Se,we,xe,De,Ee,Me,he,fe,ae,be,Ie,Te,Ne,qe,ve,Ce,Ae=10,ze=10,Ue=ce.xsizemode==="pixel",Ve=ce.ysizemode==="pixel",Ye=ce.type==="line",$e=ce.type==="path",rt=_e.modifyItem,ht=w.select(ue.node().parentNode),nt=_.getFromId(oe,ce.xref),bt=_.getRefType(ce.xref),wt=_.getFromId(oe,ce.yref),ut=_.getRefType(ce.yref),lt=p.getDataToPixel(oe,nt,!1,bt),Tt=p.getDataToPixel(oe,wt,!0,ut),Et=p.getPixelToData(oe,nt,!1,bt),St=p.getPixelToData(oe,wt,!0,ut),Ft=Ye?function(){var ft=10,Be=Math.max(ce.line.width,ft),je=me.append("g").attr("data-index",de).attr("drag-helper",!0);je.append("path").attr("d",ue.attr("d")).style({cursor:"move","stroke-width":Be,"stroke-opacity":"0"});var at={"fill-opacity":"0"},ot=Math.max(Be/2,ft);return je.append("circle").attr({"data-line-point":"start-point",cx:Ue?lt(ce.xanchor)+ce.x0:lt(ce.x0),cy:Ve?Tt(ce.yanchor)-ce.y0:Tt(ce.y0),r:ot}).style(at).classed("cursor-grab",!0),je.append("circle").attr({"data-line-point":"end-point",cx:Ue?lt(ce.xanchor)+ce.x1:lt(ce.x1),cy:Ve?Tt(ce.yanchor)-ce.y1:Tt(ce.y1),r:ot}).style(at).classed("cursor-grab",!0),je}():ue,zt={element:Ft.node(),gd:oe,prepFn:function(ft){g(oe)||(Ue&&(Ee=lt(ce.xanchor)),Ve&&(Me=Tt(ce.yanchor)),ce.type==="path"?ve=ce.path:(Se=Ue?ce.x0:lt(ce.x0),we=Ve?ce.y0:Tt(ce.y0),xe=Ue?ce.x1:lt(ce.x1),De=Ve?ce.y1:Tt(ce.y1)),Se<xe?(ae=Se,Ne="x0",be=xe,qe="x1"):(ae=xe,Ne="x1",be=Se,qe="x0"),!Ve&&we<De||Ve&&we>De?(he=we,Ie="y0",fe=De,Te="y1"):(he=De,Ie="y1",fe=we,Te="y0"),Je(ft),Qe(me,ce),function(Be,je,at){var ot=je.xref,xt=je.yref,yt=_.getFromId(at,ot),_t=_.getFromId(at,xt),gt="";ot==="paper"||yt.autorange||(gt+=ot),xt==="paper"||_t.autorange||(gt+=xt),r.setClipUrl(Be,gt?"clip"+at._fullLayout._uid+gt:null,at)}(ue,ce,oe),zt.moveFn=Ce==="move"?et:Ze,zt.altKey=ft.altKey)},doneFn:function(){g(oe)||(s(ue),st(me),m(ue,oe,ce),k.call("_guiRelayout",oe,_e.getUpdateObj()))},clickFn:function(){g(oe)||st(me)}};function Je(ft){if(g(oe))Ce=null;else if(Ye)Ce=ft.target.tagName==="path"?"move":ft.target.attributes["data-line-point"].value==="start-point"?"resize-over-start-point":"resize-over-end-point";else{var Be=zt.element.getBoundingClientRect(),je=Be.right-Be.left,at=Be.bottom-Be.top,ot=ft.clientX-Be.left,xt=ft.clientY-Be.top,yt=!$e&&je>Ae&&at>ze&&!ft.shiftKey?a.getCursor(ot/je,1-xt/at):"move";s(ue,yt),Ce=yt.split("-")[0]}}function et(ft,Be){if(ce.type==="path"){var je=function(xt){return xt},at=je,ot=je;Ue?rt("xanchor",ce.xanchor=Et(Ee+ft)):(at=function(xt){return Et(lt(xt)+ft)},nt&&nt.type==="date"&&(at=p.encodeDate(at))),Ve?rt("yanchor",ce.yanchor=St(Me+Be)):(ot=function(xt){return St(Tt(xt)+Be)},wt&&wt.type==="date"&&(ot=p.encodeDate(ot))),rt("path",ce.path=x(ve,at,ot))}else Ue?rt("xanchor",ce.xanchor=Et(Ee+ft)):(rt("x0",ce.x0=Et(Se+ft)),rt("x1",ce.x1=Et(xe+ft))),Ve?rt("yanchor",ce.yanchor=St(Me+Be)):(rt("y0",ce.y0=St(we+Be)),rt("y1",ce.y1=St(De+Be)));ue.attr("d",c(oe,ce)),Qe(me,ce),l(oe,de,ce,ht)}function Ze(ft,Be){if($e){var je=function(Qt){return Qt},at=je,ot=je;Ue?rt("xanchor",ce.xanchor=Et(Ee+ft)):(at=function(Qt){return Et(lt(Qt)+ft)},nt&&nt.type==="date"&&(at=p.encodeDate(at))),Ve?rt("yanchor",ce.yanchor=St(Me+Be)):(ot=function(Qt){return St(Tt(Qt)+Be)},wt&&wt.type==="date"&&(ot=p.encodeDate(ot))),rt("path",ce.path=x(ve,at,ot))}else if(Ye){if(Ce==="resize-over-start-point"){var xt=Se+ft,yt=Ve?we-Be:we+Be;rt("x0",ce.x0=Ue?xt:Et(xt)),rt("y0",ce.y0=Ve?yt:St(yt))}else if(Ce==="resize-over-end-point"){var _t=xe+ft,gt=Ve?De-Be:De+Be;rt("x1",ce.x1=Ue?_t:Et(_t)),rt("y1",ce.y1=Ve?gt:St(gt))}}else{var Ct=function(Qt){return Ce.indexOf(Qt)!==-1},dt=Ct("n"),vt=Ct("s"),At=Ct("w"),Bt=Ct("e"),jt=dt?he+Be:he,Ut=vt?fe+Be:fe,tn=At?ae+ft:ae,Xt=Bt?be+ft:be;Ve&&(dt&&(jt=he-Be),vt&&(Ut=fe-Be)),(!Ve&&Ut-jt>ze||Ve&&jt-Ut>ze)&&(rt(Ie,ce[Ie]=Ve?jt:St(jt)),rt(Te,ce[Te]=Ve?Ut:St(Ut))),Xt-tn>Ae&&(rt(Ne,ce[Ne]=Ue?tn:Et(tn)),rt(qe,ce[qe]=Ue?Xt:Et(Xt)))}ue.attr("d",c(oe,ce)),Qe(me,ce),l(oe,de,ce,ht)}function Qe(ft,Be){(Ue||Ve)&&function(){var je=Be.type!=="path",at=ft.selectAll(".visual-cue").data([0]);at.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":1}).classed("visual-cue",!0);var ot=lt(Ue?Be.xanchor:i.midRange(je?[Be.x0,Be.x1]:p.extractPathCoords(Be.path,u.paramIsX))),xt=Tt(Ve?Be.yanchor:i.midRange(je?[Be.y0,Be.y1]:p.extractPathCoords(Be.path,u.paramIsY)));if(ot=p.roundPositionForSharpStrokeRendering(ot,1),xt=p.roundPositionForSharpStrokeRendering(xt,1),Ue&&Ve){var yt="M"+(ot-1-1)+","+(xt-1-1)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";at.attr("d",yt)}else if(Ue){var _t="M"+(ot-1-1)+","+(xt-9-1)+"v18 h2 v-18 Z";at.attr("d",_t)}else{var gt="M"+(ot-9-1)+","+(xt-1-1)+"h18 v2 h-18 Z";at.attr("d",gt)}}()}function st(ft){ft.selectAll(".visual-cue").remove()}a.init(zt),Ft.node().onmousemove=Je}(d,X,C,M,z,te):C.editable===!0&&X.style("pointer-events",Z||o.opacity(G)*D<=.5?"stroke":"all");X.node().addEventListener("click",function(){return function(oe,ue){if(f(oe)){var ce=+ue.node().getAttribute("data-index");if(ce>=0){if(ce===oe._fullLayout._activeShapeIndex)return void T(oe);oe._fullLayout._activeShapeIndex=ce,oe._fullLayout._deactivateShape=T,b(oe)}}}(d,X)})}C._input&&C.visible!==!1&&(C.layer!=="below"?O(d._fullLayout._shapeUpperLayer):C.xref==="paper"||C.yref==="paper"?O(d._fullLayout._shapeLowerLayer):P._hadPlotinfo?O((P.mainplotinfo||P).shapelayer):O(d._fullLayout._shapeLowerLayer))}function m(d,M,A){var C=(A.xref+A.yref).replace(/paper/g,"").replace(/[xyz][1-9]* *domain/g,"");r.setClipUrl(d,C?"clip"+M._fullLayout._uid+C:null,M)}function x(d,M,A){return d.replace(u.segmentRE,function(C){var P=0,O=C.charAt(0),z=u.paramIsX[O],B=u.paramIsY[O],Y=u.numParams[O];return O+C.substr(1).replace(u.paramRE,function(D){return P>=Y||(z[P]?D=M(D):B[P]&&(D=A(D)),P++),D})})}function T(d){f(d)&&d._fullLayout._activeShapeIndex>=0&&(t(d),delete d._fullLayout._activeShapeIndex,b(d))}R.exports={draw:b,drawOne:v,eraseActiveShape:function(d){if(f(d)){t(d);var M=d._fullLayout._activeShapeIndex,A=(d.layout||{}).shapes||[];if(M<A.length){for(var C=[],P=0;P<A.length;P++)P!==M&&C.push(A[P]);delete d._fullLayout._activeShapeIndex,k.call("_guiRelayout",d,{shapes:C})}}},drawLabel:l}},29241:function(R,E,e){var w=e(41940),k=e(79952).P,i=e(1426).extendFlat,_=e(5386).R,y=e(37281);R.exports={newshape:{line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:0,dflt:4,editType:"none"},dash:i({},k,{dflt:"solid",editType:"none"}),editType:"none"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"none"},layer:{valType:"enumerated",values:["below","above"],dflt:"above",editType:"none"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal",editType:"none"},label:{text:{valType:"string",dflt:"",editType:"none"},texttemplate:_({newshape:!0,editType:"none"},{keys:Object.keys(y)}),font:w({editType:"none"}),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:"none"},textangle:{valType:"angle",dflt:"auto",editType:"none"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"none"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"none"},padding:{valType:"number",dflt:3,min:0,editType:"none"},editType:"none"},editType:"none"},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}},89995:function(R){R.exports={CIRCLE_SIDES:32,i000:0,i090:8,i180:16,i270:24,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}},45547:function(R,E,e){var w=e(7901),k=e(71828);R.exports=function(i,_,y){if(y("newshape.drawdirection"),y("newshape.layer"),y("newshape.fillcolor"),y("newshape.fillrule"),y("newshape.opacity"),y("newshape.line.width")){var h=(i||{}).plot_bgcolor||"#FFF";y("newshape.line.color",w.contrast(h)),y("newshape.line.dash")}var l=i.dragmode==="drawline",t=y("newshape.label.text"),o=y("newshape.label.texttemplate");if(t||o){y("newshape.label.textangle");var r=y("newshape.label.textposition",l?"middle":"middle center");y("newshape.label.xanchor"),y("newshape.label.yanchor",function(n,a){return n?"bottom":a.indexOf("top")!==-1?"top":a.indexOf("bottom")!==-1?"bottom":"middle"}(l,r)),y("newshape.label.padding"),k.coerceFont(y,"newshape.label.font",_.font)}y("activeshape.fillcolor"),y("activeshape.opacity")}},60165:function(R,E,e){var w=e(95616),k=e(89995),i=k.CIRCLE_SIDES,_=k.SQRT2,y=e(75549),h=y.p2r,l=y.r2p,t=[0,3,4,5,6,1,2],o=[0,3,4,1,2];function r(a,s){return Math.abs(a-s)<=1e-6}function n(a,s){var u=s[1]-a[1],p=s[2]-a[2];return Math.sqrt(u*u+p*p)}E.writePaths=function(a){var s=a.length;if(!s)return"M0,0Z";for(var u="",p=0;p<s;p++)for(var c=a[p].length,b=0;b<c;b++){var g=a[p][b][0];if(g==="Z")u+="Z";else for(var f=a[p][b].length,v=0;v<f;v++){var m=v;g==="Q"||g==="S"?m=o[v]:g==="C"&&(m=t[v]),u+=a[p][b][m],v>0&&v<f-1&&(u+=",")}}return u},E.readPaths=function(a,s,u,p){var c,b,g,f=w(a),v=[],m=-1,x=0,T=0,d=function(){b=x,g=T};d();for(var M=0;M<f.length;M++){var A,C,P,O,z=[],B=f[M][0],Y=B;switch(B){case"M":v[++m]=[],x=+f[M][1],T=+f[M][2],z.push([Y,x,T]),d();break;case"Q":case"S":A=+f[M][1],P=+f[M][2],x=+f[M][3],T=+f[M][4],z.push([Y,x,T,A,P]);break;case"C":A=+f[M][1],P=+f[M][2],C=+f[M][3],O=+f[M][4],x=+f[M][5],T=+f[M][6],z.push([Y,x,T,A,P,C,O]);break;case"T":case"L":x=+f[M][1],T=+f[M][2],z.push([Y,x,T]);break;case"H":Y="L",x=+f[M][1],z.push([Y,x,T]);break;case"V":Y="L",T=+f[M][1],z.push([Y,x,T]);break;case"A":Y="L";var D=+f[M][1],G=+f[M][2];+f[M][4]||(D=-D,G=-G);var V=x-D,j=T;for(c=1;c<=i/2;c++){var W=2*Math.PI*c/i;z.push([Y,V+D*Math.cos(W),j+G*Math.sin(W)])}break;case"Z":x===b&&T===g||(x=b,T=g,z.push([Y,x,T]))}for(var Z=(u||{}).domain,ie=s._fullLayout._size,te=u&&u.xsizemode==="pixel",J=u&&u.ysizemode==="pixel",X=p===!1,ee=0;ee<z.length;ee++){for(c=0;c+2<7;c+=2){var re=z[ee][c+1],oe=z[ee][c+2];re!==void 0&&oe!==void 0&&(x=re,T=oe,u&&(u.xaxis&&u.xaxis.p2r?(X&&(re-=u.xaxis._offset),re=te?l(u.xaxis,u.xanchor)+re:h(u.xaxis,re)):(X&&(re-=ie.l),Z?re=Z.x[0]+re/ie.w:re/=ie.w),u.yaxis&&u.yaxis.p2r?(X&&(oe-=u.yaxis._offset),oe=J?l(u.yaxis,u.yanchor)-oe:h(u.yaxis,oe)):(X&&(oe-=ie.t),oe=Z?Z.y[1]-oe/ie.h:1-oe/ie.h)),z[ee][c+1]=re,z[ee][c+2]=oe)}v[m].push(z[ee].slice())}}return v},E.pointsOnRectangle=function(a){if(a.length!==5)return!1;for(var s=1;s<3;s++)if(!r(a[0][s]-a[1][s],a[3][s]-a[2][s])||!r(a[0][s]-a[3][s],a[1][s]-a[2][s]))return!1;return!(!r(a[0][1],a[1][1])&&!r(a[0][1],a[3][1])||!(n(a[0],a[1])*n(a[0],a[3])))},E.pointsOnEllipse=function(a){var s=a.length;if(s!==i+1)return!1;s=i;for(var u=0;u<s;u++){var p=(2*s-u)%s,c=(s/2+p)%s,b=(s/2+u)%s;if(!r(n(a[u],a[b]),n(a[p],a[c])))return!1}return!0},E.handleEllipse=function(a,s,u){if(!a)return[s,u];var p=E.ellipseOver({x0:s[0],y0:s[1],x1:u[0],y1:u[1]}),c=(p.x1+p.x0)/2,b=(p.y1+p.y0)/2,g=(p.x1-p.x0)/2,f=(p.y1-p.y0)/2;g||(g=f/=_),f||(f=g/=_);for(var v=[],m=0;m<i;m++){var x=2*m*Math.PI/i;v.push([c+g*Math.cos(x),b+f*Math.sin(x)])}return v},E.ellipseOver=function(a){var s=a.x0,u=a.y0,p=a.x1,c=a.y1,b=p-s,g=c-u,f=((s-=b)+p)/2,v=((u-=g)+c)/2;return{x0:f-(b*=_),y0:v-(g*=_),x1:f+b,y1:v+g}},E.fixDatesForPaths=function(a,s,u){var p=s.type==="date",c=u.type==="date";if(!p&&!c)return a;for(var b=0;b<a.length;b++)for(var g=0;g<a[b].length;g++)for(var f=0;f+2<a[b][g].length;f+=2)p&&(a[b][g][f+1]=a[b][g][f+1].replace(" ","_")),c&&(a[b][g][f+2]=a[b][g][f+2].replace(" ","_"));return a}},90551:function(R,E,e){var w=e(64505),k=w.drawMode,i=w.openMode,_=e(89995),y=_.i000,h=_.i090,l=_.i180,t=_.i270,o=_.cos45,r=_.sin45,n=e(75549),a=n.p2r,s=n.r2p,u=e(51873).clearOutline,p=e(60165),c=p.readPaths,b=p.writePaths,g=p.ellipseOver,f=p.fixDatesForPaths;function v(m,x,T){var d,M=m[0][0],A=x.gd,C=M.getAttribute("d"),P=A._fullLayout.newshape,O=x.plotinfo,z=x.isActiveShape,B=O.xaxis,Y=O.yaxis,D=!!O.domain||!O.xaxis,G=!!O.domain||!O.yaxis,V=i(T),j=c(C,A,O,z),W={editable:!0,label:P.label,xref:D?"paper":B._id,yref:G?"paper":Y._id,layer:P.layer,opacity:P.opacity,line:{color:P.line.color,width:P.line.width,dash:P.line.dash}};if(V||(W.fillcolor=P.fillcolor,W.fillrule=P.fillrule),j.length===1&&(d=j[0]),d&&d.length===5&&T==="drawrect")W.type="rect",W.x0=d[0][1],W.y0=d[0][2],W.x1=d[2][1],W.y1=d[2][2];else if(d&&T==="drawline")W.type="line",W.x0=d[0][1],W.y0=d[0][2],W.x1=d[1][1],W.y1=d[1][2];else if(d&&T==="drawcircle"){W.type="circle";var Z=d[y][1],ie=d[h][1],te=d[l][1],J=d[t][1],X=d[y][2],ee=d[h][2],re=d[l][2],oe=d[t][2],ue=O.xaxis&&(O.xaxis.type==="date"||O.xaxis.type==="log"),ce=O.yaxis&&(O.yaxis.type==="date"||O.yaxis.type==="log");ue&&(Z=s(O.xaxis,Z),ie=s(O.xaxis,ie),te=s(O.xaxis,te),J=s(O.xaxis,J)),ce&&(X=s(O.yaxis,X),ee=s(O.yaxis,ee),re=s(O.yaxis,re),oe=s(O.yaxis,oe));var de=(ie+J)/2,me=(X+re)/2,_e=g({x0:de,y0:me,x1:de+(J-ie+te-Z)/2*o,y1:me+(oe-ee+re-X)/2*r});ue&&(_e.x0=a(O.xaxis,_e.x0),_e.x1=a(O.xaxis,_e.x1)),ce&&(_e.y0=a(O.yaxis,_e.y0),_e.y1=a(O.yaxis,_e.y1)),W.x0=_e.x0,W.y0=_e.y0,W.x1=_e.x1,W.y1=_e.y1}else W.type="path",B&&Y&&f(j,B,Y),W.path=b(j),d=null;return W}R.exports={newShapes:function(m,x){if(m.length&&m[0][0]){var T=x.gd,d=x.isActiveShape,M=x.dragmode,A=(T.layout||{}).shapes||[];if(!k(M)&&d!==void 0){var C=T._fullLayout._activeShapeIndex;if(C<A.length)switch(T._fullLayout.shapes[C].type){case"rect":M="drawrect";break;case"circle":M="drawcircle";break;case"line":M="drawline";break;case"path":var P=A[C].path||"";M=P[P.length-1]==="Z"?"drawclosedpath":"drawopenpath"}}var O=v(m,x,M);u(T);for(var z=x.editHelpers,B=(z||{}).modifyItem,Y=[],D=0;D<A.length;D++){var G=T._fullLayout.shapes[D];if(Y[D]=G._input,d!==void 0&&D===T._fullLayout._activeShapeIndex){var V=O;switch(G.type){case"line":case"rect":case"circle":B("x0",V.x0),B("x1",V.x1),B("y0",V.y0),B("y1",V.y1);break;case"path":B("path",V.path)}}}return d===void 0?(Y.push(O),Y):z?z.getUpdateObj():{}}},createShapeObj:v}},51873:function(R){R.exports={clearOutlineControllers:function(E){var e=E._fullLayout._zoomlayer;e&&e.selectAll(".outline-controllers").remove()},clearOutline:function(E){var e=E._fullLayout._zoomlayer;e&&e.selectAll(".select-outline").remove(),E._fullLayout._outlining=!1}}},30477:function(R,E,e){var w=e(21459),k=e(71828),i=e(89298);E.rangeToShapePosition=function(_){return _.type==="log"?_.r2d:function(y){return y}},E.shapePositionToRange=function(_){return _.type==="log"?_.d2r:function(y){return y}},E.decodeDate=function(_){return function(y){return y.replace&&(y=y.replace("_"," ")),_(y)}},E.encodeDate=function(_){return function(y){return _(y).replace(" ","_")}},E.extractPathCoords=function(_,y,h){var l=[];return _.match(w.segmentRE).forEach(function(t){var o=y[t.charAt(0)].drawn;if(o!==void 0){var r=t.substr(1).match(w.paramRE);if(r&&!(r.length<o)){var n=r[o],a=h?n:k.cleanNumber(n);l.push(a)}}}),l},E.getDataToPixel=function(_,y,h,l){var t,o=_._fullLayout._size;if(y)if(l==="domain")t=function(n){return y._length*(h?1-n:n)+y._offset};else{var r=E.shapePositionToRange(y);t=function(n){return y._offset+y.r2p(r(n,!0))},y.type==="date"&&(t=E.decodeDate(t))}else t=h?function(n){return o.t+o.h*(1-n)}:function(n){return o.l+o.w*n};return t},E.getPixelToData=function(_,y,h,l){var t,o=_._fullLayout._size;if(y)if(l==="domain")t=function(n){var a=(n-y._offset)/y._length;return h?1-a:a};else{var r=E.rangeToShapePosition(y);t=function(n){return r(y.p2r(n-y._offset))}}else t=h?function(n){return 1-(n-o.t)/o.h}:function(n){return(n-o.l)/o.w};return t},E.roundPositionForSharpStrokeRendering=function(_,y){var h=Math.round(y%2)===1,l=Math.round(_);return h?l+.5:l},E.makeShapesOptionsAndPlotinfo=function(_,y){var h=_._fullLayout.shapes[y]||{},l=_._fullLayout._plots[h.xref+h.yref];return l?l._hadPlotinfo=!0:(l={},h.xref&&h.xref!=="paper"&&(l.xaxis=_._fullLayout[h.xref+"axis"]),h.yref&&h.yref!=="paper"&&(l.yaxis=_._fullLayout[h.yref+"axis"])),l.xsizemode=h.xsizemode,l.ysizemode=h.ysizemode,l.xanchor=h.xanchor,l.yanchor=h.yanchor,{options:h,plotinfo:l}},E.makeSelectionsOptionsAndPlotinfo=function(_,y){var h=_._fullLayout.selections[y]||{},l=_._fullLayout._plots[h.xref+h.yref];return l?l._hadPlotinfo=!0:(l={},h.xref&&(l.xaxis=_._fullLayout[h.xref+"axis"]),h.yref&&(l.yaxis=_._fullLayout[h.yref+"axis"])),{options:h,plotinfo:l}},E.getPathString=function(_,y){var h,l,t,o,r,n,a,s,u=y.type,p=i.getRefType(y.xref),c=i.getRefType(y.yref),b=i.getFromId(_,y.xref),g=i.getFromId(_,y.yref),f=_._fullLayout._size;if(b?p==="domain"?l=function(P){return b._offset+b._length*P}:(h=E.shapePositionToRange(b),l=function(P){return b._offset+b.r2p(h(P,!0))}):l=function(P){return f.l+f.w*P},g?c==="domain"?o=function(P){return g._offset+g._length*(1-P)}:(t=E.shapePositionToRange(g),o=function(P){return g._offset+g.r2p(t(P,!0))}):o=function(P){return f.t+f.h*(1-P)},u==="path")return b&&b.type==="date"&&(l=E.decodeDate(l)),g&&g.type==="date"&&(o=E.decodeDate(o)),function(P,O,z){var B=P.path,Y=P.xsizemode,D=P.ysizemode,G=P.xanchor,V=P.yanchor;return B.replace(w.segmentRE,function(j){var W=0,Z=j.charAt(0),ie=w.paramIsX[Z],te=w.paramIsY[Z],J=w.numParams[Z],X=j.substr(1).replace(w.paramRE,function(ee){return ie[W]?ee=Y==="pixel"?O(G)+Number(ee):O(ee):te[W]&&(ee=D==="pixel"?z(V)-Number(ee):z(ee)),++W>J&&(ee="X"),ee});return W>J&&(X=X.replace(/[\s,]*X.*/,""),k.log("Ignoring extra params in segment "+j)),Z+X})}(y,l,o);if(y.xsizemode==="pixel"){var v=l(y.xanchor);r=v+y.x0,n=v+y.x1}else r=l(y.x0),n=l(y.x1);if(y.ysizemode==="pixel"){var m=o(y.yanchor);a=m-y.y0,s=m-y.y1}else a=o(y.y0),s=o(y.y1);if(u==="line")return"M"+r+","+a+"L"+n+","+s;if(u==="rect")return"M"+r+","+a+"H"+n+"V"+s+"H"+r+"Z";var x=(r+n)/2,T=(a+s)/2,d=Math.abs(x-r),M=Math.abs(T-a),A="A"+d+","+M,C=x+d+","+T;return"M"+C+A+" 0 1,1 "+x+","+(T-M)+A+" 0 0,1 "+C+"Z"}},89853:function(R,E,e){var w=e(34031);R.exports={moduleType:"component",name:"shapes",layoutAttributes:e(89827),supplyLayoutDefaults:e(84726),supplyDrawNewShapeDefaults:e(45547),includeBasePlot:e(76325)("shapes"),calcAutorange:e(5627),draw:w.draw,drawOne:w.drawOne}},37281:function(R){function E(i,_){return _?_.d2l(i):i}function e(i,_){return _?_.l2d(i):i}function w(i,_){return E(i.x1,_)-E(i.x0,_)}function k(i,_,y){return E(i.y1,y)-E(i.y0,y)}R.exports={x0:function(i){return i.x0},x1:function(i){return i.x1},y0:function(i){return i.y0},y1:function(i){return i.y1},slope:function(i,_,y){return i.type!=="line"?void 0:k(i,0,y)/w(i,_)},dx:w,dy:k,width:function(i,_){return Math.abs(w(i,_))},height:function(i,_,y){return Math.abs(k(i,0,y))},length:function(i,_,y){return i.type!=="line"?void 0:Math.sqrt(Math.pow(w(i,_),2)+Math.pow(k(i,0,y),2))},xcenter:function(i,_){return e((E(i.x1,_)+E(i.x0,_))/2,_)},ycenter:function(i,_,y){return e((E(i.y1,y)+E(i.y0,y))/2,y)}}},75067:function(R,E,e){var w=e(41940),k=e(35025),i=e(1426).extendDeepAll,_=e(30962).overrideAll,y=e(85594),h=e(44467).templatedArray,l=e(98292),t=h("step",{visible:{valType:"boolean",dflt:!0},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string"},value:{valType:"string"},execute:{valType:"boolean",dflt:!0}});R.exports=_(h("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:t,lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number",min:-2,max:3,dflt:0},pad:i(k({editType:"arraydraw"}),{},{t:{dflt:20}}),xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left"},y:{valType:"number",min:-2,max:3,dflt:0},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},transition:{duration:{valType:"number",min:0,dflt:150},easing:{valType:"enumerated",values:y.transition.easing.values,dflt:"cubic-in-out"}},currentvalue:{visible:{valType:"boolean",dflt:!0},xanchor:{valType:"enumerated",values:["left","center","right"],dflt:"left"},offset:{valType:"number",dflt:10},prefix:{valType:"string"},suffix:{valType:"string"},font:w({})},font:w({}),activebgcolor:{valType:"color",dflt:l.gripBgActiveColor},bgcolor:{valType:"color",dflt:l.railBgColor},bordercolor:{valType:"color",dflt:l.railBorderColor},borderwidth:{valType:"number",min:0,dflt:l.railBorderWidth},ticklen:{valType:"number",min:0,dflt:l.tickLength},tickcolor:{valType:"color",dflt:l.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:l.minorTickLength}}),"arraydraw","from-root")},98292:function(R){R.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}},12343:function(R,E,e){var w=e(71828),k=e(85501),i=e(75067),_=e(98292).name,y=i.steps;function h(t,o,r){function n(c,b){return w.coerce(t,o,i,c,b)}for(var a=k(t,o,{name:"steps",handleItemDefaults:l}),s=0,u=0;u<a.length;u++)a[u].visible&&s++;if(s<2?o.visible=!1:n("visible")){o._stepCount=s;var p=o._visibleSteps=w.filterVisible(a);(a[n("active")]||{}).visible||(o.active=p[0]._index),n("x"),n("y"),w.noneOrAll(t,o,["x","y"]),n("xanchor"),n("yanchor"),n("len"),n("lenmode"),n("pad.t"),n("pad.r"),n("pad.b"),n("pad.l"),w.coerceFont(n,"font",r.font),n("currentvalue.visible")&&(n("currentvalue.xanchor"),n("currentvalue.prefix"),n("currentvalue.suffix"),n("currentvalue.offset"),w.coerceFont(n,"currentvalue.font",o.font)),n("transition.duration"),n("transition.easing"),n("bgcolor"),n("activebgcolor"),n("bordercolor"),n("borderwidth"),n("ticklen"),n("tickwidth"),n("tickcolor"),n("minorticklen")}}function l(t,o){function r(a,s){return w.coerce(t,o,y,a,s)}if(t.method==="skip"||Array.isArray(t.args)?r("visible"):o.visible=!1){r("method"),r("args");var n=r("label","step-"+o._index);r("value",n),r("execute")}}R.exports=function(t,o){k(t,o,{name:_,handleItemDefaults:h})}},44504:function(R,E,e){var w=e(39898),k=e(74875),i=e(7901),_=e(91424),y=e(71828),h=y.strTranslate,l=e(63893),t=e(44467).arrayEditor,o=e(98292),r=e(18783),n=r.LINE_SPACING,a=r.FROM_TL,s=r.FROM_BR;function u(z){return o.autoMarginIdRoot+z._index}function p(z){return z._index}function c(z,B){var Y=_.tester.selectAll("g."+o.labelGroupClass).data(B._visibleSteps);Y.enter().append("g").classed(o.labelGroupClass,!0);var D=0,G=0;Y.each(function(ee){var re=f(w.select(this),{step:ee},B).node();if(re){var oe=_.bBox(re);G=Math.max(G,oe.height),D=Math.max(D,oe.width)}}),Y.remove();var V=B._dims={};V.inputAreaWidth=Math.max(o.railWidth,o.gripHeight);var j=z._fullLayout._size;V.lx=j.l+j.w*B.x,V.ly=j.t+j.h*(1-B.y),B.lenmode==="fraction"?V.outerLength=Math.round(j.w*B.len):V.outerLength=B.len,V.inputAreaStart=0,V.inputAreaLength=Math.round(V.outerLength-B.pad.l-B.pad.r);var W=(V.inputAreaLength-2*o.stepInset)/(B._stepCount-1),Z=D+o.labelPadding;if(V.labelStride=Math.max(1,Math.ceil(Z/W)),V.labelHeight=G,V.currentValueMaxWidth=0,V.currentValueHeight=0,V.currentValueTotalHeight=0,V.currentValueMaxLines=1,B.currentvalue.visible){var ie=_.tester.append("g");Y.each(function(ee){var re=b(ie,B,ee.label),oe=re.node()&&_.bBox(re.node())||{width:0,height:0},ue=l.lineCount(re);V.currentValueMaxWidth=Math.max(V.currentValueMaxWidth,Math.ceil(oe.width)),V.currentValueHeight=Math.max(V.currentValueHeight,Math.ceil(oe.height)),V.currentValueMaxLines=Math.max(V.currentValueMaxLines,ue)}),V.currentValueTotalHeight=V.currentValueHeight+B.currentvalue.offset,ie.remove()}V.height=V.currentValueTotalHeight+o.tickOffset+B.ticklen+o.labelOffset+V.labelHeight+B.pad.t+B.pad.b;var te="left";y.isRightAnchor(B)&&(V.lx-=V.outerLength,te="right"),y.isCenterAnchor(B)&&(V.lx-=V.outerLength/2,te="center");var J="top";y.isBottomAnchor(B)&&(V.ly-=V.height,J="bottom"),y.isMiddleAnchor(B)&&(V.ly-=V.height/2,J="middle"),V.outerLength=Math.ceil(V.outerLength),V.height=Math.ceil(V.height),V.lx=Math.round(V.lx),V.ly=Math.round(V.ly);var X={y:B.y,b:V.height*s[J],t:V.height*a[J]};B.lenmode==="fraction"?(X.l=0,X.xl=B.x-B.len*a[te],X.r=0,X.xr=B.x+B.len*s[te]):(X.x=B.x,X.l=V.outerLength*a[te],X.r=V.outerLength*s[te]),k.autoMargin(z,u(B),X)}function b(z,B,Y){if(B.currentvalue.visible){var D,G,V=B._dims;switch(B.currentvalue.xanchor){case"right":D=V.inputAreaLength-o.currentValueInset-V.currentValueMaxWidth,G="left";break;case"center":D=.5*V.inputAreaLength,G="middle";break;default:D=o.currentValueInset,G="left"}var j=y.ensureSingle(z,"text",o.labelClass,function(X){X.attr({"text-anchor":G,"data-notex":1})}),W=B.currentvalue.prefix?B.currentvalue.prefix:"";if(typeof Y=="string")W+=Y;else{var Z=B.steps[B.active].label,ie=B._gd._fullLayout._meta;ie&&(Z=y.templateString(Z,ie)),W+=Z}B.currentvalue.suffix&&(W+=B.currentvalue.suffix),j.call(_.font,B.currentvalue.font).text(W).call(l.convertToTspans,B._gd);var te=l.lineCount(j),J=(V.currentValueMaxLines+1-te)*B.currentvalue.font.size*n;return l.positionText(j,D,J),j}}function g(z,B,Y){y.ensureSingle(z,"rect",o.gripRectClass,function(D){D.call(T,B,z,Y).style("pointer-events","all")}).attr({width:o.gripWidth,height:o.gripHeight,rx:o.gripRadius,ry:o.gripRadius}).call(i.stroke,Y.bordercolor).call(i.fill,Y.bgcolor).style("stroke-width",Y.borderwidth+"px")}function f(z,B,Y){var D=y.ensureSingle(z,"text",o.labelClass,function(j){j.attr({"text-anchor":"middle","data-notex":1})}),G=B.step.label,V=Y._gd._fullLayout._meta;return V&&(G=y.templateString(G,V)),D.call(_.font,Y.font).text(G).call(l.convertToTspans,Y._gd),D}function v(z,B){var Y=y.ensureSingle(z,"g",o.labelsClass),D=B._dims,G=Y.selectAll("g."+o.labelGroupClass).data(D.labelSteps);G.enter().append("g").classed(o.labelGroupClass,!0),G.exit().remove(),G.each(function(V){var j=w.select(this);j.call(f,V,B),_.setTranslate(j,A(B,V.fraction),o.tickOffset+B.ticklen+B.font.size*n+o.labelOffset+D.currentValueTotalHeight)})}function m(z,B,Y,D,G){var V=Math.round(D*(Y._stepCount-1)),j=Y._visibleSteps[V]._index;j!==Y.active&&x(z,B,Y,j,!0,G)}function x(z,B,Y,D,G,V){var j=Y.active;Y.active=D,t(z.layout,o.name,Y).applyUpdate("active",D);var W=Y.steps[Y.active];B.call(M,Y,V),B.call(b,Y),z.emit("plotly_sliderchange",{slider:Y,step:Y.steps[Y.active],interaction:G,previousActive:j}),W&&W.method&&G&&(B._nextMethod?(B._nextMethod.step=W,B._nextMethod.doCallback=G,B._nextMethod.doTransition=V):(B._nextMethod={step:W,doCallback:G,doTransition:V},B._nextMethodRaf=window.requestAnimationFrame(function(){var Z=B._nextMethod.step;Z.method&&(Z.execute&&k.executeAPICommand(z,Z.method,Z.args),B._nextMethod=null,B._nextMethodRaf=null)})))}function T(z,B,Y){if(!B._context.staticPlot){var D=Y.node(),G=w.select(B);z.on("mousedown",j),z.on("touchstart",j)}function V(){return Y.data()[0]}function j(){var W=V();B.emit("plotly_sliderstart",{slider:W});var Z=Y.select("."+o.gripRectClass);w.event.stopPropagation(),w.event.preventDefault(),Z.call(i.fill,W.activebgcolor);var ie=C(W,w.mouse(D)[0]);function te(){var X=V(),ee=C(X,w.mouse(D)[0]);m(B,Y,X,ee,!1)}function J(){var X=V();X._dragging=!1,Z.call(i.fill,X.bgcolor),G.on("mouseup",null),G.on("mousemove",null),G.on("touchend",null),G.on("touchmove",null),B.emit("plotly_sliderend",{slider:X,step:X.steps[X.active]})}m(B,Y,W,ie,!0),W._dragging=!0,G.on("mousemove",te),G.on("touchmove",te),G.on("mouseup",J),G.on("touchend",J)}}function d(z,B){var Y=z.selectAll("rect."+o.tickRectClass).data(B._visibleSteps),D=B._dims;Y.enter().append("rect").classed(o.tickRectClass,!0),Y.exit().remove(),Y.attr({width:B.tickwidth+"px","shape-rendering":"crispEdges"}),Y.each(function(G,V){var j=V%D.labelStride==0,W=w.select(this);W.attr({height:j?B.ticklen:B.minorticklen}).call(i.fill,B.tickcolor),_.setTranslate(W,A(B,V/(B._stepCount-1))-.5*B.tickwidth,(j?o.tickOffset:o.minorTickOffset)+D.currentValueTotalHeight)})}function M(z,B,Y){for(var D=z.select("rect."+o.gripRectClass),G=0,V=0;V<B._stepCount;V++)if(B._visibleSteps[V]._index===B.active){G=V;break}var j=A(B,G/(B._stepCount-1));if(!B._invokingCommand){var W=D;Y&&B.transition.duration>0&&(W=W.transition().duration(B.transition.duration).ease(B.transition.easing)),W.attr("transform",h(j-.5*o.gripWidth,B._dims.currentValueTotalHeight))}}function A(z,B){var Y=z._dims;return Y.inputAreaStart+o.stepInset+(Y.inputAreaLength-2*o.stepInset)*Math.min(1,Math.max(0,B))}function C(z,B){var Y=z._dims;return Math.min(1,Math.max(0,(B-o.stepInset-Y.inputAreaStart)/(Y.inputAreaLength-2*o.stepInset-2*Y.inputAreaStart)))}function P(z,B,Y){var D=Y._dims,G=y.ensureSingle(z,"rect",o.railTouchRectClass,function(V){V.call(T,B,z,Y).style("pointer-events","all")});G.attr({width:D.inputAreaLength,height:Math.max(D.inputAreaWidth,o.tickOffset+Y.ticklen+D.labelHeight)}).call(i.fill,Y.bgcolor).attr("opacity",0),_.setTranslate(G,0,D.currentValueTotalHeight)}function O(z,B){var Y=B._dims,D=Y.inputAreaLength-2*o.railInset,G=y.ensureSingle(z,"rect",o.railRectClass);G.attr({width:D,height:o.railWidth,rx:o.railRadius,ry:o.railRadius,"shape-rendering":"crispEdges"}).call(i.stroke,B.bordercolor).call(i.fill,B.bgcolor).style("stroke-width",B.borderwidth+"px"),_.setTranslate(G,o.railInset,.5*(Y.inputAreaWidth-o.railWidth)+Y.currentValueTotalHeight)}R.exports=function(z){var B=z._context.staticPlot,Y=z._fullLayout,D=function(ie,te){for(var J=ie[o.name],X=[],ee=0;ee<J.length;ee++){var re=J[ee];re.visible&&(re._gd=te,X.push(re))}return X}(Y,z),G=Y._infolayer.selectAll("g."+o.containerClassName).data(D.length>0?[0]:[]);function V(ie){ie._commandObserver&&(ie._commandObserver.remove(),delete ie._commandObserver),k.autoMargin(z,u(ie))}if(G.enter().append("g").classed(o.containerClassName,!0).style("cursor",B?null:"ew-resize"),G.exit().each(function(){w.select(this).selectAll("g."+o.groupClassName).each(V)}).remove(),D.length!==0){var j=G.selectAll("g."+o.groupClassName).data(D,p);j.enter().append("g").classed(o.groupClassName,!0),j.exit().each(V).remove();for(var W=0;W<D.length;W++){var Z=D[W];c(z,Z)}j.each(function(ie){var te=w.select(this);(function(J){var X=J._dims;X.labelSteps=[];for(var ee=J._stepCount,re=0;re<ee;re+=X.labelStride)X.labelSteps.push({fraction:re/(ee-1),step:J._visibleSteps[re]})})(ie),k.manageCommandObserver(z,ie,ie._visibleSteps,function(J){var X=te.data()[0];X.active!==J.index&&(X._dragging||x(z,te,X,J.index,!1,!0))}),function(J,X,ee){(ee.steps[ee.active]||{}).visible||(ee.active=ee._visibleSteps[0]._index),X.call(b,ee).call(O,ee).call(v,ee).call(d,ee).call(P,J,ee).call(g,J,ee);var re=ee._dims;_.setTranslate(X,re.lx+ee.pad.l,re.ly+ee.pad.t),X.call(M,ee,!1),X.call(b,ee)}(z,w.select(this),ie)})}}},23243:function(R,E,e){var w=e(98292);R.exports={moduleType:"component",name:w.name,layoutAttributes:e(75067),supplyLayoutDefaults:e(12343),draw:e(44504)}},92998:function(R,E,e){var w=e(39898),k=e(92770),i=e(74875),_=e(73972),y=e(71828),h=y.strTranslate,l=e(91424),t=e(7901),o=e(63893),r=e(37822),n=e(18783).OPPOSITE_SIDE,a=/ [XY][0-9]* /;R.exports={draw:function(s,u,p){var c,b=p.propContainer,g=p.propName,f=p.placeholder,v=p.traceIndex,m=p.avoid||{},x=p.attributes,T=p.transform,d=p.containerGroup,M=s._fullLayout,A=1,C=!1,P=b.title,O=(P&&P.text?P.text:"").trim(),z=P&&P.font?P.font:{},B=z.family,Y=z.size,D=z.color;g==="title.text"?c="titleText":g.indexOf("axis")!==-1?c="axisTitleText":g.indexOf(!0)&&(c="colorbarTitleText");var G=s._context.edits[c];O===""?A=0:O.replace(a," % ")===f.replace(a," % ")&&(A=.2,C=!0,G||(O="")),p._meta?O=y.templateString(O,p._meta):M._meta&&(O=y.templateString(O,M._meta));var V,j=O||G;d||(d=y.ensureSingle(M._infolayer,"g","g-"+u),V=M._hColorbarMoveTitle);var W=d.selectAll("text").data(j?[0]:[]);if(W.enter().append("text"),W.text(O).attr("class",u),W.exit().remove(),!j)return d;function Z(J){y.syncOrAsync([ie,te],J)}function ie(J){var X;return!T&&V&&(T={}),T?(X="",T.rotate&&(X+="rotate("+[T.rotate,x.x,x.y]+")"),(T.offset||V)&&(X+=h(0,(T.offset||0)-(V||0)))):X=null,J.attr("transform",X),J.style({"font-family":B,"font-size":w.round(Y,2)+"px",fill:t.rgb(D),opacity:A*t.opacity(D),"font-weight":i.fontWeight}).attr(x).call(o.convertToTspans,s),i.previousPromises(s)}function te(J){var X=w.select(J.node().parentNode);if(m&&m.selection&&m.side&&O){X.attr("transform",null);var ee=n[m.side],re=m.side==="left"||m.side==="top"?-1:1,oe=k(m.pad)?m.pad:2,ue=l.bBox(X.node()),ce={t:0,b:0,l:0,r:0},de=s._fullLayout._reservedMargin;for(var me in de)for(var _e in de[me]){var Se=de[me][_e];ce[_e]=Math.max(ce[_e],Se)}var we={left:ce.l,top:ce.t,right:M.width-ce.r,bottom:M.height-ce.b},xe=m.maxShift||re*(we[m.side]-ue[m.side]),De=0;if(xe<0)De=xe;else{var Ee=m.offsetLeft||0,Me=m.offsetTop||0;ue.left-=Ee,ue.right-=Ee,ue.top-=Me,ue.bottom-=Me,m.selection.each(function(){var fe=l.bBox(this);y.bBoxIntersect(ue,fe,oe)&&(De=Math.max(De,re*(fe[m.side]-ue[ee])+oe))}),De=Math.min(xe,De),b._titleScoot=Math.abs(De)}if(De>0||xe<0){var he={left:[-De,0],right:[De,0],top:[0,-De],bottom:[0,De]}[m.side];X.attr("transform",h(he[0],he[1]))}}}return W.call(Z),G&&(O?W.on(".opacity",null):(A=0,C=!0,W.text(f).on("mouseover.opacity",function(){w.select(this).transition().duration(r.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){w.select(this).transition().duration(r.HIDE_PLACEHOLDER).style("opacity",0)})),W.call(o.makeEditable,{gd:s}).on("edit",function(J){v!==void 0?_.call("_guiRestyle",s,g,J,v):_.call("_guiRelayout",s,g,J)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Z)}).on("input",function(J){this.text(J||" ").call(o.positionText,x.x,x.y)})),W.classed("js-placeholder",C),d}}},7163:function(R,E,e){var w=e(41940),k=e(22399),i=e(1426).extendFlat,_=e(30962).overrideAll,y=e(35025),h=e(44467).templatedArray,l=h("button",{visible:{valType:"boolean"},method:{valType:"enumerated",values:["restyle","relayout","animate","update","skip"],dflt:"restyle"},args:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},args2:{valType:"info_array",freeLength:!0,items:[{valType:"any"},{valType:"any"},{valType:"any"}]},label:{valType:"string",dflt:""},execute:{valType:"boolean",dflt:!0}});R.exports=_(h("updatemenu",{_arrayAttrRegexps:[/^updatemenus\[(0|[1-9][0-9]+)\]\.buttons/],visible:{valType:"boolean"},type:{valType:"enumerated",values:["dropdown","buttons"],dflt:"dropdown"},direction:{valType:"enumerated",values:["left","right","up","down"],dflt:"down"},active:{valType:"integer",min:-1,dflt:0},showactive:{valType:"boolean",dflt:!0},buttons:l,x:{valType:"number",min:-2,max:3,dflt:-.05},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"right"},y:{valType:"number",min:-2,max:3,dflt:1},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],dflt:"top"},pad:i(y({editType:"arraydraw"}),{}),font:w({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:k.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")},75909:function(R){R.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:"◄",right:"►",up:"▲",down:"▼"}}},64897:function(R,E,e){var w=e(71828),k=e(85501),i=e(7163),_=e(75909).name,y=i.buttons;function h(t,o,r){function n(a,s){return w.coerce(t,o,i,a,s)}n("visible",k(t,o,{name:"buttons",handleItemDefaults:l}).length>0)&&(n("active"),n("direction"),n("type"),n("showactive"),n("x"),n("y"),w.noneOrAll(t,o,["x","y"]),n("xanchor"),n("yanchor"),n("pad.t"),n("pad.r"),n("pad.b"),n("pad.l"),w.coerceFont(n,"font",r.font),n("bgcolor",r.paper_bgcolor),n("bordercolor"),n("borderwidth"))}function l(t,o){function r(n,a){return w.coerce(t,o,y,n,a)}r("visible",t.method==="skip"||Array.isArray(t.args))&&(r("method"),r("args"),r("args2"),r("label"),r("execute"))}R.exports=function(t,o){k(t,o,{name:_,handleItemDefaults:h})}},13689:function(R,E,e){var w=e(39898),k=e(74875),i=e(7901),_=e(91424),y=e(71828),h=e(63893),l=e(44467).arrayEditor,t=e(18783).LINE_SPACING,o=e(75909),r=e(25849);function n(A){return A._index}function a(A,C){return+A.attr(o.menuIndexAttrName)===C._index}function s(A,C,P,O,z,B,Y,D){C.active=Y,l(A.layout,o.name,C).applyUpdate("active",Y),C.type==="buttons"?p(A,O,null,null,C):C.type==="dropdown"&&(z.attr(o.menuIndexAttrName,"-1"),u(A,O,z,B,C),D||p(A,O,z,B,C))}function u(A,C,P,O,z){var B=y.ensureSingle(C,"g",o.headerClassName,function(W){W.style("pointer-events","all")}),Y=z._dims,D=z.active,G=z.buttons[D]||o.blankHeaderOpts,V={y:z.pad.t,yPad:0,x:z.pad.l,xPad:0,index:0},j={width:Y.headerWidth,height:Y.headerHeight};B.call(c,z,G,A).call(d,z,V,j),y.ensureSingle(C,"text",o.headerArrowClassName,function(W){W.attr("text-anchor","end").call(_.font,z.font).text(o.arrowSymbol[z.direction])}).attr({x:Y.headerWidth-o.arrowOffsetX+z.pad.l,y:Y.headerHeight/2+o.textOffsetY+z.pad.t}),B.on("click",function(){P.call(M,String(a(P,z)?-1:z._index)),p(A,C,P,O,z)}),B.on("mouseover",function(){B.call(v)}),B.on("mouseout",function(){B.call(m,z)}),_.setTranslate(C,Y.lx,Y.ly)}function p(A,C,P,O,z){P||(P=C).attr("pointer-events","all");var B=function(X){return+X.attr(o.menuIndexAttrName)==-1}(P)&&z.type!=="buttons"?[]:z.buttons,Y=z.type==="dropdown"?o.dropdownButtonClassName:o.buttonClassName,D=P.selectAll("g."+Y).data(y.filterVisible(B)),G=D.enter().append("g").classed(Y,!0),V=D.exit();z.type==="dropdown"?(G.attr("opacity","0").transition().attr("opacity","1"),V.transition().attr("opacity","0").remove()):V.remove();var j=0,W=0,Z=z._dims,ie=["up","down"].indexOf(z.direction)!==-1;z.type==="dropdown"&&(ie?W=Z.headerHeight+o.gapButtonHeader:j=Z.headerWidth+o.gapButtonHeader),z.type==="dropdown"&&z.direction==="up"&&(W=-o.gapButtonHeader+o.gapButton-Z.openHeight),z.type==="dropdown"&&z.direction==="left"&&(j=-o.gapButtonHeader+o.gapButton-Z.openWidth);var te={x:Z.lx+j+z.pad.l,y:Z.ly+W+z.pad.t,yPad:o.gapButton,xPad:o.gapButton,index:0},J={l:te.x+z.borderwidth,t:te.y+z.borderwidth};D.each(function(X,ee){var re=w.select(this);re.call(c,z,X,A).call(d,z,te),re.on("click",function(){w.event.defaultPrevented||(X.execute&&(X.args2&&z.active===ee?(s(A,z,0,C,P,O,-1),k.executeAPICommand(A,X.method,X.args2)):(s(A,z,0,C,P,O,ee),k.executeAPICommand(A,X.method,X.args))),A.emit("plotly_buttonclicked",{menu:z,button:X,active:z.active}))}),re.on("mouseover",function(){re.call(v)}),re.on("mouseout",function(){re.call(m,z),D.call(f,z)})}),D.call(f,z),ie?(J.w=Math.max(Z.openWidth,Z.headerWidth),J.h=te.y-J.t):(J.w=te.x-J.l,J.h=Math.max(Z.openHeight,Z.headerHeight)),J.direction=z.direction,O&&(D.size()?function(X,ee,re,oe,ue,ce){var de,me,_e,Se=ue.direction,we=Se==="up"||Se==="down",xe=ue._dims,De=ue.active;if(we)for(me=0,_e=0;_e<De;_e++)me+=xe.heights[_e]+o.gapButton;else for(de=0,_e=0;_e<De;_e++)de+=xe.widths[_e]+o.gapButton;oe.enable(ce,de,me),oe.hbar&&oe.hbar.attr("opacity","0").transition().attr("opacity","1"),oe.vbar&&oe.vbar.attr("opacity","0").transition().attr("opacity","1")}(0,0,0,O,z,J):function(X){var ee=!!X.hbar,re=!!X.vbar;ee&&X.hbar.transition().attr("opacity","0").each("end",function(){ee=!1,re||X.disable()}),re&&X.vbar.transition().attr("opacity","0").each("end",function(){re=!1,ee||X.disable()})}(O))}function c(A,C,P,O){A.call(b,C).call(g,C,P,O)}function b(A,C){y.ensureSingle(A,"rect",o.itemRectClassName,function(P){P.attr({rx:o.rx,ry:o.ry,"shape-rendering":"crispEdges"})}).call(i.stroke,C.bordercolor).call(i.fill,C.bgcolor).style("stroke-width",C.borderwidth+"px")}function g(A,C,P,O){var z=y.ensureSingle(A,"text",o.itemTextClassName,function(D){D.attr({"text-anchor":"start","data-notex":1})}),B=P.label,Y=O._fullLayout._meta;Y&&(B=y.templateString(B,Y)),z.call(_.font,C.font).text(B).call(h.convertToTspans,O)}function f(A,C){var P=C.active;A.each(function(O,z){var B=w.select(this);z===P&&C.showactive&&B.select("rect."+o.itemRectClassName).call(i.fill,o.activeColor)})}function v(A){A.select("rect."+o.itemRectClassName).call(i.fill,o.hoverColor)}function m(A,C){A.select("rect."+o.itemRectClassName).call(i.fill,C.bgcolor)}function x(A,C){var P=C._dims={width1:0,height1:0,heights:[],widths:[],totalWidth:0,totalHeight:0,openWidth:0,openHeight:0,lx:0,ly:0},O=_.tester.selectAll("g."+o.dropdownButtonClassName).data(y.filterVisible(C.buttons));O.enter().append("g").classed(o.dropdownButtonClassName,!0);var z=["up","down"].indexOf(C.direction)!==-1;O.each(function(j,W){var Z=w.select(this);Z.call(c,C,j,A);var ie=Z.select("."+o.itemTextClassName),te=ie.node()&&_.bBox(ie.node()).width,J=Math.max(te+o.textPadX,o.minWidth),X=C.font.size*t,ee=h.lineCount(ie),re=Math.max(X*ee,o.minHeight)+o.textOffsetY;re=Math.ceil(re),J=Math.ceil(J),P.widths[W]=J,P.heights[W]=re,P.height1=Math.max(P.height1,re),P.width1=Math.max(P.width1,J),z?(P.totalWidth=Math.max(P.totalWidth,J),P.openWidth=P.totalWidth,P.totalHeight+=re+o.gapButton,P.openHeight+=re+o.gapButton):(P.totalWidth+=J+o.gapButton,P.openWidth+=J+o.gapButton,P.totalHeight=Math.max(P.totalHeight,re),P.openHeight=P.totalHeight)}),z?P.totalHeight-=o.gapButton:P.totalWidth-=o.gapButton,P.headerWidth=P.width1+o.arrowPadX,P.headerHeight=P.height1,C.type==="dropdown"&&(z?(P.width1+=o.arrowPadX,P.totalHeight=P.height1):P.totalWidth=P.width1,P.totalWidth+=o.arrowPadX),O.remove();var B=P.totalWidth+C.pad.l+C.pad.r,Y=P.totalHeight+C.pad.t+C.pad.b,D=A._fullLayout._size;P.lx=D.l+D.w*C.x,P.ly=D.t+D.h*(1-C.y);var G="left";y.isRightAnchor(C)&&(P.lx-=B,G="right"),y.isCenterAnchor(C)&&(P.lx-=B/2,G="center");var V="top";y.isBottomAnchor(C)&&(P.ly-=Y,V="bottom"),y.isMiddleAnchor(C)&&(P.ly-=Y/2,V="middle"),P.totalWidth=Math.ceil(P.totalWidth),P.totalHeight=Math.ceil(P.totalHeight),P.lx=Math.round(P.lx),P.ly=Math.round(P.ly),k.autoMargin(A,T(C),{x:C.x,y:C.y,l:B*({right:1,center:.5}[G]||0),r:B*({left:1,center:.5}[G]||0),b:Y*({top:1,middle:.5}[V]||0),t:Y*({bottom:1,middle:.5}[V]||0)})}function T(A){return o.autoMarginIdRoot+A._index}function d(A,C,P,O){O=O||{};var z=A.select("."+o.itemRectClassName),B=A.select("."+o.itemTextClassName),Y=C.borderwidth,D=P.index,G=C._dims;_.setTranslate(A,Y+P.x,Y+P.y);var V=["up","down"].indexOf(C.direction)!==-1,j=O.height||(V?G.heights[D]:G.height1);z.attr({x:0,y:0,width:O.width||(V?G.width1:G.widths[D]),height:j});var W=C.font.size*t,Z=(h.lineCount(B)-1)*W/2;h.positionText(B,o.textOffsetX,j/2-Z+o.textOffsetY),V?P.y+=G.heights[D]+P.yPad:P.x+=G.widths[D]+P.xPad,P.index++}function M(A,C){A.attr(o.menuIndexAttrName,C||"-1").selectAll("g."+o.dropdownButtonClassName).remove()}R.exports=function(A){var C=A._fullLayout,P=y.filterVisible(C[o.name]);function O(W){k.autoMargin(A,T(W))}var z=C._menulayer.selectAll("g."+o.containerClassName).data(P.length>0?[0]:[]);if(z.enter().append("g").classed(o.containerClassName,!0).style("cursor","pointer"),z.exit().each(function(){w.select(this).selectAll("g."+o.headerGroupClassName).each(O)}).remove(),P.length!==0){var B=z.selectAll("g."+o.headerGroupClassName).data(P,n);B.enter().append("g").classed(o.headerGroupClassName,!0);for(var Y=y.ensureSingle(z,"g",o.dropdownButtonGroupClassName,function(W){W.style("pointer-events","all")}),D=0;D<P.length;D++){var G=P[D];x(A,G)}var V="updatemenus"+C._uid,j=new r(A,Y,V);B.enter().size()&&(Y.node().parentNode.appendChild(Y.node()),Y.call(M)),B.exit().each(function(W){Y.call(M),O(W)}).remove(),B.each(function(W){var Z=w.select(this),ie=W.type==="dropdown"?Y:null;k.manageCommandObserver(A,W,W.buttons,function(te){s(A,W,W.buttons[te.index],Z,ie,j,te.index,!0)}),W.type==="dropdown"?(u(A,Z,Y,j,W),a(Y,W)&&p(A,Z,Y,j,W)):p(A,Z,null,null,W)})}}},20763:function(R,E,e){var w=e(75909);R.exports={moduleType:"component",name:w.name,layoutAttributes:e(7163),supplyLayoutDefaults:e(64897),draw:e(13689)}},25849:function(R,E,e){R.exports=y;var w=e(39898),k=e(7901),i=e(91424),_=e(71828);function y(h,l,t){this.gd=h,this.container=l,this.id=t,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})}y.barWidth=2,y.barLength=20,y.barRadius=2,y.barPad=1,y.barColor="#808BA4",y.prototype.enable=function(h,l,t){var o=this.gd._fullLayout,r=o.width,n=o.height;this.position=h;var a,s,u,p,c=this.position.l,b=this.position.w,g=this.position.t,f=this.position.h,v=this.position.direction,m=v==="down",x=v==="left",T=v==="up",d=b,M=f;m||x||v==="right"||T||(this.position.direction="down",m=!0),m||T?(s=(a=c)+d,m?(u=g,M=(p=Math.min(u+M,n))-u):M=(p=g+M)-(u=Math.max(p-M,0))):(p=(u=g)+M,x?d=(s=c+d)-(a=Math.max(s-d,0)):(a=c,d=(s=Math.min(a+d,r))-a)),this._box={l:a,t:u,w:d,h:M};var A=b>d,C=y.barLength+2*y.barPad,P=y.barWidth+2*y.barPad,O=c,z=g+f;z+P>n&&(z=n-P);var B=this.container.selectAll("rect.scrollbar-horizontal").data(A?[0]:[]);B.exit().on(".drag",null).remove(),B.enter().append("rect").classed("scrollbar-horizontal",!0).call(k.fill,y.barColor),A?(this.hbar=B.attr({rx:y.barRadius,ry:y.barRadius,x:O,y:z,width:C,height:P}),this._hbarXMin=O+C/2,this._hbarTranslateMax=d-C):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var Y=f>M,D=y.barWidth+2*y.barPad,G=y.barLength+2*y.barPad,V=c+b,j=g;V+D>r&&(V=r-D);var W=this.container.selectAll("rect.scrollbar-vertical").data(Y?[0]:[]);W.exit().on(".drag",null).remove(),W.enter().append("rect").classed("scrollbar-vertical",!0).call(k.fill,y.barColor),Y?(this.vbar=W.attr({rx:y.barRadius,ry:y.barRadius,x:V,y:j,width:D,height:G}),this._vbarYMin=j+G/2,this._vbarTranslateMax=M-G):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var Z=this.id,ie=a-.5,te=Y?s+D+.5:s+.5,J=u-.5,X=A?p+P+.5:p+.5,ee=o._topdefs.selectAll("#"+Z).data(A||Y?[0]:[]);if(ee.exit().remove(),ee.enter().append("clipPath").attr("id",Z).append("rect"),A||Y?(this._clipRect=ee.select("rect").attr({x:Math.floor(ie),y:Math.floor(J),width:Math.ceil(te)-Math.floor(ie),height:Math.ceil(X)-Math.floor(J)}),this.container.call(i.setClipUrl,Z,this.gd),this.bg.attr({x:c,y:g,width:b,height:f})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(i.setClipUrl,null),delete this._clipRect),A||Y){var re=w.behavior.drag().on("dragstart",function(){w.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(re);var oe=w.behavior.drag().on("dragstart",function(){w.event.sourceEvent.preventDefault(),w.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));A&&this.hbar.on(".drag",null).call(oe),Y&&this.vbar.on(".drag",null).call(oe)}this.setTranslate(l,t)},y.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(i.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)},y.prototype._onBoxDrag=function(){var h=this.translateX,l=this.translateY;this.hbar&&(h-=w.event.dx),this.vbar&&(l-=w.event.dy),this.setTranslate(h,l)},y.prototype._onBoxWheel=function(){var h=this.translateX,l=this.translateY;this.hbar&&(h+=w.event.deltaY),this.vbar&&(l+=w.event.deltaY),this.setTranslate(h,l)},y.prototype._onBarDrag=function(){var h=this.translateX,l=this.translateY;if(this.hbar){var t=h+this._hbarXMin,o=t+this._hbarTranslateMax;h=(_.constrain(w.event.x,t,o)-t)/(o-t)*(this.position.w-this._box.w)}if(this.vbar){var r=l+this._vbarYMin,n=r+this._vbarTranslateMax;l=(_.constrain(w.event.y,r,n)-r)/(n-r)*(this.position.h-this._box.h)}this.setTranslate(h,l)},y.prototype.setTranslate=function(h,l){var t=this.position.w-this._box.w,o=this.position.h-this._box.h;if(h=_.constrain(h||0,0,t),l=_.constrain(l||0,0,o),this.translateX=h,this.translateY=l,this.container.call(i.setTranslate,this._box.l-this.position.l-h,this._box.t-this.position.t-l),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+h-.5),y:Math.floor(this.position.t+l-.5)}),this.hbar){var r=h/t;this.hbar.call(i.setTranslate,h+r*this._hbarTranslateMax,l)}if(this.vbar){var n=l/o;this.vbar.call(i.setTranslate,h,l+n*this._vbarTranslateMax)}}},18783:function(R){R.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"}}},24695:function(R){R.exports={axisRefDescription:function(E,e,w){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",e,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",e,"("+w+"). 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",e,"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",e,"and the",w,"of the domain of the","second",E,"axis."].join(" ")}}},22372:function(R){R.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"▲"},DECREASING:{COLOR:"#FF4136",SYMBOL:"▼"}}},31562:function(R){R.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"}},74808:function(R){R.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}},29659:function(R){R.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]}},87381:function(R){R.exports={circle:"●","circle-open":"○",square:"■","square-open":"□",diamond:"◆","diamond-open":"◇",cross:"+",x:"❌"}},37822:function(R){R.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}},50606:function(R){R.exports={BADNUM:void 0,FP_SAFE:1e-4*Number.MAX_VALUE,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,EPOCHJD:24405875e-1,ALMOST_EQUAL:.999999,LOG_CLIP:10,MINUS_SIGN:"−"}},32396:function(R,E){E.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"]],E.STYLE=E.CSS_DECLARATIONS.map(function(e){return e.join(": ")+"; "}).join("")},77922:function(R,E){E.xmlns="http://www.w3.org/2000/xmlns/",E.svg="http://www.w3.org/2000/svg",E.xlink="http://www.w3.org/1999/xlink",E.svgAttrs={xmlns:E.svg,"xmlns:xlink":E.xlink}},8729:function(R,E,e){E.version=e(11506).version,e(7417),e(98847);for(var w=e(73972),k=E.register=w.register,i=e(10641),_=Object.keys(i),y=0;y<_.length;y++){var h=_[y];h.charAt(0)!=="_"&&(E[h]=i[h]),k({moduleType:"apiMethod",name:h,fn:i[h]})}k(e(67368)),k([e(2199),e(30211),e(32745),e(2468),e(47322),e(89853),e(68804),e(20763),e(23243),e(13137),e(97218),e(83312),e(37369),e(21081),e(12311),e(64168)]),k([e(92177),e(37815)]),window.PlotlyLocales&&Array.isArray(window.PlotlyLocales)&&(k(window.PlotlyLocales),delete window.PlotlyLocales),E.Icons=e(24255);var l=e(30211),t=e(74875);E.Plots={resize:t.resize,graphJson:t.graphJson,sendDataToCloud:t.sendDataToCloud},E.Fx={hover:l.hover,unhover:l.unhover,loneHover:l.loneHover,loneUnhover:l.loneUnhover},E.Snapshot=e(44511),E.PlotSchema=e(86281)},24255:function(R){R.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:["<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 132 132'>","<defs>"," <style>"," .cls-0{fill:#000;}"," .cls-1{fill:#FFF;}"," .cls-2{fill:#F26;}"," .cls-3{fill:#D69;}"," .cls-4{fill:#BAC;}"," .cls-5{fill:#9EF;}"," </style>","</defs>"," <title>plotly-logomark</title>"," <g id='symbol'>"," <rect class='cls-0' x='0' y='0' width='132' height='132' rx='18' ry='18'/>"," <circle class='cls-5' cx='102' cy='30' r='6'/>"," <circle class='cls-4' cx='78' cy='30' r='6'/>"," <circle class='cls-4' cx='78' cy='54' r='6'/>"," <circle class='cls-3' cx='54' cy='30' r='6'/>"," <circle class='cls-2' cx='30' cy='30' r='6'/>"," <circle class='cls-2' cx='30' cy='54' r='6'/>"," <path class='cls-1' d='M30,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,30,72Z'/>"," <path class='cls-1' d='M78,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,78,72Z'/>"," <path class='cls-1' d='M54,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,54,48Z'/>"," <path class='cls-1' d='M102,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,102,48Z'/>"," </g>","</svg>"].join("")}}},99863:function(R,E){E.isLeftAnchor=function(e){return e.xanchor==="left"||e.xanchor==="auto"&&e.x<=.3333333333333333},E.isCenterAnchor=function(e){return e.xanchor==="center"||e.xanchor==="auto"&&e.x>.3333333333333333&&e.x<.6666666666666666},E.isRightAnchor=function(e){return e.xanchor==="right"||e.xanchor==="auto"&&e.x>=.6666666666666666},E.isTopAnchor=function(e){return e.yanchor==="top"||e.yanchor==="auto"&&e.y>=.6666666666666666},E.isMiddleAnchor=function(e){return e.yanchor==="middle"||e.yanchor==="auto"&&e.y>.3333333333333333&&e.y<.6666666666666666},E.isBottomAnchor=function(e){return e.yanchor==="bottom"||e.yanchor==="auto"&&e.y<=.3333333333333333}},26348:function(R,E,e){var w=e(64872),k=w.mod,i=w.modHalf,_=Math.PI,y=2*_;function h(r){return Math.abs(r[1]-r[0])>y-1e-14}function l(r,n){return i(n-r,y)}function t(r,n){if(h(n))return!0;var a,s;n[0]<n[1]?(a=n[0],s=n[1]):(a=n[1],s=n[0]),(a=k(a,y))>(s=k(s,y))&&(s+=y);var u=k(r,y),p=u+y;return u>=a&&u<=s||p>=a&&p<=s}function o(r,n,a,s,u,p,c){u=u||0,p=p||0;var b,g,f,v,m,x=h([a,s]);function T(C,P){return[C*Math.cos(P)+u,p-C*Math.sin(P)]}x?(b=0,g=_,f=y):a<s?(b=a,f=s):(b=s,f=a),r<n?(v=r,m=n):(v=n,m=r);var d,M=Math.abs(f-b)<=_?0:1;function A(C,P,O){return"A"+[C,C]+" "+[0,M,O]+" "+T(C,P)}return x?d=v===null?"M"+T(m,b)+A(m,g,0)+A(m,f,0)+"Z":"M"+T(v,b)+A(v,g,0)+A(v,f,0)+"ZM"+T(m,b)+A(m,g,1)+A(m,f,1)+"Z":v===null?(d="M"+T(m,b)+A(m,f,0),c&&(d+="L0,0Z")):d="M"+T(v,b)+"L"+T(m,b)+A(m,f,0)+"L"+T(v,f)+A(v,b,1)+"Z",d}R.exports={deg2rad:function(r){return r/180*_},rad2deg:function(r){return r/_*180},angleDelta:l,angleDist:function(r,n){return Math.abs(l(r,n))},isFullCircle:h,isAngleInsideSector:t,isPtInsideSector:function(r,n,a,s){return!!t(n,s)&&(a[0]<a[1]?(u=a[0],p=a[1]):(u=a[1],p=a[0]),r>=u&&r<=p);var u,p},pathArc:function(r,n,a,s,u){return o(null,r,n,a,s,u,0)},pathSector:function(r,n,a,s,u){return o(null,r,n,a,s,u,1)},pathAnnulus:function(r,n,a,s,u,p){return o(r,n,a,s,u,p,1)}}},73627:function(R,E){var e=Array.isArray,w=ArrayBuffer,k=DataView;function i(h){return w.isView(h)&&!(h instanceof k)}function _(h){return e(h)||i(h)}function y(h,l,t){if(_(h)){if(_(h[0])){for(var o=t,r=0;r<h.length;r++)o=l(o,h[r].length);return o}return h.length}return 0}E.isTypedArray=i,E.isArrayOrTypedArray=_,E.isArray1D=function(h){return!_(h[0])},E.ensureArray=function(h,l){return e(h)||(h=[]),h.length=l,h},E.concat=function(){var h,l,t,o,r,n,a,s,u=[],p=!0,c=0;for(t=0;t<arguments.length;t++)(n=(o=arguments[t]).length)&&(l?u.push(o):(l=o,r=n),e(o)?h=!1:(p=!1,c?h!==o.constructor&&(h=!1):h=o.constructor),c+=n);if(!c)return[];if(!u.length)return l;if(p)return l.concat.apply(l,u);if(h){for((a=new h(c)).set(l),t=0;t<u.length;t++)o=u[t],a.set(o,r),r+=o.length;return a}for(a=new Array(c),s=0;s<l.length;s++)a[s]=l[s];for(t=0;t<u.length;t++){for(o=u[t],s=0;s<o.length;s++)a[r+s]=o[s];r+=s}return a},E.maxRowLength=function(h){return y(h,Math.max,0)},E.minRowLength=function(h){return y(h,Math.min,1/0)}},95218:function(R,E,e){var w=e(92770),k=e(50606).BADNUM,i=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;R.exports=function(_){return typeof _=="string"&&(_=_.replace(i,"")),w(_)?Number(_):k}},33306:function(R){R.exports=function(E){var e=E._fullLayout;e._glcanvas&&e._glcanvas.size()&&e._glcanvas.each(function(w){w.regl&&w.regl.clear({color:!0,depth:!0})})}},86367:function(R){R.exports=function(E){E._responsiveChartHandler&&(window.removeEventListener("resize",E._responsiveChartHandler),delete E._responsiveChartHandler)}},96554:function(R,E,e){var w=e(92770),k=e(84267),i=e(9012),_=e(63282),y=e(7901),h=e(37822).DESELECTDIM,l=e(65487),t=e(30587).counter,o=e(64872).modHalf,r=e(73627).isArrayOrTypedArray;function n(a,s){var u=E.valObjectMeta[s.valType];if(s.arrayOk&&r(a))return!0;if(u.validateFunction)return u.validateFunction(a,s);var p={},c=p,b={set:function(g){c=g}};return u.coerceFunction(a,b,p,s),c!==p}E.valObjectMeta={data_array:{coerceFunction:function(a,s,u){r(a)?s.set(a):u!==void 0&&s.set(u)}},enumerated:{coerceFunction:function(a,s,u,p){p.coerceNumber&&(a=+a),p.values.indexOf(a)===-1?s.set(u):s.set(a)},validateFunction:function(a,s){s.coerceNumber&&(a=+a);for(var u=s.values,p=0;p<u.length;p++){var c=String(u[p]);if(c.charAt(0)==="/"&&c.charAt(c.length-1)==="/"){if(new RegExp(c.substr(1,c.length-2)).test(a))return!0}else if(a===u[p])return!0}return!1}},boolean:{coerceFunction:function(a,s,u){a===!0||a===!1?s.set(a):s.set(u)}},number:{coerceFunction:function(a,s,u,p){!w(a)||p.min!==void 0&&a<p.min||p.max!==void 0&&a>p.max?s.set(u):s.set(+a)}},integer:{coerceFunction:function(a,s,u,p){a%1||!w(a)||p.min!==void 0&&a<p.min||p.max!==void 0&&a>p.max?s.set(u):s.set(+a)}},string:{coerceFunction:function(a,s,u,p){if(typeof a!="string"){var c=typeof a=="number";p.strict!==!0&&c?s.set(String(a)):s.set(u)}else p.noBlank&&!a?s.set(u):s.set(a)}},color:{coerceFunction:function(a,s,u){k(a).isValid()?s.set(a):s.set(u)}},colorlist:{coerceFunction:function(a,s,u){Array.isArray(a)&&a.length&&a.every(function(p){return k(p).isValid()})?s.set(a):s.set(u)}},colorscale:{coerceFunction:function(a,s,u){s.set(_.get(a,u))}},angle:{coerceFunction:function(a,s,u){a==="auto"?s.set("auto"):w(a)?s.set(o(+a,360)):s.set(u)}},subplotid:{coerceFunction:function(a,s,u,p){var c=p.regex||t(u);typeof a=="string"&&c.test(a)?s.set(a):s.set(u)},validateFunction:function(a,s){var u=s.dflt;return a===u||typeof a=="string"&&!!t(u).test(a)}},flaglist:{coerceFunction:function(a,s,u,p){if((p.extras||[]).indexOf(a)===-1)if(typeof a=="string"){for(var c=a.split("+"),b=0;b<c.length;){var g=c[b];p.flags.indexOf(g)===-1||c.indexOf(g)<b?c.splice(b,1):b++}c.length?s.set(c.join("+")):s.set(u)}else s.set(u);else s.set(a)}},any:{coerceFunction:function(a,s,u){a===void 0?s.set(u):s.set(a)}},info_array:{coerceFunction:function(a,s,u,p){function c(z,B,Y){var D,G={set:function(V){D=V}};return Y===void 0&&(Y=B.dflt),E.valObjectMeta[B.valType].coerceFunction(z,G,Y,B),D}var b=p.dimensions===2||p.dimensions==="1-2"&&Array.isArray(a)&&Array.isArray(a[0]);if(Array.isArray(a)){var g,f,v,m,x,T,d=p.items,M=[],A=Array.isArray(d),C=A&&b&&Array.isArray(d[0]),P=b&&A&&!C,O=A&&!P?d.length:a.length;if(u=Array.isArray(u)?u:[],b)for(g=0;g<O;g++)for(M[g]=[],v=Array.isArray(a[g])?a[g]:[],x=P?d.length:A?d[g].length:v.length,f=0;f<x;f++)m=P?d[f]:A?d[g][f]:d,(T=c(v[f],m,(u[g]||[])[f]))!==void 0&&(M[g][f]=T);else for(g=0;g<O;g++)(T=c(a[g],A?d[g]:d,u[g]))!==void 0&&(M[g]=T);s.set(M)}else s.set(u)},validateFunction:function(a,s){if(!Array.isArray(a))return!1;var u=s.items,p=Array.isArray(u),c=s.dimensions===2;if(!s.freeLength&&a.length!==u.length)return!1;for(var b=0;b<a.length;b++)if(c){if(!Array.isArray(a[b])||!s.freeLength&&a[b].length!==u[b].length)return!1;for(var g=0;g<a[b].length;g++)if(!n(a[b][g],p?u[b][g]:u))return!1}else if(!n(a[b],p?u[b]:u))return!1;return!0}}},E.coerce=function(a,s,u,p,c){var b=l(u,p).get(),g=l(a,p),f=l(s,p),v=g.get(),m=s._template;if(v===void 0&&m&&(v=l(m,p).get(),m=0),c===void 0&&(c=b.dflt),b.arrayOk&&r(v))return f.set(v),v;var x=E.valObjectMeta[b.valType].coerceFunction;x(v,f,c,b);var T=f.get();return m&&T===c&&!n(v,b)&&(x(v=l(m,p).get(),f,c,b),T=f.get()),T},E.coerce2=function(a,s,u,p,c){var b=l(a,p),g=E.coerce(a,s,u,p,c);return b.get()!=null&&g},E.coerceFont=function(a,s,u){var p={};return u=u||{},p.family=a(s+".family",u.family),p.size=a(s+".size",u.size),p.color=a(s+".color",u.color),p},E.coercePattern=function(a,s,u,p){if(a(s+".shape")){a(s+".solidity"),a(s+".size");var c=a(s+".fillmode")==="overlay";if(!p){var b=a(s+".bgcolor",c?u:void 0);a(s+".fgcolor",c?y.contrast(b):u)}a(s+".fgopacity",c?.5:1)}},E.coerceHoverinfo=function(a,s,u){var p,c=s._module.attributes,b=c.hoverinfo?c:i,g=b.hoverinfo;if(u._dataLength===1){var f=g.dflt==="all"?g.flags.slice():g.dflt.split("+");f.splice(f.indexOf("name"),1),p=f.join("+")}return E.coerce(a,s,b,"hoverinfo",p)},E.coerceSelectionMarkerOpacity=function(a,s){if(a.marker){var u,p,c=a.marker.opacity;c!==void 0&&(r(c)||a.selected||a.unselected||(u=c,p=h*c),s("selected.marker.opacity",u),s("unselected.marker.opacity",p))}},E.validate=n},41631:function(R,E,e){var w,k,i=e(84096).i$,_=e(92770),y=e(47769),h=e(64872).mod,l=e(50606),t=l.BADNUM,o=l.ONEDAY,r=l.ONEHOUR,n=l.ONEMIN,a=l.ONESEC,s=l.EPOCHJD,u=e(73972),p=e(84096).g0,c=/^\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,b=/^\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,g=new Date().getFullYear()-70;function f(B){return B&&u.componentsRegistry.calendars&&typeof B=="string"&&B!=="gregorian"}function v(B,Y){return String(B+Math.pow(10,Y)).substr(1)}E.dateTick0=function(B,Y){var D=function(V,j){return f(V)?j?u.getComponentMethod("calendars","CANONICAL_SUNDAY")[V]:u.getComponentMethod("calendars","CANONICAL_TICK")[V]:j?"2000-01-02":"2000-01-01"}(B,!!Y);if(Y<2)return D;var G=E.dateTime2ms(D,B);return G+=o*(Y-1),E.ms2DateTime(G,0,B)},E.dfltRange=function(B){return f(B)?u.getComponentMethod("calendars","DFLTRANGE")[B]:["2000-01-01","2001-01-01"]},E.isJSDate=function(B){return typeof B=="object"&&B!==null&&typeof B.getTime=="function"},E.dateTime2ms=function(B,Y){if(E.isJSDate(B)){var D=B.getTimezoneOffset()*n,G=(B.getUTCMinutes()-B.getMinutes())*n+(B.getUTCSeconds()-B.getSeconds())*a+(B.getUTCMilliseconds()-B.getMilliseconds());if(G){var V=3*n;D=D-V/2+h(G-D+V/2,V)}return(B=Number(B)-D)>=w&&B<=k?B:t}if(typeof B!="string"&&typeof B!="number")return t;B=String(B);var j=f(Y),W=B.charAt(0);!j||W!=="G"&&W!=="g"||(B=B.substr(1),Y="");var Z=j&&Y.substr(0,7)==="chinese",ie=B.match(Z?b:c);if(!ie)return t;var te=ie[1],J=ie[3]||"1",X=Number(ie[5]||1),ee=Number(ie[7]||0),re=Number(ie[9]||0),oe=Number(ie[11]||0);if(j){if(te.length===2)return t;var ue;te=Number(te);try{var ce=u.getComponentMethod("calendars","getCal")(Y);if(Z){var de=J.charAt(J.length-1)==="i";J=parseInt(J,10),ue=ce.newDate(te,ce.toMonthIndex(te,J,de),X)}else ue=ce.newDate(te,Number(J),X)}catch{return t}return ue?(ue.toJD()-s)*o+ee*r+re*n+oe*a:t}te=te.length===2?(Number(te)+2e3-g)%100+g:Number(te),J-=1;var me=new Date(Date.UTC(2e3,J,X,ee,re));return me.setUTCFullYear(te),me.getUTCMonth()!==J||me.getUTCDate()!==X?t:me.getTime()+oe*a},w=E.MIN_MS=E.dateTime2ms("-9999"),k=E.MAX_MS=E.dateTime2ms("9999-12-31 23:59:59.9999"),E.isDateTime=function(B,Y){return E.dateTime2ms(B,Y)!==t};var m=90*o,x=3*r,T=5*n;function d(B,Y,D,G,V){if((Y||D||G||V)&&(B+=" "+v(Y,2)+":"+v(D,2),(G||V)&&(B+=":"+v(G,2),V))){for(var j=4;V%10==0;)j-=1,V/=10;B+="."+v(V,j)}return B}E.ms2DateTime=function(B,Y,D){if(typeof B!="number"||!(B>=w&&B<=k))return t;Y||(Y=0);var G,V,j,W,Z,ie,te=Math.floor(10*h(B+.05,1)),J=Math.round(B-te/10);if(f(D)){var X=Math.floor(J/o)+s,ee=Math.floor(h(B,o));try{G=u.getComponentMethod("calendars","getCal")(D).fromJD(X).formatDate("yyyy-mm-dd")}catch{G=p("G%Y-%m-%d")(new Date(J))}if(G.charAt(0)==="-")for(;G.length<11;)G="-0"+G.substr(1);else for(;G.length<10;)G="0"+G;V=Y<m?Math.floor(ee/r):0,j=Y<m?Math.floor(ee%r/n):0,W=Y<x?Math.floor(ee%n/a):0,Z=Y<T?ee%a*10+te:0}else ie=new Date(J),G=p("%Y-%m-%d")(ie),V=Y<m?ie.getUTCHours():0,j=Y<m?ie.getUTCMinutes():0,W=Y<x?ie.getUTCSeconds():0,Z=Y<T?10*ie.getUTCMilliseconds()+te:0;return d(G,V,j,W,Z)},E.ms2DateTimeLocal=function(B){if(!(B>=w+o&&B<=k-o))return t;var Y=Math.floor(10*h(B+.05,1)),D=new Date(Math.round(B-Y/10));return d(i("%Y-%m-%d")(D),D.getHours(),D.getMinutes(),D.getSeconds(),10*D.getUTCMilliseconds()+Y)},E.cleanDate=function(B,Y,D){if(B===t)return Y;if(E.isJSDate(B)||typeof B=="number"&&isFinite(B)){if(f(D))return y.error("JS Dates and milliseconds are incompatible with world calendars",B),Y;if(!(B=E.ms2DateTimeLocal(+B))&&Y!==void 0)return Y}else if(!E.isDateTime(B,D))return y.error("unrecognized date",B),Y;return B};var M=/%\d?f/g,A=/%h/g,C={1:"1",2:"1",3:"2",4:"2"};function P(B,Y,D,G){B=B.replace(M,function(j){var W=Math.min(+j.charAt(1)||6,6);return(Y/1e3%1+2).toFixed(W).substr(2).replace(/0+$/,"")||"0"});var V=new Date(Math.floor(Y+.05));if(B=B.replace(A,function(){return C[D("%q")(V)]}),f(G))try{B=u.getComponentMethod("calendars","worldCalFmt")(B,Y,G)}catch{return"Invalid"}return D(B)(V)}var O=[59,59.9,59.99,59.999,59.9999];E.formatDate=function(B,Y,D,G,V,j){if(V=f(V)&&V,!Y)if(D==="y")Y=j.year;else if(D==="m")Y=j.month;else{if(D!=="d")return function(W,Z){var ie=h(W+.05,o),te=v(Math.floor(ie/r),2)+":"+v(h(Math.floor(ie/n),60),2);if(Z!=="M"){_(Z)||(Z=0);var J=(100+Math.min(h(W/a,60),O[Z])).toFixed(Z).substr(1);Z>0&&(J=J.replace(/0+$/,"").replace(/[\.]$/,"")),te+=":"+J}return te}(B,D)+`
|
||
`+P(j.dayMonthYear,B,G,V);Y=j.dayMonth+`
|
||
`+j.year}return P(Y,B,G,V)};var z=3*o;E.incrementMonth=function(B,Y,D){D=f(D)&&D;var G=h(B,o);if(B=Math.round(B-G),D)try{var V=Math.round(B/o)+s,j=u.getComponentMethod("calendars","getCal")(D),W=j.fromJD(V);return Y%12?j.add(W,Y,"m"):j.add(W,Y/12,"y"),(W.toJD()-s)*o+G}catch{y.error("invalid ms "+B+" in calendar "+D)}var Z=new Date(B+z);return Z.setUTCMonth(Z.getUTCMonth()+Y)+G-z},E.findExactDates=function(B,Y){for(var D,G,V=0,j=0,W=0,Z=0,ie=f(Y)&&u.getComponentMethod("calendars","getCal")(Y),te=0;te<B.length;te++)if(G=B[te],_(G)){if(!(G%o))if(ie)try{(D=ie.fromJD(G/o+s)).day()===1?D.month()===1?V++:j++:W++}catch{}else(D=new Date(G)).getUTCDate()===1?D.getUTCMonth()===0?V++:j++:W++}else Z++;W+=j+=V;var J=B.length-Z;return{exactYears:V/J,exactMonths:j/J,exactDays:W/J}}},24401:function(R,E,e){var w=e(39898),k=e(47769),i=e(35657),_=e(79576);function y(r){var n=r&&r.parentNode;n&&n.removeChild(r)}function h(r,n,a){var s="plotly.js-style-"+r,u=document.getElementById(s);u||((u=document.createElement("style")).setAttribute("id",s),u.appendChild(document.createTextNode("")),document.head.appendChild(u));var p=u.sheet;p.insertRule?p.insertRule(n+"{"+a+"}",0):p.addRule?p.addRule(n,a,0):k.warn("addStyleRule failed")}function l(r){var n=window.getComputedStyle(r,null),a=n.getPropertyValue("-webkit-transform")||n.getPropertyValue("-moz-transform")||n.getPropertyValue("-ms-transform")||n.getPropertyValue("-o-transform")||n.getPropertyValue("transform");return a==="none"?null:a.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(s){return+s})}function t(r){for(var n=[];o(r);)n.push(r),r=r.parentNode;return n}function o(r){return r&&(r instanceof Element||r instanceof HTMLElement)}R.exports={getGraphDiv:function(r){var n;if(typeof r=="string"){if((n=document.getElementById(r))===null)throw new Error("No DOM element with id '"+r+"' exists on the page.");return n}if(r==null)throw new Error("DOM element provided is null or undefined");return r},isPlotDiv:function(r){var n=w.select(r);return n.node()instanceof HTMLElement&&n.size()&&n.classed("js-plotly-plot")},removeElement:y,addStyleRule:function(r,n){h("global",r,n)},addRelatedStyleRule:h,deleteRelatedStyleRule:function(r){var n="plotly.js-style-"+r,a=document.getElementById(n);a&&y(a)},getFullTransformMatrix:function(r){var n=t(r),a=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return n.forEach(function(s){var u=l(s);if(u){var p=i.convertCssMatrix(u);a=_.multiply(a,a,p)}}),a},getElementTransformMatrix:l,getElementAndAncestors:t,equalDomRects:function(r,n){return r&&n&&r.top===n.top&&r.left===n.left&&r.right===n.right&&r.bottom===n.bottom}}},11086:function(R,E,e){var w=e(15398).EventEmitter,k={init:function(i){if(i._ev instanceof w)return i;var _=new w,y=new w;return i._ev=_,i._internalEv=y,i.on=_.on.bind(_),i.once=_.once.bind(_),i.removeListener=_.removeListener.bind(_),i.removeAllListeners=_.removeAllListeners.bind(_),i._internalOn=y.on.bind(y),i._internalOnce=y.once.bind(y),i._removeInternalListener=y.removeListener.bind(y),i._removeAllInternalListeners=y.removeAllListeners.bind(y),i.emit=function(h,l){typeof jQuery<"u"&&jQuery(i).trigger(h,l),_.emit(h,l),y.emit(h,l)},i},triggerHandler:function(i,_,y){var h,l;typeof jQuery<"u"&&(h=jQuery(i).triggerHandler(_,y));var t=i._ev;if(!t)return h;var o,r=t._events[_];if(!r)return h;function n(a){return a.listener?(t.removeListener(_,a.listener),a.fired?void 0:(a.fired=!0,a.listener.apply(t,[y]))):a.apply(t,[y])}for(r=Array.isArray(r)?r:[r],o=0;o<r.length-1;o++)n(r[o]);return l=n(r[o]),h!==void 0?h:l},purge:function(i){return delete i._ev,delete i.on,delete i.once,delete i.removeListener,delete i.removeAllListeners,delete i.emit,delete i._ev,delete i._internalEv,delete i._internalOn,delete i._internalOnce,delete i._removeInternalListener,delete i._removeAllInternalListeners,i}};R.exports=k},1426:function(R,E,e){var w=e(41965),k=Array.isArray;function i(_,y,h,l){var t,o,r,n,a,s,u,p=_[0],c=_.length;if(c===2&&k(p)&&k(_[1])&&p.length===0){if(u=function(g,f){var v,m;for(v=0;v<g.length;v++){if((m=g[v])!==null&&typeof m=="object")return!1;m!==void 0&&(f[v]=m)}return!0}(_[1],p),u)return p;p.splice(0,p.length)}for(var b=1;b<c;b++)for(o in t=_[b])r=p[o],n=t[o],l&&k(n)?p[o]=n:y&&n&&(w(n)||(a=k(n)))?(a?(a=!1,s=r&&k(r)?r:[]):s=r&&w(r)?r:{},p[o]=i([s,n],y,h,l)):(n!==void 0||h)&&(p[o]=n);return p}E.extendFlat=function(){return i(arguments,!1,!1,!1)},E.extendDeep=function(){return i(arguments,!0,!1,!1)},E.extendDeepAll=function(){return i(arguments,!0,!0,!1)},E.extendDeepNoArrays=function(){return i(arguments,!0,!1,!0)}},75744:function(R){R.exports=function(E){for(var e={},w=[],k=0,i=0;i<E.length;i++){var _=E[i];e[_]!==1&&(e[_]=1,w[k++]=_)}return w}},76756:function(R){function E(w){return w.visible===!0}function e(w){var k=w[0].trace;return k.visible===!0&&k._length!==0}R.exports=function(w){for(var k,i=(k=w,Array.isArray(k)&&Array.isArray(k[0])&&k[0][0]&&k[0][0].trace?e:E),_=[],y=0;y<w.length;y++){var h=w[y];i(h)&&_.push(h)}return _}},41327:function(R,E,e){var w=e(39898),k=e(24138),i=e(30774),_=e(29261),y=e(85268),h=e(23389),l=e(47769),t=e(41965),o=e(65487),r=e(61082),n=Object.keys(k),a={"ISO-3":h,"USA-states":h,"country names":function(u){for(var p=0;p<n.length;p++){var c=n[p];if(new RegExp(k[c]).test(u.trim().toLowerCase()))return c}return l.log("Unrecognized country name: "+u+"."),!1}};function s(u){var p=u.geojson,c=window.PlotlyGeoAssets||{},b=typeof p=="string"?c[p]:p;return t(b)?b:(l.error("Oops ... something went wrong when fetching "+p),!1)}R.exports={locationToFeature:function(u,p,c){if(!p||typeof p!="string")return!1;var b,g,f,v=a[u](p);if(v){if(u==="USA-states")for(b=[],f=0;f<c.length;f++)(g=c[f]).properties&&g.properties.gu&&g.properties.gu==="USA"&&b.push(g);else b=c;for(f=0;f<b.length;f++)if((g=b[f]).id===v)return g;l.log(["Location with id",v,"does not have a matching topojson feature at this resolution."].join(" "))}return!1},feature2polygons:function(u){var p,c,b,g,f=u.geometry,v=f.coordinates,m=u.id,x=[];function T(d){for(var M=0;M<d.length-1;M++)if(d[M][0]>0&&d[M+1][0]<0)return M;return null}switch(p=m==="RUS"||m==="FJI"?function(d){var M;if(T(d)===null)M=d;else for(M=new Array(d.length),g=0;g<d.length;g++)M[g]=[d[g][0]<0?d[g][0]+360:d[g][0],d[g][1]];x.push(r.tester(M))}:m==="ATA"?function(d){var M=T(d);if(M===null)return x.push(r.tester(d));var A=new Array(d.length+1),C=0;for(g=0;g<d.length;g++)g>M?A[C++]=[d[g][0]+360,d[g][1]]:g===M?(A[C++]=d[g],A[C++]=[d[g][0],-90]):A[C++]=d[g];var P=r.tester(A);P.pts.pop(),x.push(P)}:function(d){x.push(r.tester(d))},f.type){case"MultiPolygon":for(c=0;c<v.length;c++)for(b=0;b<v[c].length;b++)p(v[c][b]);break;case"Polygon":for(c=0;c<v.length;c++)p(v[c])}return x},getTraceGeojson:s,extractTraceFeature:function(u){var p=u[0].trace,c=s(p);if(!c)return!1;var b,g={},f=[];for(b=0;b<p._length;b++){var v=u[b];(v.loc||v.loc===0)&&(g[v.loc]=v)}function m(d){var M=o(d,p.featureidkey||"id").get(),A=g[M];if(A){var C=d.geometry;if(C.type==="Polygon"||C.type==="MultiPolygon"){var P={type:"Feature",id:M,geometry:C,properties:{}};P.properties.ct=function(O){var z,B=O.geometry;if(B.type==="MultiPolygon")for(var Y=B.coordinates,D=0,G=0;G<Y.length;G++){var V={type:"Polygon",coordinates:Y[G]},j=i.default(V);j>D&&(D=j,z=V)}else z=B;return _.default(z).geometry.coordinates}(P),A.fIn=d,A.fOut=P,f.push(P)}else l.log(["Location",A.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete g[M]}switch(c.type){case"FeatureCollection":var x=c.features;for(b=0;b<x.length;b++)m(x[b]);break;case"Feature":m(c);break;default:return l.warn(["Invalid GeoJSON type",(c.type||"none")+".","Traces with locationmode *geojson-id* only support","*FeatureCollection* and *Feature* types."].join(" ")),!1}for(var T in g)l.log(["Location *"+T+"*","does not have a matching feature with id-key","*"+p.featureidkey+"*."].join(" "));return f},fetchTraceGeoData:function(u){var p=window.PlotlyGeoAssets||{},c=[];function b(m){return new Promise(function(x,T){w.json(m,function(d,M){if(d){delete p[m];var A=d.status===404?'GeoJSON at URL "'+m+'" does not exist.':"Unexpected error while fetching from "+m;return T(new Error(A))}return p[m]=M,x(M)})})}function g(m){return new Promise(function(x,T){var d=0,M=setInterval(function(){return p[m]&&p[m]!=="pending"?(clearInterval(M),x(p[m])):d>100?(clearInterval(M),T("Unexpected error while fetching from "+m)):void d++},50)})}for(var f=0;f<u.length;f++){var v=u[f][0].trace.geojson;typeof v=="string"&&(p[v]?p[v]==="pending"&&c.push(g(v)):(p[v]="pending",c.push(b(v))))}return c},computeBbox:function(u){return y.default(u)}}},18214:function(R,E,e){var w=e(50606).BADNUM;E.calcTraceToLineCoords=function(k){for(var i=k[0].trace.connectgaps,_=[],y=[],h=0;h<k.length;h++){var l=k[h].lonlat;l[0]!==w?y.push(l):!i&&y.length>0&&(_.push(y),y=[])}return y.length>0&&_.push(y),_},E.makeLine=function(k){return k.length===1?{type:"LineString",coordinates:k[0]}:{type:"MultiLineString",coordinates:k}},E.makePolygon=function(k){if(k.length===1)return{type:"Polygon",coordinates:k};for(var i=new Array(k.length),_=0;_<k.length;_++)i[_]=[k[_]];return{type:"MultiPolygon",coordinates:i}},E.makeBlank=function(){return{type:"Point",coordinates:[]}}},87642:function(R,E,e){var w,k,i,_=e(64872).mod;function y(l,t,o,r,n,a,s,u){var p=o-l,c=n-l,b=s-n,g=r-t,f=a-t,v=u-a,m=p*v-b*g;if(m===0)return null;var x=(c*v-b*f)/m,T=(c*g-p*f)/m;return T<0||T>1||x<0||x>1?null:{x:l+p*x,y:t+g*x}}function h(l,t,o,r,n){var a=r*l+n*t;if(a<0)return r*r+n*n;if(a>o){var s=r-l,u=n-t;return s*s+u*u}var p=r*t-n*l;return p*p/o}E.segmentsIntersect=y,E.segmentDistance=function(l,t,o,r,n,a,s,u){if(y(l,t,o,r,n,a,s,u))return 0;var p=o-l,c=r-t,b=s-n,g=u-a,f=p*p+c*c,v=b*b+g*g,m=Math.min(h(p,c,f,n-l,a-t),h(p,c,f,s-l,u-t),h(b,g,v,l-n,t-a),h(b,g,v,o-n,r-a));return Math.sqrt(m)},E.getTextLocation=function(l,t,o,r){if(l===k&&r===i||(w={},k=l,i=r),w[o])return w[o];var n=l.getPointAtLength(_(o-r/2,t)),a=l.getPointAtLength(_(o+r/2,t)),s=Math.atan((a.y-n.y)/(a.x-n.x)),u=l.getPointAtLength(_(o,t)),p={x:(4*u.x+n.x+a.x)/6,y:(4*u.y+n.y+a.y)/6,theta:s};return w[o]=p,p},E.clearLocationCache=function(){k=null},E.getVisibleSegment=function(l,t,o){var r,n,a=t.left,s=t.right,u=t.top,p=t.bottom,c=0,b=l.getTotalLength(),g=b;function f(m){var x=l.getPointAtLength(m);m===0?r=x:m===b&&(n=x);var T=x.x<a?a-x.x:x.x>s?x.x-s:0,d=x.y<u?u-x.y:x.y>p?x.y-p:0;return Math.sqrt(T*T+d*d)}for(var v=f(c);v;){if((c+=v+o)>g)return;v=f(c)}for(v=f(g);v;){if(c>(g-=v+o))return;v=f(g)}return{min:c,max:g,len:g-c,total:b,isClosed:c===0&&g===b&&Math.abs(r.x-n.x)<.1&&Math.abs(r.y-n.y)<.1}},E.findPointOnPath=function(l,t,o,r){for(var n,a,s,u=(r=r||{}).pathLength||l.getTotalLength(),p=r.tolerance||.001,c=r.iterationLimit||30,b=l.getPointAtLength(0)[o]>l.getPointAtLength(u)[o]?-1:1,g=0,f=0,v=u;g<c;){if(n=(f+v)/2,s=(a=l.getPointAtLength(n))[o]-t,Math.abs(s)<p)return a;b*s>0?v=n:f=n,g++}return a}},81697:function(R,E,e){var w=e(92770),k=e(84267),i=e(25075),_=e(21081),y=e(22399).defaultLine,h=e(73627).isArrayOrTypedArray,l=i(y);function t(n,a){var s=n;return s[3]*=a,s}function o(n){if(w(n))return l;var a=i(n);return a.length?a:l}function r(n){return w(n)?n:1}R.exports={formatColor:function(n,a,s){var u,p,c,b,g,f=n.color,v=h(f),m=h(a),x=_.extractOpts(n),T=[];if(u=x.colorscale!==void 0?_.makeColorScaleFuncFromTrace(n):o,p=v?function(M,A){return M[A]===void 0?l:i(u(M[A]))}:o,c=m?function(M,A){return M[A]===void 0?1:r(M[A])}:r,v||m)for(var d=0;d<s;d++)b=p(f,d),g=c(a,d),T[d]=t(b,g);else T=t(i(f),a);return T},parseColorScale:function(n){var a=_.extractOpts(n),s=a.colorscale;return a.reversescale&&(s=_.flipScale(a.colorscale)),s.map(function(u){var p=u[0],c=k(u[1]).toRgb();return{index:p,rgb:[c.r,c.g,c.b,c.a]}})}}},28984:function(R,E,e){var w=e(23389);function k(i){return[i]}R.exports={keyFun:function(i){return i.key},repeat:k,descend:w,wrap:k,unwrap:function(i){return i[0]}}},23389:function(R){R.exports=function(E){return E}},39240:function(R){R.exports=function(E,e){if(!e)return E;var w=1/Math.abs(e),k=w>1?(w*E+w*e)/w:E+e,i=String(k).length;if(i>16){var _=String(e).length;if(i>=String(E).length+_){var y=parseFloat(k).toPrecision(12);y.indexOf("e+")===-1&&(k=+y)}}return k}},71828:function(R,E,e){var w=e(39898),k=e(84096).g0,i=e(60721).WU,_=e(92770),y=e(50606),h=y.FP_SAFE,l=-h,t=y.BADNUM,o=R.exports={};o.adjustFormat=function(X){return!X||/^\d[.]\df/.test(X)||/[.]\d%/.test(X)?X:X==="0.f"?"~f":/^\d%/.test(X)?"~%":/^\ds/.test(X)?"~s":!/^[~,.0$]/.test(X)&&/[&fps]/.test(X)?"~"+X:X};var r={};o.warnBadFormat=function(X){var ee=String(X);r[ee]||(r[ee]=1,o.warn('encountered bad format: "'+ee+'"'))},o.noFormat=function(X){return String(X)},o.numberFormat=function(X){var ee;try{ee=i(o.adjustFormat(X))}catch{return o.warnBadFormat(X),o.noFormat}return ee},o.nestedProperty=e(65487),o.keyedContainer=e(66636),o.relativeAttr=e(6962),o.isPlainObject=e(41965),o.toLogRange=e(58163),o.relinkPrivateKeys=e(51332);var n=e(73627);o.isTypedArray=n.isTypedArray,o.isArrayOrTypedArray=n.isArrayOrTypedArray,o.isArray1D=n.isArray1D,o.ensureArray=n.ensureArray,o.concat=n.concat,o.maxRowLength=n.maxRowLength,o.minRowLength=n.minRowLength;var a=e(64872);o.mod=a.mod,o.modHalf=a.modHalf;var s=e(96554);o.valObjectMeta=s.valObjectMeta,o.coerce=s.coerce,o.coerce2=s.coerce2,o.coerceFont=s.coerceFont,o.coercePattern=s.coercePattern,o.coerceHoverinfo=s.coerceHoverinfo,o.coerceSelectionMarkerOpacity=s.coerceSelectionMarkerOpacity,o.validate=s.validate;var u=e(41631);o.dateTime2ms=u.dateTime2ms,o.isDateTime=u.isDateTime,o.ms2DateTime=u.ms2DateTime,o.ms2DateTimeLocal=u.ms2DateTimeLocal,o.cleanDate=u.cleanDate,o.isJSDate=u.isJSDate,o.formatDate=u.formatDate,o.incrementMonth=u.incrementMonth,o.dateTick0=u.dateTick0,o.dfltRange=u.dfltRange,o.findExactDates=u.findExactDates,o.MIN_MS=u.MIN_MS,o.MAX_MS=u.MAX_MS;var p=e(65888);o.findBin=p.findBin,o.sorterAsc=p.sorterAsc,o.sorterDes=p.sorterDes,o.distinctVals=p.distinctVals,o.roundUp=p.roundUp,o.sort=p.sort,o.findIndexOfMin=p.findIndexOfMin,o.sortObjectKeys=e(78607);var c=e(80038);o.aggNums=c.aggNums,o.len=c.len,o.mean=c.mean,o.median=c.median,o.midRange=c.midRange,o.variance=c.variance,o.stdev=c.stdev,o.interp=c.interp;var b=e(35657);o.init2dArray=b.init2dArray,o.transposeRagged=b.transposeRagged,o.dot=b.dot,o.translationMatrix=b.translationMatrix,o.rotationMatrix=b.rotationMatrix,o.rotationXYMatrix=b.rotationXYMatrix,o.apply3DTransform=b.apply3DTransform,o.apply2DTransform=b.apply2DTransform,o.apply2DTransform2=b.apply2DTransform2,o.convertCssMatrix=b.convertCssMatrix,o.inverseTransformMatrix=b.inverseTransformMatrix;var g=e(26348);o.deg2rad=g.deg2rad,o.rad2deg=g.rad2deg,o.angleDelta=g.angleDelta,o.angleDist=g.angleDist,o.isFullCircle=g.isFullCircle,o.isAngleInsideSector=g.isAngleInsideSector,o.isPtInsideSector=g.isPtInsideSector,o.pathArc=g.pathArc,o.pathSector=g.pathSector,o.pathAnnulus=g.pathAnnulus;var f=e(99863);o.isLeftAnchor=f.isLeftAnchor,o.isCenterAnchor=f.isCenterAnchor,o.isRightAnchor=f.isRightAnchor,o.isTopAnchor=f.isTopAnchor,o.isMiddleAnchor=f.isMiddleAnchor,o.isBottomAnchor=f.isBottomAnchor;var v=e(87642);o.segmentsIntersect=v.segmentsIntersect,o.segmentDistance=v.segmentDistance,o.getTextLocation=v.getTextLocation,o.clearLocationCache=v.clearLocationCache,o.getVisibleSegment=v.getVisibleSegment,o.findPointOnPath=v.findPointOnPath;var m=e(1426);o.extendFlat=m.extendFlat,o.extendDeep=m.extendDeep,o.extendDeepAll=m.extendDeepAll,o.extendDeepNoArrays=m.extendDeepNoArrays;var x=e(47769);o.log=x.log,o.warn=x.warn,o.error=x.error;var T=e(30587);o.counterRegex=T.counter;var d=e(79990);o.throttle=d.throttle,o.throttleDone=d.done,o.clearThrottle=d.clear;var M=e(24401);function A(X){var ee={};for(var re in X)for(var oe=X[re],ue=0;ue<oe.length;ue++)ee[oe[ue]]=+re;return ee}o.getGraphDiv=M.getGraphDiv,o.isPlotDiv=M.isPlotDiv,o.removeElement=M.removeElement,o.addStyleRule=M.addStyleRule,o.addRelatedStyleRule=M.addRelatedStyleRule,o.deleteRelatedStyleRule=M.deleteRelatedStyleRule,o.getFullTransformMatrix=M.getFullTransformMatrix,o.getElementTransformMatrix=M.getElementTransformMatrix,o.getElementAndAncestors=M.getElementAndAncestors,o.equalDomRects=M.equalDomRects,o.clearResponsive=e(86367),o.preserveDrawingBuffer=e(45142),o.makeTraceGroups=e(77310),o._=e(15867),o.notifier=e(75046),o.filterUnique=e(75744),o.filterVisible=e(76756),o.pushUnique=e(75138),o.increment=e(39240),o.cleanNumber=e(95218),o.ensureNumber=function(X){return _(X)?(X=Number(X))>h||X<l?t:X:t},o.isIndex=function(X,ee){return!(ee!==void 0&&X>=ee)&&_(X)&&X>=0&&X%1==0},o.noop=e(64213),o.identity=e(23389),o.repeat=function(X,ee){for(var re=new Array(ee),oe=0;oe<ee;oe++)re[oe]=X;return re},o.swapAttrs=function(X,ee,re,oe){re||(re="x"),oe||(oe="y");for(var ue=0;ue<ee.length;ue++){var ce=ee[ue],de=o.nestedProperty(X,ce.replace("?",re)),me=o.nestedProperty(X,ce.replace("?",oe)),_e=de.get();de.set(me.get()),me.set(_e)}},o.raiseToTop=function(X){X.parentNode.appendChild(X)},o.cancelTransition=function(X){return X.transition().duration(0)},o.constrain=function(X,ee,re){return ee>re?Math.max(re,Math.min(ee,X)):Math.max(ee,Math.min(re,X))},o.bBoxIntersect=function(X,ee,re){return re=re||0,X.left<=ee.right+re&&ee.left<=X.right+re&&X.top<=ee.bottom+re&&ee.top<=X.bottom+re},o.simpleMap=function(X,ee,re,oe,ue){for(var ce=X.length,de=new Array(ce),me=0;me<ce;me++)de[me]=ee(X[me],re,oe,ue);return de},o.randstr=function X(ee,re,oe,ue){if(oe||(oe=16),re===void 0&&(re=24),re<=0)return"0";var ce,de,me=Math.log(Math.pow(2,re))/Math.log(oe),_e="";for(ce=2;me===1/0;ce*=2)me=Math.log(Math.pow(2,re/ce))/Math.log(oe)*ce;var Se=me-Math.floor(me);for(ce=0;ce<Math.floor(me);ce++)_e=Math.floor(Math.random()*oe).toString(oe)+_e;Se&&(de=Math.pow(oe,Se),_e=Math.floor(Math.random()*de).toString(oe)+_e);var we=parseInt(_e,oe);return ee&&ee[_e]||we!==1/0&&we>=Math.pow(2,re)?ue>10?(o.warn("randstr failed uniqueness"),_e):X(ee,re,oe,(ue||0)+1):_e},o.OptionControl=function(X,ee){X||(X={}),ee||(ee="opt");var re={optionList:[],_newoption:function(oe){oe[ee]=X,re[oe.name]=oe,re.optionList.push(oe)}};return re["_"+ee]=X,re},o.smooth=function(X,ee){if((ee=Math.round(ee)||0)<2)return X;var re,oe,ue,ce,de=X.length,me=2*de,_e=2*ee-1,Se=new Array(_e),we=new Array(de);for(re=0;re<_e;re++)Se[re]=(1-Math.cos(Math.PI*(re+1)/ee))/(2*ee);for(re=0;re<de;re++){for(ce=0,oe=0;oe<_e;oe++)(ue=re+oe+1-ee)<-de?ue-=me*Math.round(ue/me):ue>=me&&(ue-=me*Math.floor(ue/me)),ue<0?ue=-1-ue:ue>=de&&(ue=me-1-ue),ce+=X[ue]*Se[oe];we[re]=ce}return we},o.syncOrAsync=function(X,ee,re){var oe;function ue(){return o.syncOrAsync(X,ee,re)}for(;X.length;)if((oe=(0,X.splice(0,1)[0])(ee))&&oe.then)return oe.then(ue);return re&&re(ee)},o.stripTrailingSlash=function(X){return X.substr(-1)==="/"?X.substr(0,X.length-1):X},o.noneOrAll=function(X,ee,re){if(X){var oe,ue=!1,ce=!0;for(oe=0;oe<re.length;oe++)X[re[oe]]!=null?ue=!0:ce=!1;if(ue&&!ce)for(oe=0;oe<re.length;oe++)X[re[oe]]=ee[re[oe]]}},o.mergeArray=function(X,ee,re,oe){var ue=typeof oe=="function";if(o.isArrayOrTypedArray(X))for(var ce=Math.min(X.length,ee.length),de=0;de<ce;de++){var me=X[de];ee[de][re]=ue?oe(me):me}},o.mergeArrayCastPositive=function(X,ee,re){return o.mergeArray(X,ee,re,function(oe){var ue=+oe;return isFinite(ue)&&ue>0?ue:0})},o.fillArray=function(X,ee,re,oe){if(oe=oe||o.identity,o.isArrayOrTypedArray(X))for(var ue=0;ue<ee.length;ue++)ee[ue][re]=oe(X[ue])},o.castOption=function(X,ee,re,oe){oe=oe||o.identity;var ue=o.nestedProperty(X,re).get();return o.isArrayOrTypedArray(ue)?Array.isArray(ee)&&o.isArrayOrTypedArray(ue[ee[0]])?oe(ue[ee[0]][ee[1]]):oe(ue[ee]):ue},o.extractOption=function(X,ee,re,oe){if(re in X)return X[re];var ue=o.nestedProperty(ee,oe).get();return Array.isArray(ue)?void 0:ue},o.tagSelected=function(X,ee,re){var oe,ue,ce=ee.selectedpoints,de=ee._indexToPoints;de&&(oe=A(de));for(var me=0;me<ce.length;me++){var _e=ce[me];if(o.isIndex(_e)||o.isArrayOrTypedArray(_e)&&o.isIndex(_e[0])&&o.isIndex(_e[1])){var Se=oe?oe[_e]:_e,we=re?re[Se]:Se;(ue=we)!==void 0&&ue<X.length&&(X[we].selected=1)}}},o.selIndices2selPoints=function(X){var ee=X.selectedpoints,re=X._indexToPoints;if(re){for(var oe=A(re),ue=[],ce=0;ce<ee.length;ce++){var de=ee[ce];if(o.isIndex(de)){var me=oe[de];o.isIndex(me)&&ue.push(me)}}return ue}return ee},o.getTargetArray=function(X,ee){var re=ee.target;if(typeof re=="string"&&re){var oe=o.nestedProperty(X,re).get();return!!Array.isArray(oe)&&oe}return!!Array.isArray(re)&&re},o.minExtend=function X(ee,re,oe){var ue={};typeof re!="object"&&(re={});var ce,de,me,_e=oe==="pieLike"?-1:3,Se=Object.keys(ee);for(ce=0;ce<Se.length;ce++)me=ee[de=Se[ce]],de.charAt(0)!=="_"&&typeof me!="function"&&(de==="module"?ue[de]=me:Array.isArray(me)?ue[de]=de==="colorscale"||_e===-1?me.slice():me.slice(0,_e):o.isTypedArray(me)?ue[de]=_e===-1?me.subarray():me.subarray(0,_e):ue[de]=me&&typeof me=="object"?X(ee[de],re[de],oe):me);for(Se=Object.keys(re),ce=0;ce<Se.length;ce++)typeof(me=re[de=Se[ce]])=="object"&&de in ue&&typeof ue[de]=="object"||(ue[de]=me);return ue},o.titleCase=function(X){return X.charAt(0).toUpperCase()+X.substr(1)},o.containsAny=function(X,ee){for(var re=0;re<ee.length;re++)if(X.indexOf(ee[re])!==-1)return!0;return!1},o.isIE=function(){return window.navigator.msSaveBlob!==void 0};var C=/Version\/[\d\.]+.*Safari/;o.isSafari=function(){return C.test(window.navigator.userAgent)};var P=/iPad|iPhone|iPod/;o.isIOS=function(){return P.test(window.navigator.userAgent)};var O=/Firefox\/(\d+)\.\d+/;o.getFirefoxVersion=function(){var X=O.exec(window.navigator.userAgent);if(X&&X.length===2){var ee=parseInt(X[1]);if(!isNaN(ee))return ee}return null},o.isD3Selection=function(X){return X instanceof w.selection},o.ensureSingle=function(X,ee,re,oe){var ue=X.select(ee+(re?"."+re:""));if(ue.size())return ue;var ce=X.append(ee);return re&&ce.classed(re,!0),oe&&ce.call(oe),ce},o.ensureSingleById=function(X,ee,re,oe){var ue=X.select(ee+"#"+re);if(ue.size())return ue;var ce=X.append(ee).attr("id",re);return oe&&ce.call(oe),ce},o.objectFromPath=function(X,ee){for(var re,oe=X.split("."),ue=re={},ce=0;ce<oe.length;ce++){var de=oe[ce],me=null,_e=oe[ce].match(/(.*)\[([0-9]+)\]/);_e?(de=_e[1],me=_e[2],re=re[de]=[],ce===oe.length-1?re[me]=ee:re[me]={},re=re[me]):(ce===oe.length-1?re[de]=ee:re[de]={},re=re[de])}return ue};var z=/^([^\[\.]+)\.(.+)?/,B=/^([^\.]+)\[([0-9]+)\](\.)?(.+)?/;o.expandObjectPaths=function(X){var ee,re,oe,ue,ce,de,me;if(typeof X=="object"&&!Array.isArray(X))for(re in X)X.hasOwnProperty(re)&&((ee=re.match(z))?(ue=X[re],oe=ee[1],delete X[re],X[oe]=o.extendDeepNoArrays(X[oe]||{},o.objectFromPath(re,o.expandObjectPaths(ue))[oe])):(ee=re.match(B))?(ue=X[re],oe=ee[1],ce=parseInt(ee[2]),delete X[re],X[oe]=X[oe]||[],ee[3]==="."?(me=ee[4],de=X[oe][ce]=X[oe][ce]||{},o.extendDeepNoArrays(de,o.objectFromPath(me,o.expandObjectPaths(ue)))):X[oe][ce]=o.expandObjectPaths(ue)):X[re]=o.expandObjectPaths(X[re]));return X},o.numSeparate=function(X,ee,re){if(re||(re=!1),typeof ee!="string"||ee.length===0)throw new Error("Separator string required for formatting!");typeof X=="number"&&(X=String(X));var oe=/(\d+)(\d{3})/,ue=ee.charAt(0),ce=ee.charAt(1),de=X.split("."),me=de[0],_e=de.length>1?ue+de[1]:"";if(ce&&(de.length>1||me.length>4||re))for(;oe.test(me);)me=me.replace(oe,"$1"+ce+"$2");return me+_e},o.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var Y=/^\w*$/;o.templateString=function(X,ee){var re={};return X.replace(o.TEMPLATE_STRING_REGEX,function(oe,ue){var ce;return Y.test(ue)?ce=ee[ue]:(re[ue]=re[ue]||o.nestedProperty(ee,ue).get,ce=re[ue]()),o.isValidTextValue(ce)?ce:""})};var D={max:10,count:0,name:"hovertemplate"};o.hovertemplateString=function(){return Z.apply(D,arguments)};var G={max:10,count:0,name:"texttemplate"};o.texttemplateString=function(){return Z.apply(G,arguments)};var V=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/,j={max:10,count:0,name:"texttemplate",parseMultDiv:!0};o.texttemplateStringForShapes=function(){return Z.apply(j,arguments)};var W=/^[:|\|]/;function Z(X,ee,re){var oe=this,ue=arguments;ee||(ee={});var ce={};return X.replace(o.TEMPLATE_STRING_REGEX,function(de,me,_e){var Se=me==="_xother"||me==="_yother",we=me==="_xother_"||me==="_yother_",xe=me==="xother_"||me==="yother_",De=me==="xother"||me==="yother"||Se||xe||we,Ee=me;(Se||we)&&(Ee=Ee.substring(1)),(xe||we)&&(Ee=Ee.substring(0,Ee.length-1));var Me,he,fe,ae=null,be=null;if(oe.parseMultDiv){var Ie=function(ve){var Ce=ve.match(V);return Ce?{key:Ce[1],op:Ce[2],number:Number(Ce[3])}:{key:ve,op:null,number:null}}(Ee);Ee=Ie.key,ae=Ie.op,be=Ie.number}if(De){if((Me=ee[Ee])===void 0)return""}else for(fe=3;fe<ue.length;fe++)if(he=ue[fe]){if(he.hasOwnProperty(Ee)){Me=he[Ee];break}if(Y.test(Ee)||(Me=o.nestedProperty(he,Ee).get(),(Me=ce[Ee]||o.nestedProperty(he,Ee).get())&&(ce[Ee]=Me)),Me!==void 0)break}if(Me!==void 0&&(ae==="*"&&(Me*=be),ae==="/"&&(Me/=be)),Me===void 0&&oe)return oe.count<oe.max&&(o.warn("Variable '"+Ee+"' in "+oe.name+" could not be found!"),Me=de),oe.count===oe.max&&o.warn("Too many "+oe.name+" warnings - additional warnings will be suppressed"),oe.count++,de;if(_e){var Te;if(_e[0]===":"&&(Me=(Te=re?re.numberFormat:o.numberFormat)(_e.replace(W,""))(Me)),_e[0]==="|"){Te=re?re.timeFormat:k;var Ne=o.dateTime2ms(Me);Me=o.formatDate(Ne,_e.replace(W,""),!1,Te)}}else{var qe=Ee+"Label";ee.hasOwnProperty(qe)&&(Me=ee[qe])}return De&&(Me="("+Me+")",(Se||we)&&(Me=" "+Me),(xe||we)&&(Me+=" ")),Me})}o.subplotSort=function(X,ee){for(var re=Math.min(X.length,ee.length)+1,oe=0,ue=0,ce=0;ce<re;ce++){var de=X.charCodeAt(ce)||0,me=ee.charCodeAt(ce)||0,_e=de>=48&&de<=57,Se=me>=48&&me<=57;if(_e&&(oe=10*oe+de-48),Se&&(ue=10*ue+me-48),!_e||!Se){if(oe!==ue)return oe-ue;if(de!==me)return de-me}}return ue-oe};var ie=2e9;o.seedPseudoRandom=function(){ie=2e9},o.pseudoRandom=function(){var X=ie;return ie=(69069*ie+1)%4294967296,Math.abs(ie-X)<429496729?o.pseudoRandom():ie/4294967296},o.fillText=function(X,ee,re){var oe=Array.isArray(re)?function(de){re.push(de)}:function(de){re.text=de},ue=o.extractOption(X,ee,"htx","hovertext");if(o.isValidTextValue(ue))return oe(ue);var ce=o.extractOption(X,ee,"tx","text");return o.isValidTextValue(ce)?oe(ce):void 0},o.isValidTextValue=function(X){return X||X===0},o.formatPercent=function(X,ee){ee=ee||0;for(var re=(Math.round(100*X*Math.pow(10,ee))*Math.pow(.1,ee)).toFixed(ee)+"%",oe=0;oe<ee;oe++)re.indexOf(".")!==-1&&(re=(re=re.replace("0%","%")).replace(".%","%"));return re},o.isHidden=function(X){var ee=window.getComputedStyle(X).display;return!ee||ee==="none"},o.strTranslate=function(X,ee){return X||ee?"translate("+X+","+ee+")":""},o.strRotate=function(X){return X?"rotate("+X+")":""},o.strScale=function(X){return X!==1?"scale("+X+")":""},o.getTextTransform=function(X){var ee=X.noCenter,re=X.textX,oe=X.textY,ue=X.targetX,ce=X.targetY,de=X.anchorX||0,me=X.anchorY||0,_e=X.rotate,Se=X.scale;return Se?Se>1&&(Se=1):Se=0,o.strTranslate(ue-Se*(re+de),ce-Se*(oe+me))+o.strScale(Se)+(_e?"rotate("+_e+(ee?"":" "+re+" "+oe)+")":"")},o.setTransormAndDisplay=function(X,ee){X.attr("transform",o.getTextTransform(ee)),X.style("display",ee.scale?null:"none")},o.ensureUniformFontSize=function(X,ee){var re=o.extendFlat({},ee);return re.size=Math.max(ee.size,X._fullLayout.uniformtext.minsize||0),re},o.join2=function(X,ee,re){var oe=X.length;return oe>1?X.slice(0,-1).join(ee)+re+X[oe-1]:X.join(ee)},o.bigFont=function(X){return Math.round(1.2*X)};var te=o.getFirefoxVersion(),J=te!==null&&te<86;o.getPositionFromD3Event=function(){return J?[w.event.layerX,w.event.layerY]:[w.event.offsetX,w.event.offsetY]}},41965:function(R){R.exports=function(E){return window&&window.process&&window.process.versions?Object.prototype.toString.call(E)==="[object Object]":Object.prototype.toString.call(E)==="[object Object]"&&Object.getPrototypeOf(E).hasOwnProperty("hasOwnProperty")}},66636:function(R,E,e){var w=e(65487),k=/^\w*$/;R.exports=function(i,_,y,h){var l,t,o;y=y||"name",h=h||"value";var r={};_&&_.length?(o=w(i,_),t=o.get()):t=i,_=_||"";var n={};if(t)for(l=0;l<t.length;l++)n[t[l][y]]=l;var a=k.test(h),s={set:function(u,p){var c=p===null?4:0;if(!t){if(!o||c===4)return;t=[],o.set(t)}var b=n[u];if(b===void 0){if(c===4)return;c|=3,b=t.length,n[u]=b}else p!==(a?t[b][h]:w(t[b],h).get())&&(c|=2);var g=t[b]=t[b]||{};return g[y]=u,a?g[h]=p:w(g,h).set(p),p!==null&&(c&=-5),r[b]=r[b]|c,s},get:function(u){if(t){var p=n[u];return p===void 0?void 0:a?t[p][h]:w(t[p],h).get()}},rename:function(u,p){var c=n[u];return c===void 0||(r[c]=1|r[c],n[p]=c,delete n[u],t[c][y]=p),s},remove:function(u){var p=n[u];if(p===void 0)return s;var c=t[p];if(Object.keys(c).length>2)return r[p]=2|r[p],s.set(u,null);if(a){for(l=p;l<t.length;l++)r[l]=3|r[l];for(l=p;l<t.length;l++)n[t[l][y]]--;t.splice(p,1),delete n[u]}else w(c,h).set(null),r[p]=6|r[p];return s},constructUpdate:function(){for(var u,p,c={},b=Object.keys(r),g=0;g<b.length;g++)p=b[g],u=_+"["+p+"]",t[p]?(1&r[p]&&(c[u+"."+y]=t[p][y]),2&r[p]&&(c[u+"."+h]=a?4&r[p]?null:t[p][h]:4&r[p]?null:w(t[p],h).get())):c[u]=null;return c}};return s}},15867:function(R,E,e){var w=e(73972);R.exports=function(k,i){for(var _=k._context.locale,y=0;y<2;y++){for(var h=k._context.locales,l=0;l<2;l++){var t=(h[_]||{}).dictionary;if(t){var o=t[i];if(o)return o}h=w.localeRegistry}var r=_.split("-")[0];if(r===_)break;_=r}return i}},47769:function(R,E,e){var w=e(72075).dfltConfig,k=e(75046),i=R.exports={};i.log=function(){var _;if(w.logging>1){var y=["LOG:"];for(_=0;_<arguments.length;_++)y.push(arguments[_]);console.trace.apply(console,y)}if(w.notifyOnLogging>1){var h=[];for(_=0;_<arguments.length;_++)h.push(arguments[_]);k(h.join("<br>"),"long")}},i.warn=function(){var _;if(w.logging>0){var y=["WARN:"];for(_=0;_<arguments.length;_++)y.push(arguments[_]);console.trace.apply(console,y)}if(w.notifyOnLogging>0){var h=[];for(_=0;_<arguments.length;_++)h.push(arguments[_]);k(h.join("<br>"),"stick")}},i.error=function(){var _;if(w.logging>0){var y=["ERROR:"];for(_=0;_<arguments.length;_++)y.push(arguments[_]);console.error.apply(console,y)}if(w.notifyOnLogging>0){var h=[];for(_=0;_<arguments.length;_++)h.push(arguments[_]);k(h.join("<br>"),"stick")}}},77310:function(R,E,e){var w=e(39898);R.exports=function(k,i,_){var y=k.selectAll("g."+_.replace(/\s/g,".")).data(i,function(l){return l[0].trace.uid});y.exit().remove(),y.enter().append("g").attr("class",_),y.order();var h=k.classed("rangeplot")?"nodeRangePlot3":"node3";return y.each(function(l){l[0][h]=w.select(this)}),y}},35657:function(R,E,e){var w=e(79576);E.init2dArray=function(k,i){for(var _=new Array(k),y=0;y<k;y++)_[y]=new Array(i);return _},E.transposeRagged=function(k){var i,_,y=0,h=k.length;for(i=0;i<h;i++)y=Math.max(y,k[i].length);var l=new Array(y);for(i=0;i<y;i++)for(l[i]=new Array(h),_=0;_<h;_++)l[i][_]=k[_][i];return l},E.dot=function(k,i){if(!k.length||!i.length||k.length!==i.length)return null;var _,y,h=k.length;if(k[0].length)for(_=new Array(h),y=0;y<h;y++)_[y]=E.dot(k[y],i);else if(i[0].length){var l=E.transposeRagged(i);for(_=new Array(l.length),y=0;y<l.length;y++)_[y]=E.dot(k,l[y])}else for(_=0,y=0;y<h;y++)_+=k[y]*i[y];return _},E.translationMatrix=function(k,i){return[[1,0,k],[0,1,i],[0,0,1]]},E.rotationMatrix=function(k){var i=k*Math.PI/180;return[[Math.cos(i),-Math.sin(i),0],[Math.sin(i),Math.cos(i),0],[0,0,1]]},E.rotationXYMatrix=function(k,i,_){return E.dot(E.dot(E.translationMatrix(i,_),E.rotationMatrix(k)),E.translationMatrix(-i,-_))},E.apply3DTransform=function(k){return function(){var i=arguments,_=arguments.length===1?i[0]:[i[0],i[1],i[2]||0];return E.dot(k,[_[0],_[1],_[2],1]).slice(0,3)}},E.apply2DTransform=function(k){return function(){var i=arguments;i.length===3&&(i=i[0]);var _=arguments.length===1?i[0]:[i[0],i[1]];return E.dot(k,[_[0],_[1],1]).slice(0,2)}},E.apply2DTransform2=function(k){var i=E.apply2DTransform(k);return function(_){return i(_.slice(0,2)).concat(i(_.slice(2,4)))}},E.convertCssMatrix=function(k){if(k){var i=k.length;if(i===16)return k;if(i===6)return[k[0],k[1],0,0,k[2],k[3],0,0,0,0,1,0,k[4],k[5],0,1]}return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]},E.inverseTransformMatrix=function(k){var i=[];return w.invert(i,k),[[i[0],i[1],i[2],i[3]],[i[4],i[5],i[6],i[7]],[i[8],i[9],i[10],i[11]],[i[12],i[13],i[14],i[15]]]}},64872:function(R){R.exports={mod:function(E,e){var w=E%e;return w<0?w+e:w},modHalf:function(E,e){return Math.abs(E)>e/2?E-Math.round(E/e)*e:E}}},65487:function(R,E,e){var w=e(92770),k=e(73627).isArrayOrTypedArray;function i(r,n){return function(){var a,s,u,p,c,b=r;for(p=0;p<n.length-1;p++){if((a=n[p])===-1){for(s=!0,u=[],c=0;c<b.length;c++)u[c]=i(b[c],n.slice(p+1))(),u[c]!==u[0]&&(s=!1);return s?u[0]:u}if(typeof a=="number"&&!k(b)||typeof(b=b[a])!="object"||b===null)return}if(typeof b=="object"&&b!==null&&(u=b[n[p]])!==null)return u}}R.exports=function(r,n){if(w(n))n=String(n);else if(typeof n!="string"||n.substr(n.length-4)==="[-1]")throw"bad property string";for(var a,s,u,p=0,c=n.split(".");p<c.length;){if(a=String(c[p]).match(/^([^\[\]]*)((\[\-?[0-9]*\])+)$/)){if(a[1])c[p]=a[1];else{if(p!==0)throw"bad property string";c.splice(0,1)}for(s=a[2].substr(1,a[2].length-2).split("]["),u=0;u<s.length;u++)p++,c.splice(p,0,Number(s[u]))}p++}return typeof r!="object"?function(b,g,f){return{set:function(){throw"bad container"},get:function(){},astr:g,parts:f,obj:b}}(r,n,c):{set:h(r,c,n),get:i(r,c),astr:n,parts:c,obj:r}};var _=/(^|\.)args\[/;function y(r,n){return r===void 0||r===null&&!n.match(_)}function h(r,n,a){return function(s){var u,p,c=r,b="",g=y(s,a);for(p=0;p<n.length-1;p++){if(typeof(u=n[p])=="number"&&!k(c))throw"array index but container is not an array";if(u===-1){if(g=!t(c,n.slice(p+1),s,a))break;return}if(!o(c,u,n[p+1],g))break;if(typeof(c=c[u])!="object"||c===null)throw"container is not an object";b=l(b,u)}if(g){if(p===n.length-1&&(delete c[n[p]],Array.isArray(c)&&+n[p]==c.length-1))for(;c.length&&c[c.length-1]===void 0;)c.pop()}else c[n[p]]=s}}function l(r,n){var a=n;return w(n)?a="["+n+"]":r&&(a="."+n),r+a}function t(r,n,a,s){var u,p=k(a),c=!0,b=a,g=s.replace("-1",0),f=!p&&y(a,g),v=n[0];for(u=0;u<r.length;u++)g=s.replace("-1",u),p&&(f=y(b=a[u%a.length],g)),f&&(c=!1),o(r,u,v,f)&&h(r[u],n,s.replace("-1",u))(b);return c}function o(r,n,a,s){if(r[n]===void 0){if(s)return!1;r[n]=typeof a=="number"?[]:{}}return!0}},64213:function(R){R.exports=function(){}},75046:function(R,E,e){var w=e(39898),k=e(92770),i=[];R.exports=function(_,y){if(i.indexOf(_)===-1){i.push(_);var h=1e3;k(y)?h=y:y==="long"&&(h=3e3);var l=w.select("body").selectAll(".plotly-notifier").data([0]);l.enter().append("div").classed("plotly-notifier",!0),l.selectAll(".notifier-note").data(i).enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var r=w.select(this);r.append("button").classed("notifier-close",!0).html("×").on("click",function(){r.transition().call(t)});for(var n=r.append("p"),a=o.split(/<br\s*\/?>/g),s=0;s<a.length;s++)s&&n.append("br"),n.append("span").text(a[s]);y==="stick"?r.transition().duration(350).style("opacity",1):r.transition().duration(700).style("opacity",1).transition().delay(h).call(t)})}function t(o){o.duration(700).style("opacity",0).each("end",function(r){var n=i.indexOf(r);n!==-1&&i.splice(n,1),w.select(this).remove()})}}},39918:function(R,E,e){var w=e(6964),k="data-savedcursor";R.exports=function(i,_){var y=i.attr(k);if(_){if(!y){for(var h=(i.attr("class")||"").split(" "),l=0;l<h.length;l++){var t=h[l];t.indexOf("cursor-")===0&&i.attr(k,t.substr(7)).classed(t,!1)}i.attr(k)||i.attr(k,"!!")}w(i,_)}else y&&(i.attr(k,null),y==="!!"?w(i):w(i,y))}},61082:function(R,E,e){var w=e(35657).dot,k=e(50606).BADNUM,i=R.exports={};i.tester=function(_){var y,h=_.slice(),l=h[0][0],t=l,o=h[0][1],r=o;for(h[h.length-1][0]===h[0][0]&&h[h.length-1][1]===h[0][1]||h.push(h[0]),y=1;y<h.length;y++)l=Math.min(l,h[y][0]),t=Math.max(t,h[y][0]),o=Math.min(o,h[y][1]),r=Math.max(r,h[y][1]);var n,a=!1;h.length===5&&(h[0][0]===h[1][0]?h[2][0]===h[3][0]&&h[0][1]===h[3][1]&&h[1][1]===h[2][1]&&(a=!0,n=function(p){return p[0]===h[0][0]}):h[0][1]===h[1][1]&&h[2][1]===h[3][1]&&h[0][0]===h[3][0]&&h[1][0]===h[2][0]&&(a=!0,n=function(p){return p[1]===h[0][1]}));var s=!0,u=h[0];for(y=1;y<h.length;y++)if(u[0]!==h[y][0]||u[1]!==h[y][1]){s=!1;break}return{xmin:l,xmax:t,ymin:o,ymax:r,pts:h,contains:a?function(p,c){var b=p[0],g=p[1];return!(b===k||b<l||b>t||g===k||g<o||g>r||c&&n(p))}:function(p,c){var b=p[0],g=p[1];if(b===k||b<l||b>t||g===k||g<o||g>r)return!1;var f,v,m,x,T,d=h.length,M=h[0][0],A=h[0][1],C=0;for(f=1;f<d;f++)if(v=M,m=A,M=h[f][0],A=h[f][1],!(b<(x=Math.min(v,M))||b>Math.max(v,M)||g>Math.max(m,A)))if(g<Math.min(m,A))b!==x&&C++;else{if(g===(T=M===v?g:m+(b-v)*(A-m)/(M-v)))return f!==1||!c;g<=T&&b!==x&&C++}return C%2==1},isRect:a,degenerate:s}},i.isSegmentBent=function(_,y,h,l){var t,o,r,n=_[y],a=[_[h][0]-n[0],_[h][1]-n[1]],s=w(a,a),u=Math.sqrt(s),p=[-a[1]/u,a[0]/u];for(t=y+1;t<h;t++)if(o=[_[t][0]-n[0],_[t][1]-n[1]],(r=w(o,a))<0||r>s||Math.abs(w(o,p))>l)return!0;return!1},i.filter=function(_,y){var h=[_[0]],l=0,t=0;function o(r){_.push(r);var n=h.length,a=l;h.splice(t+1);for(var s=a+1;s<_.length;s++)(s===_.length-1||i.isSegmentBent(_,a,s+1,y))&&(h.push(_[s]),h.length<n-2&&(l=s,t=h.length-1),a=s)}return _.length>1&&o(_.pop()),{addPt:o,raw:_,filtered:h}}},79749:function(R,E,e){var w=e(58617),k=e(98580);R.exports=function(i,_,y){var h=i._fullLayout,l=!0;return h._glcanvas.each(function(t){if(t.regl)t.regl.preloadCachedCode(y);else if(!t.pick||h._has("parcoords")){try{t.regl=k({canvas:this,attributes:{antialias:!t.pick,preserveDrawingBuffer:!0},pixelRatio:i._context.plotGlPixelRatio||e.g.devicePixelRatio,extensions:_||[],cachedCode:y||{}})}catch{l=!1}t.regl||(l=!1),l&&this.addEventListener("webglcontextlost",function(o){i&&i.emit&&i.emit("plotly_webglcontextlost",{event:o,layer:t.key})},!1)}}),l||w({container:h._glcontainer.node()}),l}},45142:function(R,E,e){var w=e(92770),k=e(35791);R.exports=function(i){var _;if(typeof(_=i&&i.hasOwnProperty("userAgent")?i.userAgent:function(){var n;return typeof navigator<"u"&&(n=navigator.userAgent),n&&n.headers&&typeof n.headers["user-agent"]=="string"&&(n=n.headers["user-agent"]),n}())!="string")return!0;var y=k({ua:{headers:{"user-agent":_}},tablet:!0,featureDetect:!1});if(!y){for(var h=_.split(" "),l=1;l<h.length;l++)if(h[l].indexOf("Safari")!==-1)for(var t=l-1;t>-1;t--){var o=h[t];if(o.substr(0,8)==="Version/"){var r=o.substr(8).split(".")[0];if(w(r)&&(r=+r),r>=13)return!0}}}return y}},75138:function(R){R.exports=function(E,e){if(e instanceof RegExp){for(var w=e.toString(),k=0;k<E.length;k++)if(E[k]instanceof RegExp&&E[k].toString()===w)return E;E.push(e)}else!e&&e!==0||E.indexOf(e)!==-1||E.push(e);return E}},10847:function(R,E,e){var w=e(71828),k=e(72075).dfltConfig,i={add:function(_,y,h,l,t){var o,r;_.undoQueue=_.undoQueue||{index:0,queue:[],sequence:!1},r=_.undoQueue.index,_.autoplay?_.undoQueue.inSequence||(_.autoplay=!1):(!_.undoQueue.sequence||_.undoQueue.beginSequence?(o={undo:{calls:[],args:[]},redo:{calls:[],args:[]}},_.undoQueue.queue.splice(r,_.undoQueue.queue.length-r,o),_.undoQueue.index+=1):o=_.undoQueue.queue[r-1],_.undoQueue.beginSequence=!1,o&&(o.undo.calls.unshift(y),o.undo.args.unshift(h),o.redo.calls.push(l),o.redo.args.push(t)),_.undoQueue.queue.length>k.queueLength&&(_.undoQueue.queue.shift(),_.undoQueue.index--))},startSequence:function(_){_.undoQueue=_.undoQueue||{index:0,queue:[],sequence:!1},_.undoQueue.sequence=!0,_.undoQueue.beginSequence=!0},stopSequence:function(_){_.undoQueue=_.undoQueue||{index:0,queue:[],sequence:!1},_.undoQueue.sequence=!1,_.undoQueue.beginSequence=!1},undo:function(_){var y,h;if(!(_.undoQueue===void 0||isNaN(_.undoQueue.index)||_.undoQueue.index<=0)){for(_.undoQueue.index--,y=_.undoQueue.queue[_.undoQueue.index],_.undoQueue.inSequence=!0,h=0;h<y.undo.calls.length;h++)i.plotDo(_,y.undo.calls[h],y.undo.args[h]);_.undoQueue.inSequence=!1,_.autoplay=!1}},redo:function(_){var y,h;if(!(_.undoQueue===void 0||isNaN(_.undoQueue.index)||_.undoQueue.index>=_.undoQueue.queue.length)){for(y=_.undoQueue.queue[_.undoQueue.index],_.undoQueue.inSequence=!0,h=0;h<y.redo.calls.length;h++)i.plotDo(_,y.redo.calls[h],y.redo.args[h]);_.undoQueue.inSequence=!1,_.autoplay=!1,_.undoQueue.index++}},plotDo:function(_,y,h){_.autoplay=!0,h=function(l,t){for(var o,r=[],n=0;n<t.length;n++)o=t[n],r[n]=o===l?o:typeof o=="object"?Array.isArray(o)?w.extendDeep([],o):w.extendDeepAll({},o):o;return r}(_,h),y.apply(null,h)}};R.exports=i},30587:function(R,E){E.counter=function(e,w,k,i){var _=(w||"")+(k?"":"$"),y=i===!1?"":"^";return e==="xy"?new RegExp(y+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+_):new RegExp(y+e+"([2-9]|[1-9][0-9]+)?"+_)}},6962:function(R){var E=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,e=/^[^\.\[\]]+$/;R.exports=function(w,k){for(;k;){var i=w.match(E);if(i)w=i[1];else{if(!w.match(e))throw new Error("bad relativeAttr call:"+[w,k]);w=""}if(k.charAt(0)!=="^")break;k=k.slice(1)}return w&&k.charAt(0)!=="["?w+"."+k:w+k}},51332:function(R,E,e){var w=e(73627).isArrayOrTypedArray,k=e(41965);R.exports=function i(_,y){for(var h in y){var l=y[h],t=_[h];if(t!==l)if(h.charAt(0)==="_"||typeof l=="function"){if(h in _)continue;_[h]=l}else if(w(l)&&w(t)&&k(l[0])){if(h==="customdata"||h==="ids")continue;for(var o=Math.min(l.length,t.length),r=0;r<o;r++)t[r]!==l[r]&&k(l[r])&&k(t[r])&&i(t[r],l[r])}else k(l)&&k(t)&&(i(t,l),Object.keys(t).length||delete _[h])}}},65888:function(R,E,e){var w=e(92770),k=e(47769),i=e(23389),_=e(50606).BADNUM,y=1e-9;function h(r,n){return r<n}function l(r,n){return r<=n}function t(r,n){return r>n}function o(r,n){return r>=n}E.findBin=function(r,n,a){if(w(n.start))return a?Math.ceil((r-n.start)/n.size-y)-1:Math.floor((r-n.start)/n.size+y);var s,u,p=0,c=n.length,b=0,g=c>1?(n[c-1]-n[0])/(c-1):1;for(u=g>=0?a?h:l:a?o:t,r+=g*y*(a?-1:1)*(g>=0?1:-1);p<c&&b++<100;)u(n[s=Math.floor((p+c)/2)],r)?p=s+1:c=s;return b>90&&k.log("Long binary search..."),p-1},E.sorterAsc=function(r,n){return r-n},E.sorterDes=function(r,n){return n-r},E.distinctVals=function(r){var n,a=r.slice();for(a.sort(E.sorterAsc),n=a.length-1;n>-1&&a[n]===_;n--);for(var s,u=a[n]-a[0]||1,p=u/(n||1)/1e4,c=[],b=0;b<=n;b++){var g=a[b],f=g-s;s===void 0?(c.push(g),s=g):f>p&&(u=Math.min(u,f),c.push(g),s=g)}return{vals:c,minDiff:u}},E.roundUp=function(r,n,a){for(var s,u=0,p=n.length-1,c=0,b=a?0:1,g=a?1:0,f=a?Math.ceil:Math.floor;u<p&&c++<100;)n[s=f((u+p)/2)]<=r?u=s+b:p=s-g;return n[u]},E.sort=function(r,n){for(var a=0,s=0,u=1;u<r.length;u++){var p=n(r[u],r[u-1]);if(p<0?a=1:p>0&&(s=1),a&&s)return r.sort(n)}return s?r:r.reverse()},E.findIndexOfMin=function(r,n){n=n||i;for(var a,s=1/0,u=0;u<r.length;u++){var p=n(r[u]);p<s&&(s=p,a=u)}return a}},6964:function(R){R.exports=function(E,e){(E.attr("class")||"").split(" ").forEach(function(w){w.indexOf("cursor-")===0&&E.classed(w,!1)}),e&&E.classed("cursor-"+e,!0)}},58617:function(R,E,e){var w=e(7901),k=function(){};R.exports=function(i){for(var _ in i)typeof i[_]=="function"&&(i[_]=k);i.destroy=function(){i.container.parentNode.removeChild(i.container)};var y=document.createElement("div");y.className="no-webgl",y.style.cursor="pointer",y.style.fontSize="24px",y.style.color=w.defaults[0],y.style.position="absolute",y.style.left=y.style.top="0px",y.style.width=y.style.height="100%",y.style["background-color"]=w.lightLine,y.style["z-index"]=30;var h=document.createElement("p");return h.textContent="WebGL is not supported by your browser - visit https://get.webgl.org for more info",h.style.position="relative",h.style.top="50%",h.style.left="50%",h.style.height="30%",h.style.width="50%",h.style.margin="-15% 0 0 -25%",y.appendChild(h),i.container.appendChild(y),i.container.style.background="#FFFFFF",i.container.onclick=function(){window.open("https://get.webgl.org")},!1}},78607:function(R){R.exports=function(E){return Object.keys(E).sort()}},80038:function(R,E,e){var w=e(92770),k=e(73627).isArrayOrTypedArray;E.aggNums=function(i,_,y,h){var l,t;if((!h||h>y.length)&&(h=y.length),w(_)||(_=!1),k(y[0])){for(t=new Array(h),l=0;l<h;l++)t[l]=E.aggNums(i,_,y[l]);y=t}for(l=0;l<h;l++)w(_)?w(y[l])&&(_=i(+_,+y[l])):_=y[l];return _},E.len=function(i){return E.aggNums(function(_){return _+1},0,i)},E.mean=function(i,_){return _||(_=E.len(i)),E.aggNums(function(y,h){return y+h},0,i)/_},E.midRange=function(i){if(i!==void 0&&i.length!==0)return(E.aggNums(Math.max,null,i)+E.aggNums(Math.min,null,i))/2},E.variance=function(i,_,y){return _||(_=E.len(i)),w(y)||(y=E.mean(i,_)),E.aggNums(function(h,l){return h+Math.pow(l-y,2)},0,i)/_},E.stdev=function(i,_,y){return Math.sqrt(E.variance(i,_,y))},E.median=function(i){var _=i.slice().sort();return E.interp(_,.5)},E.interp=function(i,_){if(!w(_))throw"n should be a finite number";if((_=_*i.length-.5)<0)return i[0];if(_>i.length-1)return i[i.length-1];var y=_%1;return y*i[Math.ceil(_)]+(1-y)*i[Math.floor(_)]}},78614:function(R,E,e){var w=e(25075);R.exports=function(k){return k?w(k):[0,0,0,1]}},3883:function(R,E,e){var w=e(32396),k=e(91424),i=e(71828),_=null;R.exports=function(){if(_!==null)return _;_=!1;var y=i.isIE()||i.isSafari()||i.isIOS();if(window.navigator.userAgent&&!y){var h=Array.from(w.CSS_DECLARATIONS).reverse(),l=window.CSS&&window.CSS.supports||window.supportsCSS;if(typeof l=="function")_=h.some(function(r){return l.apply(null,r)});else{var t=k.tester.append("image").attr("style",w.STYLE),o=window.getComputedStyle(t.node()).imageRendering;_=h.some(function(r){var n=r[1];return o===n||o===n.toLowerCase()}),t.remove()}}return _}},63893:function(R,E,e){var w=e(39898),k=e(71828),i=k.strTranslate,_=e(77922),y=e(18783).LINE_SPACING,h=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;E.convertToTspans=function(B,Y,D){var G=B.text(),V=!B.attr("data-notex")&&Y&&Y._context.typesetMath&&typeof MathJax<"u"&&G.match(h),j=w.select(B.node().parentNode);if(!j.empty()){var W=B.attr("class")?B.attr("class").split(" ")[0]:"text";return W+="-math",j.selectAll("svg."+W).remove(),j.selectAll("g."+W+"-group").remove(),B.style("display",null).attr({"data-unformatted":G,"data-math":"N"}),V?(Y&&Y._promises||[]).push(new Promise(function(ie){B.style("display","none");var te=parseInt(B.node().style.fontSize,10),J={fontSize:te};(function(X,ee,re){var oe,ue,ce,de,me=parseInt((MathJax.version||"").split(".")[0]);if(me===2||me===3){var _e=function(){var we="math-output-"+k.randstr({},64),xe=(de=w.select("body").append("div").attr({id:we}).style({visibility:"hidden",position:"absolute","font-size":ee.fontSize+"px"}).text(X.replace(l,"\\lt ").replace(t,"\\gt "))).node();return me===2?MathJax.Hub.Typeset(xe):MathJax.typeset([xe])},Se=function(){var we=de.select(me===2?".MathJax_SVG":".MathJax"),xe=!we.empty()&&de.select("svg").node();if(xe){var De,Ee=xe.getBoundingClientRect();De=me===2?w.select("body").select("#MathJax_SVG_glyphs"):we.select("defs"),re(we,De,Ee)}else k.log("There was an error in the tex syntax.",X),re();de.remove()};me===2?MathJax.Hub.Queue(function(){return ue=k.extendDeepAll({},MathJax.Hub.config),ce=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:o},displayAlign:"left"})},function(){if((oe=MathJax.Hub.config.menuSettings.renderer)!=="SVG")return MathJax.Hub.setRenderer("SVG")},_e,Se,function(){if(oe!=="SVG")return MathJax.Hub.setRenderer(oe)},function(){return ce!==void 0&&(MathJax.Hub.processSectionDelay=ce),MathJax.Hub.Config(ue)}):me===3&&(ue=k.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=o,(oe=MathJax.config.startup.output)!=="svg"&&(MathJax.config.startup.output="svg"),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){_e(),Se(),oe!=="svg"&&(MathJax.config.startup.output=oe),MathJax.config=ue}))}else k.warn("No MathJax version:",MathJax.version)})(V[2],J,function(X,ee,re){j.selectAll("svg."+W).remove(),j.selectAll("g."+W+"-group").remove();var oe=X&&X.select("svg");if(!oe||!oe.node())return Z(),void ie();var ue=j.append("g").classed(W+"-group",!0).attr({"pointer-events":"none","data-unformatted":G,"data-math":"Y"});ue.node().appendChild(oe.node()),ee&&ee.node()&&oe.node().insertBefore(ee.node().cloneNode(!0),oe.node().firstChild);var ce=re.width,de=re.height;oe.attr({class:W,height:de,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var me=B.node().style.fill||"black",_e=oe.select("g");_e.attr({fill:me,stroke:me});var Se=_e.node().getBoundingClientRect(),we=Se.width,xe=Se.height;(we>ce||xe>de)&&(oe.style("overflow","hidden"),we=(Se=oe.node().getBoundingClientRect()).width,xe=Se.height);var De=+B.attr("x"),Ee=+B.attr("y"),Me=-(te||B.node().getBoundingClientRect().height)/4;if(W[0]==="y")ue.attr({transform:"rotate("+[-90,De,Ee]+")"+i(-we/2,Me-xe/2)});else if(W[0]==="l")Ee=Me-xe/2;else if(W[0]==="a"&&W.indexOf("atitle")!==0)De=0,Ee=Me;else{var he=B.attr("text-anchor");De-=we*(he==="middle"?.5:he==="end"?1:0),Ee=Ee+Me-xe/2}oe.attr({x:De,y:Ee}),D&&D.call(B,ue),ie(ue)})})):Z(),B}function Z(){j.empty()||(W=B.attr("class")+"-math",j.select("svg."+W).remove()),B.text("").style("white-space","pre");var ie=function(te,J){J=J.replace(p," ");var X,ee=!1,re=[],oe=-1;function ue(){oe++;var Ie=document.createElementNS(_.svg,"tspan");w.select(Ie).attr({class:"line",dy:oe*y+"em"}),te.appendChild(Ie),X=Ie;var Te=re;if(re=[{node:Ie}],Te.length>1)for(var Ne=1;Ne<Te.length;Ne++)ce(Te[Ne])}function ce(Ie){var Te,Ne=Ie.type,qe={};if(Ne==="a"){Te="a";var ve=Ie.target,Ce=Ie.href,Ae=Ie.popup;Ce&&(qe={"xlink:xlink:show":ve==="_blank"||ve.charAt(0)!=="_"?"new":"replace",target:ve,"xlink:xlink:href":Ce},Ae&&(qe.onclick='window.open(this.href.baseVal,this.target.baseVal,"'+Ae+'");return false;'))}else Te="tspan";Ie.style&&(qe.style=Ie.style);var ze=document.createElementNS(_.svg,Te);if(Ne==="sup"||Ne==="sub"){de(X,s),X.appendChild(ze);var Ue=document.createElementNS(_.svg,"tspan");de(Ue,s),w.select(Ue).attr("dy",a[Ne]),qe.dy=n[Ne],X.appendChild(ze),X.appendChild(Ue)}else X.appendChild(ze);w.select(ze).attr(qe),X=Ie.node=ze,re.push(Ie)}function de(Ie,Te){Ie.appendChild(document.createTextNode(Te))}function me(Ie){if(re.length!==1){var Te=re.pop();Ie!==Te.type&&k.log("Start tag <"+Te.type+"> doesnt match end tag <"+Ie+">. Pretending it did match.",J),X=re[re.length-1].node}else k.log("Ignoring unexpected end tag </"+Ie+">.",J)}g.test(J)?ue():(X=te,re=[{node:te}]);for(var _e=J.split(c),Se=0;Se<_e.length;Se++){var we=_e[Se],xe=we.match(b),De=xe&&xe[2].toLowerCase(),Ee=r[De];if(De==="br")ue();else if(Ee===void 0)de(X,C(we));else if(xe[1])me(De);else{var Me=xe[4],he={type:De},fe=T(Me,f);if(fe?(fe=fe.replace(d,"$1 fill:"),Ee&&(fe+=";"+Ee)):Ee&&(fe=Ee),fe&&(he.style=fe),De==="a"){ee=!0;var ae=T(Me,v);if(ae){var be=P(ae);be&&(he.href=be,he.target=T(Me,m)||"_blank",he.popup=T(Me,x))}}ce(he)}}return ee}(B.node(),G);ie&&B.style("pointer-events","all"),E.positionText(B),D&&D.call(B)}};var l=/(<|<|<)/g,t=/(>|>|>)/g,o=[["$","$"],["\\(","\\)"]],r={sup:"font-size:70%",sub:"font-size:70%",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},n={sub:"0.3em",sup:"-0.6em"},a={sub:"-0.21em",sup:"0.42em"},s="",u=["http:","https:","mailto:","",void 0,":"],p=E.NEWLINES=/(\r\n?|\n)/g,c=/(<[^<>]*>)/,b=/<(\/?)([^ >]*)(\s+(.*))?>/i,g=/<br(\s+.*)?>/i;E.BR_TAG_ALL=/<br(\s+.*)?>/gi;var f=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,v=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,m=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,x=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function T(B,Y){if(!B)return null;var D=B.match(Y),G=D&&(D[3]||D[4]);return G&&C(G)}var d=/(^|;)\s*color:/;E.plainText=function(B,Y){for(var D=(Y=Y||{}).len!==void 0&&Y.len!==-1?Y.len:1/0,G=Y.allowedTags!==void 0?Y.allowedTags:["br"],V=B.split(c),j=[],W="",Z=0,ie=0;ie<V.length;ie++){var te=V[ie],J=te.match(b),X=J&&J[2].toLowerCase();if(X)G.indexOf(X)!==-1&&(j.push(te),W=X);else{var ee=te.length;if(Z+ee<D)j.push(te),Z+=ee;else if(Z<D){var re=D-Z;W&&(W!=="br"||re<=3||ee<=3)&&j.pop(),D>3?j.push(te.substr(0,re-3)+"..."):j.push(te.substr(0,re));break}W=""}}return j.join("")};var M={mu:"μ",amp:"&",lt:"<",gt:">",nbsp:" ",times:"×",plusmn:"±",deg:"°"},A=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function C(B){return B.replace(A,function(Y,D){return(D.charAt(0)==="#"?function(G){if(!(G>1114111)){var V=String.fromCodePoint;if(V)return V(G);var j=String.fromCharCode;return G<=65535?j(G):j(55232+(G>>10),G%1024+56320)}}(D.charAt(1)==="x"?parseInt(D.substr(2),16):parseInt(D.substr(1),10)):M[D])||Y})}function P(B){var Y=encodeURI(decodeURI(B)),D=document.createElement("a"),G=document.createElement("a");D.href=B,G.href=Y;var V=D.protocol,j=G.protocol;return u.indexOf(V)!==-1&&u.indexOf(j)!==-1?Y:""}function O(B,Y,D){var G,V,j,W=D.horizontalAlign,Z=D.verticalAlign||"top",ie=B.node().getBoundingClientRect(),te=Y.node().getBoundingClientRect();return V=Z==="bottom"?function(){return ie.bottom-G.height}:Z==="middle"?function(){return ie.top+(ie.height-G.height)/2}:function(){return ie.top},j=W==="right"?function(){return ie.right-G.width}:W==="center"?function(){return ie.left+(ie.width-G.width)/2}:function(){return ie.left},function(){G=this.node().getBoundingClientRect();var J=j()-te.left,X=V()-te.top,ee=D.gd||{};if(D.gd){ee._fullLayout._calcInverseTransform(ee);var re=k.apply3DTransform(ee._fullLayout._invTransform)(J,X);J=re[0],X=re[1]}return this.style({top:X+"px",left:J+"px","z-index":1e3}),this}}E.convertEntities=C,E.sanitizeHTML=function(B){B=B.replace(p," ");for(var Y=document.createElement("p"),D=Y,G=[],V=B.split(c),j=0;j<V.length;j++){var W=V[j],Z=W.match(b),ie=Z&&Z[2].toLowerCase();if(ie in r)if(Z[1])G.length&&(D=G.pop());else{var te=Z[4],J=T(te,f),X=J?{style:J}:{};if(ie==="a"){var ee=T(te,v);if(ee){var re=P(ee);if(re){X.href=re;var oe=T(te,m);oe&&(X.target=oe)}}}var ue=document.createElement(ie);D.appendChild(ue),w.select(ue).attr(X),D=ue,G.push(ue)}else D.appendChild(document.createTextNode(C(W)))}return Y.innerHTML},E.lineCount=function(B){return B.selectAll("tspan.line").size()||1},E.positionText=function(B,Y,D){return B.each(function(){var G=w.select(this);function V(Z,ie){return ie===void 0?(ie=G.attr(Z))===null&&(G.attr(Z,0),ie=0):G.attr(Z,ie),ie}var j=V("x",Y),W=V("y",D);this.nodeName==="text"&&G.selectAll("tspan.line").attr({x:j,y:W})})};var z="1px ";E.makeTextShadow=function(B){return z+z+z+B+", -"+z+"-"+z+z+B+", "+z+"-"+z+z+B+", -"+z+z+z+B},E.makeEditable=function(B,Y){var D=Y.gd,G=Y.delegate,V=w.dispatch("edit","input","cancel"),j=G||B;if(B.style({"pointer-events":G?"none":"all"}),B.size()!==1)throw new Error("boo");function W(){var ie,te,J,X,ee;ie=w.select(D).select(".svg-container"),te=ie.append("div"),J=B.node().style,X=parseFloat(J.fontSize||12),(ee=Y.text)===void 0&&(ee=B.attr("data-unformatted")),te.classed("plugin-editable editable",!0).style({position:"absolute","font-family":J.fontFamily||"Arial","font-size":X,color:Y.fill||J.fill||"black",opacity:1,"background-color":Y.background||"transparent",outline:"#ffffff33 1px solid",margin:[-X/8+1,0,0,-1].join("px ")+"px",padding:"0","box-sizing":"border-box"}).attr({contenteditable:!0}).text(ee).call(O(B,ie,Y)).on("blur",function(){D._editing=!1,B.text(this.textContent).style({opacity:1});var ue,ce=w.select(this).attr("class");(ue=ce?"."+ce.split(" ")[0]+"-math-group":"[class*=-math-group]")&&w.select(B.node().parentNode).select(ue).style({opacity:0});var de=this.textContent;w.select(this).transition().duration(0).remove(),w.select(document).on("mouseup",null),V.edit.call(B,de)}).on("focus",function(){var ue=this;D._editing=!0,w.select(document).on("mouseup",function(){if(w.event.target===ue)return!1;document.activeElement===te.node()&&te.node().blur()})}).on("keyup",function(){w.event.which===27?(D._editing=!1,B.style({opacity:1}),w.select(this).style({opacity:0}).on("blur",function(){return!1}).transition().remove(),V.cancel.call(B,this.textContent)):(V.input.call(B,this.textContent),w.select(this).call(O(B,ie,Y)))}).on("keydown",function(){w.event.which===13&&this.blur()}).call(Z),B.style({opacity:0});var re,oe=j.attr("class");(re=oe?"."+oe.split(" ")[0]+"-math-group":"[class*=-math-group]")&&w.select(B.node().parentNode).select(re).style({opacity:0})}function Z(ie){var te=ie.node(),J=document.createRange();J.selectNodeContents(te);var X=window.getSelection();X.removeAllRanges(),X.addRange(J),te.focus()}return Y.immediate?W():j.on("click",W),w.rebind(B,V,"on")}},79990:function(R,E){var e={};function w(k){k&&k.timer!==null&&(clearTimeout(k.timer),k.timer=null)}E.throttle=function(k,i,_){var y=e[k],h=Date.now();if(!y){for(var l in e)e[l].ts<h-6e4&&delete e[l];y=e[k]={ts:0,timer:null}}function t(){_(),y.ts=Date.now(),y.onDone&&(y.onDone(),y.onDone=null)}w(y),h>y.ts+i?t():y.timer=setTimeout(function(){t(),y.timer=null},i)},E.done=function(k){var i=e[k];return i&&i.timer?new Promise(function(_){var y=i.onDone;i.onDone=function(){y&&y(),_(),i.onDone=null}}):Promise.resolve()},E.clear=function(k){if(k)w(e[k]),delete e[k];else for(var i in e)E.clear(i)}},58163:function(R,E,e){var w=e(92770);R.exports=function(k,i){if(k>0)return Math.log(k)/Math.LN10;var _=Math.log(Math.min(i[0],i[1]))/Math.LN10;return w(_)||(_=Math.log(Math.max(i[0],i[1]))/Math.LN10-6),_}},90973:function(R,E,e){var w=R.exports={},k=e(78776).locationmodeToLayer,i=e(96892).zL;w.getTopojsonName=function(_){return[_.scope.replace(/ /g,"-"),"_",_.resolution.toString(),"m"].join("")},w.getTopojsonPath=function(_,y){return _+y+".json"},w.getTopojsonFeatures=function(_,y){var h=k[_.locationmode],l=y.objects[h];return i(y,l).features}},37815:function(R){R.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}},92177:function(R){R.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"}}},14458:function(R,E,e){var w=e(73972);R.exports=function(k){for(var i,_,y=w.layoutArrayContainers,h=w.layoutArrayRegexes,l=k.split("[")[0],t=0;t<h.length;t++)if((_=k.match(h[t]))&&_.index===0){i=_[0];break}if(i||(i=y[y.indexOf(l)]),!i)return!1;var o=k.substr(i.length);return o?!!(_=o.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/))&&{array:i,index:Number(_[1]),property:_[3]||""}:{array:i,index:"",property:""}}},30962:function(R,E,e){var w=e(71828),k=w.extendFlat,i=w.isPlainObject,_={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},y={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},h=_.flags.slice().concat(["fullReplot"]),l=y.flags.slice().concat("layoutReplot");function t(n){for(var a={},s=0;s<n.length;s++)a[n[s]]=!1;return a}function o(n,a,s){var u=k({},n);for(var p in u){var c=u[p];i(c)&&(u[p]=r(c,a,0,p))}return s==="from-root"&&(u.editType=a),u}function r(n,a,s,u){if(n.valType){var p=k({},n);if(p.editType=a,Array.isArray(n.items)){p.items=new Array(n.items.length);for(var c=0;c<n.items.length;c++)p.items[c]=r(n.items[c],a)}return p}return o(n,a,u.charAt(0)==="_"?"nested":"from-root")}R.exports={traces:_,layout:y,traceFlags:function(){return t(h)},layoutFlags:function(){return t(l)},update:function(n,a){var s=a.editType;if(s&&s!=="none")for(var u=s.split("+"),p=0;p<u.length;p++)n[u[p]]=!0},overrideAll:o}},58377:function(R,E,e){var w=e(92770),k=e(27812),i=e(73972),_=e(71828),y=e(74875),h=e(41675),l=e(7901),t=h.cleanId,o=h.getFromTrace,r=i.traceIs;function n(v,m){var x=v[m],T=m.charAt(0);x&&x!=="paper"&&(v[m]=t(x,T,!0))}function a(v){function m(x,T){var d=v[x],M=v.title&&v.title[T];d&&!M&&(v.title||(v.title={}),v.title[T]=v[x],delete v[x])}v&&(typeof v.title!="string"&&typeof v.title!="number"||(v.title={text:v.title}),m("titlefont","font"),m("titleposition","position"),m("titleside","side"),m("titleoffset","offset"))}function s(v){if(!_.isPlainObject(v))return!1;var m=v.name;return delete v.name,delete v.showlegend,(typeof m=="string"||typeof m=="number")&&String(m)}function u(v,m,x,T){if(x&&!T)return v;if(T&&!x||!v.trim())return m;if(!m.trim())return v;var d,M=Math.min(v.length,m.length);for(d=0;d<M&&v.charAt(d)===m.charAt(d);d++);return v.substr(0,d).trim()}function p(v){var m="middle",x="center";return typeof v=="string"&&(v.indexOf("top")!==-1?m="top":v.indexOf("bottom")!==-1&&(m="bottom"),v.indexOf("left")!==-1?x="left":v.indexOf("right")!==-1&&(x="right")),m+" "+x}function c(v,m){return m in v&&typeof v[m]=="object"&&Object.keys(v[m]).length===0}E.clearPromiseQueue=function(v){Array.isArray(v._promises)&&v._promises.length>0&&_.log("Clearing previous rejected promises from queue."),v._promises=[]},E.cleanLayout=function(v){var m,x;v||(v={}),v.xaxis1&&(v.xaxis||(v.xaxis=v.xaxis1),delete v.xaxis1),v.yaxis1&&(v.yaxis||(v.yaxis=v.yaxis1),delete v.yaxis1),v.scene1&&(v.scene||(v.scene=v.scene1),delete v.scene1);var T=(y.subplotsRegistry.cartesian||{}).attrRegex,d=(y.subplotsRegistry.polar||{}).attrRegex,M=(y.subplotsRegistry.ternary||{}).attrRegex,A=(y.subplotsRegistry.gl3d||{}).attrRegex,C=Object.keys(v);for(m=0;m<C.length;m++){var P=C[m];if(T&&T.test(P)){var O=v[P];O.anchor&&O.anchor!=="free"&&(O.anchor=t(O.anchor)),O.overlaying&&(O.overlaying=t(O.overlaying)),O.type||(O.isdate?O.type="date":O.islog?O.type="log":O.isdate===!1&&O.islog===!1&&(O.type="linear")),O.autorange!=="withzero"&&O.autorange!=="tozero"||(O.autorange=!0,O.rangemode="tozero"),delete O.islog,delete O.isdate,delete O.categories,c(O,"domain")&&delete O.domain,O.autotick!==void 0&&(O.tickmode===void 0&&(O.tickmode=O.autotick?"auto":"linear"),delete O.autotick),a(O)}else if(d&&d.test(P))a(v[P].radialaxis);else if(M&&M.test(P)){var z=v[P];a(z.aaxis),a(z.baxis),a(z.caxis)}else if(A&&A.test(P)){var B=v[P],Y=B.cameraposition;if(Array.isArray(Y)&&Y[0].length===4){var D=Y[0],G=Y[1],V=Y[2],j=k([],D),W=[];for(x=0;x<3;++x)W[x]=G[x]+V*j[2+4*x];B.camera={eye:{x:W[0],y:W[1],z:W[2]},center:{x:G[0],y:G[1],z:G[2]},up:{x:0,y:0,z:1}},delete B.cameraposition}a(B.xaxis),a(B.yaxis),a(B.zaxis)}}var Z=Array.isArray(v.annotations)?v.annotations.length:0;for(m=0;m<Z;m++){var ie=v.annotations[m];_.isPlainObject(ie)&&(ie.ref&&(ie.ref==="paper"?(ie.xref="paper",ie.yref="paper"):ie.ref==="data"&&(ie.xref="x",ie.yref="y"),delete ie.ref),n(ie,"xref"),n(ie,"yref"))}var te=Array.isArray(v.shapes)?v.shapes.length:0;for(m=0;m<te;m++){var J=v.shapes[m];_.isPlainObject(J)&&(n(J,"xref"),n(J,"yref"))}var X=Array.isArray(v.images)?v.images.length:0;for(m=0;m<X;m++){var ee=v.images[m];_.isPlainObject(ee)&&(n(ee,"xref"),n(ee,"yref"))}var re=v.legend;return re&&(re.x>3?(re.x=1.02,re.xanchor="left"):re.x<-2&&(re.x=-.02,re.xanchor="right"),re.y>3?(re.y=1.02,re.yanchor="bottom"):re.y<-2&&(re.y=-.02,re.yanchor="top")),a(v),v.dragmode==="rotate"&&(v.dragmode="orbit"),l.clean(v),v.template&&v.template.layout&&E.cleanLayout(v.template.layout),v},E.cleanData=function(v){for(var m=0;m<v.length;m++){var x,T=v[m];if(T.type==="histogramy"&&"xbins"in T&&!("ybins"in T)&&(T.ybins=T.xbins,delete T.xbins),T.error_y&&"opacity"in T.error_y){var d=l.defaults,M=T.error_y.color||(r(T,"bar")?l.defaultLine:d[m%d.length]);T.error_y.color=l.addOpacity(l.rgb(M),l.opacity(M)*T.error_y.opacity),delete T.error_y.opacity}if("bardir"in T&&(T.bardir!=="h"||!r(T,"bar")&&T.type.substr(0,9)!=="histogram"||(T.orientation="h",E.swapXYData(T)),delete T.bardir),T.type==="histogramy"&&E.swapXYData(T),T.type!=="histogramx"&&T.type!=="histogramy"||(T.type="histogram"),"scl"in T&&!("colorscale"in T)&&(T.colorscale=T.scl,delete T.scl),"reversescl"in T&&!("reversescale"in T)&&(T.reversescale=T.reversescl,delete T.reversescl),T.xaxis&&(T.xaxis=t(T.xaxis,"x")),T.yaxis&&(T.yaxis=t(T.yaxis,"y")),r(T,"gl3d")&&T.scene&&(T.scene=y.subplotsRegistry.gl3d.cleanId(T.scene)),!r(T,"pie-like")&&!r(T,"bar-like"))if(Array.isArray(T.textposition))for(x=0;x<T.textposition.length;x++)T.textposition[x]=p(T.textposition[x]);else T.textposition&&(T.textposition=p(T.textposition));var A=i.getModule(T);if(A&&A.colorbar){var C=A.colorbar.container,P=C?T[C]:T;P&&P.colorscale&&(P.colorscale==="YIGnBu"&&(P.colorscale="YlGnBu"),P.colorscale==="YIOrRd"&&(P.colorscale="YlOrRd"))}if(T.type==="surface"&&_.isPlainObject(T.contours)){var O=["x","y","z"];for(x=0;x<O.length;x++){var z=T.contours[O[x]];_.isPlainObject(z)&&(z.highlightColor&&(z.highlightcolor=z.highlightColor,delete z.highlightColor),z.highlightWidth&&(z.highlightwidth=z.highlightWidth,delete z.highlightWidth))}}if(T.type==="candlestick"||T.type==="ohlc"){var B=(T.increasing||{}).showlegend!==!1,Y=(T.decreasing||{}).showlegend!==!1,D=s(T.increasing),G=s(T.decreasing);if(D!==!1&&G!==!1){var V=u(D,G,B,Y);V&&(T.name=V)}else!D&&!G||T.name||(T.name=D||G)}if(Array.isArray(T.transforms)){var j=T.transforms;for(x=0;x<j.length;x++){var W=j[x];if(_.isPlainObject(W))switch(W.type){case"filter":W.filtersrc&&(W.target=W.filtersrc,delete W.filtersrc),W.calendar&&(W.valuecalendar||(W.valuecalendar=W.calendar),delete W.calendar);break;case"groupby":if(W.styles=W.styles||W.style,W.styles&&!Array.isArray(W.styles)){var Z=W.styles,ie=Object.keys(Z);W.styles=[];for(var te=0;te<ie.length;te++)W.styles.push({target:ie[te],value:Z[ie[te]]})}}}}c(T,"line")&&delete T.line,"marker"in T&&(c(T.marker,"line")&&delete T.marker.line,c(T,"marker")&&delete T.marker),l.clean(T),T.autobinx&&(delete T.autobinx,delete T.xbins),T.autobiny&&(delete T.autobiny,delete T.ybins),a(T),T.colorbar&&a(T.colorbar),T.marker&&T.marker.colorbar&&a(T.marker.colorbar),T.line&&T.line.colorbar&&a(T.line.colorbar),T.aaxis&&a(T.aaxis),T.baxis&&a(T.baxis)}},E.swapXYData=function(v){var m;if(_.swapAttrs(v,["?","?0","d?","?bins","nbins?","autobin?","?src","error_?"]),Array.isArray(v.z)&&Array.isArray(v.z[0])&&(v.transpose?delete v.transpose:v.transpose=!0),v.error_x&&v.error_y){var x=v.error_y,T="copy_ystyle"in x?x.copy_ystyle:!(x.color||x.thickness||x.width);_.swapAttrs(v,["error_?.copy_ystyle"]),T&&_.swapAttrs(v,["error_?.color","error_?.thickness","error_?.width"])}if(typeof v.hoverinfo=="string"){var d=v.hoverinfo.split("+");for(m=0;m<d.length;m++)d[m]==="x"?d[m]="y":d[m]==="y"&&(d[m]="x");v.hoverinfo=d.join("+")}},E.coerceTraceIndices=function(v,m){if(w(m))return[m];if(!Array.isArray(m)||!m.length)return v.data.map(function(d,M){return M});if(Array.isArray(m)){for(var x=[],T=0;T<m.length;T++)_.isIndex(m[T],v.data.length)?x.push(m[T]):_.warn("trace index (",m[T],") is not a number or is out of bounds");return x}return m},E.manageArrayContainers=function(v,m,x){var T=v.obj,d=v.parts,M=d.length,A=d[M-1],C=w(A);if(C&&m===null){var P=d.slice(0,M-1).join(".");_.nestedProperty(T,P).get().splice(A,1)}else C&&v.get()===void 0&&v.get()===void 0&&(x[v.astr]=null),v.set(m)};var b=/(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/;function g(v){var m=v.search(b);if(m>0)return v.substr(0,m)}E.hasParent=function(v,m){for(var x=g(m);x;){if(x in v)return!0;x=g(x)}return!1};var f=["x","y","z"];E.clearAxisTypes=function(v,m,x){for(var T=0;T<m.length;T++)for(var d=v._fullData[T],M=0;M<3;M++){var A=o(v,d,f[M]);if(A&&A.type!=="log"){var C=A._name,P=A._id.substr(1);if(P.substr(0,5)==="scene"){if(x[P]!==void 0)continue;C=P+"."+C}var O=C+".type";x[C]===void 0&&x[O]===void 0&&_.nestedProperty(v.layout,O).set(null)}}}},10641:function(R,E,e){var w=e(72391);E._doPlot=w._doPlot,E.newPlot=w.newPlot,E.restyle=w.restyle,E.relayout=w.relayout,E.redraw=w.redraw,E.update=w.update,E._guiRestyle=w._guiRestyle,E._guiRelayout=w._guiRelayout,E._guiUpdate=w._guiUpdate,E._storeDirectGUIEdit=w._storeDirectGUIEdit,E.react=w.react,E.extendTraces=w.extendTraces,E.prependTraces=w.prependTraces,E.addTraces=w.addTraces,E.deleteTraces=w.deleteTraces,E.moveTraces=w.moveTraces,E.purge=w.purge,E.addFrames=w.addFrames,E.deleteFrames=w.deleteFrames,E.animate=w.animate,E.setPlotConfig=w.setPlotConfig,E.toImage=e(403),E.validate=e(84936),E.downloadImage=e(7239);var k=e(96318);E.makeTemplate=k.makeTemplate,E.validateTemplate=k.validateTemplate},6611:function(R,E,e){var w=e(41965),k=e(64213),i=e(47769),_=e(65888).sorterAsc,y=e(73972);E.containerArrayMatch=e(14458);var h=E.isAddVal=function(t){return t==="add"||w(t)},l=E.isRemoveVal=function(t){return t===null||t==="remove"};E.applyContainerArrayChanges=function(t,o,r,n,a){var s=o.astr,u=y.getComponentMethod(s,"supplyLayoutDefaults"),p=y.getComponentMethod(s,"draw"),c=y.getComponentMethod(s,"drawOne"),b=n.replot||n.recalc||u===k||p===k,g=t.layout,f=t._fullLayout;if(r[""]){Object.keys(r).length>1&&i.warn("Full array edits are incompatible with other edits",s);var v=r[""][""];if(l(v))o.set(null);else{if(!Array.isArray(v))return i.warn("Unrecognized full array edit value",s,v),!0;o.set(v)}return!b&&(u(g,f),p(t),!0)}var m,x,T,d,M,A,C,P,O=Object.keys(r).map(Number).sort(_),z=o.get(),B=z||[],Y=a(f,s).get(),D=[],G=-1,V=B.length;for(m=0;m<O.length;m++)if(d=r[T=O[m]],M=Object.keys(d),A=d[""],C=h(A),T<0||T>B.length-(C?0:1))i.warn("index out of range",s,T);else if(A!==void 0)M.length>1&&i.warn("Insertion & removal are incompatible with edits to the same index.",s,T),l(A)?D.push(T):C?(A==="add"&&(A={}),B.splice(T,0,A),Y&&Y.splice(T,0,{})):i.warn("Unrecognized full object edit value",s,T,A),G===-1&&(G=T);else for(x=0;x<M.length;x++)P=s+"["+T+"].",a(B[T],M[x],P).set(d[M[x]]);for(m=D.length-1;m>=0;m--)B.splice(D[m],1),Y&&Y.splice(D[m],1);if(B.length?z||o.set(B):o.set(null),b)return!1;if(u(g,f),c!==k){var j;if(G===-1)j=O;else{for(V=Math.max(B.length,V),j=[],m=0;m<O.length&&!((T=O[m])>=G);m++)j.push(T);for(m=G;m<V;m++)j.push(m)}for(m=0;m<j.length;m++)c(t,j[m])}else p(t);return!0}},72391:function(R,E,e){var w=e(39898),k=e(92770),i=e(57035),_=e(71828),y=_.nestedProperty,h=e(11086),l=e(10847),t=e(73972),o=e(86281),r=e(74875),n=e(89298),a=e(91424),s=e(7901),u=e(4305).initInteractions,p=e(77922),c=e(47322).clearOutline,b=e(72075).dfltConfig,g=e(6611),f=e(58377),v=e(61549),m=e(30962),x=e(85555).AX_NAME_PATTERN,T=0;function d(ae){var be=ae._fullLayout;be._redrawFromAutoMarginCount?be._redrawFromAutoMarginCount--:ae.emit("plotly_afterplot")}function M(ae,be){try{ae._fullLayout._paper.style("background",be)}catch(Ie){_.error(Ie)}}function A(ae,be){M(ae,s.combine(be,"white"))}function C(ae,be){if(!ae._context){ae._context=_.extendDeep({},b);var Ie=w.select("base");ae._context._baseUrl=Ie.size()&&Ie.attr("href")?window.location.href.split("#")[0]:""}var Te,Ne,qe,ve=ae._context;if(be){for(Ne=Object.keys(be),Te=0;Te<Ne.length;Te++)(qe=Ne[Te])!=="editable"&&qe!=="edits"&&qe in ve&&(qe==="setBackground"&&be[qe]==="opaque"?ve[qe]=A:ve[qe]=be[qe]);be.plot3dPixelRatio&&!ve.plotGlPixelRatio&&(ve.plotGlPixelRatio=ve.plot3dPixelRatio);var Ce=be.editable;if(Ce!==void 0)for(ve.editable=Ce,Ne=Object.keys(ve.edits),Te=0;Te<Ne.length;Te++)ve.edits[Ne[Te]]=Ce;if(be.edits)for(Ne=Object.keys(be.edits),Te=0;Te<Ne.length;Te++)(qe=Ne[Te])in ve.edits&&(ve.edits[qe]=be.edits[qe]);ve._exportedPlot=be._exportedPlot}ve.staticPlot&&(ve.editable=!1,ve.edits={},ve.autosizable=!1,ve.scrollZoom=!1,ve.doubleClick=!1,ve.showTips=!1,ve.showLink=!1,ve.displayModeBar=!1),ve.displayModeBar!=="hover"||i||(ve.displayModeBar=!0),ve.setBackground!=="transparent"&&typeof ve.setBackground=="function"||(ve.setBackground=M),ve._hasZeroHeight=ve._hasZeroHeight||ae.clientHeight===0,ve._hasZeroWidth=ve._hasZeroWidth||ae.clientWidth===0;var Ae=ve.scrollZoom,ze=ve._scrollZoom={};if(Ae===!0)ze.cartesian=1,ze.gl3d=1,ze.geo=1,ze.mapbox=1;else if(typeof Ae=="string"){var Ue=Ae.split("+");for(Te=0;Te<Ue.length;Te++)ze[Ue[Te]]=1}else Ae!==!1&&(ze.gl3d=1,ze.geo=1,ze.mapbox=1)}function P(ae,be){var Ie,Te,Ne=be+1,qe=[];for(Ie=0;Ie<ae.length;Ie++)(Te=ae[Ie])<0?qe.push(Ne+Te):qe.push(Te);return qe}function O(ae,be,Ie){var Te,Ne;for(Te=0;Te<be.length;Te++){if((Ne=be[Te])!==parseInt(Ne,10))throw new Error("all values in "+Ie+" must be integers");if(Ne>=ae.data.length||Ne<-ae.data.length)throw new Error(Ie+" must be valid indices for gd.data.");if(be.indexOf(Ne,Te+1)>-1||Ne>=0&&be.indexOf(-ae.data.length+Ne)>-1||Ne<0&&be.indexOf(ae.data.length+Ne)>-1)throw new Error("each index in "+Ie+" must be unique.")}}function z(ae,be,Ie){if(!Array.isArray(ae.data))throw new Error("gd.data must be an array.");if(be===void 0)throw new Error("currentIndices is a required argument.");if(Array.isArray(be)||(be=[be]),O(ae,be,"currentIndices"),Ie===void 0||Array.isArray(Ie)||(Ie=[Ie]),Ie!==void 0&&O(ae,Ie,"newIndices"),Ie!==void 0&&be.length!==Ie.length)throw new Error("current and new indices must be of equal length.")}function B(ae,be,Ie,Te,Ne){(function(Ye,$e,rt,ht){var nt=_.isPlainObject(ht);if(!Array.isArray(Ye.data))throw new Error("gd.data must be an array");if(!_.isPlainObject($e))throw new Error("update must be a key:value object");if(rt===void 0)throw new Error("indices must be an integer or array of integers");for(var bt in O(Ye,rt,"indices"),$e){if(!Array.isArray($e[bt])||$e[bt].length!==rt.length)throw new Error("attribute "+bt+" must be an array of length equal to indices array length");if(nt&&(!(bt in ht)||!Array.isArray(ht[bt])||ht[bt].length!==$e[bt].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")}})(ae,be,Ie,Te);for(var qe=function(Ye,$e,rt,ht){var nt,bt,wt,ut,lt,Tt=_.isPlainObject(ht),Et=[];for(var St in Array.isArray(rt)||(rt=[rt]),rt=P(rt,Ye.data.length-1),$e)for(var Ft=0;Ft<rt.length;Ft++){if(nt=Ye.data[rt[Ft]],bt=(wt=y(nt,St)).get(),ut=$e[St][Ft],!_.isArrayOrTypedArray(ut))throw new Error("attribute: "+St+" index: "+Ft+" must be an array");if(!_.isArrayOrTypedArray(bt))throw new Error("cannot extend missing or non-array attribute: "+St);if(bt.constructor!==ut.constructor)throw new Error("cannot extend array with an array of a different type: "+St);lt=Tt?ht[St][Ft]:ht,k(lt)||(lt=-1),Et.push({prop:wt,target:bt,insert:ut,maxp:Math.floor(lt)})}return Et}(ae,be,Ie,Te),ve={},Ce={},Ae=0;Ae<qe.length;Ae++){var ze=qe[Ae].prop,Ue=qe[Ae].maxp,Ve=Ne(qe[Ae].target,qe[Ae].insert,Ue);ze.set(Ve[0]),Array.isArray(ve[ze.astr])||(ve[ze.astr]=[]),ve[ze.astr].push(Ve[1]),Array.isArray(Ce[ze.astr])||(Ce[ze.astr]=[]),Ce[ze.astr].push(qe[Ae].target.length)}return{update:ve,maxPoints:Ce}}function Y(ae,be){var Ie=new ae.constructor(ae.length+be.length);return Ie.set(ae),Ie.set(be,ae.length),Ie}function D(ae,be,Ie,Te){ae=_.getGraphDiv(ae),f.clearPromiseQueue(ae);var Ne={};if(typeof be=="string")Ne[be]=Ie;else{if(!_.isPlainObject(be))return _.warn("Restyle fail.",be,Ie,Te),Promise.reject();Ne=_.extendFlat({},be),Te===void 0&&(Te=Ie)}Object.keys(Ne).length&&(ae.changed=!0);var qe=f.coerceTraceIndices(ae,Te),ve=W(ae,Ne,qe),Ce=ve.flags;Ce.calc&&(ae.calcdata=void 0),Ce.clearAxisTypes&&f.clearAxisTypes(ae,qe,{});var Ae=[];Ce.fullReplot?Ae.push(E._doPlot):(Ae.push(r.previousPromises),r.supplyDefaults(ae),Ce.markerSize&&(r.doCalcdata(ae),J(Ae)),Ce.style&&Ae.push(v.doTraceStyle),Ce.colorbars&&Ae.push(v.doColorBars),Ae.push(d)),Ae.push(r.rehover,r.redrag,r.reselect),l.add(ae,D,[ae,ve.undoit,ve.traces],D,[ae,ve.redoit,ve.traces]);var ze=_.syncOrAsync(Ae,ae);return ze&&ze.then||(ze=Promise.resolve()),ze.then(function(){return ae.emit("plotly_restyle",ve.eventData),ae})}function G(ae){return ae===void 0?null:ae}function V(ae,be){return be?function(Ie,Te,Ne){var qe=y(Ie,Te),ve=qe.set;return qe.set=function(Ce){j((Ne||"")+Te,qe.get(),Ce,ae),ve(Ce)},qe}:y}function j(ae,be,Ie,Te){if(Array.isArray(be)||Array.isArray(Ie))for(var Ne=Array.isArray(be)?be:[],qe=Array.isArray(Ie)?Ie:[],ve=Math.max(Ne.length,qe.length),Ce=0;Ce<ve;Ce++)j(ae+"["+Ce+"]",Ne[Ce],qe[Ce],Te);else if(_.isPlainObject(be)||_.isPlainObject(Ie)){var Ae=_.isPlainObject(be)?be:{},ze=_.isPlainObject(Ie)?Ie:{},Ue=_.extendFlat({},Ae,ze);for(var Ve in Ue)j(ae+"."+Ve,Ae[Ve],ze[Ve],Te)}else Te[ae]===void 0&&(Te[ae]=G(be))}function W(ae,be,Ie){var Te,Ne=ae._fullLayout,qe=ae._fullData,ve=ae.data,Ce=Ne._guiEditing,Ae=V(Ne._preGUI,Ce),ze=_.extendDeepAll({},be);Z(be);var Ue,Ve=m.traceFlags(),Ye={},$e={};function rt(){return Ie.map(function(){})}function ht(Ut){var tn=n.id2name(Ut);Ue.indexOf(tn)===-1&&Ue.push(tn)}function nt(Ut){return"LAYOUT"+Ut+".autorange"}function bt(Ut){return"LAYOUT"+Ut+".range"}function wt(Ut){for(var tn=Ut;tn<qe.length;tn++)if(qe[tn]._input===ve[Ut])return qe[tn]}function ut(Ut,tn,Xt){if(Array.isArray(Ut))Ut.forEach(function(vn){ut(vn,tn,Xt)});else if(!(Ut in be)&&!f.hasParent(be,Ut)){var Qt;if(Ut.substr(0,6)==="LAYOUT")Qt=Ae(ae.layout,Ut.replace("LAYOUT",""));else{var Gt=Ie[Xt];Qt=V(Ne._tracePreGUI[wt(Gt)._fullInput.uid],Ce)(ve[Gt],Ut)}Ut in $e||($e[Ut]=rt()),$e[Ut][Xt]===void 0&&($e[Ut][Xt]=G(Qt.get())),tn!==void 0&&Qt.set(tn)}}function lt(Ut){return function(tn){return qe[tn][Ut]}}function Tt(Ut){return function(tn,Xt){return tn===!1?qe[Ie[Xt]][Ut]:null}}for(var Et in be){if(f.hasParent(be,Et))throw new Error("cannot set "+Et+" and a parent attribute simultaneously");var St,Ft,zt,Je,et,Ze,Qe=be[Et];if(Et!=="autobinx"&&Et!=="autobiny"||(Et=Et.charAt(Et.length-1)+"bins",Qe=Array.isArray(Qe)?Qe.map(Tt(Et)):Qe===!1?Ie.map(lt(Et)):null),Ye[Et]=Qe,Et.substr(0,6)!=="LAYOUT"){for($e[Et]=rt(),Te=0;Te<Ie.length;Te++)if(St=ve[Ie[Te]],Ft=wt(Ie[Te]),Je=(zt=V(Ne._tracePreGUI[Ft._fullInput.uid],Ce)(St,Et)).get(),(et=Array.isArray(Qe)?Qe[Te%Qe.length]:Qe)!==void 0){var st=zt.parts[zt.parts.length-1],ft=Et.substr(0,Et.length-st.length-1),Be=ft?ft+".":"",je=ft?y(Ft,ft).get():Ft;if((Ze=o.getTraceValObject(Ft,zt.parts))&&Ze.impliedEdits&&et!==null)for(var at in Ze.impliedEdits)ut(_.relativeAttr(Et,at),Ze.impliedEdits[at],Te);else if(st!=="thicknessmode"&&st!=="lenmode"||Je===et||et!=="fraction"&&et!=="pixels"||!je){if(Et==="type"&&(et==="pie"!=(Je==="pie")||et==="funnelarea"!=(Je==="funnelarea"))){var ot="x",xt="y";et!=="bar"&&Je!=="bar"||St.orientation!=="h"||(ot="y",xt="x"),_.swapAttrs(St,["?","?src"],"labels",ot),_.swapAttrs(St,["d?","?0"],"label",ot),_.swapAttrs(St,["?","?src"],"values",xt),Je==="pie"||Je==="funnelarea"?(y(St,"marker.color").set(y(St,"marker.colors").get()),Ne._pielayer.selectAll("g.trace").remove()):t.traceIs(St,"cartesian")&&y(St,"marker.colors").set(y(St,"marker.color").get())}}else{var yt=Ne._size,_t=je.orient,gt=_t==="top"||_t==="bottom";if(st==="thicknessmode"){var Ct=gt?yt.h:yt.w;ut(Be+"thickness",je.thickness*(et==="fraction"?1/Ct:Ct),Te)}else{var dt=gt?yt.w:yt.h;ut(Be+"len",je.len*(et==="fraction"?1/dt:dt),Te)}}if($e[Et][Te]=G(Je),["swapxy","swapxyaxes","orientation","orientationaxes"].indexOf(Et)!==-1){if(Et==="orientation"){zt.set(et);var vt=St.x&&!St.y?"h":"v";if((zt.get()||vt)===Ft.orientation)continue}else Et==="orientationaxes"&&(St.orientation={v:"h",h:"v"}[Ft.orientation]);f.swapXYData(St),Ve.calc=Ve.clearAxisTypes=!0}else r.dataArrayContainers.indexOf(zt.parts[0])!==-1?(f.manageArrayContainers(zt,et,$e),Ve.calc=!0):(Ze?Ze.arrayOk&&!t.traceIs(Ft,"regl")&&(_.isArrayOrTypedArray(et)||_.isArrayOrTypedArray(Je))?Ve.calc=!0:m.update(Ve,Ze):Ve.calc=!0,zt.set(et))}if(["swapxyaxes","orientationaxes"].indexOf(Et)!==-1&&n.swap(ae,Ie),Et==="orientationaxes"){var At=y(ae.layout,"hovermode"),Bt=At.get();Bt==="x"?At.set("y"):Bt==="y"?At.set("x"):Bt==="x unified"?At.set("y unified"):Bt==="y unified"&&At.set("x unified")}if(["orientation","type"].indexOf(Et)!==-1){for(Ue=[],Te=0;Te<Ie.length;Te++){var jt=ve[Ie[Te]];t.traceIs(jt,"cartesian")&&(ht(jt.xaxis||"x"),ht(jt.yaxis||"y"))}ut(Ue.map(nt),!0,0),ut(Ue.map(bt),[0,1],0)}}else zt=Ae(ae.layout,Et.replace("LAYOUT","")),$e[Et]=[G(zt.get())],zt.set(Array.isArray(Qe)?Qe[0]:Qe),Ve.calc=!0}return(Ve.calc||Ve.plot)&&(Ve.fullReplot=!0),{flags:Ve,undoit:$e,redoit:Ye,traces:Ie,eventData:_.extendDeepNoArrays([],[ze,Ie])}}function Z(ae){var be,Ie,Te,Ne=_.counterRegex("axis",".title",!1,!1),qe=/colorbar\.title$/,ve=Object.keys(ae);for(be=0;be<ve.length;be++)Ie=ve[be],Te=ae[Ie],Ie!=="title"&&!Ne.test(Ie)&&!qe.test(Ie)||typeof Te!="string"&&typeof Te!="number"?Ie.indexOf("titlefont")>-1&&Ie.indexOf("grouptitlefont")===-1?Ce(Ie,Ie.replace("titlefont","title.font")):Ie.indexOf("titleposition")>-1?Ce(Ie,Ie.replace("titleposition","title.position")):Ie.indexOf("titleside")>-1?Ce(Ie,Ie.replace("titleside","title.side")):Ie.indexOf("titleoffset")>-1&&Ce(Ie,Ie.replace("titleoffset","title.offset")):Ce(Ie,Ie.replace("title","title.text"));function Ce(Ae,ze){ae[ze]=ae[Ae],delete ae[Ae]}}function ie(ae,be,Ie){ae=_.getGraphDiv(ae),f.clearPromiseQueue(ae);var Te={};if(typeof be=="string")Te[be]=Ie;else{if(!_.isPlainObject(be))return _.warn("Relayout fail.",be,Ie),Promise.reject();Te=_.extendFlat({},be)}Object.keys(Te).length&&(ae.changed=!0);var Ne=oe(ae,Te),qe=Ne.flags;qe.calc&&(ae.calcdata=void 0);var ve=[r.previousPromises];qe.layoutReplot?ve.push(v.layoutReplot):Object.keys(Te).length&&(te(ae,qe,Ne)||r.supplyDefaults(ae),qe.legend&&ve.push(v.doLegend),qe.layoutstyle&&ve.push(v.layoutStyles),qe.axrange&&J(ve,Ne.rangesAltered),qe.ticks&&ve.push(v.doTicksRelayout),qe.modebar&&ve.push(v.doModeBar),qe.camera&&ve.push(v.doCamera),qe.colorbars&&ve.push(v.doColorBars),ve.push(d)),ve.push(r.rehover,r.redrag,r.reselect),l.add(ae,ie,[ae,Ne.undoit],ie,[ae,Ne.redoit]);var Ce=_.syncOrAsync(ve,ae);return Ce&&Ce.then||(Ce=Promise.resolve(ae)),Ce.then(function(){return ae.emit("plotly_relayout",Ne.eventData),ae})}function te(ae,be,Ie){var Te=ae._fullLayout;if(!be.axrange)return!1;for(var Ne in be)if(Ne!=="axrange"&&be[Ne])return!1;for(var qe in Ie.rangesAltered){var ve=n.id2name(qe),Ce=ae.layout[ve],Ae=Te[ve];if(Ae.autorange=Ce.autorange,Ce.range&&(Ae.range=Ce.range.slice()),Ae.cleanRange(),Ae._matchGroup){for(var ze in Ae._matchGroup)if(ze!==qe){var Ue=Te[n.id2name(ze)];Ue.autorange=Ae.autorange,Ue.range=Ae.range.slice(),Ue._input.range=Ae.range.slice()}}}return!0}function J(ae,be){var Ie=be?function(Te){var Ne=[];for(var qe in be){var ve=n.getFromId(Te,qe);if(Ne.push(qe),(ve.ticklabelposition||"").indexOf("inside")!==-1&&ve._anchorAxis&&Ne.push(ve._anchorAxis._id),ve._matchGroup)for(var Ce in ve._matchGroup)be[Ce]||Ne.push(Ce)}return n.draw(Te,Ne,{skipTitle:!0})}:function(Te){return n.draw(Te,"redraw")};ae.push(c,v.doAutoRangeAndConstraints,Ie,v.drawData,v.finalDraw)}var X=/^[xyz]axis[0-9]*\.range(\[[0|1]\])?$/,ee=/^[xyz]axis[0-9]*\.autorange$/,re=/^[xyz]axis[0-9]*\.domain(\[[0|1]\])?$/;function oe(ae,be){var Ie,Te,Ne,qe=ae.layout,ve=ae._fullLayout,Ce=ve._guiEditing,Ae=V(ve._preGUI,Ce),ze=Object.keys(be),Ue=n.list(ae),Ve=_.extendDeepAll({},be),Ye={};for(Z(be),ze=Object.keys(be),Te=0;Te<ze.length;Te++)if(ze[Te].indexOf("allaxes")===0){for(Ne=0;Ne<Ue.length;Ne++){var $e=Ue[Ne]._id.substr(1),rt=$e.indexOf("scene")!==-1?$e+".":"",ht=ze[Te].replace("allaxes",rt+Ue[Ne]._name);be[ht]||(be[ht]=be[ze[Te]])}delete be[ze[Te]]}var nt=m.layoutFlags(),bt={},wt={};function ut(Gt,vn){if(Array.isArray(Gt))Gt.forEach(function(dn){ut(dn,vn)});else if(!(Gt in be)&&!f.hasParent(be,Gt)){var Tn=Ae(qe,Gt);Gt in wt||(wt[Gt]=G(Tn.get())),vn!==void 0&&Tn.set(vn)}}var lt,Tt={};function Et(Gt){var vn=n.name2id(Gt.split(".")[0]);return Tt[vn]=1,vn}for(var St in be){if(f.hasParent(be,St))throw new Error("cannot set "+St+" and a parent attribute simultaneously");for(var Ft=Ae(qe,St),zt=be[St],Je=Ft.parts.length-1;Je>0&&typeof Ft.parts[Je]!="string";)Je--;var et=Ft.parts[Je],Ze=Ft.parts[Je-1]+"."+et,Qe=Ft.parts.slice(0,Je).join("."),st=y(ae.layout,Qe).get(),ft=y(ve,Qe).get(),Be=Ft.get();if(zt!==void 0){bt[St]=zt,wt[St]=et==="reverse"?zt:G(Be);var je=o.getLayoutValObject(ve,Ft.parts);if(je&&je.impliedEdits&&zt!==null)for(var at in je.impliedEdits)ut(_.relativeAttr(St,at),je.impliedEdits[at]);if(["width","height"].indexOf(St)!==-1)if(zt){ut("autosize",null);var ot=St==="height"?"width":"height";ut(ot,ve[ot])}else ve[St]=ae._initialAutoSize[St];else if(St==="autosize")ut("width",zt?null:ve.width),ut("height",zt?null:ve.height);else if(Ze.match(X))Et(Ze),y(ve,Qe+"._inputRange").set(null);else if(Ze.match(ee)){Et(Ze),y(ve,Qe+"._inputRange").set(null);var xt=y(ve,Qe).get();xt._inputDomain&&(xt._input.domain=xt._inputDomain.slice())}else Ze.match(re)&&y(ve,Qe+"._inputDomain").set(null);if(et==="type"){lt=st;var yt=ft.type==="linear"&&zt==="log",_t=ft.type==="log"&&zt==="linear";if(yt||_t){if(lt&<.range)if(ft.autorange)yt&&(lt.range=lt.range[1]>lt.range[0]?[1,2]:[2,1]);else{var gt=lt.range[0],Ct=lt.range[1];yt?(gt<=0&&Ct<=0&&ut(Qe+".autorange",!0),gt<=0?gt=Ct/1e6:Ct<=0&&(Ct=gt/1e6),ut(Qe+".range[0]",Math.log(gt)/Math.LN10),ut(Qe+".range[1]",Math.log(Ct)/Math.LN10)):(ut(Qe+".range[0]",Math.pow(10,gt)),ut(Qe+".range[1]",Math.pow(10,Ct)))}else ut(Qe+".autorange",!0);Array.isArray(ve._subplots.polar)&&ve._subplots.polar.length&&ve[Ft.parts[0]]&&Ft.parts[1]==="radialaxis"&&delete ve[Ft.parts[0]]._subplot.viewInitial["radialaxis.range"],t.getComponentMethod("annotations","convertCoords")(ae,ft,zt,ut),t.getComponentMethod("images","convertCoords")(ae,ft,zt,ut)}else ut(Qe+".autorange",!0),ut(Qe+".range",null);y(ve,Qe+"._inputRange").set(null)}else if(et.match(x)){var dt=y(ve,St).get(),vt=(zt||{}).type;vt&&vt!=="-"||(vt="linear"),t.getComponentMethod("annotations","convertCoords")(ae,dt,vt,ut),t.getComponentMethod("images","convertCoords")(ae,dt,vt,ut)}var At=g.containerArrayMatch(St);if(At){Ie=At.array,Te=At.index;var Bt=At.property,jt=je||{editType:"calc"};Te!==""&&Bt===""&&(g.isAddVal(zt)?wt[St]=null:g.isRemoveVal(zt)?wt[St]=(y(qe,Ie).get()||[])[Te]:_.warn("unrecognized full object value",be)),m.update(nt,jt),Ye[Ie]||(Ye[Ie]={});var Ut=Ye[Ie][Te];Ut||(Ut=Ye[Ie][Te]={}),Ut[Bt]=zt,delete be[St]}else et==="reverse"?(st.range?st.range.reverse():(ut(Qe+".autorange",!0),st.range=[1,0]),ft.autorange?nt.calc=!0:nt.plot=!0):(St==="dragmode"&&(zt===!1&&Be!==!1||zt!==!1&&Be===!1)||ve._has("scatter-like")&&ve._has("regl")&&St==="dragmode"&&(zt==="lasso"||zt==="select")&&Be!=="lasso"&&Be!=="select"||ve._has("gl2d")?nt.plot=!0:je?m.update(nt,je):nt.calc=!0,Ft.set(zt))}}for(Ie in Ye)g.applyContainerArrayChanges(ae,Ae(qe,Ie),Ye[Ie],nt,Ae)||(nt.plot=!0);for(var tn in Tt){var Xt=(lt=n.getFromId(ae,tn))&<._constraintGroup;if(Xt)for(var Qt in nt.calc=!0,Xt)Tt[Qt]||(n.getFromId(ae,Qt)._constraintShrinkable=!0)}return(ue(ae)||be.height||be.width)&&(nt.plot=!0),(nt.plot||nt.calc)&&(nt.layoutReplot=!0),{flags:nt,rangesAltered:Tt,undoit:wt,redoit:bt,eventData:Ve}}function ue(ae){var be=ae._fullLayout,Ie=be.width,Te=be.height;return ae.layout.autosize&&r.plotAutoSize(ae,ae.layout,be),be.width!==Ie||be.height!==Te}function ce(ae,be,Ie,Te){ae=_.getGraphDiv(ae),f.clearPromiseQueue(ae),_.isPlainObject(be)||(be={}),_.isPlainObject(Ie)||(Ie={}),Object.keys(be).length&&(ae.changed=!0),Object.keys(Ie).length&&(ae.changed=!0);var Ne=f.coerceTraceIndices(ae,Te),qe=W(ae,_.extendFlat({},be),Ne),ve=qe.flags,Ce=oe(ae,_.extendFlat({},Ie)),Ae=Ce.flags;(ve.calc||Ae.calc)&&(ae.calcdata=void 0),ve.clearAxisTypes&&f.clearAxisTypes(ae,Ne,Ie);var ze=[];Ae.layoutReplot?ze.push(v.layoutReplot):ve.fullReplot?ze.push(E._doPlot):(ze.push(r.previousPromises),te(ae,Ae,Ce)||r.supplyDefaults(ae),ve.style&&ze.push(v.doTraceStyle),(ve.colorbars||Ae.colorbars)&&ze.push(v.doColorBars),Ae.legend&&ze.push(v.doLegend),Ae.layoutstyle&&ze.push(v.layoutStyles),Ae.axrange&&J(ze,Ce.rangesAltered),Ae.ticks&&ze.push(v.doTicksRelayout),Ae.modebar&&ze.push(v.doModeBar),Ae.camera&&ze.push(v.doCamera),ze.push(d)),ze.push(r.rehover,r.redrag,r.reselect),l.add(ae,ce,[ae,qe.undoit,Ce.undoit,qe.traces],ce,[ae,qe.redoit,Ce.redoit,qe.traces]);var Ue=_.syncOrAsync(ze,ae);return Ue&&Ue.then||(Ue=Promise.resolve(ae)),Ue.then(function(){return ae.emit("plotly_update",{data:qe.eventData,layout:Ce.eventData}),ae})}function de(ae){return function(be){be._fullLayout._guiEditing=!0;var Ie=ae.apply(null,arguments);return be._fullLayout._guiEditing=!1,Ie}}var me=[{pattern:/^hiddenlabels/,attr:"legend.uirevision"},{pattern:/^((x|y)axis\d*)\.((auto)?range|title\.text)/},{pattern:/axis\d*\.showspikes$/,attr:"modebar.uirevision"},{pattern:/(hover|drag)mode$/,attr:"modebar.uirevision"},{pattern:/^(scene\d*)\.camera/},{pattern:/^(geo\d*)\.(projection|center|fitbounds)/},{pattern:/^(ternary\d*\.[abc]axis)\.(min|title\.text)$/},{pattern:/^(polar\d*\.radialaxis)\.((auto)?range|angle|title\.text)/},{pattern:/^(polar\d*\.angularaxis)\.rotation/},{pattern:/^(mapbox\d*)\.(center|zoom|bearing|pitch)/},{pattern:/^legend\.(x|y)$/,attr:"editrevision"},{pattern:/^(shapes|annotations)/,attr:"editrevision"},{pattern:/^title\.text$/,attr:"editrevision"}],_e=[{pattern:/^selectedpoints$/,attr:"selectionrevision"},{pattern:/(^|value\.)visible$/,attr:"legend.uirevision"},{pattern:/^dimensions\[\d+\]\.constraintrange/},{pattern:/^node\.(x|y|groups)/},{pattern:/^level$/},{pattern:/(^|value\.)name$/},{pattern:/colorbar\.title\.text$/},{pattern:/colorbar\.(x|y)$/,attr:"editrevision"}];function Se(ae,be){for(var Ie=0;Ie<be.length;Ie++){var Te=be[Ie],Ne=ae.match(Te.pattern);if(Ne){var qe=Ne[1]||"";return{head:qe,tail:ae.substr(qe.length+1),attr:Te.attr}}}}function we(ae,be){var Ie=y(be,ae).get();if(Ie!==void 0)return Ie;var Te=ae.split(".");for(Te.pop();Te.length>1;)if(Te.pop(),(Ie=y(be,Te.join(".")+".uirevision").get())!==void 0)return Ie;return be.uirevision}function xe(ae,be){for(var Ie=0;Ie<be.length;Ie++)if(be[Ie]._fullInput.uid===ae)return Ie;return-1}function De(ae,be,Ie){for(var Te=0;Te<be.length;Te++)if(be[Te].uid===ae)return Te;return!be[Ie]||be[Ie].uid?-1:Ie}function Ee(ae,be){var Ie=_.isPlainObject(ae),Te=Array.isArray(ae);return Ie||Te?(Ie&&_.isPlainObject(be)||Te&&Array.isArray(be))&&JSON.stringify(ae)===JSON.stringify(be):ae===be}function Me(ae,be,Ie,Te){var Ne,qe,ve,Ce=Te.getValObject,Ae=Te.flags,ze=Te.immutable,Ue=Te.inArray,Ve=Te.arrayIndex;function Ye(){var st=Ne.editType;Ue&&st.indexOf("arraydraw")!==-1?_.pushUnique(Ae.arrays[Ue],Ve):(m.update(Ae,Ne),st!=="none"&&Ae.nChanges++,Te.transition&&Ne.anim&&Ae.nChangesAnim++,(X.test(ve)||ee.test(ve))&&(Ae.rangesAltered[Ie[0]]=1),re.test(ve)&&y(be,"_inputDomain").set(null),qe==="datarevision"&&(Ae.newDataRevision=1))}function $e(st){return st.valType==="data_array"||st.arrayOk}for(qe in ae){if(Ae.calc&&!Te.transition)return;var rt=ae[qe],ht=be[qe],nt=Ie.concat(qe);if(ve=nt.join("."),qe.charAt(0)!=="_"&&typeof rt!="function"&&rt!==ht){if((qe==="tick0"||qe==="dtick")&&Ie[0]!=="geo"){var bt=be.tickmode;if(bt==="auto"||bt==="array"||!bt)continue}if((qe!=="range"||!be.autorange)&&(qe!=="zmin"&&qe!=="zmax"||be.type!=="contourcarpet")&&(Ne=Ce(nt))&&(!Ne._compareAsJSON||JSON.stringify(rt)!==JSON.stringify(ht))){var wt,ut=Ne.valType,lt=$e(Ne),Tt=Array.isArray(rt),Et=Array.isArray(ht);if(Tt&&Et){var St="_input_"+qe,Ft=ae[St],zt=be[St];if(Array.isArray(Ft)&&Ft===zt)continue}if(ht===void 0)lt&&Tt?Ae.calc=!0:Ye();else if(Ne._isLinkedToArray){var Je=[],et=!1;Ue||(Ae.arrays[qe]=Je);var Ze=Math.min(rt.length,ht.length),Qe=Math.max(rt.length,ht.length);if(Ze!==Qe){if(Ne.editType!=="arraydraw"){Ye();continue}et=!0}for(wt=0;wt<Ze;wt++)Me(rt[wt],ht[wt],nt.concat(wt),_.extendFlat({inArray:qe,arrayIndex:wt},Te));if(et)for(wt=Ze;wt<Qe;wt++)Je.push(wt)}else!ut&&_.isPlainObject(rt)?Me(rt,ht,nt,Te):lt?Tt&&Et?(ze&&(Ae.calc=!0),(ze||Te.newDataRevision)&&Ye()):Tt!==Et?Ae.calc=!0:Ye():Tt&&Et&&rt.length===ht.length&&String(rt)===String(ht)||Ye()}}}for(qe in be)if(!(qe in ae)&&qe.charAt(0)!=="_"&&typeof be[qe]!="function"){if($e(Ne=Ce(Ie.concat(qe)))&&Array.isArray(be[qe]))return void(Ae.calc=!0);Ye()}}function he(ae,be){var Ie;for(Ie in ae)if(Ie.charAt(0)!=="_"){var Te=ae[Ie],Ne=be[Ie];if(Te!==Ne)if(_.isPlainObject(Te)&&_.isPlainObject(Ne)){if(he(Te,Ne))return!0}else{if(!Array.isArray(Te)||!Array.isArray(Ne)||Te.length!==Ne.length)return!0;for(var qe=0;qe<Te.length;qe++)if(Te[qe]!==Ne[qe]&&(!_.isPlainObject(Te[qe])||!_.isPlainObject(Ne[qe])||he(Te[qe],Ne[qe])))return!0}}}function fe(ae){var be=ae._fullLayout,Ie=ae.getBoundingClientRect();if(!_.equalDomRects(Ie,be._lastBBox)){var Te=be._invTransform=_.inverseTransformMatrix(_.getFullTransformMatrix(ae));be._invScaleX=Math.sqrt(Te[0][0]*Te[0][0]+Te[0][1]*Te[0][1]+Te[0][2]*Te[0][2]),be._invScaleY=Math.sqrt(Te[1][0]*Te[1][0]+Te[1][1]*Te[1][1]+Te[1][2]*Te[1][2]),be._lastBBox=Ie}}E.animate=function(ae,be,Ie){if(ae=_.getGraphDiv(ae),!_.isPlotDiv(ae))throw new Error("This element is not a Plotly plot: "+ae+". It's likely that you've failed to create a plot before animating it. For more details, see https://plotly.com/javascript/animations/");var Te=ae._transitionData;Te._frameQueue||(Te._frameQueue=[]);var Ne=(Ie=r.supplyAnimationDefaults(Ie)).transition,qe=Ie.frame;function ve(ze){return Array.isArray(Ne)?ze>=Ne.length?Ne[0]:Ne[ze]:Ne}function Ce(ze){return Array.isArray(qe)?ze>=qe.length?qe[0]:qe[ze]:qe}function Ae(ze,Ue){var Ve=0;return function(){if(ze&&++Ve===Ue)return ze()}}return Te._frameWaitingCnt===void 0&&(Te._frameWaitingCnt=0),new Promise(function(ze,Ue){function Ve(){ae.emit("plotly_animating"),Te._lastFrameAt=-1/0,Te._timeToNext=0,Te._runningTransitions=0,Te._currentFrame=null;var St=function(){Te._animationRaf=window.requestAnimationFrame(St),Date.now()-Te._lastFrameAt>Te._timeToNext&&function(){Te._currentFrame&&Te._currentFrame.onComplete&&Te._currentFrame.onComplete();var Ft=Te._currentFrame=Te._frameQueue.shift();if(Ft){var zt=Ft.name?Ft.name.toString():null;ae._fullLayout._currentFrame=zt,Te._lastFrameAt=Date.now(),Te._timeToNext=Ft.frameOpts.duration,r.transition(ae,Ft.frame.data,Ft.frame.layout,f.coerceTraceIndices(ae,Ft.frame.traces),Ft.frameOpts,Ft.transitionOpts).then(function(){Ft.onComplete&&Ft.onComplete()}),ae.emit("plotly_animatingframe",{name:zt,frame:Ft.frame,animation:{frame:Ft.frameOpts,transition:Ft.transitionOpts}})}else ae.emit("plotly_animated"),window.cancelAnimationFrame(Te._animationRaf),Te._animationRaf=null}()};St()}var Ye,$e,rt=0;function ht(St){return Array.isArray(Ne)?rt>=Ne.length?St.transitionOpts=Ne[rt]:St.transitionOpts=Ne[0]:St.transitionOpts=Ne,rt++,St}var nt=[],bt=be==null,wt=Array.isArray(be);if(bt||wt||!_.isPlainObject(be)){if(bt||["string","number"].indexOf(typeof be)!==-1)for(Ye=0;Ye<Te._frames.length;Ye++)($e=Te._frames[Ye])&&(bt||String($e.group)===String(be))&&nt.push({type:"byname",name:String($e.name),data:ht({name:$e.name})});else if(wt)for(Ye=0;Ye<be.length;Ye++){var ut=be[Ye];["number","string"].indexOf(typeof ut)!==-1?(ut=String(ut),nt.push({type:"byname",name:ut,data:ht({name:ut})})):_.isPlainObject(ut)&&nt.push({type:"object",data:ht(_.extendFlat({},ut))})}}else nt.push({type:"object",data:ht(_.extendFlat({},be))});for(Ye=0;Ye<nt.length;Ye++)if(($e=nt[Ye]).type==="byname"&&!Te._frameHash[$e.data.name])return _.warn('animate failure: frame not found: "'+$e.data.name+'"'),void Ue();["next","immediate"].indexOf(Ie.mode)!==-1&&function(){if(Te._frameQueue.length!==0){for(;Te._frameQueue.length;){var St=Te._frameQueue.pop();St.onInterrupt&&St.onInterrupt()}ae.emit("plotly_animationinterrupted",[])}}(),Ie.direction==="reverse"&&nt.reverse();var lt=ae._fullLayout._currentFrame;if(lt&&Ie.fromcurrent){var Tt=-1;for(Ye=0;Ye<nt.length;Ye++)if(($e=nt[Ye]).type==="byname"&&$e.name===lt){Tt=Ye;break}if(Tt>0&&Tt<nt.length-1){var Et=[];for(Ye=0;Ye<nt.length;Ye++)$e=nt[Ye],(nt[Ye].type!=="byname"||Ye>Tt)&&Et.push($e);nt=Et}}nt.length>0?function(St){if(St.length!==0){for(var Ft=0;Ft<St.length;Ft++){var zt;zt=St[Ft].type==="byname"?r.computeFrame(ae,St[Ft].name):St[Ft].data;var Je=Ce(Ft),et=ve(Ft);et.duration=Math.min(et.duration,Je.duration);var Ze={frame:zt,name:St[Ft].name,frameOpts:Je,transitionOpts:et};Ft===St.length-1&&(Ze.onComplete=Ae(ze,2),Ze.onInterrupt=Ue),Te._frameQueue.push(Ze)}Ie.mode==="immediate"&&(Te._lastFrameAt=-1/0),Te._animationRaf||Ve()}}(nt):(ae.emit("plotly_animated"),ze())})},E.addFrames=function(ae,be,Ie){if(ae=_.getGraphDiv(ae),be==null)return Promise.resolve();if(!_.isPlotDiv(ae))throw new Error("This element is not a Plotly plot: "+ae+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var Te,Ne,qe,ve,Ce=ae._transitionData._frames,Ae=ae._transitionData._frameHash;if(!Array.isArray(be))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+be);var ze=Ce.length+2*be.length,Ue=[],Ve={};for(Te=be.length-1;Te>=0;Te--)if(_.isPlainObject(be[Te])){var Ye=be[Te].name,$e=(Ae[Ye]||Ve[Ye]||{}).name,rt=be[Te].name,ht=Ae[$e]||Ve[$e];$e&&rt&&typeof rt=="number"&&ht&&T<5&&(T++,_.warn('addFrames: overwriting frame "'+(Ae[$e]||Ve[$e]).name+'" with a frame whose name of type "number" also equates to "'+$e+'". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),T===5&&_.warn("addFrames: This API call has yielded too many of these warnings. For the rest of this call, further warnings about numeric frame names will be suppressed.")),Ve[Ye]={name:Ye},Ue.push({frame:r.supplyFrameDefaults(be[Te]),index:Ie&&Ie[Te]!==void 0&&Ie[Te]!==null?Ie[Te]:ze+Te})}Ue.sort(function(St,Ft){return St.index>Ft.index?-1:St.index<Ft.index?1:0});var nt=[],bt=[],wt=Ce.length;for(Te=Ue.length-1;Te>=0;Te--){if(typeof(Ne=Ue[Te].frame).name=="number"&&_.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!Ne.name)for(;Ae[Ne.name="frame "+ae._transitionData._counter++];);if(Ae[Ne.name]){for(qe=0;qe<Ce.length&&(Ce[qe]||{}).name!==Ne.name;qe++);nt.push({type:"replace",index:qe,value:Ne}),bt.unshift({type:"replace",index:qe,value:Ce[qe]})}else ve=Math.max(0,Math.min(Ue[Te].index,wt)),nt.push({type:"insert",index:ve,value:Ne}),bt.unshift({type:"delete",index:ve}),wt++}var ut=r.modifyFrames,lt=r.modifyFrames,Tt=[ae,bt],Et=[ae,nt];return l&&l.add(ae,ut,Tt,lt,Et),r.modifyFrames(ae,nt)},E.deleteFrames=function(ae,be){if(ae=_.getGraphDiv(ae),!_.isPlotDiv(ae))throw new Error("This element is not a Plotly plot: "+ae);var Ie,Te,Ne=ae._transitionData._frames,qe=[],ve=[];if(!be)for(be=[],Ie=0;Ie<Ne.length;Ie++)be.push(Ie);for((be=be.slice()).sort(),Ie=be.length-1;Ie>=0;Ie--)Te=be[Ie],qe.push({type:"delete",index:Te}),ve.unshift({type:"insert",index:Te,value:Ne[Te]});var Ce=r.modifyFrames,Ae=r.modifyFrames,ze=[ae,ve],Ue=[ae,qe];return l&&l.add(ae,Ce,ze,Ae,Ue),r.modifyFrames(ae,qe)},E.addTraces=function ae(be,Ie,Te){be=_.getGraphDiv(be);var Ne,qe,ve=[],Ce=E.deleteTraces,Ae=ae,ze=[be,ve],Ue=[be,Ie];for(function(Ve,Ye,$e){var rt,ht;if(!Array.isArray(Ve.data))throw new Error("gd.data must be an array.");if(Ye===void 0)throw new Error("traces must be defined.");for(Array.isArray(Ye)||(Ye=[Ye]),rt=0;rt<Ye.length;rt++)if(typeof(ht=Ye[rt])!="object"||Array.isArray(ht)||ht===null)throw new Error("all values in traces array must be non-array objects");if($e===void 0||Array.isArray($e)||($e=[$e]),$e!==void 0&&$e.length!==Ye.length)throw new Error("if indices is specified, traces.length must equal indices.length")}(be,Ie,Te),Array.isArray(Ie)||(Ie=[Ie]),Ie=Ie.map(function(Ve){return _.extendFlat({},Ve)}),f.cleanData(Ie),Ne=0;Ne<Ie.length;Ne++)be.data.push(Ie[Ne]);for(Ne=0;Ne<Ie.length;Ne++)ve.push(-Ie.length+Ne);if(Te===void 0)return qe=E.redraw(be),l.add(be,Ce,ze,Ae,Ue),qe;Array.isArray(Te)||(Te=[Te]);try{z(be,ve,Te)}catch(Ve){throw be.data.splice(be.data.length-Ie.length,Ie.length),Ve}return l.startSequence(be),l.add(be,Ce,ze,Ae,Ue),qe=E.moveTraces(be,ve,Te),l.stopSequence(be),qe},E.deleteTraces=function ae(be,Ie){be=_.getGraphDiv(be);var Te,Ne,qe=[],ve=E.addTraces,Ce=ae,Ae=[be,qe,Ie],ze=[be,Ie];if(Ie===void 0)throw new Error("indices must be an integer or array of integers.");for(Array.isArray(Ie)||(Ie=[Ie]),O(be,Ie,"indices"),(Ie=P(Ie,be.data.length-1)).sort(_.sorterDes),Te=0;Te<Ie.length;Te+=1)Ne=be.data.splice(Ie[Te],1)[0],qe.push(Ne);var Ue=E.redraw(be);return l.add(be,ve,Ae,Ce,ze),Ue},E.extendTraces=function ae(be,Ie,Te,Ne){var qe=B(be=_.getGraphDiv(be),Ie,Te,Ne,function(Ae,ze,Ue){var Ve,Ye;if(_.isTypedArray(Ae))if(Ue<0){var $e=new Ae.constructor(0),rt=Y(Ae,ze);Ue<0?(Ve=rt,Ye=$e):(Ve=$e,Ye=rt)}else if(Ve=new Ae.constructor(Ue),Ye=new Ae.constructor(Ae.length+ze.length-Ue),Ue===ze.length)Ve.set(ze),Ye.set(Ae);else if(Ue<ze.length){var ht=ze.length-Ue;Ve.set(ze.subarray(ht)),Ye.set(Ae),Ye.set(ze.subarray(0,ht),Ae.length)}else{var nt=Ue-ze.length,bt=Ae.length-nt;Ve.set(Ae.subarray(bt)),Ve.set(ze,nt),Ye.set(Ae.subarray(0,bt))}else Ve=Ae.concat(ze),Ye=Ue>=0&&Ue<Ve.length?Ve.splice(0,Ve.length-Ue):[];return[Ve,Ye]}),ve=E.redraw(be),Ce=[be,qe.update,Te,qe.maxPoints];return l.add(be,E.prependTraces,Ce,ae,arguments),ve},E.moveTraces=function ae(be,Ie,Te){var Ne,qe=[],ve=[],Ce=ae,Ae=ae,ze=[be=_.getGraphDiv(be),Te,Ie],Ue=[be,Ie,Te];if(z(be,Ie,Te),Ie=Array.isArray(Ie)?Ie:[Ie],Te===void 0)for(Te=[],Ne=0;Ne<Ie.length;Ne++)Te.push(-Ie.length+Ne);for(Te=Array.isArray(Te)?Te:[Te],Ie=P(Ie,be.data.length-1),Te=P(Te,be.data.length-1),Ne=0;Ne<be.data.length;Ne++)Ie.indexOf(Ne)===-1&&qe.push(be.data[Ne]);for(Ne=0;Ne<Ie.length;Ne++)ve.push({newIndex:Te[Ne],trace:be.data[Ie[Ne]]});for(ve.sort(function(Ye,$e){return Ye.newIndex-$e.newIndex}),Ne=0;Ne<ve.length;Ne+=1)qe.splice(ve[Ne].newIndex,0,ve[Ne].trace);be.data=qe;var Ve=E.redraw(be);return l.add(be,Ce,ze,Ae,Ue),Ve},E.prependTraces=function ae(be,Ie,Te,Ne){var qe=B(be=_.getGraphDiv(be),Ie,Te,Ne,function(Ae,ze,Ue){var Ve,Ye;if(_.isTypedArray(Ae))if(Ue<=0){var $e=new Ae.constructor(0),rt=Y(ze,Ae);Ue<0?(Ve=rt,Ye=$e):(Ve=$e,Ye=rt)}else if(Ve=new Ae.constructor(Ue),Ye=new Ae.constructor(Ae.length+ze.length-Ue),Ue===ze.length)Ve.set(ze),Ye.set(Ae);else if(Ue<ze.length){var ht=ze.length-Ue;Ve.set(ze.subarray(0,ht)),Ye.set(ze.subarray(ht)),Ye.set(Ae,ht)}else{var nt=Ue-ze.length;Ve.set(ze),Ve.set(Ae.subarray(0,nt),ze.length),Ye.set(Ae.subarray(nt))}else Ve=ze.concat(Ae),Ye=Ue>=0&&Ue<Ve.length?Ve.splice(Ue,Ve.length):[];return[Ve,Ye]}),ve=E.redraw(be),Ce=[be,qe.update,Te,qe.maxPoints];return l.add(be,E.extendTraces,Ce,ae,arguments),ve},E.newPlot=function(ae,be,Ie,Te){return ae=_.getGraphDiv(ae),r.cleanPlot([],{},ae._fullData||[],ae._fullLayout||{}),r.purge(ae),E._doPlot(ae,be,Ie,Te)},E._doPlot=function(ae,be,Ie,Te){var Ne;if(ae=_.getGraphDiv(ae),h.init(ae),_.isPlainObject(be)){var qe=be;be=qe.data,Ie=qe.layout,Te=qe.config,Ne=qe.frames}if(h.triggerHandler(ae,"plotly_beforeplot",[be,Ie,Te])===!1)return Promise.reject();be||Ie||_.isPlotDiv(ae)||_.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",ae),C(ae,Te),Ie||(Ie={}),w.select(ae).classed("js-plotly-plot",!0),a.makeTester(),Array.isArray(ae._promises)||(ae._promises=[]);var ve=(ae.data||[]).length===0&&Array.isArray(be);Array.isArray(be)&&(f.cleanData(be),ve?ae.data=be:ae.data.push.apply(ae.data,be),ae.empty=!1),ae.layout&&!ve||(ae.layout=f.cleanLayout(Ie)),r.supplyDefaults(ae);var Ce=ae._fullLayout,Ae=Ce._has("cartesian");Ce._replotting=!0,(ve||Ce._shouldCreateBgLayer)&&(function(bt){var wt=w.select(bt),ut=bt._fullLayout;if(ut._calcInverseTransform=fe,ut._calcInverseTransform(bt),ut._container=wt.selectAll(".plot-container").data([0]),ut._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0),ut._paperdiv=ut._container.selectAll(".svg-container").data([0]),ut._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),ut._glcontainer=ut._paperdiv.selectAll(".gl-container").data([{}]),ut._glcontainer.enter().append("div").classed("gl-container",!0),ut._paperdiv.selectAll(".main-svg").remove(),ut._paperdiv.select(".modebar-container").remove(),ut._paper=ut._paperdiv.insert("svg",":first-child").classed("main-svg",!0),ut._toppaper=ut._paperdiv.append("svg").classed("main-svg",!0),ut._modebardiv=ut._paperdiv.append("div"),delete ut._modeBar,ut._hoverpaper=ut._paperdiv.append("svg").classed("main-svg",!0),!ut._uid){var lt={};w.selectAll("defs").each(function(){this.id&&(lt[this.id.split("-")[1]]=1)}),ut._uid=_.randstr(lt)}ut._paperdiv.selectAll(".main-svg").attr(p.svgAttrs),ut._defs=ut._paper.append("defs").attr("id","defs-"+ut._uid),ut._clips=ut._defs.append("g").classed("clips",!0),ut._topdefs=ut._toppaper.append("defs").attr("id","topdefs-"+ut._uid),ut._topclips=ut._topdefs.append("g").classed("clips",!0),ut._bgLayer=ut._paper.append("g").classed("bglayer",!0),ut._draggers=ut._paper.append("g").classed("draglayer",!0);var Tt=ut._paper.append("g").classed("layer-below",!0);ut._imageLowerLayer=Tt.append("g").classed("imagelayer",!0),ut._shapeLowerLayer=Tt.append("g").classed("shapelayer",!0),ut._cartesianlayer=ut._paper.append("g").classed("cartesianlayer",!0),ut._polarlayer=ut._paper.append("g").classed("polarlayer",!0),ut._smithlayer=ut._paper.append("g").classed("smithlayer",!0),ut._ternarylayer=ut._paper.append("g").classed("ternarylayer",!0),ut._geolayer=ut._paper.append("g").classed("geolayer",!0),ut._funnelarealayer=ut._paper.append("g").classed("funnelarealayer",!0),ut._pielayer=ut._paper.append("g").classed("pielayer",!0),ut._iciclelayer=ut._paper.append("g").classed("iciclelayer",!0),ut._treemaplayer=ut._paper.append("g").classed("treemaplayer",!0),ut._sunburstlayer=ut._paper.append("g").classed("sunburstlayer",!0),ut._indicatorlayer=ut._toppaper.append("g").classed("indicatorlayer",!0),ut._glimages=ut._paper.append("g").classed("glimages",!0);var Et=ut._toppaper.append("g").classed("layer-above",!0);ut._imageUpperLayer=Et.append("g").classed("imagelayer",!0),ut._shapeUpperLayer=Et.append("g").classed("shapelayer",!0),ut._selectionLayer=ut._toppaper.append("g").classed("selectionlayer",!0),ut._infolayer=ut._toppaper.append("g").classed("infolayer",!0),ut._menulayer=ut._toppaper.append("g").classed("menulayer",!0),ut._zoomlayer=ut._toppaper.append("g").classed("zoomlayer",!0),ut._hoverlayer=ut._hoverpaper.append("g").classed("hoverlayer",!0),ut._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),bt.emit("plotly_framework")}(ae),Ce._shouldCreateBgLayer&&delete Ce._shouldCreateBgLayer),a.initGradients(ae),a.initPatterns(ae),ve&&n.saveShowSpikeInitial(ae);var ze=!ae.calcdata||ae.calcdata.length!==(ae._fullData||[]).length;ze&&r.doCalcdata(ae);for(var Ue=0;Ue<ae.calcdata.length;Ue++)ae.calcdata[Ue][0].trace=ae._fullData[Ue];ae._context.responsive?ae._responsiveChartHandler||(ae._responsiveChartHandler=function(){_.isHidden(ae)||r.resize(ae)},window.addEventListener("resize",ae._responsiveChartHandler)):_.clearResponsive(ae);var Ve=_.extendFlat({},Ce._size),Ye=0;function $e(){if(r.clearAutoMarginIds(ae),v.drawMarginPushers(ae),n.allowAutoMargin(ae),ae._fullLayout.title.text&&ae._fullLayout.title.automargin&&r.allowAutoMargin(ae,"title.automargin"),Ce._has("pie"))for(var bt=ae._fullData,wt=0;wt<bt.length;wt++){var ut=bt[wt];ut.type==="pie"&&ut.automargin&&r.allowAutoMargin(ae,"pie."+ut.uid+".automargin")}return r.doAutoMargin(ae),r.previousPromises(ae)}function rt(){ae._transitioning||(v.doAutoRangeAndConstraints(ae),ve&&n.saveRangeInitial(ae),t.getComponentMethod("rangeslider","calcAutorange")(ae))}var ht=[r.previousPromises,function(){if(Ne)return E.addFrames(ae,Ne)},function bt(){for(var wt=Ce._basePlotModules,ut=0;ut<wt.length;ut++)wt[ut].drawFramework&&wt[ut].drawFramework(ae);!Ce._glcanvas&&Ce._has("gl")&&(Ce._glcanvas=Ce._glcontainer.selectAll(".gl-canvas").data([{key:"contextLayer",context:!0,pick:!1},{key:"focusLayer",context:!1,pick:!1},{key:"pickLayer",context:!1,pick:!0}],function(St){return St.key}),Ce._glcanvas.enter().append("canvas").attr("class",function(St){return"gl-canvas gl-canvas-"+St.key.replace("Layer","")}).style({position:"absolute",top:0,left:0,overflow:"visible","pointer-events":"none"}));var lt=ae._context.plotGlPixelRatio;if(Ce._glcanvas){Ce._glcanvas.attr("width",Ce.width*lt).attr("height",Ce.height*lt).style("width",Ce.width+"px").style("height",Ce.height+"px");var Tt=Ce._glcanvas.data()[0].regl;if(Tt&&(Math.floor(Ce.width*lt)!==Tt._gl.drawingBufferWidth||Math.floor(Ce.height*lt)!==Tt._gl.drawingBufferHeight)){var Et="WebGL context buffer and canvas dimensions do not match due to browser/WebGL bug.";if(!Ye)return _.log(Et+" Clearing graph and plotting again."),r.cleanPlot([],{},ae._fullData,Ce),r.supplyDefaults(ae),Ce=ae._fullLayout,r.doCalcdata(ae),Ye++,bt();_.error(Et)}}return Ce.modebar.orientation==="h"?Ce._modebardiv.style("height",null).style("width","100%"):Ce._modebardiv.style("width",null).style("height",Ce.height+"px"),r.previousPromises(ae)},$e,function(){if(r.didMarginChange(Ve,Ce._size))return _.syncOrAsync([$e,v.layoutStyles],ae)}];Ae&&ht.push(function(){if(ze)return _.syncOrAsync([t.getComponentMethod("shapes","calcAutorange"),t.getComponentMethod("annotations","calcAutorange"),rt],ae);rt()}),ht.push(v.layoutStyles),Ae&&ht.push(function(){return n.draw(ae,ve?"":"redraw")},function(bt){bt._fullLayout._insideTickLabelsAutorange&&ie(bt,bt._fullLayout._insideTickLabelsAutorange).then(function(){bt._fullLayout._insideTickLabelsAutorange=void 0})}),ht.push(v.drawData,v.finalDraw,u,r.addLinks,r.rehover,r.redrag,r.reselect,r.doAutoMargin,function(bt){bt._fullLayout._insideTickLabelsAutorange&&ve&&n.saveRangeInitial(bt,!0)},r.previousPromises);var nt=_.syncOrAsync(ht,ae);return nt&&nt.then||(nt=Promise.resolve()),nt.then(function(){return d(ae),ae})},E.purge=function(ae){var be=(ae=_.getGraphDiv(ae))._fullLayout||{},Ie=ae._fullData||[];return r.cleanPlot([],{},Ie,be),r.purge(ae),h.purge(ae),be._container&&be._container.remove(),delete ae._context,ae},E.react=function(ae,be,Ie,Te){var Ne,qe;ae=_.getGraphDiv(ae),f.clearPromiseQueue(ae);var ve=ae._fullData,Ce=ae._fullLayout;if(_.isPlotDiv(ae)&&ve&&Ce){if(_.isPlainObject(be)){var Ae=be;be=Ae.data,Ie=Ae.layout,Te=Ae.config,Ne=Ae.frames}var ze=!1;if(Te){var Ue=_.extendDeep({},ae._context);ae._context=void 0,C(ae,Te),ze=he(Ue,ae._context)}ae.data=be||[],f.cleanData(ae.data),ae.layout=Ie||{},f.cleanLayout(ae.layout),function(Qe,st,ft,Be){var je,at,ot,xt,yt,_t,gt,Ct,dt,vt,At=Be._preGUI,Bt=[],jt={},Ut={};for(je in At){if(yt=Se(je,me)){if(dt=yt.head,vt=yt.tail,at=yt.attr||dt+".uirevision",(xt=(ot=y(Be,at).get())&&we(at,st))&&xt===ot){if((_t=At[je])===null&&(_t=void 0),Ee(Ct=(gt=y(st,je)).get(),_t)){Ct===void 0&&vt==="autorange"&&Bt.push(dt),gt.set(G(y(Be,je).get()));continue}if(vt==="autorange"||vt.substr(0,6)==="range["){var tn=At[dt+".range[0]"],Xt=At[dt+".range[1]"],Qt=At[dt+".autorange"];if(Qt||Qt===null&&tn===null&&Xt===null){if(!(dt in jt)){var Gt=y(st,dt).get();jt[dt]=Gt&&(Gt.autorange||Gt.autorange!==!1&&(!Gt.range||Gt.range.length!==2))}if(jt[dt]){gt.set(G(y(Be,je).get()));continue}}}}}else _.warn("unrecognized GUI edit: "+je);delete At[je],yt&&yt.tail.substr(0,6)==="range["&&(Ut[yt.head]=1)}for(var vn=0;vn<Bt.length;vn++){var Tn=Bt[vn];if(Ut[Tn]){var dn=y(st,Tn).get();dn&&delete dn.autorange}}var Yt=Be._tracePreGUI;for(var ln in Yt){var nn,fn=Yt[ln],mn=null;for(je in fn){if(!mn){var xn=xe(ln,ft);if(xn<0){delete Yt[ln];break}var Pn=De(ln,Qe,(nn=ft[xn]._fullInput).index);if(Pn<0){delete Yt[ln];break}mn=Qe[Pn]}if(yt=Se(je,_e)){if(yt.attr?xt=(ot=y(Be,yt.attr).get())&&we(yt.attr,st):(ot=nn.uirevision,(xt=mn.uirevision)===void 0&&(xt=st.uirevision)),xt&&xt===ot&&((_t=fn[je])===null&&(_t=void 0),Ee(Ct=(gt=y(mn,je)).get(),_t))){gt.set(G(y(nn,je).get()));continue}}else _.warn("unrecognized GUI edit: "+je+" in trace uid "+ln);delete fn[je]}}}(ae.data,ae.layout,ve,Ce),r.supplyDefaults(ae,{skipUpdateCalc:!0});var Ve=ae._fullData,Ye=ae._fullLayout,$e=Ye.datarevision===void 0,rt=Ye.transition,ht=function(Qe,st,ft,Be,je){var at=m.layoutFlags();return at.arrays={},at.rangesAltered={},at.nChanges=0,at.nChangesAnim=0,Me(st,ft,[],{getValObject:function(ot){return o.getLayoutValObject(ft,ot)},flags:at,immutable:Be,transition:je,gd:Qe}),(at.plot||at.calc)&&(at.layoutReplot=!0),je&&at.nChanges&&at.nChangesAnim&&(at.anim=at.nChanges===at.nChangesAnim?"all":"some"),at}(ae,Ce,Ye,$e,rt),nt=ht.newDataRevision,bt=function(Qe,st,ft,Be,je,at){var ot=st.length===ft.length;if(!je&&!ot)return{fullReplot:!0,calc:!0};var xt,yt,_t=m.traceFlags();_t.arrays={},_t.nChanges=0,_t.nChangesAnim=0;var gt={getValObject:function(dt){var vt=o.getTraceValObject(yt,dt);return!yt._module.animatable&&vt.anim&&(vt.anim=!1),vt},flags:_t,immutable:Be,transition:je,newDataRevision:at,gd:Qe},Ct={};for(xt=0;xt<st.length;xt++)if(ft[xt]){if(yt=ft[xt]._fullInput,r.hasMakesDataTransform(yt)&&(yt=ft[xt]),Ct[yt.uid])continue;Ct[yt.uid]=1,Me(st[xt]._fullInput,yt,[],gt)}return(_t.calc||_t.plot)&&(_t.fullReplot=!0),je&&_t.nChanges&&_t.nChangesAnim&&(_t.anim=_t.nChanges===_t.nChangesAnim&&ot?"all":"some"),_t}(ae,ve,Ve,$e,rt,nt);if(ue(ae)&&(ht.layoutReplot=!0),bt.calc||ht.calc){ae.calcdata=void 0;for(var wt=Object.getOwnPropertyNames(Ye),ut=0;ut<wt.length;ut++){var lt=wt[ut],Tt=lt.substring(0,5);if(Tt==="xaxis"||Tt==="yaxis"){var Et=Ye[lt]._emptyCategories;Et&&Et()}}}else r.supplyDefaultsUpdateCalc(ae.calcdata,Ve);var St=[];if(Ne&&(ae._transitionData={},r.createTransitionData(ae),St.push(function(){return E.addFrames(ae,Ne)})),Ye.transition&&!ze&&(bt.anim||ht.anim))ht.ticks&&St.push(v.doTicksRelayout),r.doCalcdata(ae),v.doAutoRangeAndConstraints(ae),St.push(function(){return r.transitionFromReact(ae,bt,ht,Ce)});else if(bt.fullReplot||ht.layoutReplot||ze)ae._fullLayout._skipDefaults=!0,St.push(E._doPlot);else{for(var Ft in ht.arrays){var zt=ht.arrays[Ft];if(zt.length){var Je=t.getComponentMethod(Ft,"drawOne");if(Je!==_.noop)for(var et=0;et<zt.length;et++)Je(ae,zt[et]);else{var Ze=t.getComponentMethod(Ft,"draw");if(Ze===_.noop)throw new Error("cannot draw components: "+Ft);Ze(ae)}}}St.push(r.previousPromises),bt.style&&St.push(v.doTraceStyle),(bt.colorbars||ht.colorbars)&&St.push(v.doColorBars),ht.legend&&St.push(v.doLegend),ht.layoutstyle&&St.push(v.layoutStyles),ht.axrange&&J(St),ht.ticks&&St.push(v.doTicksRelayout),ht.modebar&&St.push(v.doModeBar),ht.camera&&St.push(v.doCamera),St.push(d)}St.push(r.rehover,r.redrag,r.reselect),(qe=_.syncOrAsync(St,ae))&&qe.then||(qe=Promise.resolve(ae))}else qe=E.newPlot(ae,be,Ie,Te);return qe.then(function(){return ae.emit("plotly_react",{data:be,layout:Ie}),ae})},E.redraw=function(ae){if(ae=_.getGraphDiv(ae),!_.isPlotDiv(ae))throw new Error("This element is not a Plotly plot: "+ae);return f.cleanData(ae.data),f.cleanLayout(ae.layout),ae.calcdata=void 0,E._doPlot(ae).then(function(){return ae.emit("plotly_redraw"),ae})},E.relayout=ie,E.restyle=D,E.setPlotConfig=function(ae){return _.extendFlat(b,ae)},E.update=ce,E._guiRelayout=de(ie),E._guiRestyle=de(D),E._guiUpdate=de(ce),E._storeDirectGUIEdit=function(ae,be,Ie){for(var Te in Ie)j(Te,y(ae,Te).get(),Ie[Te],be)}},72075:function(R){var E={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox"],extras:[!0,!1],dflt:"gl3d+geo+mapbox"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},globalTransforms:{valType:"any",dflt:[]},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},e={};(function w(k,i){for(var _ in k){var y=k[_];y.valType?i[_]=y.dflt:(i[_]||(i[_]={}),w(y,i[_]))}})(E,e),R.exports={configAttributes:E,dfltConfig:e}},86281:function(R,E,e){var w=e(73972),k=e(71828),i=e(9012),_=e(10820),y=e(31391),h=e(85594),l=e(72075).configAttributes,t=e(30962),o=k.extendDeepAll,r=k.isPlainObject,n=k.isArrayOrTypedArray,a=k.nestedProperty,s=k.valObjectMeta,u="_isSubplotObj",p="_isLinkedToArray",c="_deprecated",b=[u,p,"_arrayAttrRegexps",c];function g(d,M,A){if(!d)return!1;if(d._isLinkedToArray){if(f(M[A]))A++;else if(A<M.length)return!1}for(;A<M.length;A++){var C=d[M[A]];if(!r(C)||(d=C,A===M.length-1))break;if(d._isLinkedToArray){if(!f(M[++A]))return!1}else if(d.valType==="info_array"){var P=M[++A];if(!f(P))return!1;var O=d.items;if(Array.isArray(O)){if(P>=O.length)return!1;if(d.dimensions===2){if(A++,M.length===A)return d;var z=M[A];if(!f(z))return!1;d=O[P][z]}else d=O[P]}else d=O}}return d}function f(d){return d===Math.round(d)&&d>=0}function v(){var d,M,A={};for(d in o(A,_),w.subplotsRegistry)if((M=w.subplotsRegistry[d]).layoutAttributes)if(Array.isArray(M.attr))for(var C=0;C<M.attr.length;C++)x(A,M,M.attr[C]);else x(A,M,M.attr==="subplot"?M.name:M.attr);for(d in w.componentsRegistry){var P=(M=w.componentsRegistry[d]).schema;if(P&&(P.subplots||P.layout)){var O=P.subplots;if(O&&O.xaxis&&!O.yaxis)for(var z in O.xaxis)delete A.yaxis[z];delete A.xaxis.shift,delete A.xaxis.autoshift}else M.name==="colorscale"?o(A,M.layoutAttributes):M.layoutAttributes&&T(A,M.layoutAttributes,M.name)}return{layoutAttributes:m(A)}}function m(d){return function(M){E.crawl(M,function(A,C,P){E.isValObject(A)?A.arrayOk!==!0&&A.valType!=="data_array"||(P[C+"src"]={valType:"string",editType:"none"}):r(A)&&(A.role="object")})}(d),function(M){E.crawl(M,function(A,C,P){if(A){var O=A[p];O&&(delete A[p],P[C]={items:{}},P[C].items[O]=A,P[C].role="object")}})}(d),function(M){(function A(C){for(var P in C)if(r(C[P]))A(C[P]);else if(Array.isArray(C[P]))for(var O=0;O<C[P].length;O++)A(C[P][O]);else C[P]instanceof RegExp&&(C[P]=C[P].toString())})(M)}(d),d}function x(d,M,A){var C=a(d,A),P=o({},M.layoutAttributes);P[u]=!0,C.set(P)}function T(d,M,A){var C=a(d,A);C.set(o(C.get()||{},M))}E.IS_SUBPLOT_OBJ=u,E.IS_LINKED_TO_ARRAY=p,E.DEPRECATED=c,E.UNDERSCORE_ATTRS=b,E.get=function(){var d={};w.allTypes.forEach(function(C){d[C]=function(P){var O,z;z=(O=w.modules[P]._module).basePlotModule;var B={type:null},Y=o({},i),D=o({},O.attributes);E.crawl(D,function(j,W,Z,ie,te){a(Y,te).set(void 0),j===void 0&&a(D,te).set(void 0)}),o(B,Y),w.traceIs(P,"noOpacity")&&delete B.opacity,w.traceIs(P,"showLegend")||(delete B.showlegend,delete B.legendgroup),w.traceIs(P,"noHover")&&(delete B.hoverinfo,delete B.hoverlabel),O.selectPoints||delete B.selectedpoints,o(B,D),z.attributes&&o(B,z.attributes),B.type=P;var G={meta:O.meta||{},categories:O.categories||{},animatable:!!O.animatable,type:P,attributes:m(B)};if(O.layoutAttributes){var V={};o(V,O.layoutAttributes),G.layoutAttributes=m(V)}return O.animatable||E.crawl(G,function(j){E.isValObject(j)&&"anim"in j&&delete j.anim}),G}(C)});var M,A={};return Object.keys(w.transformsRegistry).forEach(function(C){A[C]=function(P){var O=w.transformsRegistry[P],z=o({},O.attributes);return Object.keys(w.componentsRegistry).forEach(function(B){var Y=w.componentsRegistry[B];Y.schema&&Y.schema.transforms&&Y.schema.transforms[P]&&Object.keys(Y.schema.transforms[P]).forEach(function(D){T(z,Y.schema.transforms[P][D],D)})}),{attributes:m(z)}}(C)}),{defs:{valObjects:s,metaKeys:b.concat(["description","role","editType","impliedEdits"]),editType:{traces:t.traces,layout:t.layout},impliedEdits:{}},traces:d,layout:v(),transforms:A,frames:(M={frames:o({},y)},m(M),M.frames),animation:m(h),config:m(l)}},E.crawl=function(d,M,A,C){var P=A||0;C=C||"",Object.keys(d).forEach(function(O){var z=d[O];if(b.indexOf(O)===-1){var B=(C?C+".":"")+O;M(z,O,d,P,B),E.isValObject(z)||r(z)&&O!=="impliedEdits"&&E.crawl(z,M,P+1,B)}})},E.isValObject=function(d){return d&&d.valType!==void 0},E.findArrayAttributes=function(d){var M,A,C=[],P=[],O=[];function z(j,W,Z,ie){P=P.slice(0,ie).concat([W]),O=O.slice(0,ie).concat([j&&j._isLinkedToArray]),j&&(j.valType==="data_array"||j.arrayOk===!0)&&(P[ie-1]!=="colorbar"||W!=="ticktext"&&W!=="tickvals")&&B(M,0,"")}function B(j,W,Z){var ie=j[P[W]],te=Z+P[W];if(W===P.length-1)n(ie)&&C.push(A+te);else if(O[W]){if(Array.isArray(ie))for(var J=0;J<ie.length;J++)r(ie[J])&&B(ie[J],W+1,te+"["+J+"].")}else r(ie)&&B(ie,W+1,te+".")}M=d,A="",E.crawl(i,z),d._module&&d._module.attributes&&E.crawl(d._module.attributes,z);var Y=d.transforms;if(Y)for(var D=0;D<Y.length;D++){var G=Y[D],V=G._module;V&&(A="transforms["+D+"].",M=G,E.crawl(V.attributes,z))}return C},E.getTraceValObject=function(d,M){var A,C,P=M[0],O=1;if(P==="transforms"){if(M.length===1)return i.transforms;var z=d.transforms;if(!Array.isArray(z)||!z.length)return!1;var B=M[1];if(!f(B)||B>=z.length)return!1;C=(A=(w.transformsRegistry[z[B].type]||{}).attributes)&&A[M[2]],O=3}else{var Y=d._module;if(Y||(Y=(w.modules[d.type||i.type.dflt]||{})._module),!Y)return!1;if(!(C=(A=Y.attributes)&&A[P])){var D=Y.basePlotModule;D&&D.attributes&&(C=D.attributes[P])}C||(C=i[P])}return g(C,M,O)},E.getLayoutValObject=function(d,M){var A=function(C,P){var O,z,B,Y,D=C._basePlotModules;if(D){var G;for(O=0;O<D.length;O++){if((B=D[O]).attrRegex&&B.attrRegex.test(P)){if(B.layoutAttrOverrides)return B.layoutAttrOverrides;!G&&B.layoutAttributes&&(G=B.layoutAttributes)}var V=B.baseLayoutAttrOverrides;if(V&&P in V)return V[P]}if(G)return G}var j=C._modules;if(j){for(O=0;O<j.length;O++)if((Y=j[O].layoutAttributes)&&P in Y)return Y[P]}for(z in w.componentsRegistry){if((B=w.componentsRegistry[z]).name==="colorscale"&&P.indexOf("coloraxis")===0)return B.layoutAttributes[P];if(!B.schema&&P===B.name)return B.layoutAttributes}return P in _&&_[P]}(d,M[0]);return g(A,M,1)}},44467:function(R,E,e){var w=e(71828),k=e(9012),i="templateitemname",_={name:{valType:"string",editType:"none"}};function y(l){return l&&typeof l=="string"}function h(l){var t=l.length-1;return l.charAt(t)!=="s"&&w.warn("bad argument to arrayDefaultKey: "+l),l.substr(0,l.length-1)+"defaults"}_[i]={valType:"string",editType:"calc"},E.templatedArray=function(l,t){return t._isLinkedToArray=l,t.name=_.name,t[i]=_[i],t},E.traceTemplater=function(l){var t,o,r={};for(t in l)o=l[t],Array.isArray(o)&&o.length&&(r[t]=0);return{newTrace:function(n){var a={type:t=w.coerce(n,{},k,"type"),_template:null};if(t in r){o=l[t];var s=r[t]%o.length;r[t]++,a._template=o[s]}return a}}},E.newContainer=function(l,t,o){var r=l._template,n=r&&(r[t]||o&&r[o]);return w.isPlainObject(n)||(n=null),l[t]={_template:n}},E.arrayTemplater=function(l,t,o){var r=l._template,n=r&&r[h(t)],a=r&&r[t];Array.isArray(a)&&a.length||(a=[]);var s={};return{newItem:function(u){var p={name:u.name,_input:u},c=p[i]=u[i];if(!y(c))return p._template=n,p;for(var b=0;b<a.length;b++){var g=a[b];if(g.name===c)return s[c]=1,p._template=g,p}return p[o]=u[o]||!1,p._template=!1,p},defaultItems:function(){for(var u=[],p=0;p<a.length;p++){var c=a[p],b=c.name;if(y(b)&&!s[b]){var g={_template:c,name:b,_input:{_templateitemname:b}};g[i]=c[i],u.push(g),s[b]=1}}return u}}},E.arrayDefaultKey=h,E.arrayEditor=function(l,t,o){var r=(w.nestedProperty(l,t).get()||[]).length,n=o._index,a=n>=r&&(o._input||{})._templateitemname;a&&(n=r);var s,u=t+"["+n+"]";function p(){s={},a&&(s[u]={},s[u][i]=a)}function c(g,f){a?w.nestedProperty(s[u],g).set(f):s[u+"."+g]=f}function b(){var g=s;return p(),g}return p(),{modifyBase:function(g,f){s[g]=f},modifyItem:c,getUpdateObj:b,applyUpdate:function(g,f){g&&c(g,f);var v=b();for(var m in v)w.nestedProperty(l,m).set(v[m])}}}},61549:function(R,E,e){var w=e(39898),k=e(73972),i=e(74875),_=e(71828),y=e(63893),h=e(33306),l=e(7901),t=e(91424),o=e(92998),r=e(64168),n=e(89298),a=e(18783),s=e(99082),u=s.enforce,p=s.clean,c=e(71739).doAutoRange,b="start";function g(T,d,M){for(var A=0;A<M.length;A++){var C=M[A][0],P=M[A][1];if(!(C[0]>=T[1]||C[1]<=T[0])&&P[0]<d[1]&&P[1]>d[0])return!0}return!1}function f(T){var d,M,A,C,P,O,z=T._fullLayout,B=z._size,Y=B.p,D=n.list(T,"",!0);if(z._paperdiv.style({width:T._context.responsive&&z.autosize&&!T._context._hasZeroWidth&&!T.layout.width?"100%":z.width+"px",height:T._context.responsive&&z.autosize&&!T._context._hasZeroHeight&&!T.layout.height?"100%":z.height+"px"}).selectAll(".main-svg").call(t.setSize,z.width,z.height),T._context.setBackground(T,z.paper_bgcolor),E.drawMainTitle(T),r.manage(T),!z._has("cartesian"))return i.previousPromises(T);function G(Ve,Ye,$e){var rt=Ve._lw/2;return Ve._id.charAt(0)==="x"?Ye?$e==="top"?Ye._offset-Y-rt:Ye._offset+Ye._length+Y+rt:B.t+B.h*(1-(Ve.position||0))+rt%1:Ye?$e==="right"?Ye._offset+Ye._length+Y+rt:Ye._offset-Y-rt:B.l+B.w*(Ve.position||0)+rt%1}for(d=0;d<D.length;d++){var V=(C=D[d])._anchorAxis;C._linepositions={},C._lw=t.crispRound(T,C.linewidth,1),C._mainLinePosition=G(C,V,C.side),C._mainMirrorPosition=C.mirror&&V?G(C,V,a.OPPOSITE_SIDE[C.side]):null}var j=[],W=[],Z=[],ie=l.opacity(z.paper_bgcolor)===1&&l.opacity(z.plot_bgcolor)===1&&z.paper_bgcolor===z.plot_bgcolor;for(M in z._plots)if((A=z._plots[M]).mainplot)A.bg&&A.bg.remove(),A.bg=void 0;else{var te=A.xaxis.domain,J=A.yaxis.domain,X=A.plotgroup;if(g(te,J,Z)){var ee=X.node(),re=A.bg=_.ensureSingle(X,"rect","bg");ee.insertBefore(re.node(),ee.childNodes[0]),W.push(M)}else X.select("rect.bg").remove(),Z.push([te,J]),ie||(j.push(M),W.push(M))}var oe,ue,ce,de,me,_e,Se,we,xe,De,Ee,Me,he,fe=z._bgLayer.selectAll(".bg").data(j);for(fe.enter().append("rect").classed("bg",!0),fe.exit().remove(),fe.each(function(Ve){z._plots[Ve].bg=w.select(this)}),d=0;d<W.length;d++)A=z._plots[W[d]],P=A.xaxis,O=A.yaxis,A.bg&&P._offset!==void 0&&O._offset!==void 0&&A.bg.call(t.setRect,P._offset-Y,O._offset-Y,P._length+2*Y,O._length+2*Y).call(l.fill,z.plot_bgcolor).style("stroke-width",0);if(!z._hasOnlyLargeSploms)for(M in z._plots){A=z._plots[M],P=A.xaxis,O=A.yaxis;var ae,be,Ie=A.clipId="clip"+z._uid+M+"plot",Te=_.ensureSingleById(z._clips,"clipPath",Ie,function(Ve){Ve.classed("plotclip",!0).append("rect")});A.clipRect=Te.select("rect").attr({width:P._length,height:O._length}),t.setTranslate(A.plot,P._offset,O._offset),A._hasClipOnAxisFalse?(ae=null,be=Ie):(ae=Ie,be=null),t.setClipUrl(A.plot,ae,T),A.layerClipId=be}function Ne(Ve){return"M"+oe+","+Ve+"H"+ue}function qe(Ve){return"M"+P._offset+","+Ve+"h"+P._length}function ve(Ve){return"M"+Ve+","+we+"V"+Se}function Ce(Ve){return O._shift!==void 0&&(Ve+=O._shift),"M"+Ve+","+O._offset+"v"+O._length}function Ae(Ve,Ye,$e){if(!Ve.showline||M!==Ve._mainSubplot)return"";if(!Ve._anchorAxis)return $e(Ve._mainLinePosition);var rt=Ye(Ve._mainLinePosition);return Ve.mirror&&(rt+=Ye(Ve._mainMirrorPosition)),rt}for(M in z._plots){A=z._plots[M],P=A.xaxis,O=A.yaxis;var ze="M0,0";v(P,M)&&(me=x(P,"left",O,D),oe=P._offset-(me?Y+me:0),_e=x(P,"right",O,D),ue=P._offset+P._length+(_e?Y+_e:0),ce=G(P,O,"bottom"),de=G(P,O,"top"),!(he=!P._anchorAxis||M!==P._mainSubplot)||P.mirror!=="allticks"&&P.mirror!=="all"||(P._linepositions[M]=[ce,de]),ze=Ae(P,Ne,qe),he&&P.showline&&(P.mirror==="all"||P.mirror==="allticks")&&(ze+=Ne(ce)+Ne(de)),A.xlines.style("stroke-width",P._lw+"px").call(l.stroke,P.showline?P.linecolor:"rgba(0,0,0,0)")),A.xlines.attr("d",ze);var Ue="M0,0";v(O,M)&&(Ee=x(O,"bottom",P,D),Se=O._offset+O._length+(Ee?Y:0),Me=x(O,"top",P,D),we=O._offset-(Me?Y:0),xe=G(O,P,"left"),De=G(O,P,"right"),!(he=!O._anchorAxis||M!==O._mainSubplot)||O.mirror!=="allticks"&&O.mirror!=="all"||(O._linepositions[M]=[xe,De]),Ue=Ae(O,ve,Ce),he&&O.showline&&(O.mirror==="all"||O.mirror==="allticks")&&(Ue+=ve(xe)+ve(De)),A.ylines.style("stroke-width",O._lw+"px").call(l.stroke,O.showline?O.linecolor:"rgba(0,0,0,0)")),A.ylines.attr("d",Ue)}return n.makeClipPaths(T),i.previousPromises(T)}function v(T,d){return(T.ticks||T.showline)&&(d===T._mainSubplot||T.mirror==="all"||T.mirror==="allticks")}function m(T,d,M){if(!M.showline||!M._lw)return!1;if(M.mirror==="all"||M.mirror==="allticks")return!0;var A=M._anchorAxis;if(!A)return!1;var C=a.FROM_BL[d];return M.side===d?A.domain[C]===T.domain[C]:M.mirror&&A.domain[1-C]===T.domain[1-C]}function x(T,d,M,A){if(m(T,d,M))return M._lw;for(var C=0;C<A.length;C++){var P=A[C];if(P._mainAxis===M._mainAxis&&m(T,d,P))return P._lw}return 0}E.layoutStyles=function(T){return _.syncOrAsync([i.doAutoMargin,f],T)},E.drawMainTitle=function(T){var d,M=T._fullLayout.title,A=T._fullLayout,C=function(G){var V=G.title,j="middle";return _.isRightAnchor(V)?j="end":_.isLeftAnchor(V)&&(j=b),j}(A),P=function(G){var V=G.title,j="0em";return _.isTopAnchor(V)?j=a.CAP_SHIFT+"em":_.isMiddleAnchor(V)&&(j=a.MID_SHIFT+"em"),j}(A),O=function(G,V){var j=G.title,W=G._size,Z=0;return V!=="0em"&&V?V===a.CAP_SHIFT+"em"&&(Z=j.pad.t):Z=-j.pad.b,j.y==="auto"?W.t/2:j.yref==="paper"?W.t+W.h-W.h*j.y+Z:G.height-G.height*j.y+Z}(A,P),z=function(G,V){var j=G.title,W=G._size,Z=0;return V===b?Z=j.pad.l:V==="end"&&(Z=-j.pad.r),j.xref==="paper"?W.l+W.w*j.x+Z:G.width*j.x+Z}(A,C);if(o.draw(T,"gtitle",{propContainer:A,propName:"title.text",placeholder:A._dfltTitle.plot,attributes:{x:z,y:O,"text-anchor":C,dy:P}}),M.text&&M.automargin){var B=w.selectAll(".gtitle"),Y=t.bBox(B.node()).height,D=function(G,V,j){var W=V.y,Z=V.yanchor,ie=W>.5?"t":"b",te=G._fullLayout.margin[ie],J=0;return V.yref==="paper"?J=j+V.pad.t+V.pad.b:V.yref==="container"&&(J=function(X,ee,re,oe,ue){var ce=0;return re==="middle"&&(ce+=ue/2),X==="t"?(re==="top"&&(ce+=ue),ce+=oe-ee*oe):(re==="bottom"&&(ce+=ue),ce+=ee*oe),ce}(ie,W,Z,G._fullLayout.height,j)+V.pad.t+V.pad.b),J>te?J:0}(T,M,Y);D>0&&(function(G,V,j,W){var Z="title.automargin",ie=G._fullLayout.title,te=ie.y>.5?"t":"b",J={x:ie.x,y:ie.y,t:0,b:0},X={};ie.yref==="paper"&&function(ee,re,oe,ue,ce){var de=re.yref==="paper"?ee._fullLayout._size.h:ee._fullLayout.height,me=_.isTopAnchor(re)?ue:ue-ce,_e=oe==="b"?de-me:me;return!(_.isTopAnchor(re)&&oe==="t"||_.isBottomAnchor(re)&&oe==="b")&&_e<ce}(G,ie,te,V,W)?J[te]=j:ie.yref==="container"&&(X[te]=j,G._fullLayout._reservedMargin[Z]=X),i.allowAutoMargin(G,Z),i.autoMargin(G,Z,J)}(T,O,D,Y),B.attr({x:z,y:O,"text-anchor":C,dy:(d=M.yanchor,d==="top"?a.CAP_SHIFT+.3+"em":d==="bottom"?"-0.3em":a.MID_SHIFT+"em")}).call(y.positionText,z,O))}},E.doTraceStyle=function(T){var d,M=T.calcdata,A=[];for(d=0;d<M.length;d++){var C=M[d],P=C[0]||{},O=P.trace||{},z=O._module||{},B=z.arraysToCalcdata;B&&B(C,O);var Y=z.editStyle;Y&&A.push({fn:Y,cd0:P})}if(A.length){for(d=0;d<A.length;d++){var D=A[d];D.fn(T,D.cd0)}h(T),E.redrawReglTraces(T)}return i.style(T),k.getComponentMethod("legend","draw")(T),i.previousPromises(T)},E.doColorBars=function(T){return k.getComponentMethod("colorbar","draw")(T),i.previousPromises(T)},E.layoutReplot=function(T){var d=T.layout;return T.layout=void 0,k.call("_doPlot",T,"",d)},E.doLegend=function(T){return k.getComponentMethod("legend","draw")(T),i.previousPromises(T)},E.doTicksRelayout=function(T){return n.draw(T,"redraw"),T._fullLayout._hasOnlyLargeSploms&&(k.subplotsRegistry.splom.updateGrid(T),h(T),E.redrawReglTraces(T)),E.drawMainTitle(T),i.previousPromises(T)},E.doModeBar=function(T){var d=T._fullLayout;r.manage(T);for(var M=0;M<d._basePlotModules.length;M++){var A=d._basePlotModules[M].updateFx;A&&A(T)}return i.previousPromises(T)},E.doCamera=function(T){for(var d=T._fullLayout,M=d._subplots.gl3d,A=0;A<M.length;A++){var C=d[M[A]];C._scene.setViewport(C)}},E.drawData=function(T){var d=T._fullLayout;h(T);for(var M=d._basePlotModules,A=0;A<M.length;A++)M[A].plot(T);return E.redrawReglTraces(T),i.style(T),k.getComponentMethod("selections","draw")(T),k.getComponentMethod("shapes","draw")(T),k.getComponentMethod("annotations","draw")(T),k.getComponentMethod("images","draw")(T),d._replotting=!1,i.previousPromises(T)},E.redrawReglTraces=function(T){var d=T._fullLayout;if(d._has("regl")){var M,A,C=T._fullData,P=[],O=[];for(d._hasOnlyLargeSploms&&d._splomGrid.draw(),M=0;M<C.length;M++){var z=C[M];z.visible===!0&&z._length!==0&&(z.type==="splom"?d._splomScenes[z.uid].draw():z.type==="scattergl"?_.pushUnique(P,z.xaxis+z.yaxis):z.type==="scatterpolargl"&&_.pushUnique(O,z.subplot))}for(M=0;M<P.length;M++)(A=d._plots[P[M]])._scene&&A._scene.draw();for(M=0;M<O.length;M++)(A=d[O[M]]._subplot)._scene&&A._scene.draw()}},E.doAutoRangeAndConstraints=function(T){for(var d,M=n.list(T,"",!0),A={},C=0;C<M.length;C++)if(!A[(d=M[C])._id]){A[d._id]=1,p(T,d),c(T,d);var P=d._matchGroup;if(P)for(var O in P){var z=n.getFromId(T,O);c(T,z,d.range),A[O]=1}}u(T)},E.finalDraw=function(T){k.getComponentMethod("rangeslider","draw")(T),k.getComponentMethod("rangeselector","draw")(T)},E.drawMarginPushers=function(T){k.getComponentMethod("legend","draw")(T),k.getComponentMethod("rangeselector","draw")(T),k.getComponentMethod("sliders","draw")(T),k.getComponentMethod("updatemenus","draw")(T),k.getComponentMethod("colorbar","draw")(T)}},96318:function(R,E,e){var w=e(71828),k=w.isPlainObject,i=e(86281),_=e(74875),y=e(9012),h=e(44467),l=e(72075).dfltConfig;function t(c,b){c=w.extendDeep({},c);var g,f,v=Object.keys(c).sort();function m(A,C,P){if(k(C)&&k(A))t(A,C);else if(Array.isArray(C)&&Array.isArray(A)){var O=h.arrayTemplater({_template:c},P);for(f=0;f<C.length;f++){var z=C[f],B=O.newItem(z)._template;B&&t(B,z)}var Y=O.defaultItems();for(f=0;f<Y.length;f++)C.push(Y[f]._template);for(f=0;f<C.length;f++)delete C[f].templateitemname}}for(g=0;g<v.length;g++){var x=v[g],T=c[x];if(x in b?m(T,b[x],x):b[x]=T,o(x)===x)for(var d in b){var M=o(d);d===M||M!==x||d in c||m(T,b[d],x)}}}function o(c){return c.replace(/[0-9]+$/,"")}function r(c,b,g,f,v){var m=v&&g(v);for(var x in c){var T=c[x],d=s(c,x,f),M=s(c,x,v),A=g(M);if(!A){var C=o(x);C!==x&&(A=g(M=s(c,C,v)))}if(!(m&&m===A||!A||A._noTemplating||A.valType==="data_array"||A.arrayOk&&Array.isArray(T)))if(!A.valType&&k(T))r(T,b,g,d,M);else if(A._isLinkedToArray&&Array.isArray(T))for(var P=!1,O=0,z={},B=0;B<T.length;B++){var Y=T[B];if(k(Y)){var D=Y.name;if(D)z[D]||(r(Y,b,g,s(T,O,d),s(T,O,M)),O++,z[D]=1);else if(!P){var G=s(c,h.arrayDefaultKey(x),f),V=s(T,O,d);r(Y,b,g,V,s(T,O,M));var j=w.nestedProperty(b,V);w.nestedProperty(b,G).set(j.get()),j.set(null),P=!0}}}else w.nestedProperty(b,d).set(T)}}function n(c,b){return i.getLayoutValObject(c,w.nestedProperty({},b).parts)}function a(c,b){return i.getTraceValObject(c,w.nestedProperty({},b).parts)}function s(c,b,g){return g?Array.isArray(c)?g+"["+b+"]":g+"."+b:b}function u(c){for(var b=0;b<c.length;b++)if(k(c[b]))return!0}function p(c){var b;switch(c.code){case"data":b="The template has no key data.";break;case"layout":b="The template has no key layout.";break;case"missing":b=c.path?"There are no templates for item "+c.path+" with name "+c.templateitemname:"There are no templates for trace "+c.index+", of type "+c.traceType+".";break;case"unused":b=c.path?"The template item at "+c.path+" was not used in constructing the plot.":c.dataCount?"Some of the templates of type "+c.traceType+" were not used. The template has "+c.templateCount+" traces, the data only has "+c.dataCount+" of this type.":"The template has "+c.templateCount+" traces of type "+c.traceType+" but there are none in the data.";break;case"reused":b="Some of the templates of type "+c.traceType+" were used more than once. The template has "+c.templateCount+" traces, the data has "+c.dataCount+" of this type."}return c.msg=b,c}E.makeTemplate=function(c){c=w.isPlainObject(c)?c:w.getGraphDiv(c),c=w.extendDeep({_context:l},{data:c.data,layout:c.layout}),_.supplyDefaults(c);var b=c.data||[],g=c.layout||{};g._basePlotModules=c._fullLayout._basePlotModules,g._modules=c._fullLayout._modules;var f={data:{},layout:{}};b.forEach(function(O){var z={};r(O,z,a.bind(null,O));var B=w.coerce(O,{},y,"type"),Y=f.data[B];Y||(Y=f.data[B]=[]),Y.push(z)}),r(g,f.layout,n.bind(null,g)),delete f.layout.template;var v=g.template;if(k(v)){var m,x,T,d,M,A,C=v.layout;k(C)&&t(C,f.layout);var P=v.data;if(k(P)){for(x in f.data)if(T=P[x],Array.isArray(T)){for(A=(M=f.data[x]).length,d=T.length,m=0;m<A;m++)t(T[m%d],M[m]);for(m=A;m<d;m++)M.push(w.extendDeep({},T[m]))}for(x in P)x in f.data||(f.data[x]=w.extendDeep([],P[x]))}}return f},E.validateTemplate=function(c,b){var g=w.extendDeep({},{_context:l,data:c.data,layout:c.layout}),f=g.layout||{};k(b)||(b=f.template||{});var v=b.layout,m=b.data,x=[];g.layout=f,g.layout.template=b,_.supplyDefaults(g);var T=g._fullLayout,d=g._fullData,M={};if(k(v)?(function Y(D,G){for(var V in D)if(V.charAt(0)!=="_"&&k(D[V])){var j,W=o(V),Z=[];for(j=0;j<G.length;j++)Z.push(s(D,V,G[j])),W!==V&&Z.push(s(D,W,G[j]));for(j=0;j<Z.length;j++)M[Z[j]]=1;Y(D[V],Z)}}(T,["layout"]),function Y(D,G){for(var V in D)if(V.indexOf("defaults")===-1&&k(D[V])){var j=s(D,V,G);M[j]?Y(D[V],j):x.push({code:"unused",path:j})}}(v,"layout")):x.push({code:"layout"}),k(m)){for(var A,C={},P=0;P<d.length;P++){var O=d[P];C[A=O.type]=(C[A]||0)+1,O._fullInput._template||x.push({code:"missing",index:O._fullInput.index,traceType:A})}for(A in m){var z=m[A].length,B=C[A]||0;z>B?x.push({code:"unused",traceType:A,templateCount:z,dataCount:B}):B>z&&x.push({code:"reused",traceType:A,templateCount:z,dataCount:B})}}else x.push({code:"data"});if(function Y(D,G){for(var V in D)if(V.charAt(0)!=="_"){var j=D[V],W=s(D,V,G);k(j)?(Array.isArray(D)&&j._template===!1&&j.templateitemname&&x.push({code:"missing",path:W,templateitemname:j.templateitemname}),Y(j,W)):Array.isArray(j)&&u(j)&&Y(j,W)}}({data:d,layout:T},""),x.length)return x.map(p)}},403:function(R,E,e){var w=e(92770),k=e(72391),i=e(74875),_=e(71828),y=e(25095),h=e(5900),l=e(70942),t=e(11506).version,o={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};R.exports=function(r,n){var a,s,u,p;function c(B){return!(B in n)||_.validate(n[B],o[B])}if(n=n||{},_.isPlainObject(r)?(a=r.data||[],s=r.layout||{},u=r.config||{},p={}):(r=_.getGraphDiv(r),a=_.extendDeep([],r.data),s=_.extendDeep({},r.layout),u=r._context,p=r._fullLayout||{}),!c("width")&&n.width!==null||!c("height")&&n.height!==null)throw new Error("Height and width should be pixel values.");if(!c("format"))throw new Error("Export format is not "+_.join2(o.format.values,", "," or ")+".");var b={};function g(B,Y){return _.coerce(n,b,o,B,Y)}var f=g("format"),v=g("width"),m=g("height"),x=g("scale"),T=g("setBackground"),d=g("imageDataOnly"),M=document.createElement("div");M.style.position="absolute",M.style.left="-5000px",document.body.appendChild(M);var A=_.extendFlat({},s);v?A.width=v:n.width===null&&w(p.width)&&(A.width=p.width),m?A.height=m:n.height===null&&w(p.height)&&(A.height=p.height);var C=_.extendFlat({},u,{_exportedPlot:!0,staticPlot:!0,setBackground:T}),P=y.getRedrawFunc(M);function O(){return new Promise(function(B){setTimeout(B,y.getDelay(M._fullLayout))})}function z(){return new Promise(function(B,Y){var D=h(M,f,x),G=M._fullLayout.width,V=M._fullLayout.height;function j(){k.purge(M),document.body.removeChild(M)}if(f==="full-json"){var W=i.graphJson(M,!1,"keepdata","object",!0,!0);return W.version=t,W=JSON.stringify(W),j(),B(d?W:y.encodeJSON(W))}if(j(),f==="svg")return B(d?D:y.encodeSVG(D));var Z=document.createElement("canvas");Z.id=_.randstr(),l({format:f,width:G,height:V,scale:x,canvas:Z,svg:D,promise:!0}).then(B).catch(Y)})}return new Promise(function(B,Y){k.newPlot(M,a,A,C).then(P).then(O).then(z).then(function(D){B(function(G){return d?G.replace(y.IMAGE_URL_PREFIX,""):G}(D))}).catch(function(D){Y(D)})})}},84936:function(R,E,e){var w=e(71828),k=e(74875),i=e(86281),_=e(72075).dfltConfig,y=w.isPlainObject,h=Array.isArray,l=w.isArrayOrTypedArray;function t(c,b,g,f,v,m){m=m||[];for(var x=Object.keys(c),T=0;T<x.length;T++){var d=x[T];if(d!=="transforms"){var M=m.slice();M.push(d);var A=c[d],C=b[d],P=s(g,d),O=(P||{}).valType,z=O==="info_array",B=O==="colorscale",Y=(P||{}).items;if(a(g,d))if(y(A)&&y(C)&&O!=="any")t(A,C,P,f,v,M);else if(z&&h(A)){A.length>C.length&&f.push(n("unused",v,M.concat(C.length)));var D,G,V,j,W,Z=C.length,ie=Array.isArray(Y);if(ie&&(Z=Math.min(Z,Y.length)),P.dimensions===2)for(G=0;G<Z;G++)if(h(A[G])){A[G].length>C[G].length&&f.push(n("unused",v,M.concat(G,C[G].length)));var te=C[G].length;for(D=0;D<(ie?Math.min(te,Y[G].length):te);D++)V=ie?Y[G][D]:Y,j=A[G][D],W=C[G][D],w.validate(j,V)?W!==j&&W!==+j&&f.push(n("dynamic",v,M.concat(G,D),j,W)):f.push(n("value",v,M.concat(G,D),j))}else f.push(n("array",v,M.concat(G),A[G]));else for(G=0;G<Z;G++)V=ie?Y[G]:Y,j=A[G],W=C[G],w.validate(j,V)?W!==j&&W!==+j&&f.push(n("dynamic",v,M.concat(G),j,W)):f.push(n("value",v,M.concat(G),j))}else if(P.items&&!z&&h(A)){var J,X,ee=Y[Object.keys(Y)[0]],re=[];for(J=0;J<C.length;J++){var oe=C[J]._index||J;if((X=M.slice()).push(oe),y(A[oe])&&y(C[J])){re.push(oe);var ue=A[oe],ce=C[J];y(ue)&&ue.visible!==!1&&ce.visible===!1?f.push(n("invisible",v,X)):t(ue,ce,ee,f,v,X)}}for(J=0;J<A.length;J++)(X=M.slice()).push(J),y(A[J])?re.indexOf(J)===-1&&f.push(n("unused",v,X)):f.push(n("object",v,X,A[J]))}else!y(A)&&y(C)?f.push(n("object",v,M,A)):l(A)||!l(C)||z||B?d in b?w.validate(A,P)?P.valType==="enumerated"&&(P.coerceNumber&&A!==+C||A!==C)&&f.push(n("dynamic",v,M,A,C)):f.push(n("value",v,M,A)):f.push(n("unused",v,M,A)):f.push(n("array",v,M,A));else f.push(n("schema",v,M))}}return f}R.exports=function(c,b){c===void 0&&(c=[]),b===void 0&&(b={});var g,f,v=i.get(),m=[],x={_context:w.extendFlat({},_)};h(c)?(x.data=w.extendDeep([],c),g=c):(x.data=[],g=[],m.push(n("array","data"))),y(b)?(x.layout=w.extendDeep({},b),f=b):(x.layout={},f={},arguments.length>1&&m.push(n("object","layout"))),k.supplyDefaults(x);for(var T=x._fullData,d=g.length,M=0;M<d;M++){var A=g[M],C=["data",M];if(y(A)){var P=T[M],O=P.type,z=v.traces[O].attributes;z.type={valType:"enumerated",values:[O]},P.visible===!1&&A.visible!==!1&&m.push(n("invisible",C)),t(A,P,z,m,C);var B=A.transforms,Y=P.transforms;if(B){h(B)||m.push(n("array",C,["transforms"])),C.push("transforms");for(var D=0;D<B.length;D++){var G=["transforms",D],V=B[D].type;if(y(B[D])){var j=v.transforms[V]?v.transforms[V].attributes:{};j.type={valType:"enumerated",values:Object.keys(v.transforms)},t(B[D],Y[D],j,m,C,G)}else m.push(n("object",C,G))}}}else m.push(n("object",C))}var W=x._fullLayout,Z=function(ie,te){for(var J=ie.layout.layoutAttributes,X=0;X<te.length;X++){var ee=te[X],re=ie.traces[ee.type],oe=re.layoutAttributes;oe&&(ee.subplot?w.extendFlat(J[re.attributes.subplot.dflt],oe):w.extendFlat(J,oe))}return J}(v,T);return t(f,W,Z,m,"layout"),m.length===0?void 0:m};var o={object:function(c,b){return(c==="layout"&&b===""?"The layout argument":c[0]==="data"&&b===""?"Trace "+c[1]+" in the data argument":r(c)+"key "+b)+" must be linked to an object container"},array:function(c,b){return(c==="data"?"The data argument":r(c)+"key "+b)+" must be linked to an array container"},schema:function(c,b){return r(c)+"key "+b+" is not part of the schema"},unused:function(c,b,g){var f=y(g)?"container":"key";return r(c)+f+" "+b+" did not get coerced"},dynamic:function(c,b,g,f){return[r(c)+"key",b,"(set to '"+g+"')","got reset to","'"+f+"'","during defaults."].join(" ")},invisible:function(c,b){return(b?r(c)+"item "+b:"Trace "+c[1])+" got defaulted to be not visible"},value:function(c,b,g){return[r(c)+"key "+b,"is set to an invalid value ("+g+")"].join(" ")}};function r(c){return h(c)?"In data trace "+c[1]+", ":"In "+c+", "}function n(c,b,g,f,v){var m,x;g=g||"",h(b)?(m=b[0],x=b[1]):(m=b,x=null);var T=function(M){if(!h(M))return String(M);for(var A="",C=0;C<M.length;C++){var P=M[C];typeof P=="number"?A=A.substr(0,A.length-1)+"["+P+"]":A+=P,C<M.length-1&&(A+=".")}return A}(g),d=o[c](b,T,f,v);return w.log(d),{code:c,container:m,trace:x,path:g,astr:T,msg:d}}function a(c,b){var g=p(b),f=g.keyMinusId,v=g.id;return!!(f in c&&c[f]._isSubplotObj&&v)||b in c}function s(c,b){return b in c?c[b]:c[p(b).keyMinusId]}var u=w.counterRegex("([a-z]+)");function p(c){var b=c.match(u);return{keyMinusId:b&&b[1],id:b&&b[2]}}},85594:function(R){R.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},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"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}},85501:function(R,E,e){var w=e(71828),k=e(44467);R.exports=function(i,_,y){var h,l,t=y.name,o=y.inclusionAttr||"visible",r=_[t],n=w.isArrayOrTypedArray(i[t])?i[t]:[],a=_[t]=[],s=k.arrayTemplater(_,t,o);for(h=0;h<n.length;h++){var u=n[h];w.isPlainObject(u)?l=s.newItem(u):(l=s.newItem({}))[o]=!1,l._index=h,l[o]!==!1&&y.handleItemDefaults(u,l,_,y),a.push(l)}var p=s.defaultItems();for(h=0;h<p.length;h++)(l=p[h])._index=a.length,y.handleItemDefaults({},l,_,y,{}),a.push(l);if(w.isArrayOrTypedArray(r)){var c=Math.min(r.length,a.length);for(h=0;h<c;h++)w.relinkPrivateKeys(a[h],r[h])}return a}},9012:function(R,E,e){var w=e(41940),k=e(77914);R.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:w({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:k.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},transforms:{_isLinkedToArray:"transform",editType:"calc"},uirevision:{valType:"any",editType:"none"}}},42973:function(R,E,e){var w=e(92770),k=e(71828),i=k.dateTime2ms,_=k.incrementMonth,y=e(50606).ONEAVGMONTH;R.exports=function(h,l,t,o){if(l.type!=="date")return{vals:o};var r=h[t+"periodalignment"];if(!r)return{vals:o};var n,a=h[t+"period"];if(w(a)){if((a=+a)<=0)return{vals:o}}else if(typeof a=="string"&&a.charAt(0)==="M"){var s=+a.substring(1);if(!(s>0&&Math.round(s)===s))return{vals:o};n=s}for(var u=l.calendar,p=r==="start",c=r==="end",b=h[t+"period0"],g=i(b,u)||0,f=[],v=[],m=[],x=o.length,T=0;T<x;T++){var d,M,A,C=o[T];if(n){for(d=Math.round((C-g)/(n*y)),A=_(g,n*d,u);A>C;)A=_(A,-n,u);for(;A<=C;)A=_(A,n,u);M=_(A,-n,u)}else{for(A=g+(d=Math.round((C-g)/a))*a;A>C;)A-=a;for(;A<=C;)A+=a;M=A-a}f[T]=p?M:c?A:(M+A)/2,v[T]=M,m[T]=A}return{vals:f,starts:v,ends:m}}},89502:function(R){R.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}},71739:function(R,E,e){var w=e(39898),k=e(92770),i=e(71828),_=e(50606).FP_SAFE,y=e(73972),h=e(91424),l=e(41675),t=l.getFromId,o=l.isLinked;function r(m,x){var T,d,M=[],A=m._fullLayout,C=a(A,x,0),P=a(A,x,1),O=u(m,x),z=O.min,B=O.max;if(z.length===0||B.length===0)return i.simpleMap(x.range,x.r2l);var Y=z[0].val,D=B[0].val;for(T=1;T<z.length&&Y===D;T++)Y=Math.min(Y,z[T].val);for(T=1;T<B.length&&Y===D;T++)D=Math.max(D,B[T].val);var G=!1;if(x.range){var V=i.simpleMap(x.range,x.r2l);G=V[1]<V[0]}x.autorange==="reversed"&&(G=!0,x.autorange=!0);var j,W,Z,ie,te,J,X=x.rangemode,ee=X==="tozero",re=X==="nonnegative",oe=x._length,ue=oe/10,ce=0;for(T=0;T<z.length;T++)for(j=z[T],d=0;d<B.length;d++)(J=(W=B[d]).val-j.val-n(x,j.val,W.val))>0&&((te=oe-C(j)-P(W))>ue?J/te>ce&&(Z=j,ie=W,ce=J/te):J/oe>ce&&(Z={val:j.val,nopad:1},ie={val:W.val,nopad:1},ce=J/oe));if(Y===D){var de=Y-1,me=Y+1;if(ee)if(Y===0)M=[0,1];else{var _e=(Y>0?B:z).reduce(function(we,xe){return Math.max(we,P(xe))},0),Se=Y/(1-Math.min(.5,_e/oe));M=Y>0?[0,Se]:[Se,0]}else M=re?[Math.max(0,de),Math.max(1,me)]:[de,me]}else ee?(Z.val>=0&&(Z={val:0,nopad:1}),ie.val<=0&&(ie={val:0,nopad:1})):re&&(Z.val-ce*C(Z)<0&&(Z={val:0,nopad:1}),ie.val<=0&&(ie={val:1,nopad:1})),ce=(ie.val-Z.val-n(x,j.val,W.val))/(oe-C(Z)-P(ie)),M=[Z.val-ce*C(Z),ie.val+ce*P(ie)];return G&&M.reverse(),i.simpleMap(M,x.l2r||Number)}function n(m,x,T){var d=0;if(m.rangebreaks)for(var M=m.locateBreaks(x,T),A=0;A<M.length;A++){var C=M[A];d+=C.max-C.min}return d}function a(m,x,T){var d=.05*x._length,M=x._anchorAxis||{};if((x.ticklabelposition||"").indexOf("inside")!==-1||(M.ticklabelposition||"").indexOf("inside")!==-1){var A=x.autorange==="reversed";if(!A){var C=i.simpleMap(x.range,x.r2l);A=C[1]<C[0]}A&&(T=!T)}var P=0;return o(m,x._id)||(P=function(O,z,B){var Y=0,D=z._id.charAt(0)==="x";for(var G in O._plots){var V=O._plots[G];if(z._id===V.xaxis._id||z._id===V.yaxis._id){var j=(D?V.yaxis:V.xaxis)||{};if((j.ticklabelposition||"").indexOf("inside")!==-1&&(!B&&(j.side==="left"||j.side==="bottom")||B&&(j.side==="top"||j.side==="right"))){if(j._vals){var W=i.deg2rad(j._tickAngles[j._id+"tick"]||0),Z=Math.abs(Math.cos(W)),ie=Math.abs(Math.sin(W));if(!j._vals[0].bb){var te=j._id+"tick";j._selections[te].each(function(oe){var ue=w.select(this);ue.select(".text-math-group").empty()&&(oe.bb=h.bBox(ue.node()))})}for(var J=0;J<j._vals.length;J++){var X=j._vals[J].bb;if(X){var ee=2*s+X.width,re=2*s+X.height;Y=Math.max(Y,D?Math.max(ee*Z,re*ie):Math.max(re*Z,ee*ie))}}}j.ticks==="inside"&&j.ticklabelposition==="inside"&&(Y+=j.ticklen||0)}}}return Y}(m,x,T)),d=Math.max(P,d),x.constrain==="domain"&&x._inputDomain&&(d*=(x._inputDomain[1]-x._inputDomain[0])/(x.domain[1]-x.domain[0])),function(O){return O.nopad?0:O.pad+(O.extrapad?d:P)}}R.exports={getAutoRange:r,makePadFn:a,doAutoRange:function(m,x,T){if(x.setScale(),x.autorange){x.range=T?T.slice():r(m,x),x._r=x.range.slice(),x._rl=i.simpleMap(x._r,x.r2l);var d=x._input,M={};M[x._attr+".range"]=x.range,M[x._attr+".autorange"]=x.autorange,y.call("_storeDirectGUIEdit",m.layout,m._fullLayout._preGUI,M),d.range=x.range.slice(),d.autorange=x.autorange}var A=x._anchorAxis;if(A&&A.rangeslider){var C=A.rangeslider[x._name];C&&C.rangemode==="auto"&&(C.range=r(m,x)),A._input.rangeslider[x._name]=i.extendFlat({},C)}},findExtremes:function(m,x,T){T||(T={}),m._m||m.setScale();var d,M,A,C,P,O,z,B,Y,D=[],G=[],V=x.length,j=T.padded||!1,W=T.tozero&&(m.type==="linear"||m.type==="-"),Z=m.type==="log",ie=!1,te=T.vpadLinearized||!1;function J(me){if(Array.isArray(me))return ie=!0,function(Se){return Math.max(Number(me[Se]||0),0)};var _e=Math.max(Number(me||0),0);return function(){return _e}}var X=J((m._m>0?T.ppadplus:T.ppadminus)||T.ppad||0),ee=J((m._m>0?T.ppadminus:T.ppadplus)||T.ppad||0),re=J(T.vpadplus||T.vpad),oe=J(T.vpadminus||T.vpad);if(!ie){if(B=1/0,Y=-1/0,Z)for(d=0;d<V;d++)(M=x[d])<B&&M>0&&(B=M),M>Y&&M<_&&(Y=M);else for(d=0;d<V;d++)(M=x[d])<B&&M>-_&&(B=M),M>Y&&M<_&&(Y=M);x=[B,Y],V=2}var ue={tozero:W,extrapad:j};function ce(me){A=x[me],k(A)&&(O=X(me),z=ee(me),te?(C=m.c2l(A)-oe(me),P=m.c2l(A)+re(me)):(B=A-oe(me),Y=A+re(me),Z&&B<Y/10&&(B=Y/10),C=m.c2l(B),P=m.c2l(Y)),W&&(C=Math.min(0,C),P=Math.max(0,P)),g(C)&&p(D,C,z,ue),g(P)&&c(G,P,O,ue))}var de=Math.min(6,V);for(d=0;d<de;d++)ce(d);for(d=V-1;d>=de;d--)ce(d);return{min:D,max:G,opts:T}},concatExtremes:u};var s=3;function u(m,x,T){var d,M,A,C=x._id,P=m._fullData,O=m._fullLayout,z=[],B=[];function Y(W,Z){for(d=0;d<Z.length;d++){var ie=W[Z[d]],te=(ie._extremes||{})[C];if(ie.visible===!0&&te){for(M=0;M<te.min.length;M++)A=te.min[M],p(z,A.val,A.pad,{extrapad:A.extrapad});for(M=0;M<te.max.length;M++)A=te.max[M],c(B,A.val,A.pad,{extrapad:A.extrapad})}}}if(Y(P,x._traceIndices),Y(O.annotations||[],x._annIndices||[]),Y(O.shapes||[],x._shapeIndices||[]),x._matchGroup&&!T){for(var D in x._matchGroup)if(D!==x._id){var G=t(m,D),V=u(m,G,!0),j=x._length/G._length;for(M=0;M<V.min.length;M++)A=V.min[M],p(z,A.val,A.pad*j,{extrapad:A.extrapad});for(M=0;M<V.max.length;M++)A=V.max[M],c(B,A.val,A.pad*j,{extrapad:A.extrapad})}}return{min:z,max:B}}function p(m,x,T,d){b(m,x,T,d,f)}function c(m,x,T,d){b(m,x,T,d,v)}function b(m,x,T,d,M){for(var A=d.tozero,C=d.extrapad,P=!0,O=0;O<m.length&&P;O++){var z=m[O];if(M(z.val,x)&&z.pad>=T&&(z.extrapad||!C)){P=!1;break}M(x,z.val)&&z.pad<=T&&(C||!z.extrapad)&&(m.splice(O,1),O--)}if(P){var B=A&&x===0;m.push({val:x,pad:B?0:T,extrapad:!B&&C})}}function g(m){return k(m)&&Math.abs(m)<_}function f(m,x){return m<=x}function v(m,x){return m>=x}},89298:function(R,E,e){var w=e(39898),k=e(92770),i=e(74875),_=e(73972),y=e(71828),h=y.strTranslate,l=e(63893),t=e(92998),o=e(7901),r=e(91424),n=e(13838),a=e(66287),s=e(50606),u=s.ONEMAXYEAR,p=s.ONEAVGYEAR,c=s.ONEMINYEAR,b=s.ONEMAXQUARTER,g=s.ONEAVGQUARTER,f=s.ONEMINQUARTER,v=s.ONEMAXMONTH,m=s.ONEAVGMONTH,x=s.ONEMINMONTH,T=s.ONEWEEK,d=s.ONEDAY,M=d/2,A=s.ONEHOUR,C=s.ONEMIN,P=s.ONESEC,O=s.MINUS_SIGN,z=s.BADNUM,B={K:"zeroline"},Y={K:"gridline",L:"path"},D={K:"minor-gridline",L:"path"},G={K:"tick",L:"path"},V={K:"tick",L:"text"},j={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},W=e(18783),Z=W.MID_SHIFT,ie=W.CAP_SHIFT,te=W.LINE_SPACING,J=W.OPPOSITE_SIDE,X=R.exports={};X.setConvert=e(21994);var ee=e(4322),re=e(41675),oe=re.idSort,ue=re.isLinked;X.id2name=re.id2name,X.name2id=re.name2id,X.cleanId=re.cleanId,X.list=re.list,X.listIds=re.listIds,X.getFromId=re.getFromId,X.getFromTrace=re.getFromTrace;var ce=e(71739);X.getAutoRange=ce.getAutoRange,X.findExtremes=ce.findExtremes;var de=1e-4;function me(Be){var je=(Be[1]-Be[0])*de;return[Be[0]-je,Be[1]+je]}X.coerceRef=function(Be,je,at,ot,xt,yt){var _t=ot.charAt(ot.length-1),gt=at._fullLayout._subplots[_t+"axis"],Ct=ot+"ref",dt={};return xt||(xt=gt[0]||(typeof yt=="string"?yt:yt[0])),yt||(yt=xt),gt=gt.concat(gt.map(function(vt){return vt+" domain"})),dt[Ct]={valType:"enumerated",values:gt.concat(yt?typeof yt=="string"?[yt]:yt:[]),dflt:xt},y.coerce(Be,je,dt,Ct)},X.getRefType=function(Be){return Be===void 0?Be:Be==="paper"?"paper":Be==="pixel"?"pixel":/( domain)$/.test(Be)?"domain":"range"},X.coercePosition=function(Be,je,at,ot,xt,yt){var _t,gt;if(X.getRefType(ot)!=="range")_t=y.ensureNumber,gt=at(xt,yt);else{var Ct=X.getFromId(je,ot);gt=at(xt,yt=Ct.fraction2r(yt)),_t=Ct.cleanPos}Be[xt]=_t(gt)},X.cleanPosition=function(Be,je,at){return(at==="paper"||at==="pixel"?y.ensureNumber:X.getFromId(je,at).cleanPos)(Be)},X.redrawComponents=function(Be,je){je=je||X.listIds(Be);var at=Be._fullLayout;function ot(xt,yt,_t,gt){for(var Ct=_.getComponentMethod(xt,yt),dt={},vt=0;vt<je.length;vt++)for(var At=at[X.id2name(je[vt])][_t],Bt=0;Bt<At.length;Bt++){var jt=At[Bt];if(!dt[jt]&&(Ct(Be,jt),dt[jt]=1,gt))return}}ot("annotations","drawOne","_annIndices"),ot("shapes","drawOne","_shapeIndices"),ot("images","draw","_imgIndices",!0),ot("selections","drawOne","_selectionIndices")};var _e=X.getDataConversions=function(Be,je,at,ot){var xt,yt=at==="x"||at==="y"||at==="z"?at:ot;if(Array.isArray(yt)){if(xt={type:ee(ot,void 0,{autotypenumbers:Be._fullLayout.autotypenumbers}),_categories:[]},X.setConvert(xt),xt.type==="category")for(var _t=0;_t<ot.length;_t++)xt.d2c(ot[_t])}else xt=X.getFromTrace(Be,je,yt);return xt?{d2c:xt.d2c,c2d:xt.c2d}:yt==="ids"?{d2c:we,c2d:we}:{d2c:Se,c2d:Se}};function Se(Be){return+Be}function we(Be){return String(Be)}function xe(Be,je){return Math.abs((Be/je+.5)%1-.5)<.001}function De(Be,je){return Math.abs(Be/je-1)<.001}function Ee(Be){return+Be.substring(1)}function Me(Be,je){return Be.rangebreaks&&(je=je.filter(function(at){return Be.maskBreaks(at.x)!==z})),je}function he(Be){var je=Be._mainAxis,at=[];if(je._vals){for(var ot=0;ot<je._vals.length;ot++)if(!je._vals[ot].noTick){var xt=je.l2p(je._vals[ot].x),yt=Be.p2l(xt),_t=X.tickText(Be,yt);je._vals[ot].minor&&(_t.minor=!0,_t.text=""),at.push(_t)}}return Me(Be,at)}function fe(Be){var je=me(y.simpleMap(Be.range,Be.r2l)),at=Math.min(je[0],je[1]),ot=Math.max(je[0],je[1]),xt=Be.type==="category"?Be.d2l_noadd:Be.d2l;Be.type==="log"&&String(Be.dtick).charAt(0)!=="L"&&(Be.dtick="L"+Math.pow(10,Math.floor(Math.min(Be.range[0],Be.range[1]))-1));for(var yt=[],_t=0;_t<=1;_t++)if(!_t||Be.minor){var gt=_t?Be.minor.tickvals:Be.tickvals,Ct=_t?[]:Be.ticktext;if(gt){Array.isArray(Ct)||(Ct=[]);for(var dt=0;dt<gt.length;dt++){var vt=xt(gt[dt]);if(vt>at&&vt<ot){var At=Ct[dt]===void 0?X.tickText(Be,vt):ze(Be,vt,String(Ct[dt]));_t&&(At.minor=!0,At.text=""),yt.push(At)}}}}return Me(Be,yt)}X.getDataToCoordFunc=function(Be,je,at,ot){return _e(Be,je,at,ot).d2c},X.counterLetter=function(Be){var je=Be.charAt(0);return je==="x"?"y":je==="y"?"x":void 0},X.minDtick=function(Be,je,at,ot){["log","category","multicategory"].indexOf(Be.type)===-1&&ot?Be._minDtick===void 0?(Be._minDtick=je,Be._forceTick0=at):Be._minDtick&&((Be._minDtick/je+1e-6)%1<2e-6&&((at-Be._forceTick0)/je%1+1.000001)%1<2e-6?(Be._minDtick=je,Be._forceTick0=at):((je/Be._minDtick+1e-6)%1>2e-6||((at-Be._forceTick0)/Be._minDtick%1+1.000001)%1>2e-6)&&(Be._minDtick=0)):Be._minDtick=0},X.saveRangeInitial=function(Be,je){for(var at=X.list(Be,"",!0),ot=!1,xt=0;xt<at.length;xt++){var yt=at[xt],_t=yt._rangeInitial===void 0,gt=_t||!(yt.range[0]===yt._rangeInitial[0]&&yt.range[1]===yt._rangeInitial[1]);(_t&&yt.autorange===!1||je&>)&&(yt._rangeInitial=yt.range.slice(),ot=!0)}return ot},X.saveShowSpikeInitial=function(Be,je){for(var at=X.list(Be,"",!0),ot=!1,xt="on",yt=0;yt<at.length;yt++){var _t=at[yt],gt=_t._showSpikeInitial===void 0,Ct=gt||_t.showspikes!==_t._showspikes;(gt||je&&Ct)&&(_t._showSpikeInitial=_t.showspikes,ot=!0),xt!=="on"||_t.showspikes||(xt="off")}return Be._fullLayout._cartesianSpikesEnabled=xt,ot},X.autoBin=function(Be,je,at,ot,xt,yt){var _t,gt=y.aggNums(Math.min,null,Be),Ct=y.aggNums(Math.max,null,Be);if(je.type==="category"||je.type==="multicategory")return{start:gt-.5,end:Ct+.5,size:Math.max(1,Math.round(yt)||1),_dataSpan:Ct-gt};if(xt||(xt=je.calendar),_t=je.type==="log"?{type:"linear",range:[gt,Ct]}:{type:je.type,range:y.simpleMap([gt,Ct],je.c2r,0,xt),calendar:xt},X.setConvert(_t),yt=yt&&a.dtick(yt,_t.type))_t.dtick=yt,_t.tick0=a.tick0(void 0,_t.type,xt);else{var dt;if(at)dt=(Ct-gt)/at;else{var vt=y.distinctVals(Be),At=Math.pow(10,Math.floor(Math.log(vt.minDiff)/Math.LN10)),Bt=At*y.roundUp(vt.minDiff/At,[.9,1.9,4.9,9.9],!0);dt=Math.max(Bt,2*y.stdev(Be)/Math.pow(Be.length,ot?.25:.4)),k(dt)||(dt=1)}X.autoTicks(_t,dt)}var jt,Ut=_t.dtick,tn=X.tickIncrement(X.tickFirst(_t),Ut,"reverse",xt);if(typeof Ut=="number")tn=function(Xt,Qt,Gt,vn,Tn){var dn=0,Yt=0,ln=0,nn=0;function fn(Dn){return(1+100*(Dn-Xt)/Gt.dtick)%100<2}for(var mn=0;mn<Qt.length;mn++)Qt[mn]%1==0?ln++:k(Qt[mn])||nn++,fn(Qt[mn])&&dn++,fn(Qt[mn]+Gt.dtick/2)&&Yt++;var xn=Qt.length-nn;if(ln===xn&&Gt.type!=="date")Gt.dtick<1?Xt=vn-.5*Gt.dtick:(Xt-=.5)+Gt.dtick<vn&&(Xt+=Gt.dtick);else if(Yt<.1*xn&&(dn>.3*xn||fn(vn)||fn(Tn))){var Pn=Gt.dtick/2;Xt+=Xt+Pn<vn?Pn:-Pn}return Xt}(tn,Be,_t,gt,Ct),jt=tn+(1+Math.floor((Ct-tn)/Ut))*Ut;else for(_t.dtick.charAt(0)==="M"&&(tn=function(Xt,Qt,Gt,vn,Tn){var dn=y.findExactDates(Qt,Tn);if(dn.exactDays>.8){var Yt=Number(Gt.substr(1));dn.exactYears>.8&&Yt%12==0?Xt=X.tickIncrement(Xt,"M6","reverse")+1.5*d:dn.exactMonths>.8?Xt=X.tickIncrement(Xt,"M1","reverse")+15.5*d:Xt-=M;var ln=X.tickIncrement(Xt,Gt);if(ln<=vn)return ln}return Xt}(tn,Be,Ut,gt,xt)),jt=tn;jt<=Ct;)jt=X.tickIncrement(jt,Ut,!1,xt);return{start:je.c2r(tn,0,xt),end:je.c2r(jt,0,xt),size:Ut,_dataSpan:Ct-gt}},X.prepMinorTicks=function(Be,je,at){if(!je.minor.dtick){delete Be.dtick;var ot,xt=je.dtick&&k(je._tmin);if(xt){var yt=X.tickIncrement(je._tmin,je.dtick,!0);ot=[je._tmin,.99*yt+.01*je._tmin]}else{var _t=y.simpleMap(je.range,je.r2l);ot=[_t[0],.8*_t[0]+.2*_t[1]]}if(Be.range=y.simpleMap(ot,je.l2r),Be._isMinor=!0,X.prepTicks(Be,at),xt){var gt=k(je.dtick),Ct=k(Be.dtick),dt=gt?je.dtick:+je.dtick.substring(1),vt=Ct?Be.dtick:+Be.dtick.substring(1);gt&&Ct?xe(dt,vt)?dt===2*T&&vt===2*d&&(Be.dtick=T):dt===2*T&&vt===3*d?Be.dtick=T:dt!==T||(je._input.minor||{}).nticks?De(dt/vt,2.5)?Be.dtick=dt/2:Be.dtick=dt:Be.dtick=d:String(je.dtick).charAt(0)==="M"?Ct?Be.dtick="M1":xe(dt,vt)?dt>=12&&vt===2&&(Be.dtick="M3"):Be.dtick=je.dtick:String(Be.dtick).charAt(0)==="L"?String(je.dtick).charAt(0)==="L"?xe(dt,vt)||(Be.dtick=De(dt/vt,2.5)?je.dtick/2:je.dtick):Be.dtick="D1":Be.dtick==="D2"&&+je.dtick>1&&(Be.dtick=1)}Be.range=je.range}je.minor._tick0Init===void 0&&(Be.tick0=je.tick0)},X.prepTicks=function(Be,je){var at=y.simpleMap(Be.range,Be.r2l,void 0,void 0,je);if(Be.tickmode==="auto"||!Be.dtick){var ot,xt=Be.nticks;xt||(Be.type==="category"||Be.type==="multicategory"?(ot=Be.tickfont?y.bigFont(Be.tickfont.size||12):15,xt=Be._length/ot):(ot=Be._id.charAt(0)==="y"?40:80,xt=y.constrain(Be._length/ot,4,9)+1),Be._name==="radialaxis"&&(xt*=2)),Be.minor&&Be.minor.tickmode!=="array"||Be.tickmode==="array"&&(xt*=100),Be._roughDTick=Math.abs(at[1]-at[0])/xt,X.autoTicks(Be,Be._roughDTick),Be._minDtick>0&&Be.dtick<2*Be._minDtick&&(Be.dtick=Be._minDtick,Be.tick0=Be.l2r(Be._forceTick0))}Be.ticklabelmode==="period"&&function(yt){var _t;function gt(){return!(k(yt.dtick)||yt.dtick.charAt(0)!=="M")}var Ct=gt(),dt=X.getTickFormat(yt);if(dt){var vt=yt._dtickInit!==yt.dtick;/%[fLQsSMX]/.test(dt)||(/%[HI]/.test(dt)?(_t=A,vt&&!Ct&&yt.dtick<A&&(yt.dtick=A)):/%p/.test(dt)?(_t=M,vt&&!Ct&&yt.dtick<M&&(yt.dtick=M)):/%[Aadejuwx]/.test(dt)?(_t=d,vt&&!Ct&&yt.dtick<d&&(yt.dtick=d)):/%[UVW]/.test(dt)?(_t=T,vt&&!Ct&&yt.dtick<T&&(yt.dtick=T)):/%[Bbm]/.test(dt)?(_t=m,vt&&(Ct?Ee(yt.dtick)<1:yt.dtick<x)&&(yt.dtick="M1")):/%[q]/.test(dt)?(_t=g,vt&&(Ct?Ee(yt.dtick)<3:yt.dtick<f)&&(yt.dtick="M3")):/%[Yy]/.test(dt)&&(_t=p,vt&&(Ct?Ee(yt.dtick)<12:yt.dtick<c)&&(yt.dtick="M12")))}(Ct=gt())&&yt.tick0===yt._dowTick0&&(yt.tick0=yt._rawTick0),yt._definedDelta=_t}(Be),Be.tick0||(Be.tick0=Be.type==="date"?"2000-01-01":0),Be.type==="date"&&Be.dtick<.1&&(Be.dtick=.1),Ae(Be)},X.calcTicks=function(Be,je){for(var at,ot,xt=Be.type,yt=Be.calendar,_t=Be.ticklabelstep,gt=Be.ticklabelmode==="period",Ct=y.simpleMap(Be.range,Be.r2l,void 0,void 0,je),dt=Ct[1]<Ct[0],vt=Math.min(Ct[0],Ct[1]),At=Math.max(Ct[0],Ct[1]),Bt=Math.max(1e3,Be._length||0),jt=[],Ut=[],tn=[],Xt=[],Qt=Be.minor&&(Be.minor.ticks||Be.minor.showgrid),Gt=1;Gt>=(Qt?0:1);Gt--){var vn=!Gt;Gt?(Be._dtickInit=Be.dtick,Be._tick0Init=Be.tick0):(Be.minor._dtickInit=Be.minor.dtick,Be.minor._tick0Init=Be.minor.tick0);var Tn=Gt?Be:y.extendFlat({},Be,Be.minor);if(vn?X.prepMinorTicks(Tn,Be,je):X.prepTicks(Tn,je),Tn.tickmode!=="array")if(Tn.tickmode!=="sync"){var dn=me(Ct),Yt=dn[0],ln=dn[1],nn=k(Tn.dtick),fn=xt==="log"&&!(nn||Tn.dtick.charAt(0)==="L"),mn=X.tickFirst(Tn,je);if(Gt){if(Be._tmin=mn,mn<Yt!==dt)break;xt!=="category"&&xt!=="multicategory"||(ln=dt?Math.max(-.5,ln):Math.min(Be._categories.length-.5,ln))}var xn,Pn,Dn=null,En=mn;Gt&&(nn?Pn=Be.dtick:xt==="date"?typeof Be.dtick=="string"&&Be.dtick.charAt(0)==="M"&&(Pn=m*Be.dtick.substring(1)):Pn=Be._roughDTick,xn=Math.round((Be.r2l(En)-Be.r2l(Be.tick0))/Pn)-1);var Fn=Tn.dtick;for(Tn.rangebreaks&&Tn._tick0Init!==Tn.tick0&&(En=Ze(En,Be),dt||(En=X.tickIncrement(En,Fn,!dt,yt))),Gt&>&&(En=X.tickIncrement(En,Fn,!dt,yt),xn--);dt?En>=ln:En<=ln;En=X.tickIncrement(En,Fn,dt,yt)){if(Gt&&xn++,Tn.rangebreaks&&!dt){if(En<Yt)continue;if(Tn.maskBreaks(En)===z&&Ze(En,Tn)>=At)break}if(tn.length>Bt||En===Dn)break;Dn=En;var er={value:En};Gt?(fn&&En!==(0|En)&&(er.simpleLabel=!0),_t>1&&xn%_t&&(er.skipLabel=!0),tn.push(er)):(er.minor=!0,Xt.push(er))}}else tn=[],jt=he(Be);else Gt?(tn=[],jt=fe(Be)):(Xt=[],Ut=fe(Be))}if(Qt&&!(Be.minor.ticks==="inside"&&Be.ticks==="outside"||Be.minor.ticks==="outside"&&Be.ticks==="inside")){for(var ir=tn.map(function(Lt){return Lt.value}),fr=[],ar=0;ar<Xt.length;ar++){var Kn=Xt[ar],wr=Kn.value;if(ir.indexOf(wr)===-1){for(var Ht=!1,sn=0;!Ht&&sn<tn.length;sn++)1e7+tn[sn].value===1e7+wr&&(Ht=!0);Ht||fr.push(Kn)}}Xt=fr}if(gt&&function(Lt,$t,rn){for(var wn=0;wn<Lt.length;wn++){var kn=Lt[wn].value,Ln=wn,hn=wn+1;wn<Lt.length-1?(Ln=wn,hn=wn+1):wn>0?(Ln=wn-1,hn=wn):(Ln=wn,hn=wn);var Jt,en=Lt[Ln].value,cn=Lt[hn].value,pn=Math.abs(cn-en),On=rn||pn,Rn=0;On>=c?Rn=pn>=c&&pn<=u?pn:p:rn===g&&On>=f?Rn=pn>=f&&pn<=b?pn:g:On>=x?Rn=pn>=x&&pn<=v?pn:m:rn===T&&On>=T?Rn=T:On>=d?Rn=d:rn===M&&On>=M?Rn=M:rn===A&&On>=A&&(Rn=A),Rn>=pn&&(Rn=pn,Jt=!0);var Wn=kn+Rn;if($t.rangebreaks&&Rn>0){for(var Hn=0,tr=0;tr<84;tr++){var Xn=(tr+.5)/84;$t.maskBreaks(kn*(1-Xn)+Xn*Wn)!==z&&Hn++}(Rn*=Hn/84)||(Lt[wn].drop=!0),Jt&&pn>T&&(Rn=pn)}(Rn>0||wn===0)&&(Lt[wn].periodX=kn+Rn/2)}}(tn,Be,Be._definedDelta),Be.rangebreaks){var gn=Be._id.charAt(0)==="y",bn=1;Be.tickmode==="auto"&&(bn=Be.tickfont?Be.tickfont.size:12);var Cn=NaN;for(at=tn.length-1;at>-1;at--)if(tn[at].drop)tn.splice(at,1);else{tn[at].value=Ze(tn[at].value,Be);var Yn=Be.c2p(tn[at].value);(gn?Cn>Yn-bn:Cn<Yn+bn)?tn.splice(dt?at+1:at,1):Cn=Yn}}et(Be)&&Math.abs(Ct[1]-Ct[0])===360&&tn.pop(),Be._tmax=(tn[tn.length-1]||{}).value,Be._prevDateHead="",Be._inCalcTicks=!0;var Nn,jn,rr=function(Lt){Lt.text="",Be._prevDateHead=ot};for(tn=tn.concat(Xt),at=0;at<tn.length;at++){var Wt=tn[at].minor,An=tn[at].value;Wt?Ut.push({x:An,minor:!0}):(ot=Be._prevDateHead,Nn=X.tickText(Be,An,!1,tn[at].simpleLabel),(jn=tn[at].periodX)!==void 0&&(Nn.periodX=jn,(jn>At||jn<vt)&&(jn>At&&(Nn.periodX=At),jn<vt&&(Nn.periodX=vt),rr(Nn))),tn[at].skipLabel&&rr(Nn),jt.push(Nn))}return jt=jt.concat(Ut),Be._inCalcTicks=!1,gt&&jt.length&&(jt[0].noTick=!0),jt};var ae=[2,5,10],be=[1,2,3,6,12],Ie=[1,2,5,10,15,30],Te=[1,2,3,7,14],Ne=[-.046,0,.301,.477,.602,.699,.778,.845,.903,.954,1],qe=[-.301,0,.301,.699,1],ve=[15,30,45,90,180];function Ce(Be,je,at){return je*y.roundUp(Be/je,at)}function Ae(Be){var je=Be.dtick;if(Be._tickexponent=0,k(je)||typeof je=="string"||(je=1),Be.type!=="category"&&Be.type!=="multicategory"||(Be._tickround=null),Be.type==="date"){var at=Be.r2l(Be.tick0),ot=Be.l2r(at).replace(/(^-|i)/g,""),xt=ot.length;if(String(je).charAt(0)==="M")xt>10||ot.substr(5)!=="01-01"?Be._tickround="d":Be._tickround=+je.substr(1)%12==0?"y":"m";else if(je>=d&&xt<=10||je>=15*d)Be._tickround="d";else if(je>=C&&xt<=16||je>=A)Be._tickround="M";else if(je>=P&&xt<=19||je>=C)Be._tickround="S";else{var yt=Be.l2r(at+je).replace(/^-/,"").length;Be._tickround=Math.max(xt,yt)-20,Be._tickround<0&&(Be._tickround=4)}}else if(k(je)||je.charAt(0)==="L"){var _t=Be.range.map(Be.r2d||Number);k(je)||(je=Number(je.substr(1))),Be._tickround=2-Math.floor(Math.log(je)/Math.LN10+.01);var gt=Math.max(Math.abs(_t[0]),Math.abs(_t[1])),Ct=Math.floor(Math.log(gt)/Math.LN10+.01),dt=Be.minexponent===void 0?3:Be.minexponent;Math.abs(Ct)>dt&&(Ve(Be.exponentformat)&&!Ye(Ct)?Be._tickexponent=3*Math.round((Ct-1)/3):Be._tickexponent=Ct)}else Be._tickround=null}function ze(Be,je,at){var ot=Be.tickfont||{};return{x:je,dx:0,dy:0,text:at||"",fontSize:ot.size,font:ot.family,fontColor:ot.color}}X.autoTicks=function(Be,je,at){var ot;function xt(At){return Math.pow(At,Math.floor(Math.log(je)/Math.LN10))}if(Be.type==="date"){Be.tick0=y.dateTick0(Be.calendar,0);var yt=2*je;if(yt>p)je/=p,ot=xt(10),Be.dtick="M"+12*Ce(je,ot,ae);else if(yt>m)je/=m,Be.dtick="M"+Ce(je,1,be);else if(yt>d){if(Be.dtick=Ce(je,d,Be._hasDayOfWeekBreaks?[1,2,7,14]:Te),!at){var _t=X.getTickFormat(Be),gt=Be.ticklabelmode==="period";gt&&(Be._rawTick0=Be.tick0),/%[uVW]/.test(_t)?Be.tick0=y.dateTick0(Be.calendar,2):Be.tick0=y.dateTick0(Be.calendar,1),gt&&(Be._dowTick0=Be.tick0)}}else yt>A?Be.dtick=Ce(je,A,be):yt>C?Be.dtick=Ce(je,C,Ie):yt>P?Be.dtick=Ce(je,P,Ie):(ot=xt(10),Be.dtick=Ce(je,ot,ae))}else if(Be.type==="log"){Be.tick0=0;var Ct=y.simpleMap(Be.range,Be.r2l);if(Be._isMinor&&(je*=1.5),je>.7)Be.dtick=Math.ceil(je);else if(Math.abs(Ct[1]-Ct[0])<1){var dt=1.5*Math.abs((Ct[1]-Ct[0])/je);je=Math.abs(Math.pow(10,Ct[1])-Math.pow(10,Ct[0]))/dt,ot=xt(10),Be.dtick="L"+Ce(je,ot,ae)}else Be.dtick=je>.3?"D2":"D1"}else Be.type==="category"||Be.type==="multicategory"?(Be.tick0=0,Be.dtick=Math.ceil(Math.max(je,1))):et(Be)?(Be.tick0=0,ot=1,Be.dtick=Ce(je,ot,ve)):(Be.tick0=0,ot=xt(10),Be.dtick=Ce(je,ot,ae));if(Be.dtick===0&&(Be.dtick=1),!k(Be.dtick)&&typeof Be.dtick!="string"){var vt=Be.dtick;throw Be.dtick=1,"ax.dtick error: "+String(vt)}},X.tickIncrement=function(Be,je,at,ot){var xt=at?-1:1;if(k(je))return y.increment(Be,xt*je);var yt=je.charAt(0),_t=xt*Number(je.substr(1));if(yt==="M")return y.incrementMonth(Be,_t,ot);if(yt==="L")return Math.log(Math.pow(10,Be)+_t)/Math.LN10;if(yt==="D"){var gt=je==="D2"?qe:Ne,Ct=Be+.01*xt,dt=y.roundUp(y.mod(Ct,1),gt,at);return Math.floor(Ct)+Math.log(w.round(Math.pow(10,dt),1))/Math.LN10}throw"unrecognized dtick "+String(je)},X.tickFirst=function(Be,je){var at=Be.r2l||Number,ot=y.simpleMap(Be.range,at,void 0,void 0,je),xt=ot[1]<ot[0],yt=xt?Math.floor:Math.ceil,_t=me(ot)[0],gt=Be.dtick,Ct=at(Be.tick0);if(k(gt)){var dt=yt((_t-Ct)/gt)*gt+Ct;return Be.type!=="category"&&Be.type!=="multicategory"||(dt=y.constrain(dt,0,Be._categories.length-1)),dt}var vt=gt.charAt(0),At=Number(gt.substr(1));if(vt==="M"){for(var Bt,jt,Ut,tn=0,Xt=Ct;tn<10;){if(((Bt=X.tickIncrement(Xt,gt,xt,Be.calendar))-_t)*(Xt-_t)<=0)return xt?Math.min(Xt,Bt):Math.max(Xt,Bt);jt=(_t-(Xt+Bt)/2)/(Bt-Xt),Ut=vt+(Math.abs(Math.round(jt))||1)*At,Xt=X.tickIncrement(Xt,Ut,jt<0?!xt:xt,Be.calendar),tn++}return y.error("tickFirst did not converge",Be),Xt}if(vt==="L")return Math.log(yt((Math.pow(10,_t)-Ct)/At)*At+Ct)/Math.LN10;if(vt==="D"){var Qt=gt==="D2"?qe:Ne,Gt=y.roundUp(y.mod(_t,1),Qt,xt);return Math.floor(_t)+Math.log(w.round(Math.pow(10,Gt),1))/Math.LN10}throw"unrecognized dtick "+String(gt)},X.tickText=function(Be,je,at,ot){var xt,yt=ze(Be,je),_t=Be.tickmode==="array",gt=at||_t,Ct=Be.type,dt=Ct==="category"?Be.d2l_noadd:Be.d2l;if(_t&&Array.isArray(Be.ticktext)){var vt=y.simpleMap(Be.range,Be.r2l),At=(Math.abs(vt[1]-vt[0])-(Be._lBreaks||0))/1e4;for(xt=0;xt<Be.ticktext.length&&!(Math.abs(je-dt(Be.tickvals[xt]))<At);xt++);if(xt<Be.ticktext.length)return yt.text=String(Be.ticktext[xt]),yt}function Bt(Xt){if(Xt===void 0)return!0;if(at)return Xt==="none";var Qt={first:Be._tmin,last:Be._tmax}[Xt];return Xt!=="all"&&je!==Qt}var jt=at?"never":Be.exponentformat!=="none"&&Bt(Be.showexponent)?"hide":"";if(Ct==="date"?function(Xt,Qt,Gt,vn){var Tn=Xt._tickround,dn=Gt&&Xt.hoverformat||X.getTickFormat(Xt);vn&&(Tn=k(Tn)?4:{y:"m",m:"d",d:"M",M:"S",S:4}[Tn]);var Yt,ln=y.formatDate(Qt.x,dn,Tn,Xt._dateFormat,Xt.calendar,Xt._extraFormat),nn=ln.indexOf(`
|
||
`);if(nn!==-1&&(Yt=ln.substr(nn+1),ln=ln.substr(0,nn)),vn&&(ln==="00:00:00"||ln==="00:00"?(ln=Yt,Yt=""):ln.length===8&&(ln=ln.replace(/:00$/,""))),Yt)if(Gt)Tn==="d"?ln+=", "+Yt:ln=Yt+(ln?", "+ln:"");else if(Xt._inCalcTicks&&Xt._prevDateHead===Yt){var fn=Qe(Xt),mn=Xt._trueSide||Xt.side;(!fn&&mn==="top"||fn&&mn==="bottom")&&(ln+="<br> ")}else Xt._prevDateHead=Yt,ln+="<br>"+Yt;Qt.text=ln}(Be,yt,at,gt):Ct==="log"?function(Xt,Qt,Gt,vn,Tn){var dn=Xt.dtick,Yt=Qt.x,ln=Xt.tickformat,nn=typeof dn=="string"&&dn.charAt(0);if(Tn==="never"&&(Tn=""),vn&&nn!=="L"&&(dn="L3",nn="L"),ln||nn==="L")Qt.text=$e(Math.pow(10,Yt),Xt,Tn,vn);else if(k(dn)||nn==="D"&&y.mod(Yt+.01,1)<.1){var fn=Math.round(Yt),mn=Math.abs(fn),xn=Xt.exponentformat;xn==="power"||Ve(xn)&&Ye(fn)?(Qt.text=fn===0?1:fn===1?"10":"10<sup>"+(fn>1?"":O)+mn+"</sup>",Qt.fontSize*=1.25):(xn==="e"||xn==="E")&&mn>2?Qt.text="1"+xn+(fn>0?"+":O)+mn:(Qt.text=$e(Math.pow(10,Yt),Xt,"","fakehover"),dn==="D1"&&Xt._id.charAt(0)==="y"&&(Qt.dy-=Qt.fontSize/6))}else{if(nn!=="D")throw"unrecognized dtick "+String(dn);Qt.text=String(Math.round(Math.pow(10,y.mod(Yt,1)))),Qt.fontSize*=.75}if(Xt.dtick==="D1"){var Pn=String(Qt.text).charAt(0);Pn!=="0"&&Pn!=="1"||(Xt._id.charAt(0)==="y"?Qt.dx-=Qt.fontSize/4:(Qt.dy+=Qt.fontSize/2,Qt.dx+=(Xt.range[1]>Xt.range[0]?1:-1)*Qt.fontSize*(Yt<0?.5:.25)))}}(Be,yt,0,gt,jt):Ct==="category"?function(Xt,Qt){var Gt=Xt._categories[Math.round(Qt.x)];Gt===void 0&&(Gt=""),Qt.text=String(Gt)}(Be,yt):Ct==="multicategory"?function(Xt,Qt,Gt){var vn=Math.round(Qt.x),Tn=Xt._categories[vn]||[],dn=Tn[1]===void 0?"":String(Tn[1]),Yt=Tn[0]===void 0?"":String(Tn[0]);Gt?Qt.text=Yt+" - "+dn:(Qt.text=dn,Qt.text2=Yt)}(Be,yt,at):et(Be)?function(Xt,Qt,Gt,vn,Tn){if(Xt.thetaunit!=="radians"||Gt)Qt.text=$e(Qt.x,Xt,Tn,vn);else{var dn=Qt.x/180;if(dn===0)Qt.text="0";else{var Yt=function(nn){function fn(Dn,En){return Math.abs(Dn-En)<=1e-6}var mn=function(Dn){for(var En=1;!fn(Math.round(Dn*En)/En,Dn);)En*=10;return En}(nn),xn=nn*mn,Pn=Math.abs(function Dn(En,Fn){return fn(Fn,0)?En:Dn(Fn,En%Fn)}(xn,mn));return[Math.round(xn/Pn),Math.round(mn/Pn)]}(dn);if(Yt[1]>=100)Qt.text=$e(y.deg2rad(Qt.x),Xt,Tn,vn);else{var ln=Qt.x<0;Yt[1]===1?Yt[0]===1?Qt.text="π":Qt.text=Yt[0]+"π":Qt.text=["<sup>",Yt[0],"</sup>","⁄","<sub>",Yt[1],"</sub>","π"].join(""),ln&&(Qt.text=O+Qt.text)}}}}(Be,yt,at,gt,jt):function(Xt,Qt,Gt,vn,Tn){Tn==="never"?Tn="":Xt.showexponent==="all"&&Math.abs(Qt.x/Xt.dtick)<1e-6&&(Tn="hide"),Qt.text=$e(Qt.x,Xt,Tn,vn)}(Be,yt,0,gt,jt),ot||(Be.tickprefix&&!Bt(Be.showtickprefix)&&(yt.text=Be.tickprefix+yt.text),Be.ticksuffix&&!Bt(Be.showticksuffix)&&(yt.text+=Be.ticksuffix)),Be.labelalias&&Be.labelalias.hasOwnProperty(yt.text)){var Ut=Be.labelalias[yt.text];typeof Ut=="string"&&(yt.text=Ut)}if(Be.tickson==="boundaries"||Be.showdividers){var tn=function(Xt){var Qt=Be.l2p(Xt);return Qt>=0&&Qt<=Be._length?Xt:null};yt.xbnd=[tn(yt.x-.5),tn(yt.x+Be.dtick-.5)]}return yt},X.hoverLabelText=function(Be,je,at){at&&(Be=y.extendFlat({},Be,{hoverformat:at}));var ot=Array.isArray(je)?je[0]:je,xt=Array.isArray(je)?je[1]:void 0;if(xt!==void 0&&xt!==ot)return X.hoverLabelText(Be,ot,at)+" - "+X.hoverLabelText(Be,xt,at);var yt=Be.type==="log"&&ot<=0,_t=X.tickText(Be,Be.c2l(yt?-ot:ot),"hover").text;return yt?ot===0?"0":O+_t:_t};var Ue=["f","p","n","μ","m","","k","M","G","T"];function Ve(Be){return Be==="SI"||Be==="B"}function Ye(Be){return Be>14||Be<-15}function $e(Be,je,at,ot){var xt=Be<0,yt=je._tickround,_t=at||je.exponentformat||"B",gt=je._tickexponent,Ct=X.getTickFormat(je),dt=je.separatethousands;if(ot){var vt={exponentformat:_t,minexponent:je.minexponent,dtick:je.showexponent==="none"?je.dtick:k(Be)&&Math.abs(Be)||1,range:je.showexponent==="none"?je.range.map(je.r2d):[0,Be||1]};Ae(vt),yt=(Number(vt._tickround)||0)+4,gt=vt._tickexponent,je.hoverformat&&(Ct=je.hoverformat)}if(Ct)return je._numFormat(Ct)(Be).replace(/-/g,O);var At,Bt=Math.pow(10,-yt)/2;if(_t==="none"&&(gt=0),(Be=Math.abs(Be))<Bt)Be="0",xt=!1;else{if(Be+=Bt,gt&&(Be*=Math.pow(10,-gt),yt+=gt),yt===0)Be=String(Math.floor(Be));else if(yt<0){Be=(Be=String(Math.round(Be))).substr(0,Be.length+yt);for(var jt=yt;jt<0;jt++)Be+="0"}else{var Ut=(Be=String(Be)).indexOf(".")+1;Ut&&(Be=Be.substr(0,Ut+yt).replace(/\.?0+$/,""))}Be=y.numSeparate(Be,je._separators,dt)}return gt&&_t!=="hide"&&(Ve(_t)&&Ye(gt)&&(_t="power"),At=gt<0?O+-gt:_t!=="power"?"+"+gt:String(gt),_t==="e"||_t==="E"?Be+=_t+At:_t==="power"?Be+="×10<sup>"+At+"</sup>":_t==="B"&>===9?Be+="B":Ve(_t)&&(Be+=Ue[gt/3+5])),xt?O+Be:Be}function rt(Be,je){if(Be){var at=Object.keys(j).reduce(function(ot,xt){return je.indexOf(xt)!==-1&&j[xt].forEach(function(yt){ot[yt]=1}),ot},{});Object.keys(Be).forEach(function(ot){at[ot]||(ot.length===1?Be[ot]=0:delete Be[ot])})}}function ht(Be,je){for(var at=[],ot={},xt=0;xt<je.length;xt++){var yt=je[xt];ot[yt.text2]?ot[yt.text2].push(yt.x):ot[yt.text2]=[yt.x]}for(var _t in ot)at.push(ze(Be,y.interp(ot[_t],.5),_t));return at}function nt(Be){return Be.periodX!==void 0?Be.periodX:Be.x}function bt(Be){return[Be.text,Be.x,Be.axInfo,Be.font,Be.fontSize,Be.fontColor].join("_")}function wt(Be){var je=Be.title.font.size,at=(Be.title.text.match(l.BR_TAG_ALL)||[]).length;return Be.title.hasOwnProperty("standoff")?at?je*(ie+at*te):je*ie:at?je*(at+1)*te:je}function ut(Be,je){var at=Be.l2p(je);return at>1&&at<Be._length-1}function lt(Be){var je=w.select(Be),at=je.select(".text-math-group");return at.empty()?je.select("text"):at}function Tt(Be){return Be._id+".automargin"}function Et(Be){return Tt(Be)+".mirror"}function St(Be){return Be._id+".rangeslider"}function Ft(Be,je){for(var at=0;at<je.length;at++)Be.indexOf(je[at])===-1&&Be.push(je[at])}function zt(Be,je,at){var ot,xt,yt=[],_t=[],gt=Be.layout;for(ot=0;ot<je.length;ot++)yt.push(X.getFromId(Be,je[ot]));for(ot=0;ot<at.length;ot++)_t.push(X.getFromId(Be,at[ot]));var Ct=Object.keys(n),dt=["anchor","domain","overlaying","position","side","tickangle","editType"],vt=["linear","log"];for(ot=0;ot<Ct.length;ot++){var At=Ct[ot],Bt=yt[0][At],jt=_t[0][At],Ut=!0,tn=!1,Xt=!1;if(At.charAt(0)!=="_"&&typeof Bt!="function"&&dt.indexOf(At)===-1){for(xt=1;xt<yt.length&&Ut;xt++){var Qt=yt[xt][At];At==="type"&&vt.indexOf(Bt)!==-1&&vt.indexOf(Qt)!==-1&&Bt!==Qt?tn=!0:Qt!==Bt&&(Ut=!1)}for(xt=1;xt<_t.length&&Ut;xt++){var Gt=_t[xt][At];At==="type"&&vt.indexOf(jt)!==-1&&vt.indexOf(Gt)!==-1&&jt!==Gt?Xt=!0:_t[xt][At]!==jt&&(Ut=!1)}Ut&&(tn&&(gt[yt[0]._name].type="linear"),Xt&&(gt[_t[0]._name].type="linear"),Je(gt,At,yt,_t,Be._fullLayout._dfltTitle))}}for(ot=0;ot<Be._fullLayout.annotations.length;ot++){var vn=Be._fullLayout.annotations[ot];je.indexOf(vn.xref)!==-1&&at.indexOf(vn.yref)!==-1&&y.swapAttrs(gt.annotations[ot],["?"])}}function Je(Be,je,at,ot,xt){var yt,_t=y.nestedProperty,gt=_t(Be[at[0]._name],je).get(),Ct=_t(Be[ot[0]._name],je).get();for(je==="title"&&(gt&>.text===xt.x&&(gt.text=xt.y),Ct&&Ct.text===xt.y&&(Ct.text=xt.x)),yt=0;yt<at.length;yt++)_t(Be,at[yt]._name+"."+je).set(Ct);for(yt=0;yt<ot.length;yt++)_t(Be,ot[yt]._name+"."+je).set(gt)}function et(Be){return Be._id==="angularaxis"}function Ze(Be,je){for(var at=je._rangebreaks.length,ot=0;ot<at;ot++){var xt=je._rangebreaks[ot];if(Be>=xt.min&&Be<xt.max)return xt.max}return Be}function Qe(Be){return(Be.ticklabelposition||"").indexOf("inside")!==-1}function st(Be,je){Qe(Be._anchorAxis||{})&&Be._hideCounterAxisInsideTickLabels&&Be._hideCounterAxisInsideTickLabels(je)}function ft(Be,je,at,ot){var xt,yt=Be.anchor==="free"||Be.overlaying!==void 0&&Be.overlaying!==!1?Be.overlaying:Be._id;xt=ot?Be.side==="right"?je:-je:je,yt in at||(at[yt]={}),Be.side in at[yt]||(at[yt][Be.side]=0),at[yt][Be.side]+=xt}X.getTickFormat=function(Be){var je,at,ot,xt,yt,_t,gt,Ct;function dt(Bt){return typeof Bt!="string"?Bt:Number(Bt.replace("M",""))*m}function vt(Bt,jt){var Ut=["L","D"];if(typeof Bt==typeof jt){if(typeof Bt=="number")return Bt-jt;var tn=Ut.indexOf(Bt.charAt(0)),Xt=Ut.indexOf(jt.charAt(0));return tn===Xt?Number(Bt.replace(/(L|D)/g,""))-Number(jt.replace(/(L|D)/g,"")):tn-Xt}return typeof Bt=="number"?1:-1}function At(Bt,jt){var Ut=jt[0]===null,tn=jt[1]===null,Xt=vt(Bt,jt[0])>=0,Qt=vt(Bt,jt[1])<=0;return(Ut||Xt)&&(tn||Qt)}if(Be.tickformatstops&&Be.tickformatstops.length>0)switch(Be.type){case"date":case"linear":for(je=0;je<Be.tickformatstops.length;je++)if((ot=Be.tickformatstops[je]).enabled&&(xt=Be.dtick,yt=ot.dtickrange,_t=void 0,gt=void 0,Ct=void 0,_t=dt||function(Bt){return Bt},gt=yt[0],Ct=yt[1],(!gt&&typeof gt!="number"||_t(gt)<=_t(xt))&&(!Ct&&typeof Ct!="number"||_t(Ct)>=_t(xt)))){at=ot;break}break;case"log":for(je=0;je<Be.tickformatstops.length;je++)if((ot=Be.tickformatstops[je]).enabled&&At(Be.dtick,ot.dtickrange)){at=ot;break}}return at?at.value:Be.tickformat},X.getSubplots=function(Be,je){var at=Be._fullLayout._subplots,ot=at.cartesian.concat(at.gl2d||[]),xt=je?X.findSubplotsWithAxis(ot,je):ot;return xt.sort(function(yt,_t){var gt=yt.substr(1).split("y"),Ct=_t.substr(1).split("y");return gt[0]===Ct[0]?+gt[1]-+Ct[1]:+gt[0]-+Ct[0]}),xt},X.findSubplotsWithAxis=function(Be,je){for(var at=new RegExp(je._id.charAt(0)==="x"?"^"+je._id+"y":je._id+"$"),ot=[],xt=0;xt<Be.length;xt++){var yt=Be[xt];at.test(yt)&&ot.push(yt)}return ot},X.makeClipPaths=function(Be){var je=Be._fullLayout;if(!je._hasOnlyLargeSploms){var at,ot,xt={_offset:0,_length:je.width,_id:""},yt={_offset:0,_length:je.height,_id:""},_t=X.list(Be,"x",!0),gt=X.list(Be,"y",!0),Ct=[];for(at=0;at<_t.length;at++)for(Ct.push({x:_t[at],y:yt}),ot=0;ot<gt.length;ot++)at===0&&Ct.push({x:xt,y:gt[ot]}),Ct.push({x:_t[at],y:gt[ot]});var dt=je._clips.selectAll(".axesclip").data(Ct,function(vt){return vt.x._id+vt.y._id});dt.enter().append("clipPath").classed("axesclip",!0).attr("id",function(vt){return"clip"+je._uid+vt.x._id+vt.y._id}).append("rect"),dt.exit().remove(),dt.each(function(vt){w.select(this).select("rect").attr({x:vt.x._offset||0,y:vt.y._offset||0,width:vt.x._length||1,height:vt.y._length||1})})}},X.draw=function(Be,je,at){var ot=Be._fullLayout;je==="redraw"&&ot._paper.selectAll("g.subplot").each(function(gt){var Ct=gt[0],dt=ot._plots[Ct];if(dt){var vt=dt.xaxis,At=dt.yaxis;dt.xaxislayer.selectAll("."+vt._id+"tick").remove(),dt.yaxislayer.selectAll("."+At._id+"tick").remove(),dt.xaxislayer.selectAll("."+vt._id+"tick2").remove(),dt.yaxislayer.selectAll("."+At._id+"tick2").remove(),dt.xaxislayer.selectAll("."+vt._id+"divider").remove(),dt.yaxislayer.selectAll("."+At._id+"divider").remove(),dt.minorGridlayer&&dt.minorGridlayer.selectAll("path").remove(),dt.gridlayer&&dt.gridlayer.selectAll("path").remove(),dt.zerolinelayer&&dt.zerolinelayer.selectAll("path").remove(),ot._infolayer.select(".g-"+vt._id+"title").remove(),ot._infolayer.select(".g-"+At._id+"title").remove()}});var xt=je&&je!=="redraw"?je:X.listIds(Be),yt=X.list(Be).filter(function(gt){return gt.autoshift}).map(function(gt){return gt.overlaying});xt.map(function(gt){var Ct=X.getFromId(Be,gt);if(Ct.tickmode==="sync"&&Ct.overlaying){var dt=xt.findIndex(function(vt){return vt===Ct.overlaying});dt>=0&&xt.unshift(xt.splice(dt,1).shift())}});var _t={false:{left:0,right:0}};return y.syncOrAsync(xt.map(function(gt){return function(){if(gt){var Ct=X.getFromId(Be,gt);at||(at={}),at.axShifts=_t,at.overlayingShiftedAx=yt;var dt=X.drawOne(Be,Ct,at);return Ct._shiftPusher&&ft(Ct,Ct._fullDepth||0,_t,!0),Ct._r=Ct.range.slice(),Ct._rl=y.simpleMap(Ct._r,Ct.r2l),dt}}}))},X.drawOne=function(Be,je,at){var ot,xt,yt,_t=(at=at||{}).axShifts||{},gt=at.overlayingShiftedAx||[];je.setScale();var Ct=Be._fullLayout,dt=je._id,vt=dt.charAt(0),At=X.counterLetter(dt),Bt=Ct._plots[je._mainSubplot];if(Bt){if(je._shiftPusher=je.autoshift||gt.indexOf(je._id)!==-1||gt.indexOf(je.overlaying)!==-1,je._shiftPusher&je.anchor==="free"){var jt=je.linewidth/2||0;je.ticks==="inside"&&(jt+=je.ticklen),ft(je,jt,_t,!0),ft(je,je.shift||0,_t,!1)}at.skipTitle===!0&&je._shift!==void 0||(je._shift=function(hn,Jt){return hn.autoshift?Jt[hn.overlaying][hn.side]:hn.shift||0}(je,_t));var Ut=Bt[vt+"axislayer"],tn=je._mainLinePosition,Xt=tn+=je._shift,Qt=je._mainMirrorPosition,Gt=je._vals=X.calcTicks(je),vn=[je.mirror,Xt,Qt].join("_");for(ot=0;ot<Gt.length;ot++)Gt[ot].axInfo=vn;je._selections={},je._tickAngles&&(je._prevTickAngles=je._tickAngles),je._tickAngles={},je._depth=null;var Tn={};if(je.visible){var dn,Yt,ln=X.makeTransTickFn(je),nn=X.makeTransTickLabelFn(je),fn=je.ticks==="inside",mn=je.ticks==="outside";if(je.tickson==="boundaries"){var xn=function(hn,Jt){var en,cn=[],pn=function(On,Rn){var Wn=On.xbnd[Rn];Wn!==null&&cn.push(y.extendFlat({},On,{x:Wn}))};if(Jt.length){for(en=0;en<Jt.length;en++)pn(Jt[en],0);pn(Jt[en-1],1)}return cn}(0,Gt);Yt=X.clipEnds(je,xn),dn=fn?Yt:xn}else Yt=X.clipEnds(je,Gt),dn=fn&&je.ticklabelmode!=="period"?Yt:Gt;var Pn,Dn=je._gridVals=Yt,En=function(hn,Jt){var en,cn,pn=[],On=Jt.length&&Jt[Jt.length-1].x<Jt[0].x,Rn=function(Hn,tr){var Xn=Hn.xbnd[tr];Xn!==null&&pn.push(y.extendFlat({},Hn,{x:Xn}))};if(hn.showdividers&&Jt.length){for(en=0;en<Jt.length;en++){var Wn=Jt[en];Wn.text2!==cn&&Rn(Wn,On?1:0),cn=Wn.text2}Rn(Jt[en-1],On?0:1)}return pn}(je,Gt);if(!Ct._hasOnlyLargeSploms){var Fn=je._subplotsWith,er={};for(ot=0;ot<Fn.length;ot++){xt=Fn[ot];var ir=(yt=Ct._plots[xt])[At+"axis"],fr=ir._mainAxis._id;if(!er[fr]){er[fr]=1;var ar=vt==="x"?"M0,"+ir._offset+"v"+ir._length:"M"+ir._offset+",0h"+ir._length;X.drawGrid(Be,je,{vals:Dn,counterAxis:ir,layer:yt.gridlayer.select("."+dt),minorLayer:yt.minorGridlayer.select("."+dt),path:ar,transFn:ln}),X.drawZeroLine(Be,je,{counterAxis:ir,layer:yt.zerolinelayer,path:ar,transFn:ln})}}}var Kn=X.getTickSigns(je),wr=X.getTickSigns(je,"minor");if(je.ticks||je.minor&&je.minor.ticks){var Ht,sn,gn,bn,Cn=X.makeTickPath(je,Xt,Kn[2]),Yn=X.makeTickPath(je,Xt,wr[2],{minor:!0});if(je._anchorAxis&&je.mirror&&je.mirror!==!0?(Ht=X.makeTickPath(je,Qt,Kn[3]),sn=X.makeTickPath(je,Qt,wr[3],{minor:!0}),gn=Cn+Ht,bn=Yn+sn):(Ht="",sn="",gn=Cn,bn=Yn),je.showdividers&&mn&&je.tickson==="boundaries"){var Nn={};for(ot=0;ot<En.length;ot++)Nn[En[ot].x]=1;Pn=function(hn){return Nn[hn.x]?Ht:gn}}else Pn=function(hn){return hn.minor?bn:gn}}if(X.drawTicks(Be,je,{vals:dn,layer:Ut,path:Pn,transFn:ln}),je.mirror==="allticks"){var jn=Object.keys(je._linepositions||{});for(ot=0;ot<jn.length;ot++){xt=jn[ot],yt=Ct._plots[xt];var rr=je._linepositions[xt]||[],Wt=rr[0],An=rr[1],Lt=rr[2],$t=X.makeTickPath(je,Wt,Lt?Kn[0]:wr[0],{minor:Lt})+X.makeTickPath(je,An,Lt?Kn[1]:wr[1],{minor:Lt});X.drawTicks(Be,je,{vals:dn,layer:yt[vt+"axislayer"],path:$t,transFn:ln})}}var rn=[];if(rn.push(function(){return X.drawLabels(Be,je,{vals:Gt,layer:Ut,plotinfo:yt,transFn:nn,labelFns:X.makeLabelFns(je,Xt)})}),je.type==="multicategory"){var wn={x:2,y:10}[vt];rn.push(function(){var hn={x:"height",y:"width"}[vt],Jt=Ln()[hn]+wn+(je._tickAngles[dt+"tick"]?je.tickfont.size*te:0);return X.drawLabels(Be,je,{vals:ht(je,Gt),layer:Ut,cls:dt+"tick2",repositionOnUpdate:!0,secondary:!0,transFn:ln,labelFns:X.makeLabelFns(je,Xt+Jt*Kn[4])})}),rn.push(function(){return je._depth=Kn[4]*(Ln("tick2")[je.side]-Xt),function(hn,Jt,en){var cn=Jt._id+"divider",pn=en.vals,On=en.layer.selectAll("path."+cn).data(pn,bt);On.exit().remove(),On.enter().insert("path",":first-child").classed(cn,1).classed("crisp",1).call(o.stroke,Jt.dividercolor).style("stroke-width",r.crispRound(hn,Jt.dividerwidth,1)+"px"),On.attr("transform",en.transFn).attr("d",en.path)}(Be,je,{vals:En,layer:Ut,path:X.makeTickPath(je,Xt,Kn[4],{len:je._depth}),transFn:ln})})}else je.title.hasOwnProperty("standoff")&&rn.push(function(){je._depth=Kn[4]*(Ln()[je.side]-Xt)});var kn=_.getComponentMethod("rangeslider","isVisible")(je);return at.skipTitle||kn&&je.side==="bottom"||rn.push(function(){return function(hn,Jt){var en,cn=hn._fullLayout,pn=Jt._id,On=pn.charAt(0),Rn=Jt.title.font.size;if(Jt.title.hasOwnProperty("standoff"))en=Jt._depth+Jt.title.standoff+wt(Jt);else{var Wn=Qe(Jt);if(Jt.type==="multicategory")en=Jt._depth;else{var Hn=1.5*Rn;Wn&&(Hn=.5*Rn,Jt.ticks==="outside"&&(Hn+=Jt.ticklen)),en=10+Hn+(Jt.linewidth?Jt.linewidth-1:0)}Wn||(en+=On==="x"?Jt.side==="top"?Rn*(Jt.showticklabels?1:0):Rn*(Jt.showticklabels?1.5:.5):Jt.side==="right"?Rn*(Jt.showticklabels?1:.5):Rn*(Jt.showticklabels?.5:0))}var tr,Xn,lr,or,sr=X.getPxPosition(hn,Jt);if(On==="x"?(Xn=Jt._offset+Jt._length/2,lr=Jt.side==="top"?sr-en:sr+en):(lr=Jt._offset+Jt._length/2,Xn=Jt.side==="right"?sr+en:sr-en,tr={rotate:"-90",offset:0}),Jt.type!=="multicategory"){var gr=Jt._selections[Jt._id+"tick"];if(or={selection:gr,side:Jt.side},gr&&gr.node()&&gr.node().parentNode){var vr=r.getTranslate(gr.node().parentNode);or.offsetLeft=vr.x,or.offsetTop=vr.y}Jt.title.hasOwnProperty("standoff")&&(or.pad=0)}return Jt._titleStandoff=en,t.draw(hn,pn+"title",{propContainer:Jt,propName:Jt._name+".title.text",placeholder:cn._dfltTitle[On],avoid:or,transform:tr,attributes:{x:Xn,y:lr,"text-anchor":"middle"}})}(Be,je)}),rn.push(function(){var hn,Jt,en,cn,pn=je.side.charAt(0),On=J[je.side].charAt(0),Rn=X.getPxPosition(Be,je),Wn=mn?je.ticklen:0;(je.automargin||kn||je._shiftPusher)&&(je.type==="multicategory"?hn=Ln("tick2"):(hn=Ln(),vt==="x"&&pn==="b"&&(je._depth=Math.max(hn.width>0?hn.bottom-Rn:0,Wn))));var Hn=0,tr=0;if(je._shiftPusher&&(Hn=Math.max(Wn,hn.height>0?pn==="l"?Rn-hn.left:hn.right-Rn:0),je.title.text!==Ct._dfltTitle[vt]&&(tr=(je._titleStandoff||0)+(je._titleScoot||0),pn==="l"&&(tr+=wt(je))),je._fullDepth=Math.max(Hn,tr)),je.automargin){Jt={x:0,y:0,r:0,l:0,t:0,b:0};var Xn=[0,1],lr=typeof je._shift=="number"?je._shift:0;if(vt==="x"){if(pn==="b"?Jt[pn]=je._depth:(Jt[pn]=je._depth=Math.max(hn.width>0?Rn-hn.top:0,Wn),Xn.reverse()),hn.width>0){var or=hn.right-(je._offset+je._length);or>0&&(Jt.xr=1,Jt.r=or);var sr=je._offset-hn.left;sr>0&&(Jt.xl=0,Jt.l=sr)}}else if(pn==="l"?(je._depth=Math.max(hn.height>0?Rn-hn.left:0,Wn),Jt[pn]=je._depth-lr):(je._depth=Math.max(hn.height>0?hn.right-Rn:0,Wn),Jt[pn]=je._depth+lr,Xn.reverse()),hn.height>0){var gr=hn.bottom-(je._offset+je._length);gr>0&&(Jt.yb=0,Jt.b=gr);var vr=je._offset-hn.top;vr>0&&(Jt.yt=1,Jt.t=vr)}Jt[At]=je.anchor==="free"?je.position:je._anchorAxis.domain[Xn[0]],je.title.text!==Ct._dfltTitle[vt]&&(Jt[pn]+=wt(je)+(je.title.standoff||0)),je.mirror&&je.anchor!=="free"&&((en={x:0,y:0,r:0,l:0,t:0,b:0})[On]=je.linewidth,je.mirror&&je.mirror!==!0&&(en[On]+=Wn),je.mirror===!0||je.mirror==="ticks"?en[At]=je._anchorAxis.domain[Xn[1]]:je.mirror!=="all"&&je.mirror!=="allticks"||(en[At]=[je._counterDomainMin,je._counterDomainMax][Xn[1]]))}kn&&(cn=_.getComponentMethod("rangeslider","autoMarginOpts")(Be,je)),typeof je.automargin=="string"&&(rt(Jt,je.automargin),rt(en,je.automargin)),i.autoMargin(Be,Tt(je),Jt),i.autoMargin(Be,Et(je),en),i.autoMargin(Be,St(je),cn)}),y.syncOrAsync(rn)}}function Ln(hn){var Jt=dt+(hn||"tick");return Tn[Jt]||(Tn[Jt]=function(en,cn){var pn,On,Rn,Wn;return en._selections[cn].size()?(pn=1/0,On=-1/0,Rn=1/0,Wn=-1/0,en._selections[cn].each(function(){var Hn=lt(this),tr=r.bBox(Hn.node().parentNode);pn=Math.min(pn,tr.top),On=Math.max(On,tr.bottom),Rn=Math.min(Rn,tr.left),Wn=Math.max(Wn,tr.right)})):(pn=0,On=0,Rn=0,Wn=0),{top:pn,bottom:On,left:Rn,right:Wn,height:On-pn,width:Wn-Rn}}(je,Jt)),Tn[Jt]}},X.getTickSigns=function(Be,je){var at=Be._id.charAt(0),ot={x:"top",y:"right"}[at],xt=Be.side===ot?1:-1,yt=[-1,1,xt,-xt];return(je?(Be.minor||{}).ticks:Be.ticks)!=="inside"==(at==="x")&&(yt=yt.map(function(_t){return-_t})),Be.side&&yt.push({l:-1,t:-1,r:1,b:1}[Be.side.charAt(0)]),yt},X.makeTransTickFn=function(Be){return Be._id.charAt(0)==="x"?function(je){return h(Be._offset+Be.l2p(je.x),0)}:function(je){return h(0,Be._offset+Be.l2p(je.x))}},X.makeTransTickLabelFn=function(Be){var je=function(xt){var yt=xt.ticklabelposition||"",_t=function(Qt){return yt.indexOf(Qt)!==-1},gt=_t("top"),Ct=_t("left"),dt=_t("right"),vt=_t("bottom"),At=_t("inside"),Bt=vt||Ct||gt||dt;if(!Bt&&!At)return[0,0];var jt=xt.side,Ut=Bt?(xt.tickwidth||0)/2:0,tn=3,Xt=xt.tickfont?xt.tickfont.size:12;return(vt||gt)&&(Ut+=Xt*ie,tn+=(xt.linewidth||0)/2),(Ct||dt)&&(Ut+=(xt.linewidth||0)/2,tn+=3),At&&jt==="top"&&(tn-=Xt*(1-ie)),(Ct||gt)&&(Ut=-Ut),jt!=="bottom"&&jt!=="right"||(tn=-tn),[Bt?Ut:0,At?tn:0]}(Be),at=je[0],ot=je[1];return Be._id.charAt(0)==="x"?function(xt){return h(at+Be._offset+Be.l2p(nt(xt)),ot)}:function(xt){return h(ot,at+Be._offset+Be.l2p(nt(xt)))}},X.makeTickPath=function(Be,je,at,ot){ot||(ot={});var xt=ot.minor;if(xt&&!Be.minor)return"";var yt=ot.len!==void 0?ot.len:xt?Be.minor.ticklen:Be.ticklen,_t=Be._id.charAt(0),gt=(Be.linewidth||1)/2;return _t==="x"?"M0,"+(je+gt*at)+"v"+yt*at:"M"+(je+gt*at)+",0h"+yt*at},X.makeLabelFns=function(Be,je,at){var ot=Be.ticklabelposition||"",xt=function(xn){return ot.indexOf(xn)!==-1},yt=xt("top"),_t=xt("left"),gt=xt("right"),Ct=xt("bottom")||_t||yt||gt,dt=xt("inside"),vt=ot==="inside"&&Be.ticks==="inside"||!dt&&Be.ticks==="outside"&&Be.tickson!=="boundaries",At=0,Bt=0,jt=vt?Be.ticklen:0;if(dt?jt*=-1:Ct&&(jt=0),vt&&(At+=jt,at)){var Ut=y.deg2rad(at);At=jt*Math.cos(Ut)+1,Bt=jt*Math.sin(Ut)}Be.showticklabels&&(vt||Be.showline)&&(At+=.2*Be.tickfont.size);var tn,Xt,Qt,Gt,vn,Tn={labelStandoff:At+=(Be.linewidth||1)/2*(dt?-1:1),labelShift:Bt},dn=0,Yt=Be.side,ln=Be._id.charAt(0),nn=Be.tickangle;if(ln==="x")Gt=(vn=!dt&&Yt==="bottom"||dt&&Yt==="top")?1:-1,dt&&(Gt*=-1),tn=Bt*Gt,Xt=je+At*Gt,Qt=vn?1:-.2,Math.abs(nn)===90&&(dt?Qt+=Z:Qt=nn===-90&&Yt==="bottom"?ie:nn===90&&Yt==="top"?Z:.5,dn=Z/2*(nn/90)),Tn.xFn=function(xn){return xn.dx+tn+dn*xn.fontSize},Tn.yFn=function(xn){return xn.dy+Xt+xn.fontSize*Qt},Tn.anchorFn=function(xn,Pn){if(Ct){if(_t)return"end";if(gt)return"start"}return k(Pn)&&Pn!==0&&Pn!==180?Pn*Gt<0!==dt?"end":"start":"middle"},Tn.heightFn=function(xn,Pn,Dn){return Pn<-60||Pn>60?-.5*Dn:Be.side==="top"!==dt?-Dn:0};else if(ln==="y"){if(Gt=(vn=!dt&&Yt==="left"||dt&&Yt==="right")?1:-1,dt&&(Gt*=-1),tn=At,Xt=Bt*Gt,Qt=0,dt||Math.abs(nn)!==90||(Qt=nn===-90&&Yt==="left"||nn===90&&Yt==="right"?ie:.5),dt){var fn=k(nn)?+nn:0;if(fn!==0){var mn=y.deg2rad(fn);dn=Math.abs(Math.sin(mn))*ie*Gt,Qt=0}}Tn.xFn=function(xn){return xn.dx+je-(tn+xn.fontSize*Qt)*Gt+dn*xn.fontSize},Tn.yFn=function(xn){return xn.dy+Xt+xn.fontSize*Z},Tn.anchorFn=function(xn,Pn){return k(Pn)&&Math.abs(Pn)===90?"middle":vn?"end":"start"},Tn.heightFn=function(xn,Pn,Dn){return Be.side==="right"&&(Pn*=-1),Pn<-30?-Dn:Pn<30?-.5*Dn:0}}return Tn},X.drawTicks=function(Be,je,at){at=at||{};var ot=je._id+"tick",xt=[].concat(je.minor&&je.minor.ticks?at.vals.filter(function(_t){return _t.minor&&!_t.noTick}):[]).concat(je.ticks?at.vals.filter(function(_t){return!_t.minor&&!_t.noTick}):[]),yt=at.layer.selectAll("path."+ot).data(xt,bt);yt.exit().remove(),yt.enter().append("path").classed(ot,1).classed("ticks",1).classed("crisp",at.crisp!==!1).each(function(_t){return o.stroke(w.select(this),_t.minor?je.minor.tickcolor:je.tickcolor)}).style("stroke-width",function(_t){return r.crispRound(Be,_t.minor?je.minor.tickwidth:je.tickwidth,1)+"px"}).attr("d",at.path).style("display",null),st(je,[G]),yt.attr("transform",at.transFn)},X.drawGrid=function(Be,je,at){if(at=at||{},je.tickmode!=="sync"){var ot=je._id+"grid",xt=je.minor&&je.minor.showgrid,yt=xt?at.vals.filter(function(Qt){return Qt.minor}):[],_t=je.showgrid?at.vals.filter(function(Qt){return!Qt.minor}):[],gt=at.counterAxis;if(gt&&X.shouldShowZeroLine(Be,je,gt))for(var Ct=je.tickmode==="array",dt=0;dt<_t.length;dt++){var vt=_t[dt].x;if(Ct?!vt:Math.abs(vt)<je.dtick/100){if(_t=_t.slice(0,dt).concat(_t.slice(dt+1)),!Ct)break;dt--}}je._gw=r.crispRound(Be,je.gridwidth,1);for(var At=xt?r.crispRound(Be,je.minor.gridwidth,1):0,Bt=at.layer,jt=at.minorLayer,Ut=1;Ut>=0;Ut--){var tn=Ut?Bt:jt;if(tn){var Xt=tn.selectAll("path."+ot).data(Ut?_t:yt,bt);Xt.exit().remove(),Xt.enter().append("path").classed(ot,1).classed("crisp",at.crisp!==!1),Xt.attr("transform",at.transFn).attr("d",at.path).each(function(Qt){return o.stroke(w.select(this),Qt.minor?je.minor.gridcolor:je.gridcolor||"#ddd")}).style("stroke-dasharray",function(Qt){return r.dashStyle(Qt.minor?je.minor.griddash:je.griddash,Qt.minor?je.minor.gridwidth:je.gridwidth)}).style("stroke-width",function(Qt){return(Qt.minor?At:je._gw)+"px"}).style("display",null),typeof at.path=="function"&&Xt.attr("d",at.path)}}st(je,[Y,D])}},X.drawZeroLine=function(Be,je,at){at=at||at;var ot=je._id+"zl",xt=X.shouldShowZeroLine(Be,je,at.counterAxis),yt=at.layer.selectAll("path."+ot).data(xt?[{x:0,id:je._id}]:[]);yt.exit().remove(),yt.enter().append("path").classed(ot,1).classed("zl",1).classed("crisp",at.crisp!==!1).each(function(){at.layer.selectAll("path").sort(function(_t,gt){return oe(_t.id,gt.id)})}),yt.attr("transform",at.transFn).attr("d",at.path).call(o.stroke,je.zerolinecolor||o.defaultLine).style("stroke-width",r.crispRound(Be,je.zerolinewidth,je._gw||1)+"px").style("display",null),st(je,[B])},X.drawLabels=function(Be,je,at){at=at||{};var ot=Be._fullLayout,xt=je._id,yt=xt.charAt(0),_t=at.cls||xt+"tick",gt=at.vals.filter(function(Gt){return Gt.text}),Ct=at.labelFns,dt=at.secondary?0:je.tickangle,vt=(je._prevTickAngles||{})[_t],At=at.layer.selectAll("g."+_t).data(je.showticklabels?gt:[],bt),Bt=[];function jt(Gt,vn){Gt.each(function(Tn){var dn=w.select(this),Yt=dn.select(".text-math-group"),ln=Ct.anchorFn(Tn,vn),nn=at.transFn.call(dn.node(),Tn)+(k(vn)&&+vn!=0?" rotate("+vn+","+Ct.xFn(Tn)+","+(Ct.yFn(Tn)-Tn.fontSize/2)+")":""),fn=l.lineCount(dn),mn=te*Tn.fontSize,xn=Ct.heightFn(Tn,k(vn)?+vn:0,(fn-1)*mn);if(xn&&(nn+=h(0,xn)),Yt.empty()){var Pn=dn.select("text");Pn.attr({transform:nn,"text-anchor":ln}),Pn.style("opacity",1),je._adjustTickLabelsOverflow&&je._adjustTickLabelsOverflow()}else{var Dn=r.bBox(Yt.node()).width*{end:-.5,start:.5}[ln];Yt.attr("transform",nn+h(Dn,0))}})}At.enter().append("g").classed(_t,1).append("text").attr("text-anchor","middle").each(function(Gt){var vn=w.select(this),Tn=Be._promises.length;vn.call(l.positionText,Ct.xFn(Gt),Ct.yFn(Gt)).call(r.font,Gt.font,Gt.fontSize,Gt.fontColor).text(Gt.text).call(l.convertToTspans,Be),Be._promises[Tn]?Bt.push(Be._promises.pop().then(function(){jt(vn,dt)})):jt(vn,dt)}),st(je,[V]),At.exit().remove(),at.repositionOnUpdate&&At.each(function(Gt){w.select(this).select("text").call(l.positionText,Ct.xFn(Gt),Ct.yFn(Gt))}),je._adjustTickLabelsOverflow=function(){var Gt=je.ticklabeloverflow;if(Gt&&Gt!=="allow"){var vn=Gt.indexOf("hide")!==-1,Tn=je._id.charAt(0)==="x",dn=0,Yt=Tn?Be._fullLayout.width:Be._fullLayout.height;if(Gt.indexOf("domain")!==-1){var ln=y.simpleMap(je.range,je.r2l);dn=je.l2p(ln[0])+je._offset,Yt=je.l2p(ln[1])+je._offset}var nn=Math.min(dn,Yt),fn=Math.max(dn,Yt),mn=je.side,xn=1/0,Pn=-1/0;for(var Dn in At.each(function(er){var ir=w.select(this);if(ir.select(".text-math-group").empty()){var fr=r.bBox(ir.node()),ar=0;Tn?(fr.right>fn||fr.left<nn)&&(ar=1):(fr.bottom>fn||fr.top+(je.tickangle?0:er.fontSize/4)<nn)&&(ar=1);var Kn=ir.select("text");ar?vn&&Kn.style("opacity",0):(Kn.style("opacity",1),xn=mn==="bottom"||mn==="right"?Math.min(xn,Tn?fr.top:fr.left):-1/0,Pn=mn==="top"||mn==="left"?Math.max(Pn,Tn?fr.bottom:fr.right):1/0)}}),ot._plots){var En=ot._plots[Dn];if(je._id===En.xaxis._id||je._id===En.yaxis._id){var Fn=Tn?En.yaxis:En.xaxis;Fn&&(Fn["_visibleLabelMin_"+je._id]=xn,Fn["_visibleLabelMax_"+je._id]=Pn)}}}},je._hideCounterAxisInsideTickLabels=function(Gt){var vn=je._id.charAt(0)==="x",Tn=[];for(var dn in ot._plots){var Yt=ot._plots[dn];je._id!==Yt.xaxis._id&&je._id!==Yt.yaxis._id||Tn.push(vn?Yt.yaxis:Yt.xaxis)}Tn.forEach(function(ln,nn){ln&&Qe(ln)&&(Gt||[B,D,Y,G,V]).forEach(function(fn){var mn=fn.K==="tick"&&fn.L==="text"&&je.ticklabelmode==="period",xn=ot._plots[je._mainSubplot];(fn.K===B.K?xn.zerolinelayer.selectAll("."+je._id+"zl"):fn.K===D.K?xn.minorGridlayer.selectAll("."+je._id):fn.K===Y.K?xn.gridlayer.selectAll("."+je._id):xn[je._id.charAt(0)+"axislayer"]).each(function(){var Pn=w.select(this);fn.L&&(Pn=Pn.selectAll(fn.L)),Pn.each(function(Dn){var En=je.l2p(mn?nt(Dn):Dn.x)+je._offset,Fn=w.select(this);En<je["_visibleLabelMax_"+ln._id]&&En>je["_visibleLabelMin_"+ln._id]?Fn.style("display","none"):fn.K!=="tick"||nn||Fn.style("display",null)})})})})},jt(At,vt+1?vt:dt);var Ut=null;je._selections&&(je._selections[_t]=At);var tn=[function(){return Bt.length&&Promise.all(Bt)}];je.automargin&&ot._redrawFromAutoMarginCount&&vt===90?(Ut=90,tn.push(function(){jt(At,vt)})):tn.push(function(){if(jt(At,dt),gt.length&&yt==="x"&&!k(dt)&&(je.type!=="log"||String(je.dtick).charAt(0)!=="D")){Ut=0;var Gt,vn=0,Tn=[];if(At.each(function(ir){vn=Math.max(vn,ir.fontSize);var fr=je.l2p(ir.x),ar=lt(this),Kn=r.bBox(ar.node());Tn.push({top:0,bottom:10,height:10,left:fr-Kn.width/2,right:fr+Kn.width/2+2,width:Kn.width+2})}),je.tickson!=="boundaries"&&!je.showdividers||at.secondary){var dn=gt.length,Yt=Math.abs((gt[dn-1].x-gt[0].x)*je._m)/(dn-1),ln=je.ticklabelposition||"",nn=function(ir){return ln.indexOf(ir)!==-1},fn=nn("top"),mn=nn("left"),xn=nn("right"),Pn=nn("bottom")||mn||fn||xn?(je.tickwidth||0)+6:0,Dn=Yt<2.5*vn||je.type==="multicategory"||je._name==="realaxis";for(Gt=0;Gt<Tn.length-1;Gt++)if(y.bBoxIntersect(Tn[Gt],Tn[Gt+1],Pn)){Ut=Dn?90:30;break}}else{var En=2;for(je.ticks&&(En+=je.tickwidth/2),Gt=0;Gt<Tn.length;Gt++){var Fn=gt[Gt].xbnd,er=Tn[Gt];if(Fn[0]!==null&&er.left-je.l2p(Fn[0])<En||Fn[1]!==null&&je.l2p(Fn[1])-er.right<En){Ut=90;break}}}Ut&&jt(At,Ut)}}),je._tickAngles&&tn.push(function(){je._tickAngles[_t]=Ut===null?k(dt)?dt:0:Ut});var Xt=je._anchorAxis;Xt&&Xt.autorange&&Qe(je)&&!ue(ot,je._id)&&(ot._insideTickLabelsAutorange||(ot._insideTickLabelsAutorange={}),ot._insideTickLabelsAutorange[Xt._name+".autorange"]=Xt.autorange,tn.push(function(){At.each(function(Gt,vn){var Tn=lt(this);Tn.select(".text-math-group").empty()&&(je._vals[vn].bb=r.bBox(Tn.node()))})}));var Qt=y.syncOrAsync(tn);return Qt&&Qt.then&&Be._promises.push(Qt),Qt},X.getPxPosition=function(Be,je){var at,ot=Be._fullLayout._size,xt=je._id.charAt(0),yt=je.side;return je.anchor!=="free"?at=je._anchorAxis:xt==="x"?at={_offset:ot.t+(1-(je.position||0))*ot.h,_length:0}:xt==="y"&&(at={_offset:ot.l+(je.position||0)*ot.w+je._shift,_length:0}),yt==="top"||yt==="left"?at._offset:yt==="bottom"||yt==="right"?at._offset+at._length:void 0},X.shouldShowZeroLine=function(Be,je,at){var ot=y.simpleMap(je.range,je.r2l);return ot[0]*ot[1]<=0&&je.zeroline&&(je.type==="linear"||je.type==="-")&&!(je.rangebreaks&&je.maskBreaks(0)===z)&&(ut(je,0)||!function(xt,yt,_t,gt){var Ct=_t._mainAxis;if(Ct){var dt=xt._fullLayout,vt=yt._id.charAt(0),At=X.counterLetter(yt._id),Bt=yt._offset+(Math.abs(gt[0])<Math.abs(gt[1])==(vt==="x")?0:yt._length),jt=dt._plots[_t._mainSubplot];if(!(jt.mainplotinfo||jt).overlays.length)return Qt(_t);for(var Ut=X.list(xt,At),tn=0;tn<Ut.length;tn++){var Xt=Ut[tn];if(Xt._mainAxis===Ct&&Qt(Xt))return!0}}function Qt(Gt){if(!Gt.showline||!Gt.linewidth)return!1;var vn=Math.max((Gt.linewidth+yt.zerolinewidth)/2,1);function Tn(ln){return typeof ln=="number"&&Math.abs(ln-Bt)<vn}if(Tn(Gt._mainLinePosition)||Tn(Gt._mainMirrorPosition))return!0;var dn=Gt._linepositions||{};for(var Yt in dn)if(Tn(dn[Yt][0])||Tn(dn[Yt][1]))return!0}}(Be,je,at,ot)||function(xt,yt){for(var _t=xt._fullData,gt=yt._mainSubplot,Ct=yt._id.charAt(0),dt=0;dt<_t.length;dt++){var vt=_t[dt];if(vt.visible===!0&&vt.xaxis+vt.yaxis===gt&&(_.traceIs(vt,"bar-like")&&vt.orientation==={x:"h",y:"v"}[Ct]||vt.fill&&vt.fill.charAt(vt.fill.length-1)===Ct))return!0}return!1}(Be,je))},X.clipEnds=function(Be,je){return je.filter(function(at){return ut(Be,at.x)})},X.allowAutoMargin=function(Be){for(var je=X.list(Be,"",!0),at=0;at<je.length;at++){var ot=je[at];ot.automargin&&(i.allowAutoMargin(Be,Tt(ot)),ot.mirror&&i.allowAutoMargin(Be,Et(ot))),_.getComponentMethod("rangeslider","isVisible")(ot)&&i.allowAutoMargin(Be,St(ot))}},X.swap=function(Be,je){for(var at=function(xt,yt){var _t,gt,Ct=[];for(_t=0;_t<yt.length;_t++){var dt=[],vt=xt._fullData[yt[_t]].xaxis,At=xt._fullData[yt[_t]].yaxis;if(vt&&At){for(gt=0;gt<Ct.length;gt++)Ct[gt].x.indexOf(vt)===-1&&Ct[gt].y.indexOf(At)===-1||dt.push(gt);if(dt.length){var Bt,jt=Ct[dt[0]];if(dt.length>1)for(gt=1;gt<dt.length;gt++)Bt=Ct[dt[gt]],Ft(jt.x,Bt.x),Ft(jt.y,Bt.y);Ft(jt.x,[vt]),Ft(jt.y,[At])}else Ct.push({x:[vt],y:[At]})}}return Ct}(Be,je),ot=0;ot<at.length;ot++)zt(Be,at[ot].x,at[ot].y)}},4322:function(R,E,e){var w=e(92770),k=e(71828),i=e(50606).BADNUM,_=k.isArrayOrTypedArray,y=k.isDateTime,h=k.cleanNumber,l=Math.round;function t(r,n){return n?w(r):typeof r=="number"}function o(r){return Math.max(1,(r-1)/1e3)}R.exports=function(r,n,a){var s=r,u=a.noMultiCategory;if(_(s)&&!s.length)return"-";if(!u&&function(f){return _(f[0])&&_(f[1])}(s))return"multicategory";if(u&&Array.isArray(s[0])){for(var p=[],c=0;c<s.length;c++)if(_(s[c]))for(var b=0;b<s[c].length;b++)p.push(s[c][b]);s=p}if(function(f,v){for(var m=f.length,x=o(m),T=0,d=0,M={},A=0;A<m;A+=x){var C=f[l(A)],P=String(C);M[P]||(M[P]=1,y(C,v)&&T++,w(C)&&d++)}return T>2*d}(s,n))return"date";var g=a.autotypenumbers!=="strict";return function(f,v){for(var m=f.length,x=o(m),T=0,d=0,M={},A=0;A<m;A+=x){var C=f[l(A)],P=String(C);if(!M[P]){M[P]=1;var O=typeof C;O==="boolean"?d++:(v?h(C)!==i:O==="number")?T++:O==="string"&&d++}}return d>2*T}(s,g)?"category":function(f,v){for(var m=f.length,x=0;x<m;x++)if(t(f[x],v))return!0;return!1}(s,g)?"linear":"-"}},71453:function(R,E,e){var w=e(92770),k=e(73972),i=e(71828),_=e(44467),y=e(85501),h=e(13838),l=e(26218),t=e(38701),o=e(96115),r=e(89426),n=e(15258),a=e(92128),s=e(21994),u=e(85555).WEEKDAY_PATTERN,p=e(85555).HOUR_PATTERN;function c(f,v,m){function x(z,B){return i.coerce(f,v,h.rangebreaks,z,B)}if(x("enabled")){var T=x("bounds");if(T&&T.length>=2){var d,M,A="";if(T.length===2){for(d=0;d<2;d++)if(M=g(T[d])){A=u;break}}var C=x("pattern",A);if(C===u)for(d=0;d<2;d++)(M=g(T[d]))&&(v.bounds[d]=T[d]=M-1);if(C)for(d=0;d<2;d++)switch(M=T[d],C){case u:if(!w(M)||(M=+M)!==Math.floor(M)||M<0||M>=7)return void(v.enabled=!1);v.bounds[d]=T[d]=M;break;case p:if(!w(M)||(M=+M)<0||M>24)return void(v.enabled=!1);v.bounds[d]=T[d]=M}if(m.autorange===!1){var P=m.range;if(P[0]<P[1]){if(T[0]<P[0]&&T[1]>P[1])return void(v.enabled=!1)}else if(T[0]>P[0]&&T[1]<P[1])return void(v.enabled=!1)}}else{var O=x("values");if(!O||!O.length)return void(v.enabled=!1);x("dvalue")}}}R.exports=function(f,v,m,x,T){var d,M=x.letter,A=x.font||{},C=x.splomStash||{},P=m("visible",!x.visibleDflt),O=v._template||{},z=v.type||O.type||"-";z==="date"&&(k.getComponentMethod("calendars","handleDefaults")(f,v,"calendar",x.calendar),x.noTicklabelmode||(d=m("ticklabelmode")));var B="";x.noTicklabelposition&&z!=="multicategory"||(B=i.coerce(f,v,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:d==="period"?["outside","inside"]:M==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),x.noTicklabeloverflow||m("ticklabeloverflow",B.indexOf("inside")!==-1?"hide past domain":z==="category"||z==="multicategory"?"allow":"hide past div"),s(v,T);var Y=!v.isValidRange(f.range);Y&&x.reverseDflt&&(Y="reversed"),!m("autorange",Y)||z!=="linear"&&z!=="-"||m("rangemode"),m("range"),v.cleanRange(),n(f,v,m,x),z==="category"||x.noHover||m("hoverformat");var D=m("color"),G=D!==h.color.dflt?D:A.color,V=C.label||T._dfltTitle[M];if(r(f,v,m,z,x),!P)return v;m("title.text",V),i.coerceFont(m,"title.font",{family:A.family,size:i.bigFont(A.size),color:G}),l(f,v,m,z);var j=x.hasMinor;if(j&&(_.newContainer(v,"minor"),l(f,v,m,z,{isMinor:!0})),o(f,v,m,z,x),t(f,v,m,x),j){var W=x.isMinor;x.isMinor=!0,t(f,v,m,x),x.isMinor=W}a(f,v,m,{dfltColor:D,bgColor:x.bgColor,showGrid:x.showGrid,hasMinor:j,attributes:h}),!j||v.minor.ticks||v.minor.showgrid||delete v.minor,(v.showline||v.ticks)&&m("mirror");var Z,ie=z==="multicategory";if(x.noTickson||z!=="category"&&!ie||!v.ticks&&!v.showgrid||(ie&&(Z="boundaries"),m("tickson",Z)==="boundaries"&&delete v.ticklabelposition),ie&&m("showdividers")&&(m("dividercolor"),m("dividerwidth")),z==="date")if(y(f,v,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:c}),v.rangebreaks.length){for(var te=0;te<v.rangebreaks.length;te++)if(v.rangebreaks[te].pattern===u){v._hasDayOfWeekBreaks=!0;break}if(s(v,T),T._has("scattergl")||T._has("splom"))for(var J=0;J<x.data.length;J++){var X=x.data[J];X.type!=="scattergl"&&X.type!=="splom"||(X.visible=!1,i.warn(X.type+" traces do not work on axes with rangebreaks. Setting trace "+X.index+" to `visible: false`."))}}else delete v.rangebreaks;return v};var b={sun:1,mon:2,tue:3,wed:4,thu:5,fri:6,sat:7};function g(f){if(typeof f=="string")return b[f.substr(0,3).toLowerCase()]}},12663:function(R,E,e){var w=e(31562),k=w.FORMAT_LINK,i=w.DATE_FORMAT_LINK;function _(h,l){return["Sets the "+h+" formatting rule"+(l?"for `"+l+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+k+"."].join(" ")}function y(h,l){return _(h,l)+[" And for dates see: "+i+".","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(" ")}R.exports={axisHoverFormat:function(h,l){return{valType:"string",dflt:"",editType:"none",description:(l?_:y)("hover text",h)+["By default the values are formatted using "+(l?"generic number format":"`"+h+"axis.hoverformat`")+"."].join(" ")}},descriptionOnlyNumbers:_,descriptionWithDates:y}},41675:function(R,E,e){var w=e(73972),k=e(85555);function i(_,y){if(y&&y.length){for(var h=0;h<y.length;h++)if(y[h][_])return!0}return!1}E.id2name=function(_){if(typeof _=="string"&&_.match(k.AX_ID_PATTERN)){var y=_.split(" ")[0].substr(1);return y==="1"&&(y=""),_.charAt(0)+"axis"+y}},E.name2id=function(_){if(_.match(k.AX_NAME_PATTERN)){var y=_.substr(5);return y==="1"&&(y=""),_.charAt(0)+y}},E.cleanId=function(_,y,h){var l=/( domain)$/.test(_);if(typeof _=="string"&&_.match(k.AX_ID_PATTERN)&&(!y||_.charAt(0)===y)&&(!l||h)){var t=_.split(" ")[0].substr(1).replace(/^0+/,"");return t==="1"&&(t=""),_.charAt(0)+t+(l&&h?" domain":"")}},E.list=function(_,y,h){var l=_._fullLayout;if(!l)return[];var t,o=E.listIds(_,y),r=new Array(o.length);for(t=0;t<o.length;t++){var n=o[t];r[t]=l[n.charAt(0)+"axis"+n.substr(1)]}if(!h){var a=l._subplots.gl3d||[];for(t=0;t<a.length;t++){var s=l[a[t]];y?r.push(s[y+"axis"]):r.push(s.xaxis,s.yaxis,s.zaxis)}}return r},E.listIds=function(_,y){var h=_._fullLayout;if(!h)return[];var l=h._subplots;return y?l[y+"axis"]:l.xaxis.concat(l.yaxis)},E.getFromId=function(_,y,h){var l=_._fullLayout;return y=y===void 0||typeof y!="string"?y:y.replace(" domain",""),h==="x"?y=y.replace(/y[0-9]*/,""):h==="y"&&(y=y.replace(/x[0-9]*/,"")),l[E.id2name(y)]},E.getFromTrace=function(_,y,h){var l=_._fullLayout,t=null;if(w.traceIs(y,"gl3d")){var o=y.scene;o.substr(0,5)==="scene"&&(t=l[o][h+"axis"])}else t=E.getFromId(_,y[h+"axis"]||h);return t},E.idSort=function(_,y){var h=_.charAt(0),l=y.charAt(0);return h!==l?h>l?1:-1:+(_.substr(1)||1)-+(y.substr(1)||1)},E.ref2id=function(_){return!!/^[xyz]/.test(_)&&_.split(" ")[0]},E.isLinked=function(_,y){return i(y,_._axisMatchGroups)||i(y,_._axisConstraintGroups)}},15258:function(R){R.exports=function(E,e,w,k){if(e.type==="category"){var i,_=E.categoryarray,y=Array.isArray(_)&&_.length>0;y&&(i="array");var h,l=w("categoryorder",i);l==="array"&&(h=w("categoryarray")),y||l!=="array"||(l=e.categoryorder="trace"),l==="trace"?e._initialCategories=[]:l==="array"?e._initialCategories=h.slice():(h=function(t,o){var r,n,a,s=o.dataAttr||t._id.charAt(0),u={};if(o.axData)r=o.axData;else for(r=[],n=0;n<o.data.length;n++){var p=o.data[n];p[s+"axis"]===t._id&&r.push(p)}for(n=0;n<r.length;n++){var c=r[n][s];for(a=0;a<c.length;a++){var b=c[a];b!=null&&(u[b]=1)}}return Object.keys(u)}(e,k).sort(),l==="category ascending"?e._initialCategories=h:l==="category descending"&&(e._initialCategories=h.reverse()))}}},66287:function(R,E,e){var w=e(92770),k=e(71828),i=e(50606),_=i.ONEDAY,y=i.ONEWEEK;E.dtick=function(h,l){var t=l==="log",o=l==="date",r=l==="category",n=o?_:1;if(!h)return n;if(w(h))return(h=Number(h))<=0?n:r?Math.max(1,Math.round(h)):o?Math.max(.1,h):h;if(typeof h!="string"||!o&&!t)return n;var a=h.charAt(0),s=h.substr(1);return(s=w(s)?Number(s):0)<=0||!(o&&a==="M"&&s===Math.round(s)||t&&a==="L"||t&&a==="D"&&(s===1||s===2))?n:h},E.tick0=function(h,l,t,o){return l==="date"?k.cleanDate(h,k.dateTick0(t,o%y==0?1:0)):o!=="D1"&&o!=="D2"?w(h)?Number(h):0:void 0}},85555:function(R,E,e){var w=e(30587).counter;R.exports={idRegex:{x:w("x","( domain)?"),y:w("y","( domain)?")},attrRegex:w("[xy]axis"),xAxisMatch:w("xaxis"),yAxisMatch:w("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"}}},99082:function(R,E,e){var w=e(71828),k=e(71739),i=e(41675).id2name,_=e(13838),y=e(42449),h=e(21994),l=e(50606).ALMOST_EQUAL,t=e(18783).FROM_BL;function o(c,b,g){var f=g.axIds,v=g.layoutOut,m=g.hasImage,x=v._axisConstraintGroups,T=v._axisMatchGroups,d=b._id,M=d.charAt(0),A=((v._splomAxes||{})[M]||{})[d]||{},C=b._id,P=C.charAt(0)==="x";function O(ee,re){return w.coerce(c,b,_,ee,re)}b._matchGroup=null,b._constraintGroup=null,O("constrain",m?"domain":"range"),w.coerce(c,b,{constraintoward:{valType:"enumerated",values:P?["left","center","right"]:["bottom","middle","top"],dflt:P?"center":"middle"}},"constraintoward");var z,B,Y=b.type,D=[];for(z=0;z<f.length;z++)(B=f[z])!==C&&v[i(B)].type===Y&&D.push(B);var G=n(x,C);if(G){var V=[];for(z=0;z<D.length;z++)G[B=D[z]]||V.push(B);D=V}var j,W,Z=D.length;Z&&(c.matches||A.matches)&&(j=w.coerce(c,b,{matches:{valType:"enumerated",values:D,dflt:D.indexOf(A.matches)!==-1?A.matches:void 0}},"matches"));var ie=m&&!P?b.anchor:void 0;if(Z&&!j&&(c.scaleanchor||ie)&&(W=w.coerce(c,b,{scaleanchor:{valType:"enumerated",values:D}},"scaleanchor",ie)),j){b._matchGroup=a(T,C,j,1);var te=v[i(j)],J=r(v,b)/r(v,te);P!==(j.charAt(0)==="x")&&(J=(P?"x":"y")+J),a(x,C,j,J)}else c.matches&&f.indexOf(c.matches)!==-1&&w.warn("ignored "+b._name+'.matches: "'+c.matches+'" to avoid an infinite loop');if(W){var X=O("scaleratio");X||(X=b.scaleratio=1),a(x,C,W,X)}else c.scaleanchor&&f.indexOf(c.scaleanchor)!==-1&&w.warn("ignored "+b._name+'.scaleanchor: "'+c.scaleanchor+'" to avoid either an infinite loop and possibly inconsistent scaleratios, or because this axis declares a *matches* constraint.')}function r(c,b){var g=b.domain;return g||(g=c[i(b.overlaying)].domain),g[1]-g[0]}function n(c,b){for(var g=0;g<c.length;g++)if(c[g][b])return c[g];return null}function a(c,b,g,f){var v,m,x,T,d,M=n(c,b);M===null?((M={})[b]=1,d=c.length,c.push(M)):d=c.indexOf(M);var A=Object.keys(M);for(v=0;v<c.length;v++)if(x=c[v],v!==d&&x[g]){var C=x[g];for(m=0;m<A.length;m++)x[T=A[m]]=s(C,s(f,M[T]));return void c.splice(d,1)}if(f!==1)for(m=0;m<A.length;m++){var P=A[m];M[P]=s(f,M[P])}M[g]=1}function s(c,b){var g,f,v="",m="";typeof c=="string"&&(g=(v=c.match(/^[xy]*/)[0]).length,c=+c.substr(g)),typeof b=="string"&&(f=(m=b.match(/^[xy]*/)[0]).length,b=+b.substr(f));var x=c*b;return g||f?g&&f&&v.charAt(0)!==m.charAt(0)?g===f?x:(g>f?v.substr(f):m.substr(g))+x:v+m+c*b:x}function u(c,b){for(var g=b._size,f=g.h/g.w,v={},m=Object.keys(c),x=0;x<m.length;x++){var T=m[x],d=c[T];if(typeof d=="string"){var M=d.match(/^[xy]*/)[0],A=M.length;d=+d.substr(A);for(var C=M.charAt(0)==="y"?f:1/f,P=0;P<A;P++)d*=C}v[T]=d}return v}function p(c,b){var g=c._inputDomain,f=t[c.constraintoward],v=g[0]+(g[1]-g[0])*f;c.domain=c._input.domain=[v+(g[0]-v)/b,v+(g[1]-v)/b],c.setScale()}E.handleDefaults=function(c,b,g){var f,v,m,x,T,d,M,A,C=g.axIds,P=g.axHasImage,O=b._axisConstraintGroups=[],z=b._axisMatchGroups=[];for(f=0;f<C.length;f++)o(T=c[x=i(C[f])],d=b[x],{axIds:C,layoutOut:b,hasImage:P[x]});function B(te,J){for(f=0;f<te.length;f++)for(m in v=te[f])b[i(m)][J]=v}for(B(z,"_matchGroup"),f=0;f<O.length;f++)for(m in v=O[f])if((d=b[i(m)]).fixedrange){for(var Y in v){var D=i(Y);(c[D]||{}).fixedrange===!1&&w.warn("fixedrange was specified as false for axis "+D+" but was overridden because another axis in its constraint group has fixedrange true"),b[D].fixedrange=!0}break}for(f=0;f<O.length;){for(m in v=O[f]){(d=b[i(m)])._matchGroup&&Object.keys(d._matchGroup).length===Object.keys(v).length&&(O.splice(f,1),f--);break}f++}B(O,"_constraintGroup");var G=["constrain","range","autorange","rangemode","rangebreaks","categoryorder","categoryarray"],V=!1,j=!1;function W(){A=d[M],M==="rangebreaks"&&(j=d._hasDayOfWeekBreaks)}for(f=0;f<z.length;f++){v=z[f];for(var Z=0;Z<G.length;Z++){var ie;for(m in M=G[Z],A=null,v)if(T=c[x=i(m)],d=b[x],M in d){if(!d.matches&&(ie=d,M in T)){W();break}A===null&&M in T&&W()}if(M==="range"&&A&&(V=!0),M==="autorange"&&A===null&&V&&(A=!1),A===null&&M in ie&&(A=ie[M]),A!==null)for(m in v)(d=b[i(m)])[M]=M==="range"?A.slice():A,M==="rangebreaks"&&(d._hasDayOfWeekBreaks=j,h(d,b))}}},E.enforce=function(c){var b,g,f,v,m,x,T,d,M=c._fullLayout,A=M._axisConstraintGroups||[];for(b=0;b<A.length;b++){f=u(A[b],M);var C=Object.keys(f),P=1/0,O=0,z=1/0,B={},Y={},D=!1;for(g=0;g<C.length;g++)Y[v=C[g]]=m=M[i(v)],m._inputDomain?m.domain=m._inputDomain.slice():m._inputDomain=m.domain.slice(),m._inputRange||(m._inputRange=m.range.slice()),m.setScale(),B[v]=x=Math.abs(m._m)/f[v],P=Math.min(P,x),m.constrain!=="domain"&&m._constraintShrinkable||(z=Math.min(z,x)),delete m._constraintShrinkable,O=Math.max(O,x),m.constrain==="domain"&&(D=!0);if(!(P>l*O)||D){for(g=0;g<C.length;g++)if(x=B[v=C[g]],T=(m=Y[v]).constrain,x!==z||T==="domain")if(d=x/z,T==="range")y(m,d);else{var G=m._inputDomain,V=(m.domain[1]-m.domain[0])/(G[1]-G[0]),j=(m.r2l(m.range[1])-m.r2l(m.range[0]))/(m.r2l(m._inputRange[1])-m.r2l(m._inputRange[0]));if((d/=V)*j<1){m.domain=m._input.domain=G.slice(),y(m,d);continue}if(j<1&&(m.range=m._input.range=m._inputRange.slice(),d*=j),m.autorange){var W=m.r2l(m.range[0]),Z=m.r2l(m.range[1]),ie=(W+Z)/2,te=ie,J=ie,X=Math.abs(Z-ie),ee=ie-X*d*1.0001,re=ie+X*d*1.0001,oe=k.makePadFn(M,m,0),ue=k.makePadFn(M,m,1);p(m,d);var ce,de,me=Math.abs(m._m),_e=k.concatExtremes(c,m),Se=_e.min,we=_e.max;for(de=0;de<Se.length;de++)(ce=Se[de].val-oe(Se[de])/me)>ee&&ce<te&&(te=ce);for(de=0;de<we.length;de++)(ce=we[de].val+ue(we[de])/me)<re&&ce>J&&(J=ce);d/=(J-te)/(2*X),te=m.l2r(te),J=m.l2r(J),m.range=m._input.range=W<Z?[te,J]:[J,te]}p(m,d)}}}},E.getAxisGroup=function(c,b){for(var g=c._axisMatchGroups,f=0;f<g.length;f++)if(g[f][b])return"g"+f;return b},E.clean=function(c,b){if(b._inputDomain){for(var g=!1,f=b._id,v=c._fullLayout._axisConstraintGroups,m=0;m<v.length;m++)if(v[m][f]){g=!0;break}g&&b.constrain==="domain"||(b._input.domain=b.domain=b._inputDomain,delete b._inputDomain)}}},29323:function(R,E,e){var w=e(39898),k=e(71828),i=k.numberFormat,_=e(84267),y=e(38520),h=e(73972),l=k.strTranslate,t=e(63893),o=e(7901),r=e(91424),n=e(30211),a=e(89298),s=e(6964),u=e(28569),p=e(64505),c=p.selectingOrDrawing,b=p.freeMode,g=e(18783).FROM_TL,f=e(33306),v=e(61549).redrawReglTraces,m=e(74875),x=e(41675).getFromId,T=e(47322).prepSelect,d=e(47322).clearOutline,M=e(47322).selectOnClick,A=e(42449),C=e(85555),P=C.MINDRAG,O=C.MINZOOM,z=!0;function B(ce,de,me,_e){var Se=k.ensureSingle(ce.draglayer,de,me,function(we){we.classed("drag",!0).style({fill:"transparent","stroke-width":0}).attr("data-subplot",ce.id)});return Se.call(s,_e),Se.node()}function Y(ce,de,me,_e,Se,we,xe){var De=B(ce,"rect",de,me);return w.select(De).call(r.setRect,_e,Se,we,xe),De}function D(ce,de){for(var me=0;me<ce.length;me++)if(!ce[me].fixedrange)return de;return""}function G(ce,de,me,_e,Se){for(var we=0;we<ce.length;we++){var xe=ce[we];if(!xe.fixedrange)if(xe.rangebreaks){var De=xe._id.charAt(0)==="y",Ee=De?1-de:de,Me=De?1-me:me;_e[xe._name+".range[0]"]=xe.l2r(xe.p2l(Ee*xe._length)),_e[xe._name+".range[1]"]=xe.l2r(xe.p2l(Me*xe._length))}else{var he=xe._rl[0],fe=xe._rl[1]-he;_e[xe._name+".range[0]"]=xe.l2r(he+fe*de),_e[xe._name+".range[1]"]=xe.l2r(he+fe*me)}}if(Se&&Se.length){var ae=(de+(1-me))/2;G(Se,ae,1-ae,_e,[])}}function V(ce,de){for(var me=0;me<ce.length;me++){var _e=ce[me];if(!_e.fixedrange)if(_e.rangebreaks){var Se=_e._length,we=(_e.p2l(0+de)-_e.p2l(0)+(_e.p2l(Se+de)-_e.p2l(Se)))/2;_e.range=[_e.l2r(_e._rl[0]-we),_e.l2r(_e._rl[1]-we)]}else _e.range=[_e.l2r(_e._rl[0]-de/_e._m),_e.l2r(_e._rl[1]-de/_e._m)]}}function j(ce){return 1-(ce>=0?Math.min(ce,.9):1/(1/Math.max(ce,-.3)+3.222))}function W(ce,de,me,_e,Se){return ce.append("path").attr("class","zoombox").style({fill:de>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",l(me,_e)).attr("d",Se+"Z")}function Z(ce,de,me){return ce.append("path").attr("class","zoombox-corners").style({fill:o.background,stroke:o.defaultLine,"stroke-width":1,opacity:0}).attr("transform",l(de,me)).attr("d","M0,0Z")}function ie(ce,de,me,_e,Se,we){ce.attr("d",_e+"M"+me.l+","+me.t+"v"+me.h+"h"+me.w+"v-"+me.h+"h-"+me.w+"Z"),te(ce,de,Se,we)}function te(ce,de,me,_e){me||(ce.transition().style("fill",_e>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),de.transition().style("opacity",1).duration(200))}function J(ce){w.select(ce).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function X(ce){z&&ce.data&&ce._context.showTips&&(k.notifier(k._(ce,"Double-click to zoom back out"),"long"),z=!1)}function ee(ce){var de=Math.floor(Math.min(ce.b-ce.t,ce.r-ce.l,O)/2);return"M"+(ce.l-3.5)+","+(ce.t-.5+de)+"h3v"+-de+"h"+de+"v-3h-"+(de+3)+"ZM"+(ce.r+3.5)+","+(ce.t-.5+de)+"h-3v"+-de+"h"+-de+"v-3h"+(de+3)+"ZM"+(ce.r+3.5)+","+(ce.b+.5-de)+"h-3v"+de+"h"+-de+"v3h"+(de+3)+"ZM"+(ce.l-3.5)+","+(ce.b+.5-de)+"h3v"+de+"h"+de+"v3h-"+(de+3)+"Z"}function re(ce,de,me,_e,Se){for(var we,xe,De,Ee,Me=!1,he={},fe={},ae=(Se||{}).xaHash,be=(Se||{}).yaHash,Ie=0;Ie<de.length;Ie++){var Te=de[Ie];for(we in me)if(Te[we]){for(De in Te)Se&&(ae[De]||be[De])||(De.charAt(0)==="x"?me:_e)[De]||(he[De]=we);for(xe in _e)Se&&(ae[xe]||be[xe])||!Te[xe]||(Me=!0)}for(xe in _e)if(Te[xe])for(Ee in Te)Se&&(ae[Ee]||be[Ee])||(Ee.charAt(0)==="x"?me:_e)[Ee]||(fe[Ee]=xe)}Me&&(k.extendFlat(he,fe),fe={});var Ne={},qe=[];for(De in he){var ve=x(ce,De);qe.push(ve),Ne[ve._id]=ve}var Ce={},Ae=[];for(Ee in fe){var ze=x(ce,Ee);Ae.push(ze),Ce[ze._id]=ze}return{xaHash:Ne,yaHash:Ce,xaxes:qe,yaxes:Ae,xLinks:he,yLinks:fe,isSubplotConstrained:Me}}function oe(ce,de){if(y){var me=ce.onwheel!==void 0?"wheel":"mousewheel";ce._onwheel&&ce.removeEventListener(me,ce._onwheel),ce._onwheel=de,ce.addEventListener(me,de,{passive:!1})}else ce.onwheel!==void 0?ce.onwheel=de:ce.onmousewheel!==void 0?ce.onmousewheel=de:ce.isAddedWheelEvent||(ce.isAddedWheelEvent=!0,ce.addEventListener("wheel",de,{passive:!1}))}function ue(ce){var de=[];for(var me in ce)de.push(ce[me]);return de}R.exports={makeDragBox:function(ce,de,me,_e,Se,we,xe,De){var Ee,Me,he,fe,ae,be,Ie,Te,Ne,qe,ve,Ce,Ae,ze,Ue,Ve,Ye,$e,rt,ht,nt,bt,wt,ut=ce._fullLayout._zoomlayer,lt=xe+De==="nsew",Tt=(xe+De).length===1;function Et(){if(Ee=de.xaxis,Me=de.yaxis,Ne=Ee._length,qe=Me._length,Ie=Ee._offset,Te=Me._offset,(he={})[Ee._id]=Ee,(fe={})[Me._id]=Me,xe&&De)for(var Yt=de.overlays,ln=0;ln<Yt.length;ln++){var nn=Yt[ln].xaxis;he[nn._id]=nn;var fn=Yt[ln].yaxis;fe[fn._id]=fn}ae=ue(he),be=ue(fe),Ae=D(ae,De),ze=D(be,xe),Ue=!ze&&!Ae,Ce=re(ce,ce._fullLayout._axisMatchGroups,he,fe);var mn=(ve=re(ce,ce._fullLayout._axisConstraintGroups,he,fe,Ce)).isSubplotConstrained||Ce.isSubplotConstrained;Ve=De||mn,Ye=xe||mn;var xn=ce._fullLayout;$e=xn._has("scattergl"),rt=xn._has("splom"),ht=xn._has("svg")}me+=de.yaxis._shift,Et();var St=function(Yt,ln,nn){return Yt?Yt==="nsew"?nn?"":ln==="pan"?"move":"crosshair":Yt.toLowerCase()+"-resize":"pointer"}(ze+Ae,ce._fullLayout.dragmode,lt),Ft=Y(de,xe+De+"drag",St,me,_e,Se,we);if(Ue&&!lt)return Ft.onmousedown=null,Ft.style.pointerEvents="none",Ft;var zt,Je,et,Ze,Qe,st,ft,Be,je,at,ot={element:Ft,gd:ce,plotinfo:de};function xt(){ot.plotinfo.selection=!1,d(ce)}function yt(Yt,ln){var nn=ot.gd;if(nn._fullLayout._activeShapeIndex>=0)nn._fullLayout._deactivateShape(nn);else{var fn=nn._fullLayout.clickmode;if(J(nn),Yt!==2||Tt||Xt(),lt)fn.indexOf("select")>-1&&M(ln,nn,ae,be,de.id,ot),fn.indexOf("event")>-1&&n.click(nn,ln,de.id);else if(Yt===1&&Tt){var mn=xe?Me:Ee,xn=xe==="s"||De==="w"?0:1,Pn=mn._name+".range["+xn+"]",Dn=function(er,ir){var fr,ar=er.range[ir],Kn=Math.abs(ar-er.range[1-ir]);return er.type==="date"?ar:er.type==="log"?(fr=Math.ceil(Math.max(0,-Math.log(Kn)/Math.LN10))+3,i("."+fr+"g")(Math.pow(10,ar))):(fr=Math.floor(Math.log(Math.abs(ar))/Math.LN10)-Math.floor(Math.log(Kn)/Math.LN10)+4,i("."+String(fr)+"g")(ar))}(mn,xn),En="left",Fn="middle";if(mn.fixedrange)return;xe?(Fn=xe==="n"?"top":"bottom",mn.side==="right"&&(En="right")):De==="e"&&(En="right"),nn._context.showAxisRangeEntryBoxes&&w.select(Ft).call(t.makeEditable,{gd:nn,immediate:!0,background:nn._fullLayout.paper_bgcolor,text:String(Dn),fill:mn.tickfont?mn.tickfont.color:"#444",horizontalAlign:En,verticalAlign:Fn}).on("edit",function(er){var ir=mn.d2r(er);ir!==void 0&&h.call("_guiRelayout",nn,Pn,ir)})}}}function _t(Yt,ln){if(ce._transitioningWithDuration)return!1;var nn=Math.max(0,Math.min(Ne,bt*Yt+zt)),fn=Math.max(0,Math.min(qe,wt*ln+Je)),mn=Math.abs(nn-zt),xn=Math.abs(fn-Je);function Pn(){ft="",et.r=et.l,et.t=et.b,je.attr("d","M0,0Z")}if(et.l=Math.min(zt,nn),et.r=Math.max(zt,nn),et.t=Math.min(Je,fn),et.b=Math.max(Je,fn),ve.isSubplotConstrained)mn>O||xn>O?(ft="xy",mn/Ne>xn/qe?(xn=mn*qe/Ne,Je>fn?et.t=Je-xn:et.b=Je+xn):(mn=xn*Ne/qe,zt>nn?et.l=zt-mn:et.r=zt+mn),je.attr("d",ee(et))):Pn();else if(Ce.isSubplotConstrained)if(mn>O||xn>O){ft="xy";var Dn=Math.min(et.l/Ne,(qe-et.b)/qe),En=Math.max(et.r/Ne,(qe-et.t)/qe);et.l=Dn*Ne,et.r=En*Ne,et.b=(1-Dn)*qe,et.t=(1-En)*qe,je.attr("d",ee(et))}else Pn();else!ze||xn<Math.min(Math.max(.6*mn,P),O)?mn<P||!Ae?Pn():(et.t=0,et.b=qe,ft="x",je.attr("d",function(Fn,er){return"M"+(Fn.l-.5)+","+(er-O-.5)+"h-3v"+(2*O+1)+"h3ZM"+(Fn.r+.5)+","+(er-O-.5)+"h3v"+(2*O+1)+"h-3Z"}(et,Je))):!Ae||mn<Math.min(.6*xn,O)?(et.l=0,et.r=Ne,ft="y",je.attr("d",function(Fn,er){return"M"+(er-O-.5)+","+(Fn.t-.5)+"v-3h"+(2*O+1)+"v3ZM"+(er-O-.5)+","+(Fn.b+.5)+"v3h"+(2*O+1)+"v-3Z"}(et,zt))):(ft="xy",je.attr("d",ee(et)));et.w=et.r-et.l,et.h=et.b-et.t,ft&&(at=!0),ce._dragged=at,ie(Be,je,et,Qe,st,Ze),gt(),ce.emit("plotly_relayouting",nt),st=!0}function gt(){nt={},ft!=="xy"&&ft!=="x"||(G(ae,et.l/Ne,et.r/Ne,nt,ve.xaxes),Ut("x",nt)),ft!=="xy"&&ft!=="y"||(G(be,(qe-et.b)/qe,(qe-et.t)/qe,nt,ve.yaxes),Ut("y",nt))}function Ct(){gt(),J(ce),Qt(),X(ce)}ot.prepFn=function(Yt,ln,nn){var fn=ot.dragmode,mn=ce._fullLayout.dragmode;mn!==fn&&(ot.dragmode=mn),Et(),bt=ce._fullLayout._invScaleX,wt=ce._fullLayout._invScaleY,Ue||(lt?Yt.shiftKey?mn==="pan"?mn="zoom":c(mn)||(mn="pan"):Yt.ctrlKey&&(mn="pan"):mn="pan"),b(mn)?ot.minDrag=1:ot.minDrag=void 0,c(mn)?(ot.xaxes=ae,ot.yaxes=be,T(Yt,ln,nn,ot,mn)):(ot.clickFn=yt,c(fn)&&xt(),Ue||(mn==="zoom"?(ot.moveFn=_t,ot.doneFn=Ct,ot.minDrag=1,function(xn,Pn,Dn){var En=Ft.getBoundingClientRect();zt=Pn-En.left,Je=Dn-En.top,ce._fullLayout._calcInverseTransform(ce);var Fn=k.apply3DTransform(ce._fullLayout._invTransform)(zt,Je);zt=Fn[0],Je=Fn[1],et={l:zt,r:zt,w:0,t:Je,b:Je,h:0},Ze=ce._hmpixcount?ce._hmlumcount/ce._hmpixcount:_(ce._fullLayout.plot_bgcolor).getLuminance(),st=!1,ft="xy",at=!1,Be=W(ut,Ze,Ie,Te,Qe="M0,0H"+Ne+"V"+qe+"H0V0"),je=Z(ut,Ie,Te)}(0,ln,nn)):mn==="pan"&&(ot.moveFn=jt,ot.doneFn=Qt))),ce._fullLayout._redrag=function(){var xn=ce._dragdata;if(xn&&xn.element===Ft){var Pn=ce._fullLayout.dragmode;c(Pn)||(Et(),Gt([0,0,Ne,qe]),ot.moveFn(xn.dx,xn.dy))}}},u.init(ot);var dt=[0,0,Ne,qe],vt=null,At=C.REDRAWDELAY,Bt=de.mainplot?ce._fullLayout._plots[de.mainplot]:de;function jt(Yt,ln){if(Yt*=bt,ln*=wt,!ce._transitioningWithDuration){if(ce._fullLayout._replotting=!0,Ae==="ew"||ze==="ns"){var nn=Ae?-Yt:0,fn=ze?-ln:0;if(Ce.isSubplotConstrained){if(Ae&&ze){var mn=(Yt/Ne-ln/qe)/2;nn=-(Yt=mn*Ne),fn=-(ln=-mn*qe)}ze?nn=-fn*Ne/qe:fn=-nn*qe/Ne}return Ae&&(V(ae,Yt),Ut("x")),ze&&(V(be,ln),Ut("y")),Gt([nn,fn,Ne,qe]),tn(),void ce.emit("plotly_relayouting",nt)}var xn,Pn,Dn=Ae==="w"==(ze==="n")?1:-1;if(Ae&&ze&&(ve.isSubplotConstrained||Ce.isSubplotConstrained)){var En=(Yt/Ne+Dn*ln/qe)/2;Yt=En*Ne,ln=Dn*En*qe}if(Ae==="w"?Yt=fr(ae,0,Yt):Ae==="e"?Yt=fr(ae,1,-Yt):Ae||(Yt=0),ze==="n"?ln=fr(be,1,ln):ze==="s"?ln=fr(be,0,-ln):ze||(ln=0),xn=Ae==="w"?Yt:0,Pn=ze==="n"?ln:0,ve.isSubplotConstrained&&!Ce.isSubplotConstrained||Ce.isSubplotConstrained&&Ae&&ze&&Dn>0){var Fn;if(Ce.isSubplotConstrained||!Ae&&ze.length===1){for(Fn=0;Fn<ae.length;Fn++)ae[Fn].range=ae[Fn]._r.slice(),A(ae[Fn],1-ln/qe);xn=(Yt=ln*Ne/qe)/2}if(Ce.isSubplotConstrained||!ze&&Ae.length===1){for(Fn=0;Fn<be.length;Fn++)be[Fn].range=be[Fn]._r.slice(),A(be[Fn],1-Yt/Ne);Pn=(ln=Yt*qe/Ne)/2}}Ce.isSubplotConstrained&&ze||Ut("x"),Ce.isSubplotConstrained&&Ae||Ut("y");var er=Ne-Yt,ir=qe-ln;!Ce.isSubplotConstrained||Ae&&ze||(Ae?(Pn=xn?0:Yt*qe/Ne,ir=er*qe/Ne):(xn=Pn?0:ln*Ne/qe,er=ir*Ne/qe)),Gt([xn,Pn,er,ir]),tn(),ce.emit("plotly_relayouting",nt)}function fr(ar,Kn,wr){for(var Ht,sn,gn=1-Kn,bn=0;bn<ar.length;bn++){var Cn=ar[bn];if(!Cn.fixedrange){Ht=Cn,sn=Cn._rl[gn]+(Cn._rl[Kn]-Cn._rl[gn])/j(wr/Cn._length);var Yn=Cn.l2r(sn);Yn!==!1&&Yn!==void 0&&(Cn.range[Kn]=Yn)}}return Ht._length*(Ht._rl[Kn]-sn)/(Ht._rl[Kn]-Ht._rl[gn])}}function Ut(Yt,ln){for(var nn=Ce.isSubplotConstrained?{x:be,y:ae}[Yt]:Ce[Yt+"axes"],fn=Ce.isSubplotConstrained?{x:ae,y:be}[Yt]:[],mn=0;mn<nn.length;mn++){var xn=nn[mn],Pn=xn._id,Dn=Ce.xLinks[Pn]||Ce.yLinks[Pn],En=fn[0]||he[Dn]||fe[Dn];En&&(ln?(ln[xn._name+".range[0]"]=ln[En._name+".range[0]"],ln[xn._name+".range[1]"]=ln[En._name+".range[1]"]):xn.range=En.range.slice())}}function tn(){var Yt,ln=[];function nn(Pn){for(Yt=0;Yt<Pn.length;Yt++)Pn[Yt].fixedrange||ln.push(Pn[Yt]._id)}function fn(Pn,Dn){for(Yt=0;Yt<Pn.length;Yt++){var En=Pn[Yt],Fn=En[Dn];En.fixedrange||Fn.tickmode!=="sync"||ln.push(Fn._id)}}for(Ve&&(nn(ae),nn(ve.xaxes),nn(Ce.xaxes),fn(de.overlays,"xaxis")),Ye&&(nn(be),nn(ve.yaxes),nn(Ce.yaxes),fn(de.overlays,"yaxis")),nt={},Yt=0;Yt<ln.length;Yt++){var mn=ln[Yt],xn=x(ce,mn);a.drawOne(ce,xn,{skipTitle:!0}),nt[xn._name+".range[0]"]=xn.range[0],nt[xn._name+".range[1]"]=xn.range[1]}a.redrawComponents(ce,ln)}function Xt(){if(!ce._transitioningWithDuration){var Yt=ce._context.doubleClick,ln=[];Ae&&(ln=ln.concat(ae)),ze&&(ln=ln.concat(be)),Ce.xaxes&&(ln=ln.concat(Ce.xaxes)),Ce.yaxes&&(ln=ln.concat(Ce.yaxes));var nn,fn,mn,xn={};if(Yt==="reset+autosize"){for(Yt="autosize",fn=0;fn<ln.length;fn++)if((nn=ln[fn])._rangeInitial&&(nn.range[0]!==nn._rangeInitial[0]||nn.range[1]!==nn._rangeInitial[1])||!nn._rangeInitial&&!nn.autorange){Yt="reset";break}}if(Yt==="autosize")for(fn=0;fn<ln.length;fn++)(nn=ln[fn]).fixedrange||(xn[nn._name+".autorange"]=!0);else if(Yt==="reset")for((Ae||ve.isSubplotConstrained)&&(ln=ln.concat(ve.xaxes)),ze&&!ve.isSubplotConstrained&&(ln=ln.concat(ve.yaxes)),ve.isSubplotConstrained&&(Ae?ze||(ln=ln.concat(be)):ln=ln.concat(ae)),fn=0;fn<ln.length;fn++)(nn=ln[fn]).fixedrange||(nn._rangeInitial?(mn=nn._rangeInitial,xn[nn._name+".range[0]"]=mn[0],xn[nn._name+".range[1]"]=mn[1]):xn[nn._name+".autorange"]=!0);ce.emit("plotly_doubleclick",null),h.call("_guiRelayout",ce,xn)}}function Qt(){Gt([0,0,Ne,qe]),k.syncOrAsync([m.previousPromises,function(){ce._fullLayout._replotting=!1,h.call("_guiRelayout",ce,nt)}],ce)}function Gt(Yt){var ln,nn,fn,mn,xn=ce._fullLayout,Pn=xn._plots,Dn=xn._subplots.cartesian;if(rt&&h.subplotsRegistry.splom.drag(ce),$e){for(ln=0;ln<Dn.length;ln++)if(fn=(nn=Pn[Dn[ln]]).xaxis,mn=nn.yaxis,nn._scene){var En=k.simpleMap(fn.range,fn.r2l),Fn=k.simpleMap(mn.range,mn.r2l);nn._scene.update({range:[En[0],Fn[0],En[1],Fn[1]]})}}if((rt||$e)&&(f(ce),v(ce)),ht){var er=Yt[2]/Ee._length,ir=Yt[3]/Me._length;for(ln=0;ln<Dn.length;ln++){fn=(nn=Pn[Dn[ln]]).xaxis,mn=nn.yaxis;var fr,ar,Kn,wr,Ht=(Ve||Ce.isSubplotConstrained)&&!fn.fixedrange&&he[fn._id],sn=(Ye||Ce.isSubplotConstrained)&&!mn.fixedrange&&fe[mn._id];if(Ht?(fr=er,Kn=De||Ce.isSubplotConstrained?Yt[0]:dn(fn,fr)):Ce.xaHash[fn._id]?(fr=er,Kn=Yt[0]*fn._length/Ee._length):Ce.yaHash[fn._id]?(fr=ir,Kn=ze==="ns"?-Yt[1]*fn._length/Me._length:dn(fn,fr,{n:"top",s:"bottom"}[ze])):Kn=Tn(fn,fr=vn(fn,er,ir)),sn?(ar=ir,wr=xe||Ce.isSubplotConstrained?Yt[1]:dn(mn,ar)):Ce.yaHash[mn._id]?(ar=ir,wr=Yt[1]*mn._length/Me._length):Ce.xaHash[mn._id]?(ar=er,wr=Ae==="ew"?-Yt[0]*mn._length/Ee._length:dn(mn,ar,{e:"right",w:"left"}[Ae])):wr=Tn(mn,ar=vn(mn,er,ir)),fr||ar){fr||(fr=1),ar||(ar=1);var gn=fn._offset-Kn/fr,bn=mn._offset-wr/ar;nn.clipRect.call(r.setTranslate,Kn,wr).call(r.setScale,fr,ar),nn.plot.call(r.setTranslate,gn,bn).call(r.setScale,1/fr,1/ar),fr===nn.xScaleFactor&&ar===nn.yScaleFactor||(r.setPointGroupScale(nn.zoomScalePts,fr,ar),r.setTextPointsScale(nn.zoomScaleTxt,fr,ar)),r.hideOutsideRangePoints(nn.clipOnAxisFalseTraces,nn),nn.xScaleFactor=fr,nn.yScaleFactor=ar}}}}function vn(Yt,ln,nn){return Yt.fixedrange?0:Ve&&ve.xaHash[Yt._id]?ln:Ye&&(ve.isSubplotConstrained?ve.xaHash:ve.yaHash)[Yt._id]?nn:0}function Tn(Yt,ln){return ln?(Yt.range=Yt._r.slice(),A(Yt,ln),dn(Yt,ln)):0}function dn(Yt,ln,nn){return Yt._length*(1-ln)*g[nn||Yt.constraintoward||"middle"]}return xe.length*De.length!=1&&oe(Ft,function(Yt){if(ce._context._scrollZoom.cartesian||ce._fullLayout._enablescrollzoom){if(xt(),ce._transitioningWithDuration)return Yt.preventDefault(),void Yt.stopPropagation();Et(),clearTimeout(vt);var ln=-Yt.deltaY;if(isFinite(ln)||(ln=Yt.wheelDelta/10),isFinite(ln)){var nn,fn=Math.exp(-Math.min(Math.max(ln,-20),20)/200),mn=Bt.draglayer.select(".nsewdrag").node().getBoundingClientRect(),xn=(Yt.clientX-mn.left)/mn.width,Pn=(mn.bottom-Yt.clientY)/mn.height;if(Ve){for(De||(xn=.5),nn=0;nn<ae.length;nn++)Dn(ae[nn],xn,fn);Ut("x"),dt[2]*=fn,dt[0]+=dt[2]*xn*(1/fn-1)}if(Ye){for(xe||(Pn=.5),nn=0;nn<be.length;nn++)Dn(be[nn],Pn,fn);Ut("y"),dt[3]*=fn,dt[1]+=dt[3]*(1-Pn)*(1/fn-1)}Gt(dt),tn(),ce.emit("plotly_relayouting",nt),vt=setTimeout(function(){ce._fullLayout&&(dt=[0,0,Ne,qe],Qt())},At),Yt.preventDefault()}else k.log("Did not find wheel motion attributes: ",Yt)}function Dn(En,Fn,er){if(!En.fixedrange){var ir=k.simpleMap(En.range,En.r2l),fr=ir[0]+(ir[1]-ir[0])*Fn;En.range=ir.map(function(ar){return En.l2r(fr+(ar-fr)*er)})}}}),Ft},makeDragger:B,makeRectDragger:Y,makeZoombox:W,makeCorners:Z,updateZoombox:ie,xyCorners:ee,transitionZoombox:te,removeZoombox:J,showDoubleClickNotifier:X,attachWheelEventHandler:oe}},4305:function(R,E,e){var w=e(39898),k=e(30211),i=e(28569),_=e(6964),y=e(29323).makeDragBox,h=e(85555).DRAGGERSIZE;E.initInteractions=function(l){var t=l._fullLayout;if(l._context.staticPlot)w.select(l).selectAll(".drag").remove();else if(t._has("cartesian")||t._has("splom")){Object.keys(t._plots||{}).sort(function(r,n){if((t._plots[r].mainplot&&!0)===(t._plots[n].mainplot&&!0)){var a=r.split("y"),s=n.split("y");return a[0]===s[0]?Number(a[1]||1)-Number(s[1]||1):Number(a[0]||1)-Number(s[0]||1)}return t._plots[r].mainplot?1:-1}).forEach(function(r){var n=t._plots[r],a=n.xaxis,s=n.yaxis;if(!n.mainplot){var u=y(l,n,a._offset,s._offset,a._length,s._length,"ns","ew");u.onmousemove=function(b){l._fullLayout._rehover=function(){l._fullLayout._hoversubplot===r&&l._fullLayout._plots[r]&&k.hover(l,b,r)},k.hover(l,b,r),l._fullLayout._lasthover=u,l._fullLayout._hoversubplot=r},u.onmouseout=function(b){l._dragging||(l._fullLayout._hoversubplot=null,i.unhover(l,b))},l._context.showAxisDragHandles&&(y(l,n,a._offset-h,s._offset-h,h,h,"n","w"),y(l,n,a._offset+a._length,s._offset-h,h,h,"n","e"),y(l,n,a._offset-h,s._offset+s._length,h,h,"s","w"),y(l,n,a._offset+a._length,s._offset+s._length,h,h,"s","e"))}if(l._context.showAxisDragHandles){if(r===a._mainSubplot){var p=a._mainLinePosition;a.side==="top"&&(p-=h),y(l,n,a._offset+.1*a._length,p,.8*a._length,h,"","ew"),y(l,n,a._offset,p,.1*a._length,h,"","w"),y(l,n,a._offset+.9*a._length,p,.1*a._length,h,"","e")}if(r===s._mainSubplot){var c=s._mainLinePosition;s.side!=="right"&&(c-=h),y(l,n,c,s._offset+.1*s._length,h,.8*s._length,"ns",""),y(l,n,c,s._offset+.9*s._length,h,.1*s._length,"s",""),y(l,n,c,s._offset,h,.1*s._length,"n","")}}});var o=t._hoverlayer.node();o.onmousemove=function(r){r.target=l._fullLayout._lasthover,k.hover(l,r,t._hoversubplot)},o.onclick=function(r){r.target=l._fullLayout._lasthover,k.click(l,r)},o.onmousedown=function(r){l._fullLayout._lasthover.onmousedown(r)},E.updateFx(l)}},E.updateFx=function(l){var t=l._fullLayout,o=t.dragmode==="pan"?"move":"crosshair";_(t._draggers,o)}},76325:function(R,E,e){var w=e(73972),k=e(71828),i=e(41675);R.exports=function(_){return function(y,h){var l=y[_];if(Array.isArray(l))for(var t=w.subplotsRegistry.cartesian,o=t.idRegex,r=h._subplots,n=r.xaxis,a=r.yaxis,s=r.cartesian,u=h._has("cartesian")||h._has("gl2d"),p=0;p<l.length;p++){var c=l[p];if(k.isPlainObject(c)){var b=i.cleanId(c.xref,"x",!1),g=i.cleanId(c.yref,"y",!1),f=o.x.test(b),v=o.y.test(g);if(f||v){u||k.pushUnique(h._basePlotModules,t);var m=!1;f&&n.indexOf(b)===-1&&(n.push(b),m=!0),v&&a.indexOf(g)===-1&&(a.push(g),m=!0),m&&f&&v&&s.push(b+g)}}}}}},93612:function(R,E,e){var w=e(39898),k=e(73972),i=e(71828),_=e(74875),y=e(91424),h=e(27659).a0,l=e(41675),t=e(85555),o=e(77922),r=i.ensureSingle;function n(c,b,g){return i.ensureSingle(c,b,g,function(f){f.datum(g)})}function a(c,b,g,f,v){for(var m,x,T,d=t.traceLayerClasses,M=c._fullLayout,A=M._modules,C=[],P=[],O=0;O<A.length;O++){var z=(m=A[O]).name,B=k.modules[z].categories;if(B.svg){var Y=m.layerName||z+"layer",D=m.plot;T=(x=h(g,D))[0],g=x[1],T.length&&C.push({i:d.indexOf(Y),className:Y,plotMethod:D,cdModule:T}),B.zoomScale&&P.push("."+Y)}}C.sort(function(j,W){return j.i-W.i});var G=b.plot.selectAll("g.mlayer").data(C,function(j){return j.className});if(G.enter().append("g").attr("class",function(j){return j.className}).classed("mlayer",!0).classed("rangeplot",b.isRangePlot),G.exit().remove(),G.order(),G.each(function(j){var W=w.select(this),Z=j.className;j.plotMethod(c,b,j.cdModule,W,f,v),t.clipOnAxisFalseQuery.indexOf("."+Z)===-1&&y.setClipUrl(W,b.layerClipId,c)}),M._has("scattergl")&&(m=k.getModule("scattergl"),T=h(g,m)[0],m.plot(c,b,T)),!c._context.staticPlot&&(b._hasClipOnAxisFalse&&(b.clipOnAxisFalseTraces=b.plot.selectAll(t.clipOnAxisFalseQuery.join(",")).selectAll(".trace")),P.length)){var V=b.plot.selectAll(P.join(",")).selectAll(".trace");b.zoomScalePts=V.selectAll("path.point"),b.zoomScaleTxt=V.selectAll(".textpoint")}}function s(c,b){var g=b.plotgroup,f=b.id,v=t.layerValue2layerClass[b.xaxis.layer],m=t.layerValue2layerClass[b.yaxis.layer],x=c._fullLayout._hasOnlyLargeSploms;if(b.mainplot){var T=b.mainplotinfo,d=T.plotgroup,M=f+"-x",A=f+"-y";b.minorGridlayer=T.minorGridlayer,b.gridlayer=T.gridlayer,b.zerolinelayer=T.zerolinelayer,r(T.overlinesBelow,"path",M),r(T.overlinesBelow,"path",A),r(T.overaxesBelow,"g",M),r(T.overaxesBelow,"g",A),b.plot=r(T.overplot,"g",f),r(T.overlinesAbove,"path",M),r(T.overlinesAbove,"path",A),r(T.overaxesAbove,"g",M),r(T.overaxesAbove,"g",A),b.xlines=d.select(".overlines-"+v).select("."+M),b.ylines=d.select(".overlines-"+m).select("."+A),b.xaxislayer=d.select(".overaxes-"+v).select("."+M),b.yaxislayer=d.select(".overaxes-"+m).select("."+A)}else if(x)b.xlines=r(g,"path","xlines-above"),b.ylines=r(g,"path","ylines-above"),b.xaxislayer=r(g,"g","xaxislayer-above"),b.yaxislayer=r(g,"g","yaxislayer-above");else{var C=r(g,"g","layer-subplot");b.shapelayer=r(C,"g","shapelayer"),b.imagelayer=r(C,"g","imagelayer"),b.minorGridlayer=r(g,"g","minor-gridlayer"),b.gridlayer=r(g,"g","gridlayer"),b.zerolinelayer=r(g,"g","zerolinelayer"),r(g,"path","xlines-below"),r(g,"path","ylines-below"),b.overlinesBelow=r(g,"g","overlines-below"),r(g,"g","xaxislayer-below"),r(g,"g","yaxislayer-below"),b.overaxesBelow=r(g,"g","overaxes-below"),b.plot=r(g,"g","plot"),b.overplot=r(g,"g","overplot"),b.xlines=r(g,"path","xlines-above"),b.ylines=r(g,"path","ylines-above"),b.overlinesAbove=r(g,"g","overlines-above"),r(g,"g","xaxislayer-above"),r(g,"g","yaxislayer-above"),b.overaxesAbove=r(g,"g","overaxes-above"),b.xlines=g.select(".xlines-"+v),b.ylines=g.select(".ylines-"+m),b.xaxislayer=g.select(".xaxislayer-"+v),b.yaxislayer=g.select(".yaxislayer-"+m)}x||(n(b.minorGridlayer,"g",b.xaxis._id),n(b.minorGridlayer,"g",b.yaxis._id),b.minorGridlayer.selectAll("g").map(function(P){return P[0]}).sort(l.idSort),n(b.gridlayer,"g",b.xaxis._id),n(b.gridlayer,"g",b.yaxis._id),b.gridlayer.selectAll("g").map(function(P){return P[0]}).sort(l.idSort)),b.xlines.style("fill","none").classed("crisp",!0),b.ylines.style("fill","none").classed("crisp",!0)}function u(c,b){if(c){var g={};for(var f in c.each(function(T){var d=T[0];w.select(this).remove(),p(d,b),g[d]=!0}),b._plots)for(var v=b._plots[f].overlays||[],m=0;m<v.length;m++){var x=v[m];g[x.id]&&x.plot.selectAll(".trace").remove()}}}function p(c,b){b._draggers.selectAll("g."+c).remove(),b._defs.select("#clip"+b._uid+c+"plot").remove()}E.name="cartesian",E.attr=["xaxis","yaxis"],E.idRoot=["x","y"],E.idRegex=t.idRegex,E.attrRegex=t.attrRegex,E.attributes=e(89502),E.layoutAttributes=e(13838),E.supplyLayoutDefaults=e(86763),E.transitionAxes=e(66847),E.finalizeSubplots=function(c,b){var g,f,v,m=b._subplots,x=m.xaxis,T=m.yaxis,d=m.cartesian,M=d.concat(m.gl2d||[]),A={},C={};for(g=0;g<M.length;g++){var P=M[g].split("y");A[P[0]]=1,C["y"+P[1]]=1}for(g=0;g<x.length;g++)A[f=x[g]]||(v=(c[l.id2name(f)]||{}).anchor,t.idRegex.y.test(v)||(v="y"),d.push(f+v),M.push(f+v),C[v]||(C[v]=1,i.pushUnique(T,v)));for(g=0;g<T.length;g++)C[v=T[g]]||(f=(c[l.id2name(v)]||{}).anchor,t.idRegex.x.test(f)||(f="x"),d.push(f+v),M.push(f+v),A[f]||(A[f]=1,i.pushUnique(x,f)));if(!M.length){for(var O in f="",v="",c)t.attrRegex.test(O)&&(O.charAt(0)==="x"?(!f||+O.substr(5)<+f.substr(5))&&(f=O):(!v||+O.substr(5)<+v.substr(5))&&(v=O));f=f?l.name2id(f):"x",v=v?l.name2id(v):"y",x.push(f),T.push(v),d.push(f+v)}},E.plot=function(c,b,g,f){var v,m=c._fullLayout,x=m._subplots.cartesian,T=c.calcdata;if(!Array.isArray(b))for(b=[],v=0;v<T.length;v++)b.push(v);for(v=0;v<x.length;v++){for(var d,M=x[v],A=m._plots[M],C=[],P=0;P<T.length;P++){var O=T[P],z=O[0].trace;z.xaxis+z.yaxis===M&&((b.indexOf(z.index)!==-1||z.carpet)&&(d&&d[0].trace.xaxis+d[0].trace.yaxis===M&&["tonextx","tonexty","tonext"].indexOf(z.fill)!==-1&&C.indexOf(d)===-1&&C.push(d),C.push(O)),d=O)}a(c,A,C,g,f)}},E.clean=function(c,b,g,f){var v,m,x,T=f._plots||{},d=b._plots||{},M=f._subplots||{};if(f._hasOnlyLargeSploms&&!b._hasOnlyLargeSploms)for(x in T)(v=T[x]).plotgroup&&v.plotgroup.remove();var A=f._has&&f._has("gl"),C=b._has&&b._has("gl");if(A&&!C)for(x in T)(v=T[x])._scene&&v._scene.destroy();if(M.xaxis&&M.yaxis){var P=l.listIds({_fullLayout:f});for(m=0;m<P.length;m++){var O=P[m];b[l.id2name(O)]||f._infolayer.selectAll(".g-"+O+"title").remove()}}var z=f._has&&f._has("cartesian"),B=b._has&&b._has("cartesian");if(z&&!B)u(f._cartesianlayer.selectAll(".subplot"),f),f._defs.selectAll(".axesclip").remove(),delete f._axisConstraintGroups,delete f._axisMatchGroups;else if(M.cartesian)for(m=0;m<M.cartesian.length;m++){var Y=M.cartesian[m];if(!d[Y]){var D="."+Y+",."+Y+"-x,."+Y+"-y";f._cartesianlayer.selectAll(D).remove(),p(Y,f)}}},E.drawFramework=function(c){var b=c._fullLayout,g=function(v){var m,x,T,d,M,A,C=v._fullLayout,P=C._subplots.cartesian,O=P.length,z=[],B=[];for(m=0;m<O;m++){T=P[m],M=(d=C._plots[T]).xaxis,A=d.yaxis;var Y=M._mainAxis,D=A._mainAxis,G=Y._id+D._id,V=C._plots[G];d.overlays=[],G!==T&&V?(d.mainplot=G,d.mainplotinfo=V,B.push(T)):(d.mainplot=void 0,d.mainplotinfo=void 0,z.push(T))}for(m=0;m<B.length;m++)T=B[m],(d=C._plots[T]).mainplotinfo.overlays.push(d);var j=z.concat(B),W=new Array(O);for(m=0;m<O;m++){T=j[m],M=(d=C._plots[T]).xaxis,A=d.yaxis;var Z=[T,M.layer,A.layer,M.overlaying||"",A.overlaying||""];for(x=0;x<d.overlays.length;x++)Z.push(d.overlays[x].id);W[m]=Z}return W}(c),f=b._cartesianlayer.selectAll(".subplot").data(g,String);f.enter().append("g").attr("class",function(v){return"subplot "+v[0]}),f.order(),f.exit().call(u,b),f.each(function(v){var m=v[0],x=b._plots[m];x.plotgroup=w.select(this),s(c,x),x.draglayer=r(b._draggers,"g",m)})},E.rangePlot=function(c,b,g){s(c,b),a(c,b,g),_.style(c)},E.toSVG=function(c){var b=c._fullLayout._glimages,g=w.select(c).selectAll(".svg-container");g.filter(function(f,v){return v===g.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus").each(function(){var f=this,v=f.toDataURL("image/png");b.append("svg:image").attr({xmlns:o.svg,"xlink:href":v,preserveAspectRatio:"none",x:0,y:0,width:f.style.width,height:f.style.height})})},E.updateFx=e(4305).updateFx},13838:function(R,E,e){var w=e(41940),k=e(22399),i=e(79952).P,_=e(1426).extendFlat,y=e(44467).templatedArray,h=e(12663).descriptionWithDates,l=e(50606).ONEDAY,t=e(85555),o=t.HOUR_PATTERN,r=t.WEEKDAY_PATTERN,n={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},a=_({},n,{values:n.values.slice().concat(["sync"])});function s(M){return{valType:"integer",min:0,dflt:M?5:0,editType:"ticks"}}var u={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},p={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},c={valType:"data_array",editType:"ticks"},b={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function g(M){var A={valType:"number",min:0,editType:"ticks"};return M||(A.dflt=5),A}function f(M){var A={valType:"number",min:0,editType:"ticks"};return M||(A.dflt=1),A}var v={valType:"color",dflt:k.defaultLine,editType:"ticks"},m={valType:"color",dflt:k.lightLine,editType:"ticks"};function x(M){var A={valType:"number",min:0,editType:"ticks"};return M||(A.dflt=1),A}var T=_({},i,{editType:"ticks"}),d={valType:"boolean",editType:"ticks"};R.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:k.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:w({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},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},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},scaleanchor:{valType:"enumerated",values:[t.idRegex.x.toString(),t.idRegex.y.toString()],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[t.idRegex.x.toString(),t.idRegex.y.toString()],editType:"calc"},rangebreaks:y("rangebreak",{enabled:{valType:"boolean",dflt:!0,editType:"calc"},bounds:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},pattern:{valType:"enumerated",values:[r,o,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:l},editType:"calc"}),tickmode:a,nticks:s(),tick0:u,dtick:p,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:c,ticktext:{valType:"data_array",editType:"ticks"},ticks:b,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},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"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:g(),tickwidth:f(),tickcolor:v,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:_({},i,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:w({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:h("tick label")},tickformatstops:y("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:h("hover text")},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:k.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:d,gridcolor:m,gridwidth:x(),griddash:T,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:k.defaultLine,editType:"ticks"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:k.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",t.idRegex.x.toString(),t.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",t.idRegex.x.toString(),t.idRegex.y.toString()],editType:"plot"},minor:{tickmode:n,nticks:s("minor"),tick0:u,dtick:p,tickvals:c,ticks:b,ticklen:g("minor"),tickwidth:f("minor"),tickcolor:v,gridcolor:m,gridwidth:x("minor"),griddash:T,showgrid:d,editType:"ticks"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},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"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},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","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc",_deprecated:{autotick:{valType:"boolean",editType:"ticks"},title:{valType:"string",editType:"ticks"},titlefont:w({editType:"ticks"})}}},86763:function(R,E,e){var w=e(71828),k=e(7901),i=e(23469).isUnifiedHover,_=e(98212),y=e(44467),h=e(10820),l=e(13838),t=e(951),o=e(71453),r=e(99082),n=e(52830),a=e(41675),s=a.id2name,u=a.name2id,p=e(85555).AX_ID_PATTERN,c=e(73972),b=c.traceIs,g=c.getComponentMethod;function f(v,m,x){Array.isArray(v[m])?v[m].push(x):v[m]=[x]}R.exports=function(v,m,x){var T,d,M=m.autotypenumbers,A={},C={},P={},O={},z={},B={},Y={},D={},G={},V={};for(T=0;T<x.length;T++){var j=x[T];if(b(j,"cartesian")||b(j,"gl2d")){var W,Z;if(j.xaxis)W=s(j.xaxis),f(A,W,j);else if(j.xaxes)for(d=0;d<j.xaxes.length;d++)f(A,s(j.xaxes[d]),j);if(j.yaxis)Z=s(j.yaxis),f(A,Z,j);else if(j.yaxes)for(d=0;d<j.yaxes.length;d++)f(A,s(j.yaxes[d]),j);j.type==="funnel"?j.orientation==="h"?(W&&(C[W]=!0),Z&&(Y[Z]=!0)):Z&&(P[Z]=!0):j.type==="image"?(Z&&(D[Z]=!0),W&&(D[W]=!0)):(Z&&(z[Z]=!0,B[Z]=!0),b(j,"carpet")&&(j.type!=="carpet"||j._cheater)||W&&(O[W]=!0)),j.type==="carpet"&&j._cheater&&W&&(C[W]=!0),b(j,"2dMap")&&(G[W]=!0,G[Z]=!0),b(j,"oriented")&&(V[j.orientation==="h"?Z:W]=!0)}}var ie=m._subplots,te=ie.xaxis,J=ie.yaxis,X=w.simpleMap(te,s),ee=w.simpleMap(J,s),re=X.concat(ee),oe=k.background;te.length&&J.length&&(oe=w.coerce(v,m,h,"plot_bgcolor"));var ue,ce,de,me,_e,Se=k.combine(oe,m.paper_bgcolor);function we(){var Tt=A[ue]||[];_e._traceIndices=Tt.map(function(Et){return Et._expandedIndex}),_e._annIndices=[],_e._shapeIndices=[],_e._selectionIndices=[],_e._imgIndices=[],_e._subplotsWith=[],_e._counterAxes=[],_e._name=_e._attr=ue,_e._id=ce}function xe(Tt,Et){return w.coerce(me,_e,l,Tt,Et)}function De(Tt,Et){return w.coerce2(me,_e,l,Tt,Et)}function Ee(Tt){return Tt==="x"?J:te}function Me(Tt,Et){for(var St=Tt==="x"?X:ee,Ft=[],zt=0;zt<St.length;zt++){var Je=St[zt];Je===Et||(v[Je]||{}).overlaying||Ft.push(u(Je))}return Ft}var he={x:Ee("x"),y:Ee("y")},fe=he.x.concat(he.y),ae={},be=[];function Ie(){var Tt=me.matches;p.test(Tt)&&fe.indexOf(Tt)===-1&&(ae[Tt]=me.type,be=Object.keys(ae))}var Te=_(v,m),Ne=i(Te);for(T=0;T<re.length;T++){ue=re[T],ce=u(ue),de=ue.charAt(0),w.isPlainObject(v[ue])||(v[ue]={}),me=v[ue],_e=y.newContainer(m,ue,de+"axis"),we();var qe=de==="x"&&!O[ue]&&C[ue]||de==="y"&&!z[ue]&&P[ue],ve=de==="y"&&(!B[ue]&&Y[ue]||D[ue]),Ce={hasMinor:!0,letter:de,font:m.font,outerTicks:G[ue],showGrid:!V[ue],data:A[ue]||[],bgColor:Se,calendar:m.calendar,automargin:!0,visibleDflt:qe,reverseDflt:ve,autotypenumbersDflt:M,splomStash:((m._splomAxes||{})[de]||{})[ce]};xe("uirevision",m.uirevision),t(me,_e,xe,Ce),o(me,_e,xe,Ce,m);var Ae=Ne&&de===Te.charAt(0),ze=De("spikecolor",Ne?_e.color:void 0),Ue=De("spikethickness",Ne?1.5:void 0),Ve=De("spikedash",Ne?"dot":void 0),Ye=De("spikemode",Ne?"across":void 0),$e=De("spikesnap");xe("showspikes",!!(Ae||ze||Ue||Ve||Ye||$e))||(delete _e.spikecolor,delete _e.spikethickness,delete _e.spikedash,delete _e.spikemode,delete _e.spikesnap);var rt=s(me.overlaying),ht=[0,1];if(m[rt]!==void 0){var nt=s(m[rt].anchor);m[nt]!==void 0&&(ht=m[nt].domain)}n(me,_e,xe,{letter:de,counterAxes:he[de],overlayableAxes:Me(de,ue),grid:m.grid,overlayingDomain:ht}),xe("title.standoff"),Ie(),_e._input=me}for(T=0;T<be.length;){ce=be[T++],de=(ue=s(ce)).charAt(0),w.isPlainObject(v[ue])||(v[ue]={}),me=v[ue],_e=y.newContainer(m,ue,de+"axis"),we();var bt={letter:de,font:m.font,outerTicks:G[ue],showGrid:!V[ue],data:[],bgColor:Se,calendar:m.calendar,automargin:!0,visibleDflt:!1,reverseDflt:!1,autotypenumbersDflt:M,splomStash:((m._splomAxes||{})[de]||{})[ce]};xe("uirevision",m.uirevision),_e.type=ae[ce]||"linear",o(me,_e,xe,bt,m),n(me,_e,xe,{letter:de,counterAxes:he[de],overlayableAxes:Me(de,ue),grid:m.grid}),xe("fixedrange"),Ie(),_e._input=me}var wt=g("rangeslider","handleDefaults"),ut=g("rangeselector","handleDefaults");for(T=0;T<X.length;T++)ue=X[T],me=v[ue],_e=m[ue],wt(v,m,ue),_e.type==="date"&&ut(me,_e,m,ee,_e.calendar),xe("fixedrange");for(T=0;T<ee.length;T++){ue=ee[T],me=v[ue],_e=m[ue];var lt=m[s(_e.anchor)];xe("fixedrange",g("rangeslider","isVisible")(lt))}r.handleDefaults(v,m,{axIds:fe.concat(be).sort(a.idSort),axHasImage:D})}},92128:function(R,E,e){var w=e(84267).mix,k=e(22399),i=e(71828);R.exports=function(_,y,h,l){var t=(l=l||{}).dfltColor;function o(v,m){return i.coerce2(_,y,l.attributes,v,m)}var r=o("linecolor",t),n=o("linewidth");h("showline",l.showLine||!!r||!!n)||(delete y.linecolor,delete y.linewidth);var a=o("gridcolor",w(t,l.bgColor,l.blend||k.lightFraction).toRgbString()),s=o("gridwidth"),u=o("griddash");if(h("showgrid",l.showGrid||!!a||!!s||!!u)||(delete y.gridcolor,delete y.gridwidth,delete y.griddash),l.hasMinor){var p=o("minor.gridcolor",w(y.gridcolor,l.bgColor,67).toRgbString()),c=o("minor.gridwidth",y.gridwidth||1),b=o("minor.griddash",y.griddash||"solid");h("minor.showgrid",!!p||!!c||!!b)||(delete y.minor.gridcolor,delete y.minor.gridwidth,delete y.minor.griddash)}if(!l.noZeroLine){var g=o("zerolinecolor",t),f=o("zerolinewidth");h("zeroline",l.showGrid||!!g||!!f)||(delete y.zerolinecolor,delete y.zerolinewidth)}}},52830:function(R,E,e){var w=e(92770),k=e(71828);R.exports=function(i,_,y,h){var l,t,o,r,n,a,s=h.counterAxes||[],u=h.overlayableAxes||[],p=h.letter,c=h.grid,b=h.overlayingDomain;c&&(t=c._domains[p][c._axisMap[_._id]],l=c._anchors[_._id],t&&(o=c[p+"side"].split(" ")[0],r=c.domain[p][o==="right"||o==="top"?1:0])),t=t||[0,1],l=l||(w(i.position)?"free":s[0]||"free"),o=o||(p==="x"?"bottom":"left"),r=r||0,n=0,a=!1;var g=k.coerce(i,_,{anchor:{valType:"enumerated",values:["free"].concat(s),dflt:l}},"anchor"),f=k.coerce(i,_,{side:{valType:"enumerated",values:p==="x"?["bottom","top"]:["left","right"],dflt:o}},"side");g==="free"&&(p==="y"&&(y("autoshift")&&(r=f==="left"?b[0]:b[1],a=!_.automargin||_.automargin,n=f==="left"?-3:3),y("shift",n)),y("position",r)),y("automargin",a);var v=!1;if(u.length&&(v=k.coerce(i,_,{overlaying:{valType:"enumerated",values:[!1].concat(u),dflt:!1}},"overlaying")),!v){var m=y("domain",t);m[0]>m[1]-.000244140625&&(_.domain=t),k.noneOrAll(i.domain,_.domain,t),_.tickmode==="sync"&&(_.tickmode="auto")}return y("layer"),_}},89426:function(R,E,e){var w=e(59652);R.exports=function(k,i,_,y,h){h||(h={});var l=h.tickSuffixDflt,t=w(k);_("tickprefix")&&_("showtickprefix",t),_("ticksuffix",l)&&_("showticksuffix",t)}},42449:function(R,E,e){var w=e(18783).FROM_BL;R.exports=function(k,i,_){_===void 0&&(_=w[k.constraintoward||"center"]);var y=[k.r2l(k.range[0]),k.r2l(k.range[1])],h=y[0]+(y[1]-y[0])*_;k.range=k._input.range=[k.l2r(h+(y[0]-h)*i),k.l2r(h+(y[1]-h)*i)],k.setScale()}},21994:function(R,E,e){var w=e(39898),k=e(84096).g0,i=e(71828),_=i.numberFormat,y=e(92770),h=i.cleanNumber,l=i.ms2DateTime,t=i.dateTime2ms,o=i.ensureNumber,r=i.isArrayOrTypedArray,n=e(50606),a=n.FP_SAFE,s=n.BADNUM,u=n.LOG_CLIP,p=n.ONEWEEK,c=n.ONEDAY,b=n.ONEHOUR,g=n.ONEMIN,f=n.ONESEC,v=e(41675),m=e(85555),x=m.HOUR_PATTERN,T=m.WEEKDAY_PATTERN;function d(A){return Math.pow(10,A)}function M(A){return A!=null}R.exports=function(A,C){C=C||{};var P=A._id||"x",O=P.charAt(0);function z(re,oe){if(re>0)return Math.log(re)/Math.LN10;if(re<=0&&oe&&A.range&&A.range.length===2){var ue=A.range[0],ce=A.range[1];return .5*(ue+ce-2*u*Math.abs(ue-ce))}return s}function B(re,oe,ue,ce){if((ce||{}).msUTC&&y(re))return+re;var de=t(re,ue||A.calendar);if(de===s){if(!y(re))return s;re=+re;var me=Math.floor(10*i.mod(re+.05,1)),_e=Math.round(re-me/10);de=t(new Date(_e))+me/10}return de}function Y(re,oe,ue){return l(re,oe,ue||A.calendar)}function D(re){return A._categories[Math.round(re)]}function G(re){if(M(re)){if(A._categoriesMap===void 0&&(A._categoriesMap={}),A._categoriesMap[re]!==void 0)return A._categoriesMap[re];A._categories.push(typeof re=="number"?String(re):re);var oe=A._categories.length-1;return A._categoriesMap[re]=oe,oe}return s}function V(re){if(A._categoriesMap)return A._categoriesMap[re]}function j(re){var oe=V(re);return oe!==void 0?oe:y(re)?+re:void 0}function W(re){return y(re)?+re:V(re)}function Z(re,oe,ue){return w.round(ue+oe*re,2)}function ie(re,oe,ue){return(re-ue)/oe}var te=function(re){return y(re)?Z(re,A._m,A._b):s},J=function(re){return ie(re,A._m,A._b)};if(A.rangebreaks){var X=O==="y";te=function(re){if(!y(re))return s;var oe=A._rangebreaks.length;if(!oe)return Z(re,A._m,A._b);var ue=X;A.range[0]>A.range[1]&&(ue=!ue);for(var ce=ue?-1:1,de=ce*re,me=0,_e=0;_e<oe;_e++){var Se=ce*A._rangebreaks[_e].min,we=ce*A._rangebreaks[_e].max;if(de<Se)break;if(!(de>we)){me=de<(Se+we)/2?_e:_e+1;break}me=_e+1}var xe=A._B[me]||0;return isFinite(xe)?Z(re,A._m2,xe):0},J=function(re){var oe=A._rangebreaks.length;if(!oe)return ie(re,A._m,A._b);for(var ue=0,ce=0;ce<oe&&!(re<A._rangebreaks[ce].pmin);ce++)re>A._rangebreaks[ce].pmax&&(ue=ce+1);return ie(re,A._m2,A._B[ue])}}A.c2l=A.type==="log"?z:o,A.l2c=A.type==="log"?d:o,A.l2p=te,A.p2l=J,A.c2p=A.type==="log"?function(re,oe){return te(z(re,oe))}:te,A.p2c=A.type==="log"?function(re){return d(J(re))}:J,["linear","-"].indexOf(A.type)!==-1?(A.d2r=A.r2d=A.d2c=A.r2c=A.d2l=A.r2l=h,A.c2d=A.c2r=A.l2d=A.l2r=o,A.d2p=A.r2p=function(re){return A.l2p(h(re))},A.p2d=A.p2r=J,A.cleanPos=o):A.type==="log"?(A.d2r=A.d2l=function(re,oe){return z(h(re),oe)},A.r2d=A.r2c=function(re){return d(h(re))},A.d2c=A.r2l=h,A.c2d=A.l2r=o,A.c2r=z,A.l2d=d,A.d2p=function(re,oe){return A.l2p(A.d2r(re,oe))},A.p2d=function(re){return d(J(re))},A.r2p=function(re){return A.l2p(h(re))},A.p2r=J,A.cleanPos=o):A.type==="date"?(A.d2r=A.r2d=i.identity,A.d2c=A.r2c=A.d2l=A.r2l=B,A.c2d=A.c2r=A.l2d=A.l2r=Y,A.d2p=A.r2p=function(re,oe,ue){return A.l2p(B(re,0,ue))},A.p2d=A.p2r=function(re,oe,ue){return Y(J(re),oe,ue)},A.cleanPos=function(re){return i.cleanDate(re,s,A.calendar)}):A.type==="category"?(A.d2c=A.d2l=G,A.r2d=A.c2d=A.l2d=D,A.d2r=A.d2l_noadd=j,A.r2c=function(re){var oe=W(re);return oe!==void 0?oe:A.fraction2r(.5)},A.l2r=A.c2r=o,A.r2l=W,A.d2p=function(re){return A.l2p(A.r2c(re))},A.p2d=function(re){return D(J(re))},A.r2p=A.d2p,A.p2r=J,A.cleanPos=function(re){return typeof re=="string"&&re!==""?re:o(re)}):A.type==="multicategory"&&(A.r2d=A.c2d=A.l2d=D,A.d2r=A.d2l_noadd=j,A.r2c=function(re){var oe=j(re);return oe!==void 0?oe:A.fraction2r(.5)},A.r2c_just_indices=V,A.l2r=A.c2r=o,A.r2l=j,A.d2p=function(re){return A.l2p(A.r2c(re))},A.p2d=function(re){return D(J(re))},A.r2p=A.d2p,A.p2r=J,A.cleanPos=function(re){return Array.isArray(re)||typeof re=="string"&&re!==""?re:o(re)},A.setupMultiCategory=function(re){var oe,ue,ce=A._traceIndices,de=A._matchGroup;if(de&&A._categories.length===0){for(var me in de)if(me!==P){var _e=C[v.id2name(me)];ce=ce.concat(_e._traceIndices)}}var Se=[[0,{}],[0,{}]],we=[];for(oe=0;oe<ce.length;oe++){var xe=re[ce[oe]];if(O in xe){var De=xe[O],Ee=xe._length||i.minRowLength(De);if(r(De[0])&&r(De[1]))for(ue=0;ue<Ee;ue++){var Me=De[0][ue],he=De[1][ue];M(Me)&&M(he)&&(we.push([Me,he]),Me in Se[0][1]||(Se[0][1][Me]=Se[0][0]++),he in Se[1][1]||(Se[1][1][he]=Se[1][0]++))}}}for(we.sort(function(fe,ae){var be=Se[0][1],Ie=be[fe[0]]-be[ae[0]];if(Ie)return Ie;var Te=Se[1][1];return Te[fe[1]]-Te[ae[1]]}),oe=0;oe<we.length;oe++)G(we[oe])}),A.fraction2r=function(re){var oe=A.r2l(A.range[0]),ue=A.r2l(A.range[1]);return A.l2r(oe+re*(ue-oe))},A.r2fraction=function(re){var oe=A.r2l(A.range[0]),ue=A.r2l(A.range[1]);return(A.r2l(re)-oe)/(ue-oe)},A.cleanRange=function(re,oe){oe||(oe={}),re||(re="range");var ue,ce,de=i.nestedProperty(A,re).get();if(ce=(ce=A.type==="date"?i.dfltRange(A.calendar):O==="y"?m.DFLTRANGEY:A._name==="realaxis"?[0,1]:oe.dfltRange||m.DFLTRANGEX).slice(),A.rangemode!=="tozero"&&A.rangemode!=="nonnegative"||(ce[0]=0),de&&de.length===2)for(A.type!=="date"||A.autorange||(de[0]=i.cleanDate(de[0],s,A.calendar),de[1]=i.cleanDate(de[1],s,A.calendar)),ue=0;ue<2;ue++)if(A.type==="date"){if(!i.isDateTime(de[ue],A.calendar)){A[re]=ce;break}if(A.r2l(de[0])===A.r2l(de[1])){var me=i.constrain(A.r2l(de[0]),i.MIN_MS+1e3,i.MAX_MS-1e3);de[0]=A.l2r(me-1e3),de[1]=A.l2r(me+1e3);break}}else{if(!y(de[ue])){if(!y(de[1-ue])){A[re]=ce;break}de[ue]=de[1-ue]*(ue?10:.1)}if(de[ue]<-a?de[ue]=-a:de[ue]>a&&(de[ue]=a),de[0]===de[1]){var _e=Math.max(1,Math.abs(1e-6*de[0]));de[0]-=_e,de[1]+=_e}}else i.nestedProperty(A,re).set(ce)},A.setScale=function(re){var oe=C._size;if(A.overlaying){var ue=v.getFromId({_fullLayout:C},A.overlaying);A.domain=ue.domain}var ce=re&&A._r?"_r":"range",de=A.calendar;A.cleanRange(ce);var me,_e,Se=A.r2l(A[ce][0],de),we=A.r2l(A[ce][1],de),xe=O==="y";if(xe?(A._offset=oe.t+(1-A.domain[1])*oe.h,A._length=oe.h*(A.domain[1]-A.domain[0]),A._m=A._length/(Se-we),A._b=-A._m*we):(A._offset=oe.l+A.domain[0]*oe.w,A._length=oe.w*(A.domain[1]-A.domain[0]),A._m=A._length/(we-Se),A._b=-A._m*Se),A._rangebreaks=[],A._lBreaks=0,A._m2=0,A._B=[],A.rangebreaks&&(A._rangebreaks=A.locateBreaks(Math.min(Se,we),Math.max(Se,we)),A._rangebreaks.length)){for(me=0;me<A._rangebreaks.length;me++)_e=A._rangebreaks[me],A._lBreaks+=Math.abs(_e.max-_e.min);var De=xe;Se>we&&(De=!De),De&&A._rangebreaks.reverse();var Ee=De?-1:1;for(A._m2=Ee*A._length/(Math.abs(we-Se)-A._lBreaks),A._B.push(-A._m2*(xe?we:Se)),me=0;me<A._rangebreaks.length;me++)_e=A._rangebreaks[me],A._B.push(A._B[A._B.length-1]-Ee*A._m2*(_e.max-_e.min));for(me=0;me<A._rangebreaks.length;me++)(_e=A._rangebreaks[me]).pmin=te(_e.min),_e.pmax=te(_e.max)}if(!isFinite(A._m)||!isFinite(A._b)||A._length<0)throw C._replotting=!1,new Error("Something went wrong with axis scaling")},A.maskBreaks=function(re){var oe,ue,ce,de,me,_e=A.rangebreaks||[];_e._cachedPatterns||(_e._cachedPatterns=_e.map(function(Me){return Me.enabled&&Me.bounds?i.simpleMap(Me.bounds,Me.pattern?h:A.d2c):null})),_e._cachedValues||(_e._cachedValues=_e.map(function(Me){return Me.enabled&&Me.values?i.simpleMap(Me.values,A.d2c).sort(i.sorterAsc):null}));for(var Se=0;Se<_e.length;Se++){var we=_e[Se];if(we.enabled){if(we.bounds){var xe=we.pattern;switch(ue=(oe=_e._cachedPatterns[Se])[0],ce=oe[1],xe){case T:de=(me=new Date(re)).getUTCDay(),ue>ce&&(ce+=7,de<ue&&(de+=7));break;case x:de=(me=new Date(re)).getUTCHours()+(me.getUTCMinutes()/60+me.getUTCSeconds()/3600+me.getUTCMilliseconds()/36e5),ue>ce&&(ce+=24,de<ue&&(de+=24));break;case"":de=re}if(de>=ue&&de<ce)return s}else for(var De=_e._cachedValues[Se],Ee=0;Ee<De.length;Ee++)if(ce=(ue=De[Ee])+we.dvalue,re>=ue&&re<ce)return s}}return re},A.locateBreaks=function(re,oe){var ue,ce,de,me,_e=[];if(!A.rangebreaks)return _e;var Se=A.rangebreaks.slice().sort(function(Te,Ne){return Te.pattern===T&&Ne.pattern===x?-1:Ne.pattern===T&&Te.pattern===x?1:0}),we=function(Te,Ne){if((Te=i.constrain(Te,re,oe))!==(Ne=i.constrain(Ne,re,oe))){for(var qe=!0,ve=0;ve<_e.length;ve++){var Ce=_e[ve];Te<Ce.max&&Ne>=Ce.min&&(Te<Ce.min&&(Ce.min=Te),Ne>Ce.max&&(Ce.max=Ne),qe=!1)}qe&&_e.push({min:Te,max:Ne})}};for(ue=0;ue<Se.length;ue++){var xe=Se[ue];if(xe.enabled)if(xe.bounds){var De=re,Ee=oe;xe.pattern&&(De=Math.floor(De)),de=(ce=i.simpleMap(xe.bounds,xe.pattern?h:A.r2l))[0],me=ce[1];var Me,he,fe=new Date(De);switch(xe.pattern){case T:he=p,Me=(me-de+(me<de?7:0))*c,De+=de*c-(fe.getUTCDay()*c+fe.getUTCHours()*b+fe.getUTCMinutes()*g+fe.getUTCSeconds()*f+fe.getUTCMilliseconds());break;case x:he=c,Me=(me-de+(me<de?24:0))*b,De+=de*b-(fe.getUTCHours()*b+fe.getUTCMinutes()*g+fe.getUTCSeconds()*f+fe.getUTCMilliseconds());break;default:De=Math.min(ce[0],ce[1]),Me=he=(Ee=Math.max(ce[0],ce[1]))-De}for(var ae=De;ae<Ee;ae+=he)we(ae,ae+Me)}else for(var be=i.simpleMap(xe.values,A.d2c),Ie=0;Ie<be.length;Ie++)we(de=be[Ie],me=de+xe.dvalue)}return _e.sort(function(Te,Ne){return Te.min-Ne.min}),_e},A.makeCalcdata=function(re,oe,ue){var ce,de,me,_e,Se=A.type,we=Se==="date"&&re[oe+"calendar"];if(oe in re){if(ce=re[oe],_e=re._length||i.minRowLength(ce),i.isTypedArray(ce)&&(Se==="linear"||Se==="log")){if(_e===ce.length)return ce;if(ce.subarray)return ce.subarray(0,_e)}if(Se==="multicategory")return function(Ee,Me){for(var he=new Array(Me),fe=0;fe<Me;fe++){var ae=(Ee[0]||[])[fe],be=(Ee[1]||[])[fe];he[fe]=V([ae,be])}return he}(ce,_e);for(de=new Array(_e),me=0;me<_e;me++)de[me]=A.d2c(ce[me],0,we,ue)}else{var xe=oe+"0"in re?A.d2c(re[oe+"0"],0,we):0,De=re["d"+oe]?Number(re["d"+oe]):1;for(ce=re[{x:"y",y:"x"}[oe]],_e=re._length||ce.length,de=new Array(_e),me=0;me<_e;me++)de[me]=xe+me*De}if(A.rangebreaks)for(me=0;me<_e;me++)de[me]=A.maskBreaks(de[me]);return de},A.isValidRange=function(re){return Array.isArray(re)&&re.length===2&&y(A.r2l(re[0]))&&y(A.r2l(re[1]))},A.isPtWithinRange=function(re,oe){var ue=A.c2l(re[O],null,oe),ce=A.r2l(A.range[0]),de=A.r2l(A.range[1]);return ce<de?ce<=ue&&ue<=de:de<=ue&&ue<=ce},A._emptyCategories=function(){A._categories=[],A._categoriesMap={}},A.clearCalc=function(){var re=A._matchGroup;if(re){var oe=null,ue=null;for(var ce in re){var de=C[v.id2name(ce)];if(de._categories){oe=de._categories,ue=de._categoriesMap;break}}oe&&ue?(A._categories=oe,A._categoriesMap=ue):A._emptyCategories()}else A._emptyCategories();if(A._initialCategories)for(var me=0;me<A._initialCategories.length;me++)G(A._initialCategories[me])},A.sortByInitialCategories=function(){var re=[];if(A._emptyCategories(),A._initialCategories)for(var oe=0;oe<A._initialCategories.length;oe++)G(A._initialCategories[oe]);re=re.concat(A._traceIndices);var ue=A._matchGroup;for(var ce in ue)if(P!==ce){var de=C[v.id2name(ce)];de._categories=A._categories,de._categoriesMap=A._categoriesMap,re=re.concat(de._traceIndices)}return re};var ee=C._d3locale;A.type==="date"&&(A._dateFormat=ee?ee.timeFormat:k,A._extraFormat=C._extraFormat),A._separators=C.separators,A._numFormat=ee?ee.numberFormat:_,delete A._minDtick,delete A._forceTick0}},59652:function(R){R.exports=function(E){var e=["showexponent","showtickprefix","showticksuffix"].filter(function(w){return E[w]!==void 0});if(e.every(function(w){return E[w]===E[e[0]]})||e.length===1)return E[e[0]]}},96115:function(R,E,e){var w=e(71828),k=e(7901).contrast,i=e(13838),_=e(59652),y=e(85501);function h(l,t){function o(r,n){return w.coerce(l,t,i.tickformatstops,r,n)}o("enabled")&&(o("dtickrange"),o("value"))}R.exports=function(l,t,o,r,n){n||(n={});var a=o("labelalias");w.isPlainObject(a)||delete t.labelalias;var s=_(l);if(o("showticklabels")){var u=n.font||{},p=t.color,c=(t.ticklabelposition||"").indexOf("inside")!==-1?k(n.bgColor):p&&p!==i.color.dflt?p:u.color;if(w.coerceFont(o,"tickfont",{family:u.family,size:u.size,color:c}),n.noTicklabelstep||r==="multicategory"||r==="log"||o("ticklabelstep"),n.noAng||o("tickangle"),r!=="category"){var b=o("tickformat");y(l,t,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:h}),t.tickformatstops.length||delete t.tickformatstops,n.noExp||b||r==="date"||(o("showexponent",s),o("exponentformat"),o("minexponent"),o("separatethousands"))}}}},38701:function(R,E,e){var w=e(71828),k=e(13838);R.exports=function(i,_,y,h){var l=h.isMinor,t=l?i.minor||{}:i,o=l?_.minor:_,r=l?k.minor:k,n=l?"minor.":"",a=w.coerce2(t,o,r,"ticklen",l?.6*(_.ticklen||5):void 0),s=w.coerce2(t,o,r,"tickwidth",l?_.tickwidth||1:void 0),u=w.coerce2(t,o,r,"tickcolor",(l?_.tickcolor:void 0)||o.color);y(n+"ticks",!l&&h.outerTicks||a||s||u?"outside":"")||(delete o.ticklen,delete o.tickwidth,delete o.tickcolor)}},26218:function(R,E,e){var w=e(66287),k=e(71828).isArrayOrTypedArray;R.exports=function(i,_,y,h,l){l||(l={});var t=l.isMinor,o=t?i.minor||{}:i,r=t?_.minor:_,n=t?"minor.":"";function a(g){var f=o[g];return f!==void 0?f:(r._template||{})[g]}var s=a("tick0"),u=a("dtick"),p=a("tickvals"),c=y(n+"tickmode",k(p)?"array":u?"linear":"auto");if(c==="auto"||c==="sync")y(n+"nticks");else if(c==="linear"){var b=r.dtick=w.dtick(u,h);r.tick0=w.tick0(s,h,_.calendar,b)}else h!=="multicategory"&&(y(n+"tickvals")===void 0?r.tickmode="auto":t||y("ticktext"))}},66847:function(R,E,e){var w=e(39898),k=e(73972),i=e(71828),_=e(91424),y=e(89298);R.exports=function(h,l,t,o){var r=h._fullLayout;if(l.length!==0){var n,a,s,u;o&&(n=o());var p=w.ease(t.easing);return h._transitionData._interruptCallbacks.push(function(){return window.cancelAnimationFrame(u),u=null,function(){for(var g={},f=0;f<l.length;f++){var v=l[f],m=v.plotinfo.xaxis,x=v.plotinfo.yaxis;v.xr0&&(g[m._name+".range"]=v.xr0.slice()),v.yr0&&(g[x._name+".range"]=v.yr0.slice())}return k.call("relayout",h,g).then(function(){for(var T=0;T<l.length;T++)c(l[T].plotinfo)})}()}),a=Date.now(),u=window.requestAnimationFrame(function g(){s=Date.now();for(var f=Math.min(1,(s-a)/t.duration),v=p(f),m=0;m<l.length;m++)b(l[m],v);s-a>t.duration?(function(){for(var x={},T=0;T<l.length;T++){var d=l[T],M=d.plotinfo.xaxis,A=d.plotinfo.yaxis;d.xr1&&(x[M._name+".range"]=d.xr1.slice()),d.yr1&&(x[A._name+".range"]=d.yr1.slice())}n&&n(),k.call("relayout",h,x).then(function(){for(var C=0;C<l.length;C++)c(l[C].plotinfo)})}(),u=window.cancelAnimationFrame(g)):u=window.requestAnimationFrame(g)}),Promise.resolve()}function c(g){var f=g.xaxis,v=g.yaxis;r._defs.select("#"+g.clipId+"> rect").call(_.setTranslate,0,0).call(_.setScale,1,1),g.plot.call(_.setTranslate,f._offset,v._offset).call(_.setScale,1,1);var m=g.plot.selectAll(".scatterlayer .trace");m.selectAll(".point").call(_.setPointGroupScale,1,1),m.selectAll(".textpoint").call(_.setTextPointsScale,1,1),m.call(_.hideOutsideRangePoints,g)}function b(g,f){var v=g.plotinfo,m=v.xaxis,x=v.yaxis,T=m._length,d=x._length,M=!!g.xr1,A=!!g.yr1,C=[];if(M){var P=i.simpleMap(g.xr0,m.r2l),O=i.simpleMap(g.xr1,m.r2l),z=P[1]-P[0],B=O[1]-O[0];C[0]=(P[0]*(1-f)+f*O[0]-P[0])/(P[1]-P[0])*T,C[2]=T*(1-f+f*B/z),m.range[0]=m.l2r(P[0]*(1-f)+f*O[0]),m.range[1]=m.l2r(P[1]*(1-f)+f*O[1])}else C[0]=0,C[2]=T;if(A){var Y=i.simpleMap(g.yr0,x.r2l),D=i.simpleMap(g.yr1,x.r2l),G=Y[1]-Y[0],V=D[1]-D[0];C[1]=(Y[1]*(1-f)+f*D[1]-Y[1])/(Y[0]-Y[1])*d,C[3]=d*(1-f+f*V/G),x.range[0]=m.l2r(Y[0]*(1-f)+f*D[0]),x.range[1]=x.l2r(Y[1]*(1-f)+f*D[1])}else C[1]=0,C[3]=d;y.drawOne(h,m,{skipTitle:!0}),y.drawOne(h,x,{skipTitle:!0}),y.redrawComponents(h,[m._id,x._id]);var j=M?T/C[2]:1,W=A?d/C[3]:1,Z=M?C[0]:0,ie=A?C[1]:0,te=M?C[0]/C[2]*T:0,J=A?C[1]/C[3]*d:0,X=m._offset-te,ee=x._offset-J;v.clipRect.call(_.setTranslate,Z,ie).call(_.setScale,1/j,1/W),v.plot.call(_.setTranslate,X,ee).call(_.setScale,j,W),_.setPointGroupScale(v.zoomScalePts,1/j,1/W),_.setTextPointsScale(v.zoomScaleTxt,1/j,1/W)}y.redrawComponents(h)}},951:function(R,E,e){var w=e(73972).traceIs,k=e(4322);function i(y){return{v:"x",h:"y"}[y.orientation||"v"]}function _(y,h){var l=i(y),t=w(y,"box-violin"),o=w(y._fullInput||{},"candlestick");return t&&!o&&h===l&&y[l]===void 0&&y[l+"0"]===void 0}R.exports=function(y,h,l,t){l("autotypenumbers",t.autotypenumbersDflt),l("type",(t.splomStash||{}).type)==="-"&&(function(o,r){if(o.type==="-"){var n,a=o._id,s=a.charAt(0);a.indexOf("scene")!==-1&&(a=s);var u=function(x,T,d){for(var M=0;M<x.length;M++){var A=x[M];if(A.type==="splom"&&A._length>0&&(A["_"+d+"axes"]||{})[T]||(A[d+"axis"]||d)===T&&(_(A,d)||(A[d]||[]).length||A[d+"0"]))return A}}(r,a,s);if(u)if(u.type!=="histogram"||s!=={v:"y",h:"x"}[u.orientation||"v"]){var p=s+"calendar",c=u[p],b={noMultiCategory:!w(u,"cartesian")||w(u,"noMultiCategory")};if(u.type==="box"&&u._hasPreCompStats&&s==={h:"x",v:"y"}[u.orientation||"v"]&&(b.noMultiCategory=!0),b.autotypenumbers=o.autotypenumbers,_(u,s)){var g=i(u),f=[];for(n=0;n<r.length;n++){var v=r[n];w(v,"box-violin")&&(v[s+"axis"]||s)===a&&(v[g]!==void 0?f.push(v[g][0]):v.name!==void 0?f.push(v.name):f.push("text"),v[p]!==c&&(c=void 0))}o.type=k(f,c,b)}else if(u.type==="splom"){var m=u.dimensions[u._axesDim[a]];m.visible&&(o.type=k(m.values,c,b))}else o.type=k(u[s]||[u[s+"0"]],c,b)}else o.type="linear"}}(h,t.data),h.type==="-"?h.type="linear":y.type=h.type)}},31137:function(R,E,e){var w=e(73972),k=e(71828);function i(l,t,o){var r,n,a,s=!1;if(t.type==="data")r=l._fullData[t.traces!==null?t.traces[0]:0];else{if(t.type!=="layout")return!1;r=l._fullLayout}return n=k.nestedProperty(r,t.prop).get(),(a=o[t.type]=o[t.type]||{}).hasOwnProperty(t.prop)&&a[t.prop]!==n&&(s=!0),a[t.prop]=n,{changed:s,value:n}}function _(l,t){var o=[],r=t[0],n={};if(typeof r=="string")n[r]=t[1];else{if(!k.isPlainObject(r))return o;n=r}return h(n,function(a,s,u){o.push({type:"layout",prop:a,value:u})},"",0),o}function y(l,t){var o,r,n,a,s=[];if(r=t[0],n=t[1],o=t[2],a={},typeof r=="string")a[r]=n;else{if(!k.isPlainObject(r))return s;a=r,o===void 0&&(o=n)}return o===void 0&&(o=null),h(a,function(u,p,c){var b,g;if(Array.isArray(c)){g=c.slice();var f=Math.min(g.length,l.data.length);o&&(f=Math.min(f,o.length)),b=[];for(var v=0;v<f;v++)b[v]=o?o[v]:v}else g=c,b=o?o.slice():null;if(b===null)Array.isArray(g)&&(g=g[0]);else if(Array.isArray(b)){if(!Array.isArray(g)){var m=g;g=[];for(var x=0;x<b.length;x++)g[x]=m}g.length=Math.min(b.length,g.length)}s.push({type:"data",prop:u,traces:b,value:g})},"",0),s}function h(l,t,o,r){Object.keys(l).forEach(function(n){var a=l[n];if(n[0]!=="_"){var s=o+(r>0?".":"")+n;k.isPlainObject(a)?h(a,t,s,r+1):t(s,n,a)}})}E.manageCommandObserver=function(l,t,o,r){var n={},a=!0;t&&t._commandObserver&&(n=t._commandObserver),n.cache||(n.cache={}),n.lookupTable={};var s=E.hasSimpleAPICommandBindings(l,o,n.lookupTable);if(t&&t._commandObserver){if(s)return n;if(t._commandObserver.remove)return t._commandObserver.remove(),t._commandObserver=null,n}if(s){i(l,s,n.cache),n.check=function(){if(a){var c=i(l,s,n.cache);return c.changed&&r&&n.lookupTable[c.value]!==void 0&&(n.disable(),Promise.resolve(r({value:c.value,type:s.type,prop:s.prop,traces:s.traces,index:n.lookupTable[c.value]})).then(n.enable,n.enable)),c.changed}};for(var u=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],p=0;p<u.length;p++)l._internalOn(u[p],n.check);n.remove=function(){for(var c=0;c<u.length;c++)l._removeInternalListener(u[c],n.check)}}else k.log("Unable to automatically bind plot updates to API command"),n.lookupTable={},n.remove=function(){};return n.disable=function(){a=!1},n.enable=function(){a=!0},t&&(t._commandObserver=n),n},E.hasSimpleAPICommandBindings=function(l,t,o){var r,n,a=t.length;for(r=0;r<a;r++){var s,u=t[r],p=u.method,c=u.args;if(Array.isArray(c)||(c=[]),!p)return!1;var b=E.computeAPICommandBindings(l,p,c);if(b.length!==1)return!1;if(n){if((s=b[0]).type!==n.type||s.prop!==n.prop)return!1;if(Array.isArray(n.traces)){if(!Array.isArray(s.traces))return!1;s.traces.sort();for(var g=0;g<n.traces.length;g++)if(n.traces[g]!==s.traces[g])return!1}else if(s.prop!==n.prop)return!1}else n=b[0],Array.isArray(n.traces)&&n.traces.sort();var f=(s=b[0]).value;if(Array.isArray(f)){if(f.length!==1)return!1;f=f[0]}o&&(o[f]=r)}return n},E.executeAPICommand=function(l,t,o){if(t==="skip")return Promise.resolve();var r=w.apiMethodRegistry[t],n=[l];Array.isArray(o)||(o=[]);for(var a=0;a<o.length;a++)n.push(o[a]);return r.apply(null,n).catch(function(s){return k.warn("API call to Plotly."+t+" rejected.",s),Promise.reject(s)})},E.computeAPICommandBindings=function(l,t,o){var r;switch(Array.isArray(o)||(o=[]),t){case"restyle":r=y(l,o);break;case"relayout":r=_(0,o);break;case"update":r=y(l,[o[0],o[2]]).concat(_(0,[o[1]]));break;case"animate":r=function(n,a){return Array.isArray(a[0])&&a[0].length===1&&["string","number"].indexOf(typeof a[0][0])!==-1?[{type:"layout",prop:"_currentFrame",value:a[0][0].toString()}]:[]}(0,o);break;default:r=[]}return r}},27670:function(R,E,e){var w=e(1426).extendFlat;E.Y=function(k,i){i=i||{};var _={valType:"info_array",editType:(k=k||{}).editType,items:[{valType:"number",min:0,max:1,editType:k.editType},{valType:"number",min:0,max:1,editType:k.editType}],dflt:[0,1]},y=(k.name&&k.name,k.trace,i.description&&i.description,{x:w({},_,{}),y:w({},_,{}),editType:k.editType});return k.noGridCell||(y.row={valType:"integer",min:0,dflt:0,editType:k.editType},y.column={valType:"integer",min:0,dflt:0,editType:k.editType}),y},E.c=function(k,i,_,y){var h=y&&y.x||[0,1],l=y&&y.y||[0,1],t=i.grid;if(t){var o=_("domain.column");o!==void 0&&(o<t.columns?h=t._domains.x[o]:delete k.domain.column);var r=_("domain.row");r!==void 0&&(r<t.rows?l=t._domains.y[r]:delete k.domain.row)}var n=_("domain.x",h),a=_("domain.y",l);n[0]<n[1]||(k.domain.x=h.slice()),a[0]<a[1]||(k.domain.y=l.slice())}},41940:function(R){R.exports=function(E){var e=E.editType,w=E.colorEditType;w===void 0&&(w=e);var k={family:{valType:"string",noBlank:!0,strict:!0,editType:e},size:{valType:"number",min:1,editType:e},color:{valType:"color",editType:w},editType:e};return E.autoSize&&(k.size.dflt="auto"),E.autoColor&&(k.color.dflt="auto"),E.arrayOk&&(k.family.arrayOk=!0,k.size.arrayOk=!0,k.color.arrayOk=!0),k}},31391:function(R){R.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}},78776:function(R,E){E.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",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"},E.axesNames=["lonaxis","lataxis"],E.lonaxisSpan={orthographic:180,"azimuthal equal area":360,"azimuthal equidistant":360,"conic conformal":180,gnomonic:160,stereographic:180,"transverse mercator":180,"*":360},E.lataxisSpan={"conic conformal":150,stereographic:179.5,"*":180},E.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]}},E.clipPad=.001,E.precision=.1,E.landColor="#F0DC82",E.waterColor="#3399FF",E.locationmodeToLayer={"ISO-3":"countries","USA-states":"subunits","country names":"countries"},E.sphereSVG={type:"Sphere"},E.fillLayers={ocean:1,land:1,lakes:1},E.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1},E.layers=["bg","ocean","land","lakes","subunits","countries","coastlines","rivers","lataxis","lonaxis","frame","backplot","frontplot"],E.layersForChoropleth=["bg","ocean","land","subunits","countries","coastlines","lataxis","lonaxis","frame","backplot","rivers","lakes","frontplot"],E.layerNameToAdjective={ocean:"ocean",land:"land",lakes:"lake",subunits:"subunit",countries:"country",coastlines:"coastline",rivers:"river",frame:"frame"}},69082:function(R,E,e){var w=e(39898),k=e(27362),i=k.geoPath,_=k.geoDistance,y=e(65704),h=e(73972),l=e(71828),t=l.strTranslate,o=e(7901),r=e(91424),n=e(30211),a=e(74875),s=e(89298),u=e(71739).getAutoRange,p=e(28569),c=e(47322).prepSelect,b=e(47322).clearOutline,g=e(47322).selectOnClick,f=e(74455),v=e(78776),m=e(41327),x=e(90973),T=e(96892).zL;function d(C){this.id=C.id,this.graphDiv=C.graphDiv,this.container=C.container,this.topojsonURL=C.topojsonURL,this.isStatic=C.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 M=d.prototype;function A(C,P){var O=v.clipPad,z=C[0]+O,B=C[1]-O,Y=P[0]+O,D=P[1]-O;z>0&&B<0&&(B+=360);var G=(B-z)/4;return{type:"Polygon",coordinates:[[[z,Y],[z,D],[z+G,D],[z+2*G,D],[z+3*G,D],[B,D],[B,Y],[B-G,Y],[B-2*G,Y],[B-3*G,Y],[z,Y]]]}}R.exports=function(C){return new d(C)},M.plot=function(C,P,O,z){var B=this;if(z)return B.update(C,P,!0);B._geoCalcData=C,B._fullLayout=P;var Y=P[this.id],D=[],G=!1;for(var V in v.layerNameToAdjective)if(V!=="frame"&&Y["show"+V]){G=!0;break}for(var j=!1,W=0;W<C.length;W++){var Z=C[0][0].trace;Z._geo=B,Z.locationmode&&(G=!0);var ie=Z.marker;if(ie){var te=ie.angle,J=ie.angleref;(te||J==="north"||J==="previous")&&(j=!0)}}if(this._hasMarkerAngles=j,G){var X=x.getTopojsonName(Y);B.topojson!==null&&X===B.topojsonName||(B.topojsonName=X,PlotlyGeoAssets.topojson[B.topojsonName]===void 0&&D.push(B.fetchTopojson()))}D=D.concat(m.fetchTraceGeoData(C)),O.push(new Promise(function(ee,re){Promise.all(D).then(function(){B.topojson=PlotlyGeoAssets.topojson[B.topojsonName],B.update(C,P),ee()}).catch(re)}))},M.fetchTopojson=function(){var C=this,P=x.getTopojsonPath(C.topojsonURL,C.topojsonName);return new Promise(function(O,z){w.json(P,function(B,Y){if(B)return B.status===404?z(new Error(["plotly.js could not find topojson file at",P+".","Make sure the *topojsonURL* plot config option","is set properly."].join(" "))):z(new Error(["unexpected error while fetching topojson file at",P].join(" ")));PlotlyGeoAssets.topojson[C.topojsonName]=Y,O()})})},M.update=function(C,P,O){var z=P[this.id];this.hasChoropleth=!1;for(var B=0;B<C.length;B++){var Y=C[B],D=Y[0].trace;D.type==="choropleth"&&(this.hasChoropleth=!0),D.visible===!0&&D._length>0&&D._module.calcGeoJSON(Y,P)}if(!O){if(this.updateProjection(C,P))return;this.viewInitial&&this.scope===z.scope||this.saveViewInitial(z)}this.scope=z.scope,this.updateBaseLayers(P,z),this.updateDims(P,z),this.updateFx(P,z),a.generalUpdatePerTraceModule(this.graphDiv,this,C,z);var G=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=G.selectAll(".point"),this.dataPoints.text=G.selectAll("text"),this.dataPaths.line=G.selectAll(".js-line");var V=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=V.selectAll("path"),this._render()},M.updateProjection=function(C,P){var O=this.graphDiv,z=P[this.id],B=P._size,Y=z.domain,D=z.projection,G=z.lonaxis,V=z.lataxis,j=G._ax,W=V._ax,Z=this.projection=function(fe){var ae=fe.projection,be=ae.type,Ie=v.projNames[be];Ie="geo"+l.titleCase(Ie);for(var Te=(k[Ie]||y[Ie])(),Ne=fe._isSatellite?180*Math.acos(1/ae.distance)/Math.PI:fe._isClipped?v.lonaxisSpan[be]/2:null,qe=["center","rotate","parallels","clipExtent"],ve=function(ze){return ze?Te:[]},Ce=0;Ce<qe.length;Ce++){var Ae=qe[Ce];typeof Te[Ae]!="function"&&(Te[Ae]=ve)}return Te.isLonLatOverEdges=function(ze){if(Te(ze)===null)return!0;if(Ne){var Ue=Te.rotate();return _(ze,[-Ue[0],-Ue[1]])>Ne*Math.PI/180}return!1},Te.getPath=function(){return i().projection(Te)},Te.getBounds=function(ze){return Te.getPath().bounds(ze)},Te.precision(v.precision),fe._isSatellite&&Te.tilt(ae.tilt).distance(ae.distance),Ne&&Te.clipAngle(Ne-v.clipPad),Te}(z),ie=[[B.l+B.w*Y.x[0],B.t+B.h*(1-Y.y[1])],[B.l+B.w*Y.x[1],B.t+B.h*(1-Y.y[0])]],te=z.center||{},J=D.rotation||{},X=G.range||[],ee=V.range||[];if(z.fitbounds){j._length=ie[1][0]-ie[0][0],W._length=ie[1][1]-ie[0][1],j.range=u(O,j),W.range=u(O,W);var re=(j.range[0]+j.range[1])/2,oe=(W.range[0]+W.range[1])/2;if(z._isScoped)te={lon:re,lat:oe};else if(z._isClipped){te={lon:re,lat:oe},J={lon:re,lat:oe,roll:J.roll};var ue=D.type,ce=v.lonaxisSpan[ue]/2||180,de=v.lataxisSpan[ue]/2||90;X=[re-ce,re+ce],ee=[oe-de,oe+de]}else te={lon:re,lat:oe},J={lon:re,lat:J.lat,roll:J.roll}}Z.center([te.lon-J.lon,te.lat-J.lat]).rotate([-J.lon,-J.lat,J.roll]).parallels(D.parallels);var me=A(X,ee);Z.fitExtent(ie,me);var _e=this.bounds=Z.getBounds(me),Se=this.fitScale=Z.scale(),we=Z.translate();if(z.fitbounds){var xe=Z.getBounds(A(j.range,W.range)),De=Math.min((_e[1][0]-_e[0][0])/(xe[1][0]-xe[0][0]),(_e[1][1]-_e[0][1])/(xe[1][1]-xe[0][1]));isFinite(De)?Z.scale(De*Se):l.warn("Something went wrong during"+this.id+"fitbounds computations.")}else Z.scale(D.scale*Se);var Ee=this.midPt=[(_e[0][0]+_e[1][0])/2,(_e[0][1]+_e[1][1])/2];if(Z.translate([we[0]+(Ee[0]-we[0]),we[1]+(Ee[1]-we[1])]).clipExtent(_e),z._isAlbersUsa){var Me=Z([te.lon,te.lat]),he=Z.translate();Z.translate([he[0]-(Me[0]-he[0]),he[1]-(Me[1]-he[1])])}},M.updateBaseLayers=function(C,P){var O=this,z=O.topojson,B=O.layers,Y=O.basePaths;function D(Z){return Z==="lonaxis"||Z==="lataxis"}function G(Z){return!!v.lineLayers[Z]}function V(Z){return!!v.fillLayers[Z]}var j=(this.hasChoropleth?v.layersForChoropleth:v.layers).filter(function(Z){return G(Z)||V(Z)?P["show"+Z]:!D(Z)||P[Z].showgrid}),W=O.framework.selectAll(".layer").data(j,String);W.exit().each(function(Z){delete B[Z],delete Y[Z],w.select(this).remove()}),W.enter().append("g").attr("class",function(Z){return"layer "+Z}).each(function(Z){var ie=B[Z]=w.select(this);Z==="bg"?O.bgRect=ie.append("rect").style("pointer-events","all"):D(Z)?Y[Z]=ie.append("path").style("fill","none"):Z==="backplot"?ie.append("g").classed("choroplethlayer",!0):Z==="frontplot"?ie.append("g").classed("scatterlayer",!0):G(Z)?Y[Z]=ie.append("path").style("fill","none").style("stroke-miterlimit",2):V(Z)&&(Y[Z]=ie.append("path").style("stroke","none"))}),W.order(),W.each(function(Z){var ie=Y[Z],te=v.layerNameToAdjective[Z];Z==="frame"?ie.datum(v.sphereSVG):G(Z)||V(Z)?ie.datum(T(z,z.objects[Z])):D(Z)&&ie.datum(function(J,X,ee){var re,oe,ue,ce=X[J],de=v.scopeDefaults[X.scope];J==="lonaxis"?(re=de.lonaxisRange,oe=de.lataxisRange,ue=function(he,fe){return[he,fe]}):J==="lataxis"&&(re=de.lataxisRange,oe=de.lonaxisRange,ue=function(he,fe){return[fe,he]});var me={type:"linear",range:[re[0],re[1]-1e-6],tick0:ce.tick0,dtick:ce.dtick};s.setConvert(me,ee);var _e=s.calcTicks(me);X.isScoped||J!=="lonaxis"||_e.pop();for(var Se=_e.length,we=new Array(Se),xe=0;xe<Se;xe++)for(var De=_e[xe].x,Ee=we[xe]=[],Me=oe[0];Me<oe[1]+2.5;Me+=2.5)Ee.push(ue(De,Me));return{type:"MultiLineString",coordinates:we}}(Z,P,C)).call(o.stroke,P[Z].gridcolor).call(r.dashLine,P[Z].griddash,P[Z].gridwidth),G(Z)?ie.call(o.stroke,P[te+"color"]).call(r.dashLine,"",P[te+"width"]):V(Z)&&ie.call(o.fill,P[te+"color"])})},M.updateDims=function(C,P){var O=this.bounds,z=(P.framewidth||0)/2,B=O[0][0]-z,Y=O[0][1]-z,D=O[1][0]-B+z,G=O[1][1]-Y+z;r.setRect(this.clipRect,B,Y,D,G),this.bgRect.call(r.setRect,B,Y,D,G).call(o.fill,P.bgcolor),this.xaxis._offset=B,this.xaxis._length=D,this.yaxis._offset=Y,this.yaxis._length=G},M.updateFx=function(C,P){var O=this,z=O.graphDiv,B=O.bgRect,Y=C.dragmode,D=C.clickmode;if(!O.isStatic){var G={element:O.bgRect.node(),gd:z,plotinfo:{id:O.id,xaxis:O.xaxis,yaxis:O.yaxis,fillRangeItems:function(j,W){W.isRect?(j.range={})[O.id]=[V([W.xmin,W.ymin]),V([W.xmax,W.ymax])]:(j.lassoPoints={})[O.id]=W.map(V)}},xaxes:[O.xaxis],yaxes:[O.yaxis],subplot:O.id,clickFn:function(j){j===2&&b(z)}};Y==="pan"?(B.node().onmousedown=null,B.call(f(O,P)),B.on("dblclick.zoom",function(){var j=O.viewInitial,W={};for(var Z in j)W[O.id+"."+Z]=j[Z];h.call("_guiRelayout",z,W),z.emit("plotly_doubleclick",null)}),z._context._scrollZoom.geo||B.on("wheel.zoom",null)):Y!=="select"&&Y!=="lasso"||(B.on(".zoom",null),G.prepFn=function(j,W,Z){c(j,W,Z,G,Y)},p.init(G)),B.on("mousemove",function(){var j=O.projection.invert(l.getPositionFromD3Event());if(!j)return p.unhover(z,w.event);O.xaxis.p2c=function(){return j[0]},O.yaxis.p2c=function(){return j[1]},n.hover(z,w.event,O.id)}),B.on("mouseout",function(){z._dragging||p.unhover(z,w.event)}),B.on("click",function(){Y!=="select"&&Y!=="lasso"&&(D.indexOf("select")>-1&&g(w.event,z,[O.xaxis],[O.yaxis],O.id,G),D.indexOf("event")>-1&&n.click(z,w.event))})}function V(j){return O.projection.invert([j[0]+O.xaxis._offset,j[1]+O.yaxis._offset])}},M.makeFramework=function(){var C=this,P=C.graphDiv,O=P._fullLayout,z="clip"+O._uid+C.id;C.clipDef=O._clips.append("clipPath").attr("id",z),C.clipRect=C.clipDef.append("rect"),C.framework=w.select(C.container).append("g").attr("class","geo "+C.id).call(r.setClipUrl,z,P),C.project=function(B){var Y=C.projection(B);return Y?[Y[0]-C.xaxis._offset,Y[1]-C.yaxis._offset]:[null,null]},C.xaxis={_id:"x",c2p:function(B){return C.project(B)[0]}},C.yaxis={_id:"y",c2p:function(B){return C.project(B)[1]}},C.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},s.setConvert(C.mockAxis,O)},M.saveViewInitial=function(C){var P,O=C.center||{},z=C.projection,B=z.rotation||{};this.viewInitial={fitbounds:C.fitbounds,"projection.scale":z.scale},P=C._isScoped?{"center.lon":O.lon,"center.lat":O.lat}:C._isClipped?{"projection.rotation.lon":B.lon,"projection.rotation.lat":B.lat}:{"center.lon":O.lon,"center.lat":O.lat,"projection.rotation.lon":B.lon},l.extendFlat(this.viewInitial,P)},M.render=function(C){this._hasMarkerAngles&&C?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()},M._render=function(){var C,P=this.projection,O=P.getPath();function z(Y){var D=P(Y.lonlat);return D?t(D[0],D[1]):null}function B(Y){return P.isLonLatOverEdges(Y.lonlat)?"none":null}for(C in this.basePaths)this.basePaths[C].attr("d",O);for(C in this.dataPaths)this.dataPaths[C].attr("d",function(Y){return O(Y.geojson)});for(C in this.dataPoints)this.dataPoints[C].attr("display",B).attr("transform",z)}},44622:function(R,E,e){var w=e(27659).AU,k=e(71828).counterRegex,i=e(69082),_="geo",y=k(_),h={};h[_]={valType:"subplotid",dflt:_,editType:"calc"},R.exports={attr:_,name:_,idRoot:_,idRegex:y,attrRegex:y,attributes:h,layoutAttributes:e(77519),supplyLayoutDefaults:e(82161),plot:function(l){for(var t=l._fullLayout,o=l.calcdata,r=t._subplots[_],n=0;n<r.length;n++){var a=r[n],s=w(o,_,a),u=t[a]._subplot;u||(u=i({id:a,graphDiv:l,container:t._geolayer.node(),topojsonURL:l._context.topojsonURL,staticPlot:l._context.staticPlot}),t[a]._subplot=u),u.plot(s,t,l._promises)}},updateFx:function(l){for(var t=l._fullLayout,o=t._subplots[_],r=0;r<o.length;r++){var n=t[o[r]];n._subplot.updateFx(t,n)}},clean:function(l,t,o,r){for(var n=r._subplots[_]||[],a=0;a<n.length;a++){var s=n[a],u=r[s]._subplot;!t[s]&&u&&(u.framework.remove(),u.clipDef.remove())}}}},77519:function(R,E,e){var w=e(22399),k=e(27670).Y,i=e(79952).P,_=e(78776),y=e(30962).overrideAll,h=e(78607),l={range:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},showgrid:{valType:"boolean",dflt:!1},tick0:{valType:"number",dflt:0},dtick:{valType:"number"},gridcolor:{valType:"color",dflt:w.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:i};(R.exports=y({domain:k({name:"geo"},{}),fitbounds:{valType:"enumerated",values:[!1,"locations","geojson"],dflt:!1,editType:"plot"},resolution:{valType:"enumerated",values:[110,50],dflt:110,coerceNumber:!0},scope:{valType:"enumerated",values:h(_.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:h(_.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},tilt:{valType:"number",dflt:0},distance:{valType:"number",min:1.001,dflt:2},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},scale:{valType:"number",min:0,dflt:1}},center:{lon:{valType:"number"},lat:{valType:"number"}},visible:{valType:"boolean",dflt:!0},showcoastlines:{valType:"boolean"},coastlinecolor:{valType:"color",dflt:w.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:_.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:_.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:_.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:_.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:w.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:w.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:w.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:w.background},lonaxis:l,lataxis:l},"plot","from-root")).uirevision={valType:"any",editType:"none"}},82161:function(R,E,e){var w=e(71828),k=e(49119),i=e(27659).NG,_=e(78776),y=e(77519),h=_.axesNames;function l(t,o,r,n){var a=i(n.fullData,"geo",n.id).map(function(J){return J._expandedIndex}),s=r("resolution"),u=r("scope"),p=_.scopeDefaults[u],c=r("projection.type",p.projType),b=o._isAlbersUsa=c==="albers usa";b&&(u=o.scope="usa");var g=o._isScoped=u!=="world",f=o._isSatellite=c==="satellite",v=o._isConic=c.indexOf("conic")!==-1||c==="albers",m=o._isClipped=!!_.lonaxisSpan[c];if(t.visible===!1){var x=w.extendDeep({},o._template);x.showcoastlines=!1,x.showcountries=!1,x.showframe=!1,x.showlakes=!1,x.showland=!1,x.showocean=!1,x.showrivers=!1,x.showsubunits=!1,x.lonaxis&&(x.lonaxis.showgrid=!1),x.lataxis&&(x.lataxis.showgrid=!1),o._template=x}for(var T=r("visible"),d=0;d<h.length;d++){var M,A=h[d],C=[30,10][d];if(g)M=p[A+"Range"];else{var P=_[A+"Span"],O=(P[c]||P["*"])/2,z=r("projection.rotation."+A.substr(0,3),p.projRotate[d]);M=[z-O,z+O]}var B=r(A+".range",M);r(A+".tick0"),r(A+".dtick",C),r(A+".showgrid",!!T&&void 0)&&(r(A+".gridcolor"),r(A+".gridwidth"),r(A+".griddash")),o[A]._ax={type:"linear",_id:A.slice(0,3),_traceIndices:a,setScale:w.identity,c2l:w.identity,r2l:w.identity,autorange:!0,range:B.slice(),_m:1,_input:{}}}var Y=o.lonaxis.range,D=o.lataxis.range,G=Y[0],V=Y[1];G>0&&V<0&&(V+=360);var j,W,Z,ie=(G+V)/2;if(!b){var te=g?p.projRotate:[ie,0,0];j=r("projection.rotation.lon",te[0]),r("projection.rotation.lat",te[1]),r("projection.rotation.roll",te[2]),r("showcoastlines",!g&&T)&&(r("coastlinecolor"),r("coastlinewidth")),r("showocean",!!T&&void 0)&&r("oceancolor")}b?(W=-96.6,Z=38.7):(W=g?ie:j,Z=(D[0]+D[1])/2),r("center.lon",W),r("center.lat",Z),f&&(r("projection.tilt"),r("projection.distance")),v&&r("projection.parallels",p.projParallels||[0,60]),r("projection.scale"),r("showland",!!T&&void 0)&&r("landcolor"),r("showlakes",!!T&&void 0)&&r("lakecolor"),r("showrivers",!!T&&void 0)&&(r("rivercolor"),r("riverwidth")),r("showcountries",g&&u!=="usa"&&T)&&(r("countrycolor"),r("countrywidth")),(u==="usa"||u==="north america"&&s===50)&&(r("showsubunits",T),r("subunitcolor"),r("subunitwidth")),g||r("showframe",T)&&(r("framecolor"),r("framewidth")),r("bgcolor"),r("fitbounds")&&(delete o.projection.scale,g?(delete o.center.lon,delete o.center.lat):m?(delete o.center.lon,delete o.center.lat,delete o.projection.rotation.lon,delete o.projection.rotation.lat,delete o.lonaxis.range,delete o.lataxis.range):(delete o.center.lon,delete o.center.lat,delete o.projection.rotation.lon))}R.exports=function(t,o,r){k(t,o,r,{type:"geo",attributes:y,handleDefaults:l,fullData:r,partition:"y"})}},74455:function(R,E,e){var w=e(39898),k=e(71828),i=e(73972),_=Math.PI/180,y=180/Math.PI,h={cursor:"pointer"},l={cursor:"auto"};function t(g,f){return w.behavior.zoom().translate(f.translate()).scale(f.scale())}function o(g,f,v){var m=g.id,x=g.graphDiv,T=x.layout,d=T[m],M=x._fullLayout,A=M[m],C={},P={};function O(z,B){C[m+"."+z]=k.nestedProperty(d,z).get(),i.call("_storeDirectGUIEdit",T,M._preGUI,C);var Y=k.nestedProperty(A,z);Y.get()!==B&&(Y.set(B),k.nestedProperty(d,z).set(B),P[m+"."+z]=B)}v(O),O("projection.scale",f.scale()/g.fitScale),O("fitbounds",!1),x.emit("plotly_relayout",P)}function r(g,f){var v=t(0,f);function m(x){var T=f.invert(g.midPt);x("center.lon",T[0]),x("center.lat",T[1])}return v.on("zoomstart",function(){w.select(this).style(h)}).on("zoom",function(){f.scale(w.event.scale).translate(w.event.translate),g.render(!0);var x=f.invert(g.midPt);g.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/g.fitScale,"geo.center.lon":x[0],"geo.center.lat":x[1]})}).on("zoomend",function(){w.select(this).style(l),o(g,f,m)}),v}function n(g,f){var v,m,x,T,d,M,A,C,P,O=t(0,f);function z(Y){return f.invert(Y)}function B(Y){var D=f.rotate(),G=f.invert(g.midPt);Y("projection.rotation.lon",-D[0]),Y("center.lon",G[0]),Y("center.lat",G[1])}return O.on("zoomstart",function(){w.select(this).style(h),v=w.mouse(this),m=f.rotate(),x=f.translate(),T=m,d=z(v)}).on("zoom",function(){if(M=w.mouse(this),function(G){var V=z(G);if(!V)return!0;var j=f(V);return Math.abs(j[0]-G[0])>2||Math.abs(j[1]-G[1])>2}(v))return O.scale(f.scale()),void O.translate(f.translate());f.scale(w.event.scale),f.translate([x[0],w.event.translate[1]]),d?z(M)&&(C=z(M),A=[T[0]+(C[0]-d[0]),m[1],m[2]],f.rotate(A),T=A):d=z(v=M),P=!0,g.render(!0);var Y=f.rotate(),D=f.invert(g.midPt);g.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/g.fitScale,"geo.center.lon":D[0],"geo.center.lat":D[1],"geo.projection.rotation.lon":-Y[0]})}).on("zoomend",function(){w.select(this).style(l),P&&o(g,f,B)}),O}function a(g,f){var v;f.rotate(),f.scale();var m=t(0,f),x=function(A){for(var C=0,P=arguments.length,O=[];++C<P;)O.push(arguments[C]);var z=w.dispatch.apply(null,O);return z.of=function(B,Y){return function(D){var G;try{G=D.sourceEvent=w.event,D.target=A,w.event=D,z[D.type].apply(B,Y)}finally{w.event=G}}},z}(m,"zoomstart","zoom","zoomend"),T=0,d=m.on;function M(A){var C=f.rotate();A("projection.rotation.lon",-C[0]),A("projection.rotation.lat",-C[1])}return m.on("zoomstart",function(){w.select(this).style(h);var A,C,P,O,z,B,Y,D,G,V,j,W=w.mouse(this),Z=f.rotate(),ie=Z,te=f.translate(),J=(C=.5*(A=Z)[0]*_,P=.5*A[1]*_,O=.5*A[2]*_,z=Math.sin(C),B=Math.cos(C),Y=Math.sin(P),D=Math.cos(P),G=Math.sin(O),[B*D*(V=Math.cos(O))+z*Y*G,z*D*V-B*Y*G,B*Y*V+z*D*G,B*D*G-z*Y*V]);v=s(f,W),d.call(m,"zoom",function(){var X,ee,re,oe,ue,ce,de,me,_e,Se,we=w.mouse(this);if(f.scale(w.event.scale),v){if(s(f,we)){f.rotate(Z).translate(te);var xe=s(f,we),De=function(he,fe){if(he&&fe){var ae=function(Ne,qe){return[Ne[1]*qe[2]-Ne[2]*qe[1],Ne[2]*qe[0]-Ne[0]*qe[2],Ne[0]*qe[1]-Ne[1]*qe[0]]}(he,fe),be=Math.sqrt(b(ae,ae)),Ie=.5*Math.acos(Math.max(-1,Math.min(1,b(he,fe)))),Te=Math.sin(Ie)/be;return be&&[Math.cos(Ie),ae[2]*Te,-ae[1]*Te,ae[0]*Te]}}(v,xe),Ee=function(he){return[Math.atan2(2*(he[0]*he[1]+he[2]*he[3]),1-2*(he[1]*he[1]+he[2]*he[2]))*y,Math.asin(Math.max(-1,Math.min(1,2*(he[0]*he[2]-he[3]*he[1]))))*y,Math.atan2(2*(he[0]*he[3]+he[1]*he[2]),1-2*(he[2]*he[2]+he[3]*he[3]))*y]}((re=(X=J)[0],oe=X[1],ue=X[2],ce=X[3],[re*(de=(ee=De)[0])-oe*(me=ee[1])-ue*(_e=ee[2])-ce*(Se=ee[3]),re*me+oe*de+ue*Se-ce*_e,re*_e-oe*Se+ue*de+ce*me,re*Se+oe*_e-ue*me+ce*de])),Me=function(he,fe,ae){var be=c(fe,2,he[0]);be=c(be,1,he[1]),be=c(be,0,he[2]-ae[2]);var Ie,Te,Ne=fe[0],qe=fe[1],ve=fe[2],Ce=be[0],Ae=be[1],ze=be[2],Ue=Math.atan2(qe,Ne)*y,Ve=Math.sqrt(Ne*Ne+qe*qe);Math.abs(Ae)>Ve?(Te=(Ae>0?90:-90)-Ue,Ie=0):(Te=Math.asin(Ae/Ve)*y-Ue,Ie=Math.sqrt(Ve*Ve-Ae*Ae));var Ye=180-Te-2*Ue,$e=(Math.atan2(ze,Ce)-Math.atan2(ve,Ie))*y,rt=(Math.atan2(ze,Ce)-Math.atan2(ve,-Ie))*y;return u(ae[0],ae[1],Te,$e)<=u(ae[0],ae[1],Ye,rt)?[Te,$e,ae[2]]:[Ye,rt,ae[2]]}(Ee,v,ie);isFinite(Me[0])&&isFinite(Me[1])&&isFinite(Me[2])||(Me=ie),f.rotate(Me),ie=Me}}else v=s(f,W=we);x.of(this,arguments)({type:"zoom"})}),j=x.of(this,arguments),T++||j({type:"zoomstart"})}).on("zoomend",function(){var A;w.select(this).style(l),d.call(m,"zoom",null),A=x.of(this,arguments),--T||A({type:"zoomend"}),o(g,f,M)}).on("zoom.redraw",function(){g.render(!0);var A=f.rotate();g.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/g.fitScale,"geo.projection.rotation.lon":-A[0],"geo.projection.rotation.lat":-A[1]})}),w.rebind(m,x,"on")}function s(g,f){var v=g.invert(f);return v&&isFinite(v[0])&&isFinite(v[1])&&function(m){var x=m[0]*_,T=m[1]*_,d=Math.cos(T);return[d*Math.cos(x),d*Math.sin(x),Math.sin(T)]}(v)}function u(g,f,v,m){var x=p(v-g),T=p(m-f);return Math.sqrt(x*x+T*T)}function p(g){return(g%360+540)%360-180}function c(g,f,v){var m=v*_,x=g.slice(),T=f===0?1:0,d=f===2?1:2,M=Math.cos(m),A=Math.sin(m);return x[T]=g[T]*M-g[d]*A,x[d]=g[d]*M+g[T]*A,x}function b(g,f){for(var v=0,m=0,x=g.length;m<x;++m)v+=g[m]*f[m];return v}R.exports=function(g,f){var v=g.projection;return(f._isScoped?r:f._isClipped?a:n)(g,v)}},27659:function(R,E,e){var w=e(73972),k=e(85555).SUBPLOT_PATTERN;E.AU=function(i,_,y){var h=w.subplotsRegistry[_];if(!h)return[];for(var l=h.attr,t=[],o=0;o<i.length;o++){var r=i[o];r[0].trace[l]===y&&t.push(r)}return t},E.a0=function(i,_){var y,h=[],l=[];if(!(y=typeof _=="string"?w.getModule(_).plot:typeof _=="function"?_:_.plot))return[h,i];for(var t=0;t<i.length;t++){var o=i[t],r=o[0].trace;r.visible===!0&&r._length!==0&&(r._module.plot===y?h.push(o):l.push(o))}return[h,l]},E.NG=function(i,_,y){if(!w.subplotsRegistry[_])return[];var h,l,t,o=w.subplotsRegistry[_].attr,r=[];if(_==="gl2d"){var n=y.match(k);l="x"+n[1],t="y"+n[2]}for(var a=0;a<i.length;a++)h=i[a],_==="gl2d"&&w.traceIs(h,"gl2d")?h[o[0]]===l&&h[o[1]]===t&&r.push(h):h[o]===y&&r.push(h);return r}},75071:function(R,E,e){var w=e(16825),k=e(1195),i=e(48956),_=e(85555),y=e(38520);function h(l,t){this.element=l,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]}R.exports=function(l){var t=l.mouseContainer,o=l.glplot,r=new h(t,o);function n(){l.xaxis.autorange=!1,l.yaxis.autorange=!1}function a(s,u,p){var c,b,g=l.calcDataBox(),f=o.viewBox,v=r.lastPos[0],m=r.lastPos[1],x=_.MINDRAG*o.pixelRatio,T=_.MINZOOM*o.pixelRatio;function d(z,B,Y){var D=Math.min(B,Y),G=Math.max(B,Y);D!==G?(g[z]=D,g[z+2]=G,r.dataBox=g,l.setRanges(g)):(l.selectBox.selectBox=[0,0,1,1],l.glplot.setDirty())}switch(u*=o.pixelRatio,p*=o.pixelRatio,p=f[3]-f[1]-p,l.fullLayout.dragmode){case"zoom":if(s){var M=u/(f[2]-f[0])*(g[2]-g[0])+g[0],A=p/(f[3]-f[1])*(g[3]-g[1])+g[1];r.boxInited||(r.boxStart[0]=M,r.boxStart[1]=A,r.dragStart[0]=u,r.dragStart[1]=p),r.boxEnd[0]=M,r.boxEnd[1]=A,r.boxInited=!0,r.boxEnabled||r.boxStart[0]===r.boxEnd[0]&&r.boxStart[1]===r.boxEnd[1]||(r.boxEnabled=!0);var C=Math.abs(r.dragStart[0]-u)<T,P=Math.abs(r.dragStart[1]-p)<T;if(!function(){for(var z=l.graphDiv._fullLayout._axisConstraintGroups,B=l.xaxis._id,Y=l.yaxis._id,D=0;D<z.length;D++)if(z[D][B]!==-1){if(z[D][Y]!==-1)return!0;break}return!1}()||C&&P)C&&(r.boxEnd[0]=r.boxStart[0]),P&&(r.boxEnd[1]=r.boxStart[1]);else{c=r.boxEnd[0]-r.boxStart[0],b=r.boxEnd[1]-r.boxStart[1];var O=(g[3]-g[1])/(g[2]-g[0]);Math.abs(c*O)>Math.abs(b)?(r.boxEnd[1]=r.boxStart[1]+Math.abs(c)*O*(b>=0?1:-1),r.boxEnd[1]<g[1]?(r.boxEnd[1]=g[1],r.boxEnd[0]=r.boxStart[0]+(g[1]-r.boxStart[1])/Math.abs(O)):r.boxEnd[1]>g[3]&&(r.boxEnd[1]=g[3],r.boxEnd[0]=r.boxStart[0]+(g[3]-r.boxStart[1])/Math.abs(O))):(r.boxEnd[0]=r.boxStart[0]+Math.abs(b)/O*(c>=0?1:-1),r.boxEnd[0]<g[0]?(r.boxEnd[0]=g[0],r.boxEnd[1]=r.boxStart[1]+(g[0]-r.boxStart[0])*Math.abs(O)):r.boxEnd[0]>g[2]&&(r.boxEnd[0]=g[2],r.boxEnd[1]=r.boxStart[1]+(g[2]-r.boxStart[0])*Math.abs(O)))}}else r.boxEnabled?(c=r.boxStart[0]!==r.boxEnd[0],b=r.boxStart[1]!==r.boxEnd[1],c||b?(c&&(d(0,r.boxStart[0],r.boxEnd[0]),l.xaxis.autorange=!1),b&&(d(1,r.boxStart[1],r.boxEnd[1]),l.yaxis.autorange=!1),l.relayoutCallback()):l.glplot.setDirty(),r.boxEnabled=!1,r.boxInited=!1):r.boxInited&&(r.boxInited=!1);break;case"pan":r.boxEnabled=!1,r.boxInited=!1,s?(r.panning||(r.dragStart[0]=u,r.dragStart[1]=p),Math.abs(r.dragStart[0]-u)<x&&(u=r.dragStart[0]),Math.abs(r.dragStart[1]-p)<x&&(p=r.dragStart[1]),c=(v-u)*(g[2]-g[0])/(o.viewBox[2]-o.viewBox[0]),b=(m-p)*(g[3]-g[1])/(o.viewBox[3]-o.viewBox[1]),g[0]+=c,g[2]+=c,g[1]+=b,g[3]+=b,l.setRanges(g),r.panning=!0,r.lastInputTime=Date.now(),n(),l.cameraChanged(),l.handleAnnotations()):r.panning&&(r.panning=!1,l.relayoutCallback())}r.lastPos[0]=u,r.lastPos[1]=p}return r.mouseListener=w(t,a),t.addEventListener("touchstart",function(s){var u=i(s.changedTouches[0],t);a(0,u[0],u[1]),a(1,u[0],u[1]),s.preventDefault()},!!y&&{passive:!1}),t.addEventListener("touchmove",function(s){s.preventDefault();var u=i(s.changedTouches[0],t);a(1,u[0],u[1]),s.preventDefault()},!!y&&{passive:!1}),t.addEventListener("touchend",function(s){a(0,r.lastPos[0],r.lastPos[1]),s.preventDefault()},!!y&&{passive:!1}),r.wheelListener=k(t,function(s,u){if(!l.scrollZoom)return!1;var p=l.calcDataBox(),c=o.viewBox,b=r.lastPos[0],g=r.lastPos[1],f=Math.exp(5*u/(c[3]-c[1])),v=b/(c[2]-c[0])*(p[2]-p[0])+p[0],m=g/(c[3]-c[1])*(p[3]-p[1])+p[1];return p[0]=(p[0]-v)*f+v,p[2]=(p[2]-v)*f+v,p[1]=(p[1]-m)*f+m,p[3]=(p[3]-m)*f+m,l.setRanges(p),r.lastInputTime=Date.now(),n(),l.cameraChanged(),l.handleAnnotations(),l.relayoutCallback(),!0},!0),r}},82961:function(R,E,e){var w=e(89298),k=e(78614);function i(h){this.scene=h,this.gl=h.gl,this.pixelRatio=h.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 _=i.prototype,y=["xaxis","yaxis"];_.merge=function(h){var l,t,o,r,n,a,s,u,p,c,b;for(this.titleEnable=!1,this.backgroundColor=k(h.plot_bgcolor),c=0;c<2;++c){var g=(l=y[c]).charAt(0);for(o=(t=h[this.scene[l]._name]).title.text===this.scene.fullLayout._dfltTitle[g]?"":t.title.text,b=0;b<=2;b+=2)this.labelEnable[c+b]=!1,this.labels[c+b]=o,this.labelColor[c+b]=k(t.title.font.color),this.labelFont[c+b]=t.title.font.family,this.labelSize[c+b]=t.title.font.size,this.labelPad[c+b]=this.getLabelPad(l,t),this.tickEnable[c+b]=!1,this.tickColor[c+b]=k((t.tickfont||{}).color),this.tickAngle[c+b]=t.tickangle==="auto"?0:Math.PI*-t.tickangle/180,this.tickPad[c+b]=this.getTickPad(t),this.tickMarkLength[c+b]=0,this.tickMarkWidth[c+b]=t.tickwidth||0,this.tickMarkColor[c+b]=k(t.tickcolor),this.borderLineEnable[c+b]=!1,this.borderLineColor[c+b]=k(t.linecolor),this.borderLineWidth[c+b]=t.linewidth||0;s=this.hasSharedAxis(t),n=this.hasAxisInDfltPos(l,t)&&!s,a=this.hasAxisInAltrPos(l,t)&&!s,r=t.mirror||!1,u=s?String(r).indexOf("all")!==-1:!!r,p=s?r==="allticks":String(r).indexOf("ticks")!==-1,n?this.labelEnable[c]=!0:a&&(this.labelEnable[c+2]=!0),n?this.tickEnable[c]=t.showticklabels:a&&(this.tickEnable[c+2]=t.showticklabels),(n||u)&&(this.borderLineEnable[c]=t.showline),(a||u)&&(this.borderLineEnable[c+2]=t.showline),(n||p)&&(this.tickMarkLength[c]=this.getTickMarkLength(t)),(a||p)&&(this.tickMarkLength[c+2]=this.getTickMarkLength(t)),this.gridLineEnable[c]=t.showgrid,this.gridLineColor[c]=k(t.gridcolor),this.gridLineWidth[c]=t.gridwidth,this.zeroLineEnable[c]=t.zeroline,this.zeroLineColor[c]=k(t.zerolinecolor),this.zeroLineWidth[c]=t.zerolinewidth}},_.hasSharedAxis=function(h){var l=this.scene,t=l.fullLayout._subplots.gl2d;return w.findSubplotsWithAxis(t,h).indexOf(l.id)!==0},_.hasAxisInDfltPos=function(h,l){var t=l.side;return h==="xaxis"?t==="bottom":h==="yaxis"?t==="left":void 0},_.hasAxisInAltrPos=function(h,l){var t=l.side;return h==="xaxis"?t==="top":h==="yaxis"?t==="right":void 0},_.getLabelPad=function(h,l){var t=1.5,o=l.title.font.size,r=l.showticklabels;return h==="xaxis"?l.side==="top"?o*(t+(r?1:0))-10:o*(t+(r?.5:0))-10:h==="yaxis"?l.side==="right"?10+o*(t+(r?1:.5)):10+o*(t+(r?.5:0)):void 0},_.getTickPad=function(h){return h.ticks==="outside"?10+h.ticklen:15},_.getTickMarkLength=function(h){if(!h.ticks)return 0;var l=h.ticklen;return h.ticks==="inside"?-l:l},R.exports=function(h){return new i(h)}},4796:function(R,E,e){var w=e(30962).overrideAll,k=e(92918),i=e(10820),_=e(77922),y=e(85555),h=e(93612),l=e(528),t=e(27659).NG;E.name="gl2d",E.attr=["xaxis","yaxis"],E.idRoot=["x","y"],E.idRegex=y.idRegex,E.attrRegex=y.attrRegex,E.attributes=e(89502),E.supplyLayoutDefaults=function(o,r,n){r._has("cartesian")||h.supplyLayoutDefaults(o,r,n)},E.layoutAttrOverrides=w(h.layoutAttributes,"plot","from-root"),E.baseLayoutAttrOverrides=w({plot_bgcolor:i.plot_bgcolor,hoverlabel:l.hoverlabel},"plot","nested"),E.plot=function(o){for(var r=o._fullLayout,n=o._fullData,a=r._subplots.gl2d,s=0;s<a.length;s++){var u=a[s],p=r._plots[u],c=t(n,"gl2d",u),b=p._scene2d;b===void 0&&(b=new k({id:u,graphDiv:o,container:o.querySelector(".gl-container"),staticPlot:o._context.staticPlot,plotGlPixelRatio:o._context.plotGlPixelRatio},r),p._scene2d=b),b.plot(c,o.calcdata,r,o.layout)}},E.clean=function(o,r,n,a){for(var s=a._subplots.gl2d||[],u=0;u<s.length;u++){var p=s[u],c=a._plots[p];c._scene2d&&t(o,"gl2d",p).length===0&&(c._scene2d.destroy(),delete a._plots[p])}h.clean.apply(this,arguments)},E.drawFramework=function(o){o._context.staticPlot||h.drawFramework(o)},E.toSVG=function(o){for(var r=o._fullLayout,n=r._subplots.gl2d,a=0;a<n.length;a++){var s=r._plots[n[a]]._scene2d,u=s.toImage("png");r._glimages.append("svg:image").attr({xmlns:_.svg,"xlink:href":u,x:0,y:0,width:"100%",height:"100%",preserveAspectRatio:"none"}),s.destroy()}},E.updateFx=function(o){for(var r=o._fullLayout,n=r._subplots.gl2d,a=0;a<n.length;a++)r._plots[n[a]]._scene2d.updateFx(r.dragmode)}},92918:function(R,E,e){var w,k,i=e(73972),_=e(89298),y=e(30211),h=e(9330).gl_plot2d,l=e(9330).gl_spikes2d,t=e(9330).gl_select_box,o=e(40372),r=e(82961),n=e(75071),a=e(58617),s=e(99082),u=s.enforce,p=s.clean,c=e(71739).doAutoRange,b=e(64505),g=b.drawMode,f=b.selectMode,v=["xaxis","yaxis"],m=e(85555).SUBPLOT_PATTERN;function x(d,M){this.container=d.container,this.graphDiv=d.graphDiv,this.pixelRatio=d.plotGlPixelRatio||window.devicePixelRatio,this.id=d.id,this.staticPlot=!!d.staticPlot,this.scrollZoom=this.graphDiv._context._scrollZoom.cartesian,this.fullData=null,this.updateRefs(M),this.makeFramework(),this.stopped||(this.glplotOptions=r(this),this.glplotOptions.merge(M),this.glplot=h(this.glplotOptions),this.camera=n(this),this.traces={},this.spikes=l(this.glplot),this.selectBox=t(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())}R.exports=x;var T=x.prototype;T.makeFramework=function(){if(this.staticPlot){if(!(k||(w=document.createElement("canvas"),k=o({canvas:w,preserveDrawingBuffer:!1,premultipliedAlpha:!0,antialias:!0}))))throw new Error("Error creating static canvas/context for image server");this.canvas=w,this.gl=k}else{var d=this.container.querySelector(".gl-canvas-focus"),M=o({canvas:d,preserveDrawingBuffer:!0,premultipliedAlpha:!0});if(!M)return a(this),void(this.stopped=!0);this.canvas=d,this.gl=M}var A=this.canvas;A.style.width="100%",A.style.height="100%",A.style.position="absolute",A.style.top="0px",A.style.left="0px",A.style["pointer-events"]="none",this.updateSize(A);var C=this.svgContainer=document.createElementNS("http://www.w3.org/2000/svg","svg");C.style.position="absolute",C.style.top=C.style.left="0px",C.style.width=C.style.height="100%",C.style["z-index"]=20,C.style["pointer-events"]="none";var P=this.mouseContainer=document.createElement("div");P.style.position="absolute",P.style["pointer-events"]="auto",this.pickCanvas=this.container.querySelector(".gl-canvas-pick");var O=this.container;O.appendChild(C),O.appendChild(P);var z=this;P.addEventListener("mouseout",function(){z.isMouseOver=!1,z.unhover()}),P.addEventListener("mouseover",function(){z.isMouseOver=!0})},T.toImage=function(d){d||(d="png"),this.stopped=!0,this.staticPlot&&this.container.appendChild(w),this.updateSize(this.canvas);var M=this.glplot.gl,A=M.drawingBufferWidth,C=M.drawingBufferHeight;M.clearColor(1,1,1,0),M.clear(M.COLOR_BUFFER_BIT|M.DEPTH_BUFFER_BIT),this.glplot.setDirty(),this.glplot.draw(),M.bindFramebuffer(M.FRAMEBUFFER,null);var P=new Uint8Array(A*C*4);M.readPixels(0,0,A,C,M.RGBA,M.UNSIGNED_BYTE,P);for(var O=0,z=C-1;O<z;++O,--z)for(var B=0;B<A;++B)for(var Y=0;Y<4;++Y){var D=P[4*(A*O+B)+Y];P[4*(A*O+B)+Y]=P[4*(A*z+B)+Y],P[4*(A*z+B)+Y]=D}var G=document.createElement("canvas");G.width=A,G.height=C;var V,j=G.getContext("2d",{willReadFrequently:!0}),W=j.createImageData(A,C);switch(W.data.set(P),j.putImageData(W,0,0),d){case"jpeg":V=G.toDataURL("image/jpeg");break;case"webp":V=G.toDataURL("image/webp");break;default:V=G.toDataURL("image/png")}return this.staticPlot&&this.container.removeChild(w),V},T.updateSize=function(d){d||(d=this.canvas);var M=this.pixelRatio,A=this.fullLayout,C=A.width,P=A.height,O=0|Math.ceil(M*C),z=0|Math.ceil(M*P);return d.width===O&&d.height===z||(d.width=O,d.height=z),d},T.computeTickMarks=function(){this.xaxis.setScale(),this.yaxis.setScale();for(var d=[_.calcTicks(this.xaxis),_.calcTicks(this.yaxis)],M=0;M<2;++M)for(var A=0;A<d[M].length;++A)d[M][A].text=d[M][A].text+"";return d},T.updateRefs=function(d){this.fullLayout=d;var M=this.id.match(m),A="xaxis"+M[1],C="yaxis"+M[2];this.xaxis=this.fullLayout[A],this.yaxis=this.fullLayout[C]},T.relayoutCallback=function(){var d=this.graphDiv,M=this.xaxis,A=this.yaxis,C=d.layout,P={},O=P[M._name+".range"]=M.range.slice(),z=P[A._name+".range"]=A.range.slice();P[M._name+".autorange"]=M.autorange,P[A._name+".autorange"]=A.autorange,i.call("_storeDirectGUIEdit",d.layout,d._fullLayout._preGUI,P);var B=C[M._name];B.range=O,B.autorange=M.autorange;var Y=C[A._name];Y.range=z,Y.autorange=A.autorange,P.lastInputTime=this.camera.lastInputTime,d.emit("plotly_relayout",P)},T.cameraChanged=function(){var d=this.camera;this.glplot.setDataBox(this.calcDataBox());var M=this.computeTickMarks();(function(A,C){for(var P=0;P<2;++P){var O=A[P],z=C[P];if(O.length!==z.length)return!0;for(var B=0;B<O.length;++B)if(O[B].x!==z[B].x)return!0}return!1})(M,this.glplotOptions.ticks)&&(this.glplotOptions.ticks=M,this.glplotOptions.dataBox=d.dataBox,this.glplot.update(this.glplotOptions),this.handleAnnotations())},T.handleAnnotations=function(){for(var d=this.graphDiv,M=this.fullLayout.annotations,A=0;A<M.length;A++){var C=M[A];C.xref===this.xaxis._id&&C.yref===this.yaxis._id&&i.getComponentMethod("annotations","drawOne")(d,A)}},T.destroy=function(){if(this.glplot){var d=this.traces;d&&Object.keys(d).map(function(M){d[M].dispose(),delete d[M]}),this.glplot.dispose(),this.container.removeChild(this.svgContainer),this.container.removeChild(this.mouseContainer),this.fullData=null,this.glplot=null,this.stopped=!0,this.camera.mouseListener.enabled=!1,this.mouseContainer.removeEventListener("wheel",this.camera.wheelListener),this.camera=null}},T.plot=function(d,M,A){var C=this.glplot;this.updateRefs(A),this.xaxis.clearCalc(),this.yaxis.clearCalc(),this.updateTraces(d,M),this.updateFx(A.dragmode);var P=A.width,O=A.height;this.updateSize(this.canvas);var z=this.glplotOptions;z.merge(A),z.screenBox=[0,0,P,O];var B={_fullLayout:{_axisConstraintGroups:A._axisConstraintGroups,xaxis:this.xaxis,yaxis:this.yaxis,_size:A._size}};p(B,this.xaxis),p(B,this.yaxis);var Y,D,G=A._size,V=this.xaxis.domain,j=this.yaxis.domain;for(z.viewBox=[G.l+V[0]*G.w,G.b+j[0]*G.h,P-G.r-(1-V[1])*G.w,O-G.t-(1-j[1])*G.h],this.mouseContainer.style.width=G.w*(V[1]-V[0])+"px",this.mouseContainer.style.height=G.h*(j[1]-j[0])+"px",this.mouseContainer.height=G.h*(j[1]-j[0]),this.mouseContainer.style.left=G.l+V[0]*G.w+"px",this.mouseContainer.style.top=G.t+(1-j[1])*G.h+"px",D=0;D<2;++D)(Y=this[v[D]])._length=z.viewBox[D+2]-z.viewBox[D],c(this.graphDiv,Y),Y.setScale();u(B),z.ticks=this.computeTickMarks(),z.dataBox=this.calcDataBox(),z.merge(A),C.update(z),this.glplot.draw()},T.calcDataBox=function(){var d=this.xaxis,M=this.yaxis,A=d.range,C=M.range,P=d.r2l,O=M.r2l;return[P(A[0]),O(C[0]),P(A[1]),O(C[1])]},T.setRanges=function(d){var M=this.xaxis,A=this.yaxis,C=M.l2r,P=A.l2r;M.range=[C(d[0]),C(d[2])],A.range=[P(d[1]),P(d[3])]},T.updateTraces=function(d,M){var A,C,P,O=Object.keys(this.traces);this.fullData=d;e:for(A=0;A<O.length;A++){var z=O[A],B=this.traces[z];for(C=0;C<d.length;C++)if((P=d[C]).uid===z&&P.type===B.type)continue e;B.dispose(),delete this.traces[z]}for(A=0;A<d.length;A++){P=d[A];var Y=M[A],D=this.traces[P.uid];D?D.update(P,Y):(D=P._module.plot(this,P,Y),this.traces[P.uid]=D)}this.glplot.objects.sort(function(G,V){return G._trace.index-V._trace.index})},T.updateFx=function(d){f(d)||g(d)?(this.pickCanvas.style["pointer-events"]="none",this.mouseContainer.style["pointer-events"]="none"):(this.pickCanvas.style["pointer-events"]="auto",this.mouseContainer.style["pointer-events"]="auto"),this.mouseContainer.style.cursor=d==="pan"?"move":d==="zoom"?"crosshair":null},T.emitPointAction=function(d,M){for(var A,C=d.trace.uid,P=d.pointIndex,O=0;O<this.fullData.length;O++)this.fullData[O].uid===C&&(A=this.fullData[O]);var z={x:d.traceCoord[0],y:d.traceCoord[1],curveNumber:A.index,pointNumber:P,data:A._input,fullData:this.fullData,xaxis:this.xaxis,yaxis:this.yaxis};y.appendArrayPointValue(z,A,P),this.graphDiv.emit(M,{points:[z]})},T.draw=function(){if(!this.stopped){requestAnimationFrame(this.redraw);var d=this.glplot,M=this.camera,A=M.mouseListener,C=this.lastButtonState===1&&A.buttons===0,P=this.fullLayout;this.lastButtonState=A.buttons,this.cameraChanged();var O,z=A.x*d.pixelRatio,B=this.canvas.height-d.pixelRatio*A.y;if(M.boxEnabled&&P.dragmode==="zoom"){this.selectBox.enabled=!0;for(var Y=this.selectBox.selectBox=[Math.min(M.boxStart[0],M.boxEnd[0]),Math.min(M.boxStart[1],M.boxEnd[1]),Math.max(M.boxStart[0],M.boxEnd[0]),Math.max(M.boxStart[1],M.boxEnd[1])],D=0;D<2;D++)M.boxStart[D]===M.boxEnd[D]&&(Y[D]=d.dataBox[D],Y[D+2]=d.dataBox[D+2]);d.setDirty()}else if(!M.panning&&this.isMouseOver){this.selectBox.enabled=!1;var G=P._size,V=this.xaxis.domain,j=this.yaxis.domain,W=(O=d.pick(z/d.pixelRatio+G.l+V[0]*G.w,B/d.pixelRatio-(G.t+(1-j[1])*G.h)))&&O.object._trace.handlePick(O);if(W&&C&&this.emitPointAction(W,"plotly_click"),O&&O.object._trace.hoverinfo!=="skip"&&P.hovermode&&W&&(!this.lastPickResult||this.lastPickResult.traceUid!==W.trace.uid||this.lastPickResult.dataCoord[0]!==W.dataCoord[0]||this.lastPickResult.dataCoord[1]!==W.dataCoord[1])){var Z=W;this.lastPickResult={traceUid:W.trace?W.trace.uid:null,dataCoord:W.dataCoord.slice()},this.spikes.update({center:O.dataCoord}),Z.screenCoord=[((d.viewBox[2]-d.viewBox[0])*(O.dataCoord[0]-d.dataBox[0])/(d.dataBox[2]-d.dataBox[0])+d.viewBox[0])/d.pixelRatio,(this.canvas.height-(d.viewBox[3]-d.viewBox[1])*(O.dataCoord[1]-d.dataBox[1])/(d.dataBox[3]-d.dataBox[1])-d.viewBox[1])/d.pixelRatio],this.emitPointAction(W,"plotly_hover");var ie=this.fullData[Z.trace.index]||{},te=Z.pointIndex,J=y.castHoverinfo(ie,P,te);if(J&&J!=="all"){var X=J.split("+");X.indexOf("x")===-1&&(Z.traceCoord[0]=void 0),X.indexOf("y")===-1&&(Z.traceCoord[1]=void 0),X.indexOf("z")===-1&&(Z.traceCoord[2]=void 0),X.indexOf("text")===-1&&(Z.textLabel=void 0),X.indexOf("name")===-1&&(Z.name=void 0)}y.loneHover({x:Z.screenCoord[0],y:Z.screenCoord[1],xLabel:this.hoverFormatter("xaxis",Z.traceCoord[0]),yLabel:this.hoverFormatter("yaxis",Z.traceCoord[1]),zLabel:Z.traceCoord[2],text:Z.textLabel,name:Z.name,color:y.castHoverOption(ie,te,"bgcolor")||Z.color,borderColor:y.castHoverOption(ie,te,"bordercolor"),fontFamily:y.castHoverOption(ie,te,"font.family"),fontSize:y.castHoverOption(ie,te,"font.size"),fontColor:y.castHoverOption(ie,te,"font.color"),nameLength:y.castHoverOption(ie,te,"namelength"),textAlign:y.castHoverOption(ie,te,"align")},{container:this.svgContainer,gd:this.graphDiv})}}O||this.unhover(),d.draw()}},T.unhover=function(){this.lastPickResult&&(this.spikes.update({}),this.lastPickResult=null,this.graphDiv.emit("plotly_unhover"),y.loneUnhover(this.svgContainer))},T.hoverFormatter=function(d,M){if(M!==void 0){var A=this[d];return _.tickText(A,A.c2l(M),"hover").text}}},58547:function(R,E,e){var w=e(30962).overrideAll,k=e(528),i=e(33539),_=e(27659).NG,y=e(71828),h=e(77922),l="gl3d",t="scene";E.name=l,E.attr=t,E.idRoot=t,E.idRegex=E.attrRegex=y.counterRegex("scene"),E.attributes=e(59084),E.layoutAttributes=e(65500),E.baseLayoutAttrOverrides=w({hoverlabel:k.hoverlabel},"plot","nested"),E.supplyLayoutDefaults=e(24682),E.plot=function(o){for(var r=o._fullLayout,n=o._fullData,a=r._subplots[l],s=0;s<a.length;s++){var u=a[s],p=_(n,l,u),c=r[u],b=c.camera,g=c._scene;g||(g=new i({id:u,graphDiv:o,container:o.querySelector(".gl-container"),staticPlot:o._context.staticPlot,plotGlPixelRatio:o._context.plotGlPixelRatio,camera:b},r),c._scene=g),g.viewInitial||(g.viewInitial={up:{x:b.up.x,y:b.up.y,z:b.up.z},eye:{x:b.eye.x,y:b.eye.y,z:b.eye.z},center:{x:b.center.x,y:b.center.y,z:b.center.z}}),g.plot(p,r,o.layout)}},E.clean=function(o,r,n,a){for(var s=a._subplots[l]||[],u=0;u<s.length;u++){var p=s[u];!r[p]&&a[p]._scene&&(a[p]._scene.destroy(),a._infolayer&&a._infolayer.selectAll(".annotation-"+p).remove())}},E.toSVG=function(o){for(var r=o._fullLayout,n=r._subplots[l],a=r._size,s=0;s<n.length;s++){var u=r[n[s]],p=u.domain,c=u._scene,b=c.toImage("png");r._glimages.append("svg:image").attr({xmlns:h.svg,"xlink:href":b,x:a.l+a.w*p.x[0],y:a.t+a.h*(1-p.y[1]),width:a.w*(p.x[1]-p.x[0]),height:a.h*(p.y[1]-p.y[0]),preserveAspectRatio:"none"}),c.destroy()}},E.cleanId=function(o){if(o.match(/^scene[0-9]*$/)){var r=o.substr(5);return r==="1"&&(r=""),t+r}},E.updateFx=function(o){for(var r=o._fullLayout,n=r._subplots[l],a=0;a<n.length;a++)r[n[a]]._scene.updateFx(r.dragmode,r.hovermode)}},59084:function(R){R.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}},77894:function(R,E,e){var w=e(7901),k=e(13838),i=e(1426).extendFlat,_=e(30962).overrideAll;R.exports=_({visible:k.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:w.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:k.color,categoryorder:k.categoryorder,categoryarray:k.categoryarray,title:{text:k.title.text,font:k.title.font},type:i({},k.type,{values:["-","linear","log","date","category"]}),autotypenumbers:k.autotypenumbers,autorange:k.autorange,rangemode:k.rangemode,range:i({},k.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:k.minor.tickmode,nticks:k.nticks,tick0:k.tick0,dtick:k.dtick,tickvals:k.tickvals,ticktext:k.ticktext,ticks:k.ticks,mirror:k.mirror,ticklen:k.ticklen,tickwidth:k.tickwidth,tickcolor:k.tickcolor,showticklabels:k.showticklabels,labelalias:k.labelalias,tickfont:k.tickfont,tickangle:k.tickangle,tickprefix:k.tickprefix,showtickprefix:k.showtickprefix,ticksuffix:k.ticksuffix,showticksuffix:k.showticksuffix,showexponent:k.showexponent,exponentformat:k.exponentformat,minexponent:k.minexponent,separatethousands:k.separatethousands,tickformat:k.tickformat,tickformatstops:k.tickformatstops,hoverformat:k.hoverformat,showline:k.showline,linecolor:k.linecolor,linewidth:k.linewidth,showgrid:k.showgrid,gridcolor:i({},k.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:k.gridwidth,zeroline:k.zeroline,zerolinecolor:k.zerolinecolor,zerolinewidth:k.zerolinewidth,_deprecated:{title:k._deprecated.title,titlefont:k._deprecated.titlefont}},"plot","from-root")},3277:function(R,E,e){var w=e(84267).mix,k=e(71828),i=e(44467),_=e(77894),y=e(951),h=e(71453),l=["xaxis","yaxis","zaxis"];R.exports=function(t,o,r){var n,a;function s(c,b){return k.coerce(n,a,_,c,b)}for(var u=0;u<l.length;u++){var p=l[u];n=t[p]||{},(a=i.newContainer(o,p))._id=p[0]+r.scene,a._name=p,y(n,a,s,r),h(n,a,s,{font:r.font,letter:p[0],data:r.data,showGrid:!0,noTickson:!0,noTicklabelmode:!0,noTicklabelstep:!0,noTicklabelposition:!0,noTicklabeloverflow:!0,bgColor:r.bgColor,calendar:r.calendar},r.fullLayout),s("gridcolor",w(a.color,r.bgColor,72.72727272727273).toRgbString()),s("title.text",p[0]),a.setScale=k.noop,s("showspikes")&&(s("spikesides"),s("spikethickness"),s("spikecolor",a.color)),s("showaxeslabels"),s("showbackground")&&s("backgroundcolor")}}},30422:function(R,E,e){var w=e(78614),k=e(71828),i=["xaxis","yaxis","zaxis"];function _(){this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[18,18,18],this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["Open Sans","Open Sans","Open Sans"],this.labelSize=[20,20,20],this.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()}_.prototype.merge=function(y,h){for(var l=this,t=0;t<3;++t){var o=h[i[t]];o.visible?(l.labels[t]=y._meta?k.templateString(o.title.text,y._meta):o.title.text,"font"in o.title&&(o.title.font.color&&(l.labelColor[t]=w(o.title.font.color)),o.title.font.family&&(l.labelFont[t]=o.title.font.family),o.title.font.size&&(l.labelSize[t]=o.title.font.size)),"showline"in o&&(l.lineEnable[t]=o.showline),"linecolor"in o&&(l.lineColor[t]=w(o.linecolor)),"linewidth"in o&&(l.lineWidth[t]=o.linewidth),"showgrid"in o&&(l.gridEnable[t]=o.showgrid),"gridcolor"in o&&(l.gridColor[t]=w(o.gridcolor)),"gridwidth"in o&&(l.gridWidth[t]=o.gridwidth),o.type==="log"?l.zeroEnable[t]=!1:"zeroline"in o&&(l.zeroEnable[t]=o.zeroline),"zerolinecolor"in o&&(l.zeroLineColor[t]=w(o.zerolinecolor)),"zerolinewidth"in o&&(l.zeroLineWidth[t]=o.zerolinewidth),"ticks"in o&&o.ticks?l.lineTickEnable[t]=!0:l.lineTickEnable[t]=!1,"ticklen"in o&&(l.lineTickLength[t]=l._defaultLineTickLength[t]=o.ticklen),"tickcolor"in o&&(l.lineTickColor[t]=w(o.tickcolor)),"tickwidth"in o&&(l.lineTickWidth[t]=o.tickwidth),"tickangle"in o&&(l.tickAngle[t]=o.tickangle==="auto"?-3600:Math.PI*-o.tickangle/180),"showticklabels"in o&&(l.tickEnable[t]=o.showticklabels),"tickfont"in o&&(o.tickfont.color&&(l.tickColor[t]=w(o.tickfont.color)),o.tickfont.family&&(l.tickFont[t]=o.tickfont.family),o.tickfont.size&&(l.tickSize[t]=o.tickfont.size)),"mirror"in o?["ticks","all","allticks"].indexOf(o.mirror)!==-1?(l.lineTickMirror[t]=!0,l.lineMirror[t]=!0):o.mirror===!0?(l.lineTickMirror[t]=!1,l.lineMirror[t]=!0):(l.lineTickMirror[t]=!1,l.lineMirror[t]=!1):l.lineMirror[t]=!1,"showbackground"in o&&o.showbackground!==!1?(l.backgroundEnable[t]=!0,l.backgroundColor[t]=w(o.backgroundcolor)):l.backgroundEnable[t]=!1):(l.tickEnable[t]=!1,l.labelEnable[t]=!1,l.lineEnable[t]=!1,l.lineTickEnable[t]=!1,l.gridEnable[t]=!1,l.zeroEnable[t]=!1,l.backgroundEnable[t]=!1)}},R.exports=function(y,h){var l=new _;return l.merge(y,h),l}},24682:function(R,E,e){var w=e(71828),k=e(7901),i=e(73972),_=e(49119),y=e(3277),h=e(65500),l=e(27659).NG,t="gl3d";function o(r,n,a,s){for(var u=a("bgcolor"),p=k.combine(u,s.paper_bgcolor),c=["up","center","eye"],b=0;b<c.length;b++)a("camera."+c[b]+".x"),a("camera."+c[b]+".y"),a("camera."+c[b]+".z");a("camera.projection.type");var g=!!a("aspectratio.x")&&!!a("aspectratio.y")&&!!a("aspectratio.z"),f=a("aspectmode",g?"manual":"auto");g||(r.aspectratio=n.aspectratio={x:1,y:1,z:1},f==="manual"&&(n.aspectmode="auto"),r.aspectmode=n.aspectmode);var v=l(s.fullData,t,s.id);y(r,n,{font:s.font,scene:s.id,data:v,bgColor:p,calendar:s.calendar,autotypenumbersDflt:s.autotypenumbersDflt,fullLayout:s.fullLayout}),i.getComponentMethod("annotations3d","handleDefaults")(r,n,s);var m=s.getDfltFromLayout("dragmode");if(m!==!1&&!m)if(m="orbit",r.camera&&r.camera.up){var x=r.camera.up.x,T=r.camera.up.y,d=r.camera.up.z;d!==0&&(x&&T&&d?d/Math.sqrt(x*x+T*T+d*d)>.999&&(m="turntable"):m="turntable")}else m="turntable";a("dragmode",m),a("hovermode",s.getDfltFromLayout("hovermode"))}R.exports=function(r,n,a){var s=n._basePlotModules.length>1;_(r,n,a,{type:t,attributes:h,handleDefaults:o,fullLayout:n,font:n.font,fullData:a,getDfltFromLayout:function(u){if(!s)return w.validate(r[u],h[u])?r[u]:void 0},autotypenumbersDflt:n.autotypenumbers,paper_bgcolor:n.paper_bgcolor,calendar:n.calendar})}},65500:function(R,E,e){var w=e(77894),k=e(27670).Y,i=e(1426).extendFlat,_=e(71828).counterRegex;function y(h,l,t){return{x:{valType:"number",dflt:h,editType:"camera"},y:{valType:"number",dflt:l,editType:"camera"},z:{valType:"number",dflt:t,editType:"camera"},editType:"camera"}}R.exports={_arrayAttrRegexps:[_("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:i(y(0,0,1),{}),center:i(y(0,0,0),{}),eye:i(y(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:k({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}},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"}},xaxis:w,yaxis:w,zaxis:w,dragmode:{valType:"enumerated",values:["orbit","turntable","zoom","pan",!1],editType:"plot"},hovermode:{valType:"enumerated",values:["closest",!1],dflt:"closest",editType:"modebar"},uirevision:{valType:"any",editType:"none"},editType:"plot",_deprecated:{cameraposition:{valType:"info_array",editType:"camera"}}}},13133:function(R,E,e){var w=e(78614),k=["xaxis","yaxis","zaxis"];function i(){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]}i.prototype.merge=function(_){for(var y=0;y<3;++y){var h=_[k[y]];h.visible?(this.enabled[y]=h.showspikes,this.colors[y]=w(h.spikecolor),this.drawSides[y]=h.spikesides,this.lineWidth[y]=h.spikethickness):(this.enabled[y]=!1,this.drawSides[y]=!1)}},R.exports=function(_){var y=new i;return y.merge(_),y}},96085:function(R,E,e){R.exports=function(y){for(var h=y.axesOptions,l=y.glplot.axesPixels,t=y.fullSceneLayout,o=[[],[],[]],r=0;r<3;++r){var n=t[i[r]];if(n._length=(l[r].hi-l[r].lo)*l[r].pixelsPerDataUnit/y.dataScale[r],Math.abs(n._length)===1/0||isNaN(n._length))o[r]=[];else{n._input_range=n.range.slice(),n.range[0]=l[r].lo/y.dataScale[r],n.range[1]=l[r].hi/y.dataScale[r],n._m=1/(y.dataScale[r]*l[r].pixelsPerDataUnit),n.range[0]===n.range[1]&&(n.range[0]-=1,n.range[1]+=1);var a=n.tickmode;if(n.tickmode==="auto"){n.tickmode="linear";var s=n.nticks||k.constrain(n._length/40,4,9);w.autoTicks(n,Math.abs(n.range[1]-n.range[0])/s)}for(var u=w.calcTicks(n,{msUTC:!0}),p=0;p<u.length;++p)u[p].x=u[p].x*y.dataScale[r],n.type==="date"&&(u[p].text=u[p].text.replace(/\<br\>/g," "));o[r]=u,n.tickmode=a}}for(h.ticks=o,r=0;r<3;++r)for(_[r]=.5*(y.glplot.bounds[0][r]+y.glplot.bounds[1][r]),p=0;p<2;++p)h.bounds[p][r]=y.glplot.bounds[p][r];y.contourLevels=function(c){for(var b=new Array(3),g=0;g<3;++g){for(var f=c[g],v=new Array(f.length),m=0;m<f.length;++m)v[m]=f[m].x;b[g]=v}return b}(o)};var w=e(89298),k=e(71828),i=["xaxis","yaxis","zaxis"],_=[0,0,0]},63538:function(R){function E(e,w){var k,i,_=[0,0,0,0];for(k=0;k<4;++k)for(i=0;i<4;++i)_[i]+=e[4*k+i]*w[k];return _}R.exports=function(e,w){return E(e.projection,E(e.view,E(e.model,[w[0],w[1],w[2],1])))}},33539:function(R,E,e){var w,k,i=e(9330).gl_plot3d,_=i.createCamera,y=i.createScene,h=e(40372),l=e(38520),t=e(73972),o=e(71828),r=o.preserveDrawingBuffer(),n=e(89298),a=e(30211),s=e(78614),u=e(58617),p=e(63538),c=e(30422),b=e(13133),g=e(96085),f=!1;function v(M,A){var C=document.createElement("div"),P=M.container;this.graphDiv=M.graphDiv;var O=document.createElementNS("http://www.w3.org/2000/svg","svg");O.style.position="absolute",O.style.top=O.style.left="0px",O.style.width=O.style.height="100%",O.style["z-index"]=20,O.style["pointer-events"]="none",C.appendChild(O),this.svgContainer=O,C.id=M.id,C.style.position="absolute",C.style.top=C.style.left="0px",C.style.width=C.style.height="100%",P.appendChild(C),this.fullLayout=A,this.id=M.id||"scene",this.fullSceneLayout=A[this.id],this.plotArgs=[[],{},{}],this.axesOptions=c(A,A[this.id]),this.spikeOptions=b(A[this.id]),this.container=C,this.staticMode=!!M.staticPlot,this.pixelRatio=this.pixelRatio||M.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=t.getComponentMethod("annotations3d","convert"),this.drawAnnotations=t.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var m=v.prototype;m.prepareOptions=function(){var M=this,A={canvas:M.canvas,gl:M.gl,glOptions:{preserveDrawingBuffer:r,premultipliedAlpha:!0,antialias:!0},container:M.container,axes:M.axesOptions,spikes:M.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:M.camera,pixelRatio:M.pixelRatio};if(M.staticMode){if(!(k||(w=document.createElement("canvas"),k=h({canvas:w,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}))))throw new Error("error creating static canvas/context for image server");A.gl=k,A.canvas=w}return A};var x=!0;m.tryCreatePlot=function(){var M=this,A=M.prepareOptions(),C=!0;try{M.glplot=y(A)}catch{if(M.staticMode||!x||r)C=!1;else{o.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{r=A.glOptions.preserveDrawingBuffer=!0,M.glplot=y(A)}catch{r=A.glOptions.preserveDrawingBuffer=!1,C=!1}}}return x=!1,C},m.initializeGLCamera=function(){var M=this,A=M.fullSceneLayout.camera,C=A.projection.type==="orthographic";M.camera=_(M.container,{center:[A.center.x,A.center.y,A.center.z],eye:[A.eye.x,A.eye.y,A.eye.z],up:[A.up.x,A.up.y,A.up.z],_ortho:C,zoomMin:.01,zoomMax:100,mode:"orbit"})},m.initializeGLPlot=function(){var M=this;if(M.initializeGLCamera(),!M.tryCreatePlot())return u(M);M.traces={},M.make4thDimension();var A=M.graphDiv,C=A.layout,P=function(){var z={};return M.isCameraChanged(C)&&(z[M.id+".camera"]=M.getCamera()),M.isAspectChanged(C)&&(z[M.id+".aspectratio"]=M.glplot.getAspectratio(),C[M.id].aspectmode!=="manual"&&(M.fullSceneLayout.aspectmode=C[M.id].aspectmode=z[M.id+".aspectmode"]="manual")),z},O=function(z){if(z.fullSceneLayout.dragmode!==!1){var B=P();z.saveLayout(C),z.graphDiv.emit("plotly_relayout",B)}};return M.glplot.canvas&&(M.glplot.canvas.addEventListener("mouseup",function(){O(M)}),M.glplot.canvas.addEventListener("touchstart",function(){f=!0}),M.glplot.canvas.addEventListener("wheel",function(z){if(A._context._scrollZoom.gl3d){if(M.camera._ortho){var B=z.deltaX>z.deltaY?1.1:.9090909090909091,Y=M.glplot.getAspectratio();M.glplot.setAspectratio({x:B*Y.x,y:B*Y.y,z:B*Y.z})}O(M)}},!!l&&{passive:!1}),M.glplot.canvas.addEventListener("mousemove",function(){if(M.fullSceneLayout.dragmode!==!1&&M.camera.mouseListener.buttons!==0){var z=P();M.graphDiv.emit("plotly_relayouting",z)}}),M.staticMode||M.glplot.canvas.addEventListener("webglcontextlost",function(z){A&&A.emit&&A.emit("plotly_webglcontextlost",{event:z,layer:M.id})},!1)),M.glplot.oncontextloss=function(){M.recoverContext()},M.glplot.onrender=function(){M.render()},!0},m.render=function(){var M,A=this,C=A.graphDiv,P=A.svgContainer,O=A.container.getBoundingClientRect();C._fullLayout._calcInverseTransform(C);var z=C._fullLayout._invScaleX,B=C._fullLayout._invScaleY,Y=O.width*z,D=O.height*B;P.setAttributeNS(null,"viewBox","0 0 "+Y+" "+D),P.setAttributeNS(null,"width",Y),P.setAttributeNS(null,"height",D),g(A),A.glplot.axes.update(A.axesOptions);for(var G=Object.keys(A.traces),V=null,j=A.glplot.selection,W=0;W<G.length;++W)(M=A.traces[G[W]]).data.hoverinfo!=="skip"&&M.handlePick(j)&&(V=M),M.setContourLevels&&M.setContourLevels();function Z(Se,we,xe){var De=A.fullSceneLayout[Se+"axis"];return De.type!=="log"&&(we=De.d2l(we)),n.hoverLabelText(De,we,xe)}if(V!==null){var ie=p(A.glplot.cameraParams,j.dataCoordinate);M=V.data;var te,J=C._fullData[M.index],X=j.index,ee={xLabel:Z("x",j.traceCoordinate[0],M.xhoverformat),yLabel:Z("y",j.traceCoordinate[1],M.yhoverformat),zLabel:Z("z",j.traceCoordinate[2],M.zhoverformat)},re=a.castHoverinfo(J,A.fullLayout,X),oe=(re||"").split("+"),ue=re&&re==="all";J.hovertemplate||ue||(oe.indexOf("x")===-1&&(ee.xLabel=void 0),oe.indexOf("y")===-1&&(ee.yLabel=void 0),oe.indexOf("z")===-1&&(ee.zLabel=void 0),oe.indexOf("text")===-1&&(j.textLabel=void 0),oe.indexOf("name")===-1&&(V.name=void 0));var ce=[];M.type==="cone"||M.type==="streamtube"?(ee.uLabel=Z("x",j.traceCoordinate[3],M.uhoverformat),(ue||oe.indexOf("u")!==-1)&&ce.push("u: "+ee.uLabel),ee.vLabel=Z("y",j.traceCoordinate[4],M.vhoverformat),(ue||oe.indexOf("v")!==-1)&&ce.push("v: "+ee.vLabel),ee.wLabel=Z("z",j.traceCoordinate[5],M.whoverformat),(ue||oe.indexOf("w")!==-1)&&ce.push("w: "+ee.wLabel),ee.normLabel=j.traceCoordinate[6].toPrecision(3),(ue||oe.indexOf("norm")!==-1)&&ce.push("norm: "+ee.normLabel),M.type==="streamtube"&&(ee.divergenceLabel=j.traceCoordinate[7].toPrecision(3),(ue||oe.indexOf("divergence")!==-1)&&ce.push("divergence: "+ee.divergenceLabel)),j.textLabel&&ce.push(j.textLabel),te=ce.join("<br>")):M.type==="isosurface"||M.type==="volume"?(ee.valueLabel=n.hoverLabelText(A._mockAxis,A._mockAxis.d2l(j.traceCoordinate[3]),M.valuehoverformat),ce.push("value: "+ee.valueLabel),j.textLabel&&ce.push(j.textLabel),te=ce.join("<br>")):te=j.textLabel;var de={x:j.traceCoordinate[0],y:j.traceCoordinate[1],z:j.traceCoordinate[2],data:J._input,fullData:J,curveNumber:J.index,pointNumber:X};a.appendArrayPointValue(de,J,X),M._module.eventData&&(de=J._module.eventData(de,j,J,{},X));var me={points:[de]};if(A.fullSceneLayout.hovermode){var _e=[];a.loneHover({trace:J,x:(.5+.5*ie[0]/ie[3])*Y,y:(.5-.5*ie[1]/ie[3])*D,xLabel:ee.xLabel,yLabel:ee.yLabel,zLabel:ee.zLabel,text:te,name:V.name,color:a.castHoverOption(J,X,"bgcolor")||V.color,borderColor:a.castHoverOption(J,X,"bordercolor"),fontFamily:a.castHoverOption(J,X,"font.family"),fontSize:a.castHoverOption(J,X,"font.size"),fontColor:a.castHoverOption(J,X,"font.color"),nameLength:a.castHoverOption(J,X,"namelength"),textAlign:a.castHoverOption(J,X,"align"),hovertemplate:o.castOption(J,X,"hovertemplate"),hovertemplateLabels:o.extendFlat({},de,ee),eventData:[de]},{container:P,gd:C,inOut_bbox:_e}),de.bbox=_e[0]}j.distance<5&&(j.buttons||f)?C.emit("plotly_click",me):C.emit("plotly_hover",me),this.oldEventData=me}else a.loneUnhover(P),this.oldEventData&&C.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;A.drawAnnotations(A)},m.recoverContext=function(){var M=this;M.glplot.dispose();var A=function(){M.glplot.gl.isContextLost()?requestAnimationFrame(A):M.initializeGLPlot()?M.plot.apply(M,M.plotArgs):o.error("Catastrophic and unrecoverable WebGL error. Context lost.")};requestAnimationFrame(A)};var T=["xaxis","yaxis","zaxis"];function d(M,A,C){for(var P=M.fullSceneLayout,O=0;O<3;O++){var z=T[O],B=z.charAt(0),Y=P[z],D=A[B],G=A[B+"calendar"],V=A["_"+B+"length"];if(o.isArrayOrTypedArray(D))for(var j,W=0;W<(V||D.length);W++)if(o.isArrayOrTypedArray(D[W]))for(var Z=0;Z<D[W].length;++Z)j=Y.d2l(D[W][Z],0,G),!isNaN(j)&&isFinite(j)&&(C[0][O]=Math.min(C[0][O],j),C[1][O]=Math.max(C[1][O],j));else j=Y.d2l(D[W],0,G),!isNaN(j)&&isFinite(j)&&(C[0][O]=Math.min(C[0][O],j),C[1][O]=Math.max(C[1][O],j));else C[0][O]=Math.min(C[0][O],0),C[1][O]=Math.max(C[1][O],V-1)}}m.plot=function(M,A,C){var P=this;if(P.plotArgs=[M,A,C],!P.glplot.contextLost){var O,z,B,Y,D,G,V=A[P.id],j=C[P.id];P.fullLayout=A,P.fullSceneLayout=V,P.axesOptions.merge(A,V),P.spikeOptions.merge(V),P.setViewport(V),P.updateFx(V.dragmode,V.hovermode),P.camera.enableWheel=P.graphDiv._context._scrollZoom.gl3d,P.glplot.setClearColor(s(V.bgcolor)),P.setConvert(D),M?Array.isArray(M)||(M=[M]):M=[];var W=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(B=0;B<M.length;++B)(O=M[B]).visible===!0&&O._length!==0&&d(this,O,W);(function(Te,Ne){for(var qe=Te.fullSceneLayout,ve=qe.annotations||[],Ce=0;Ce<3;Ce++)for(var Ae=T[Ce],ze=Ae.charAt(0),Ue=qe[Ae],Ve=0;Ve<ve.length;Ve++){var Ye=ve[Ve];if(Ye.visible){var $e=Ue.r2l(Ye[ze]);!isNaN($e)&&isFinite($e)&&(Ne[0][Ce]=Math.min(Ne[0][Ce],$e),Ne[1][Ce]=Math.max(Ne[1][Ce],$e))}}})(this,W);var Z=[1,1,1];for(Y=0;Y<3;++Y)W[1][Y]===W[0][Y]?Z[Y]=1:Z[Y]=1/(W[1][Y]-W[0][Y]);for(P.dataScale=Z,P.convertAnnotations(this),B=0;B<M.length;++B)(O=M[B]).visible===!0&&O._length!==0&&((z=P.traces[O.uid])?z.data.type===O.type?z.update(O):(z.dispose(),z=O._module.plot(this,O),P.traces[O.uid]=z):(z=O._module.plot(this,O),P.traces[O.uid]=z),z.name=O.name);var ie=Object.keys(P.traces);e:for(B=0;B<ie.length;++B){for(Y=0;Y<M.length;++Y)if(M[Y].uid===ie[B]&&M[Y].visible===!0&&M[Y]._length!==0)continue e;(z=P.traces[ie[B]]).dispose(),delete P.traces[ie[B]]}P.glplot.objects.sort(function(Te,Ne){return Te._trace.data.index-Ne._trace.data.index});var te,J=[[0,0,0],[0,0,0]],X=[],ee={};for(B=0;B<3;++B){if((G=(D=V[T[B]]).type)in ee?(ee[G].acc*=Z[B],ee[G].count+=1):ee[G]={acc:Z[B],count:1},D.autorange){J[0][B]=1/0,J[1][B]=-1/0;var re=P.glplot.objects,oe=P.fullSceneLayout.annotations||[],ue=D._name.charAt(0);for(Y=0;Y<re.length;Y++){var ce=re[Y],de=ce.bounds,me=ce._trace.data._pad||0;ce.constructor.name==="ErrorBars"&&D._lowerLogErrorBound?J[0][B]=Math.min(J[0][B],D._lowerLogErrorBound):J[0][B]=Math.min(J[0][B],de[0][B]/Z[B]-me),J[1][B]=Math.max(J[1][B],de[1][B]/Z[B]+me)}for(Y=0;Y<oe.length;Y++){var _e=oe[Y];if(_e.visible){var Se=D.r2l(_e[ue]);J[0][B]=Math.min(J[0][B],Se),J[1][B]=Math.max(J[1][B],Se)}}if("rangemode"in D&&D.rangemode==="tozero"&&(J[0][B]=Math.min(J[0][B],0),J[1][B]=Math.max(J[1][B],0)),J[0][B]>J[1][B])J[0][B]=-1,J[1][B]=1;else{var we=J[1][B]-J[0][B];J[0][B]-=we/32,J[1][B]+=we/32}if(D.autorange==="reversed"){var xe=J[0][B];J[0][B]=J[1][B],J[1][B]=xe}}else{var De=D.range;J[0][B]=D.r2l(De[0]),J[1][B]=D.r2l(De[1])}J[0][B]===J[1][B]&&(J[0][B]-=1,J[1][B]+=1),X[B]=J[1][B]-J[0][B],P.glplot.setBounds(B,{min:J[0][B]*Z[B],max:J[1][B]*Z[B]})}var Ee=V.aspectmode;if(Ee==="cube")te=[1,1,1];else if(Ee==="manual"){var Me=V.aspectratio;te=[Me.x,Me.y,Me.z]}else{if(Ee!=="auto"&&Ee!=="data")throw new Error("scene.js aspectRatio was not one of the enumerated types");var he=[1,1,1];for(B=0;B<3;++B){var fe=ee[G=(D=V[T[B]]).type];he[B]=Math.pow(fe.acc,1/fe.count)/Z[B]}te=Ee==="data"||Math.max.apply(null,he)/Math.min.apply(null,he)<=4?he:[1,1,1]}V.aspectratio.x=j.aspectratio.x=te[0],V.aspectratio.y=j.aspectratio.y=te[1],V.aspectratio.z=j.aspectratio.z=te[2],P.glplot.setAspectratio(V.aspectratio),P.viewInitial.aspectratio||(P.viewInitial.aspectratio={x:V.aspectratio.x,y:V.aspectratio.y,z:V.aspectratio.z}),P.viewInitial.aspectmode||(P.viewInitial.aspectmode=V.aspectmode);var ae=V.domain||null,be=A._size||null;if(ae&&be){var Ie=P.container.style;Ie.position="absolute",Ie.left=be.l+ae.x[0]*be.w+"px",Ie.top=be.t+(1-ae.y[1])*be.h+"px",Ie.width=be.w*(ae.x[1]-ae.x[0])+"px",Ie.height=be.h*(ae.y[1]-ae.y[0])+"px"}P.glplot.redraw()}},m.destroy=function(){var M=this;M.glplot&&(M.camera.mouseListener.enabled=!1,M.container.removeEventListener("wheel",M.camera.wheelListener),M.camera=null,M.glplot.dispose(),M.container.parentNode.removeChild(M.container),M.glplot=null)},m.getCamera=function(){var M,A=this;return A.camera.view.recalcMatrix(A.camera.view.lastT()),{up:{x:(M=A.camera).up[0],y:M.up[1],z:M.up[2]},center:{x:M.center[0],y:M.center[1],z:M.center[2]},eye:{x:M.eye[0],y:M.eye[1],z:M.eye[2]},projection:{type:M._ortho===!0?"orthographic":"perspective"}}},m.setViewport=function(M){var A,C=this,P=M.camera;C.camera.lookAt.apply(this,[[(A=P).eye.x,A.eye.y,A.eye.z],[A.center.x,A.center.y,A.center.z],[A.up.x,A.up.y,A.up.z]]),C.glplot.setAspectratio(M.aspectratio),P.projection.type==="orthographic"!==C.camera._ortho&&(C.glplot.redraw(),C.glplot.clearRGBA(),C.glplot.dispose(),C.initializeGLPlot())},m.isCameraChanged=function(M){var A=this.getCamera(),C=o.nestedProperty(M,this.id+".camera").get();function P(Y,D,G,V){var j=["up","center","eye"],W=["x","y","z"];return D[j[G]]&&Y[j[G]][W[V]]===D[j[G]][W[V]]}var O=!1;if(C===void 0)O=!0;else{for(var z=0;z<3;z++)for(var B=0;B<3;B++)if(!P(A,C,z,B)){O=!0;break}(!C.projection||A.projection&&A.projection.type!==C.projection.type)&&(O=!0)}return O},m.isAspectChanged=function(M){var A=this.glplot.getAspectratio(),C=o.nestedProperty(M,this.id+".aspectratio").get();return C===void 0||C.x!==A.x||C.y!==A.y||C.z!==A.z},m.saveLayout=function(M){var A,C,P,O,z,B,Y=this,D=Y.fullLayout,G=Y.isCameraChanged(M),V=Y.isAspectChanged(M),j=G||V;if(j){var W={};G&&(A=Y.getCamera(),P=(C=o.nestedProperty(M,Y.id+".camera")).get(),W[Y.id+".camera"]=P),V&&(O=Y.glplot.getAspectratio(),B=(z=o.nestedProperty(M,Y.id+".aspectratio")).get(),W[Y.id+".aspectratio"]=B),t.call("_storeDirectGUIEdit",M,D._preGUI,W),G&&(C.set(A),o.nestedProperty(D,Y.id+".camera").set(A)),V&&(z.set(O),o.nestedProperty(D,Y.id+".aspectratio").set(O),Y.glplot.redraw())}return j},m.updateFx=function(M,A){var C=this,P=C.camera;if(P)if(M==="orbit")P.mode="orbit",P.keyBindingMode="rotate";else if(M==="turntable"){P.up=[0,0,1],P.mode="turntable",P.keyBindingMode="rotate";var O=C.graphDiv,z=O._fullLayout,B=C.fullSceneLayout.camera,Y=B.up.x,D=B.up.y,G=B.up.z;if(G/Math.sqrt(Y*Y+D*D+G*G)<.999){var V=C.id+".camera.up",j={x:0,y:0,z:1},W={};W[V]=j;var Z=O.layout;t.call("_storeDirectGUIEdit",Z,z._preGUI,W),B.up=j,o.nestedProperty(Z,V).set(j)}}else P.keyBindingMode=M;C.fullSceneLayout.hovermode=A},m.toImage=function(M){var A=this;M||(M="png"),A.staticMode&&A.container.appendChild(w),A.glplot.redraw();var C=A.glplot.gl,P=C.drawingBufferWidth,O=C.drawingBufferHeight;C.bindFramebuffer(C.FRAMEBUFFER,null);var z=new Uint8Array(P*O*4);C.readPixels(0,0,P,O,C.RGBA,C.UNSIGNED_BYTE,z),function(V,j,W){for(var Z=0,ie=W-1;Z<ie;++Z,--ie)for(var te=0;te<j;++te)for(var J=0;J<4;++J){var X=4*(j*Z+te)+J,ee=4*(j*ie+te)+J,re=V[X];V[X]=V[ee],V[ee]=re}}(z,P,O),function(V,j,W){for(var Z=0;Z<W;++Z)for(var ie=0;ie<j;++ie){var te=4*(j*Z+ie),J=V[te+3];if(J>0)for(var X=255/J,ee=0;ee<3;++ee)V[te+ee]=Math.min(X*V[te+ee],255)}}(z,P,O);var B=document.createElement("canvas");B.width=P,B.height=O;var Y,D=B.getContext("2d",{willReadFrequently:!0}),G=D.createImageData(P,O);switch(G.data.set(z),D.putImageData(G,0,0),M){case"jpeg":Y=B.toDataURL("image/jpeg");break;case"webp":Y=B.toDataURL("image/webp");break;default:Y=B.toDataURL("image/png")}return A.staticMode&&A.container.removeChild(w),Y},m.setConvert=function(){for(var M=0;M<3;M++){var A=this.fullSceneLayout[T[M]];n.setConvert(A,this.fullLayout),A.setScale=o.noop}},m.make4thDimension=function(){var M=this,A=M.graphDiv._fullLayout;M._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},n.setConvert(M._mockAxis,A)},R.exports=v},90060:function(R){R.exports=function(E,e,w,k){k=k||E.length;for(var i=new Array(k),_=0;_<k;_++)i[_]=[E[_],e[_],w[_]];return i}},10820:function(R,E,e){var w=e(41940),k=e(85594),i=e(22399),_=e(29241),y=e(53777),h=e(35025),l=e(1426).extendFlat,t=w({editType:"calc"});t.family.dflt='"Open Sans", verdana, arial, sans-serif',t.size.dflt=12,t.color.dflt=i.defaultLine,R.exports={font:t,title:{text:{valType:"string",editType:"layoutstyle"},font:w({editType:"layoutstyle"}),xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:l(h({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:i.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:i.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:i.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:_.newshape,activeshape:_.activeshape,newselection:y.newselection,activeselection:y.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:l({},k.transition,{editType:"none"}),_deprecated:{title:{valType:"string",editType:"layoutstyle"},titlefont:w({editType:"layoutstyle"})}}},77734:function(R,E,e){var w=e(78607),k="1.10.1",i='© <a target="_blank" href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',_=['© <a target="_blank" href="https://carto.com/">Carto</a>',i].join(" "),y=['Map tiles by <a target="_blank" href="https://stamen.com">Stamen Design</a>','under <a target="_blank" href="https://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>',"|",'Data by <a target="_blank" href="https://openstreetmap.org">OpenStreetMap</a> contributors','under <a target="_blank" href="https://www.openstreetmap.org/copyright">ODbL</a>'].join(" "),h={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:i,tiles:["https://a.tile.openstreetmap.org/{z}/{x}/{y}.png","https://b.tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}]},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}]},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:_,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-positron",type:"raster",source:"plotly-carto-positron",minzoom:0,maxzoom:22}]},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:_,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-darkmatter",type:"raster",source:"plotly-carto-darkmatter",minzoom:0,maxzoom:22}]},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:y,tiles:["https://stamen-tiles.a.ssl.fastly.net/terrain/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}]},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:y,tiles:["https://stamen-tiles.a.ssl.fastly.net/toner/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}]},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:['Map tiles by <a target="_blank" href="https://stamen.com">Stamen Design</a>','under <a target="_blank" href="https://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>',"|",'Data by <a target="_blank" href="https://openstreetmap.org">OpenStreetMap</a> contributors','under <a target="_blank" href="https://creativecommons.org/licenses/by-sa/3.0">CC BY SA</a>'].join(" "),tiles:["https://stamen-tiles.a.ssl.fastly.net/watercolor/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}]}},l=w(h);R.exports={requiredVersion:k,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:h,styleValuesNonMapbox:l,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install mapbox-gl@"+k+"."].join(`
|
||
`),noAccessTokenErrorMsg:["Missing Mapbox access token.","Mapbox trace type require a Mapbox access token to be registered.","For example:"," Plotly.newPlot(gd, data, layout, { mapboxAccessToken: 'my-access-token' });","More info here: https://www.mapbox.com/help/define-access-token/"].join(`
|
||
`),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",l.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join(`
|
||
`),multipleTokensErrorMsg:["Set multiple mapbox access token across different mapbox subplot,","using first token found as mapbox-gl does not allow multipleaccess tokens on the same page."].join(`
|
||
`),mapOnErrorMsg:"Mapbox error.",mapboxLogo:{path0:"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z",path1:"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z",path2:"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z",polygon:"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34"},styleRules:{map:"overflow:hidden;position:relative;","missing-css":"display:none;",canary:"background-color:salmon;","ctrl-bottom-left":"position: absolute; pointer-events: none; z-index: 2; bottom: 0; left: 0;","ctrl-bottom-right":"position: absolute; pointer-events: none; z-index: 2; right: 0; bottom: 0;",ctrl:"clear: both; pointer-events: auto; transform: translate(0, 0);","ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner":"display: none;","ctrl-attrib.mapboxgl-compact:hover .mapboxgl-ctrl-attrib-inner":"display: block; margin-top:2px","ctrl-attrib.mapboxgl-compact:hover":"padding: 2px 24px 2px 4px; visibility: visible; margin-top: 6px;","ctrl-attrib.mapboxgl-compact::after":`content: ""; cursor: pointer; position: absolute; background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"%3E %3Cpath fill="%23333333" fill-rule="evenodd" d="M4,10a6,6 0 1,0 12,0a6,6 0 1,0 -12,0 M9,7a1,1 0 1,0 2,0a1,1 0 1,0 -2,0 M9,10a1,1 0 1,1 2,0l0,3a1,1 0 1,1 -2,0"/%3E %3C/svg%3E'); background-color: rgba(255, 255, 255, 0.5); width: 24px; height: 24px; box-sizing: border-box; border-radius: 12px;`,"ctrl-attrib.mapboxgl-compact":"min-height: 20px; padding: 0; margin: 10px; position: relative; background-color: #fff; border-radius: 3px 12px 12px 3px;","ctrl-bottom-right > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; right: 0","ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; left: 0","ctrl-bottom-left .mapboxgl-ctrl":"margin: 0 0 10px 10px; float: left;","ctrl-bottom-right .mapboxgl-ctrl":"margin: 0 10px 10px 0; float: right;","ctrl-attrib":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a:hover":"color: inherit; text-decoration: underline;","ctrl-attrib .mapbox-improve-map":"font-weight: bold; margin-left: 2px;","attrib-empty":"display: none;","ctrl-logo":`display:block; width: 21px; height: 21px; background-image: url('data:image/svg+xml;charset=utf-8,%3C?xml version="1.0" encoding="utf-8"?%3E %3Csvg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 21 21" style="enable-background:new 0 0 21 21;" xml:space="preserve"%3E%3Cg transform="translate(0,0.01)"%3E%3Cpath d="m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z" style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3Cpath d="M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpath d="M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpolygon points="11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 " style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3C/g%3E%3C/svg%3E')`}}},13056:function(R,E,e){var w=e(71828);R.exports=function(k,i){var _=k.split(" "),y=_[0],h=_[1],l=w.isArrayOrTypedArray(i)?w.mean(i):i,t=.5+l/100,o=1.5+l/100,r=["",""],n=[0,0];switch(y){case"top":r[0]="top",n[1]=-o;break;case"bottom":r[0]="bottom",n[1]=o}switch(h){case"left":r[1]="right",n[0]=-t;break;case"right":r[1]="left",n[0]=t}return{anchor:r[0]&&r[1]?r.join("-"):r[0]?r[0]:r[1]?r[1]:"center",offset:n}}},50101:function(R,E,e){var w=e(44517),k=e(71828),i=k.strTranslate,_=k.strScale,y=e(27659).AU,h=e(77922),l=e(39898),t=e(91424),o=e(63893),r=e(10481),n="mapbox",a=E.constants=e(77734);function s(u){return typeof u=="string"&&(a.styleValuesMapbox.indexOf(u)!==-1||u.indexOf("mapbox://")===0)}E.name=n,E.attr="subplot",E.idRoot=n,E.idRegex=E.attrRegex=k.counterRegex(n),E.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}},E.layoutAttributes=e(23585),E.supplyLayoutDefaults=e(77882),E.plot=function(u){var p=u._fullLayout,c=u.calcdata,b=p._subplots[n];if(w.version!==a.requiredVersion)throw new Error(a.wrongVersionErrorMsg);var g=function(d,M){var A=d._fullLayout;if(d._context.mapboxAccessToken==="")return"";for(var C=[],P=[],O=!1,z=!1,B=0;B<M.length;B++){var Y=A[M[B]],D=Y.accesstoken;s(Y.style)&&(D?k.pushUnique(C,D):(s(Y._input.style)&&(k.error("Uses Mapbox map style, but did not set an access token."),O=!0),z=!0)),D&&k.pushUnique(P,D)}if(z){var G=O?a.noAccessTokenErrorMsg:a.missingStyleErrorMsg;throw k.error(G),new Error(G)}return C.length?(C.length>1&&k.warn(a.multipleTokensErrorMsg),C[0]):(P.length&&k.log(["Listed mapbox access token(s)",P.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}(u,b);w.accessToken=g;for(var f=0;f<b.length;f++){var v=b[f],m=y(c,n,v),x=p[v],T=x._subplot;T||(T=new r(u,v),p[v]._subplot=T),T.viewInitial||(T.viewInitial={center:k.extendFlat({},x.center),zoom:x.zoom,bearing:x.bearing,pitch:x.pitch}),T.plot(m,p,u._promises)}},E.clean=function(u,p,c,b){for(var g=b._subplots[n]||[],f=0;f<g.length;f++){var v=g[f];!p[v]&&b[v]._subplot&&b[v]._subplot.destroy()}},E.toSVG=function(u){for(var p=u._fullLayout,c=p._subplots[n],b=p._size,g=0;g<c.length;g++){var f=p[c[g]],v=f.domain,m=f._subplot.toImage("png");p._glimages.append("svg:image").attr({xmlns:h.svg,"xlink:href":m,x:b.l+b.w*v.x[0],y:b.t+b.h*(1-v.y[1]),width:b.w*(v.x[1]-v.x[0]),height:b.h*(v.y[1]-v.y[0]),preserveAspectRatio:"none"});var x=l.select(f._subplot.div);if(x.select(".mapboxgl-ctrl-logo").node().offsetParent!==null){var T=p._glimages.append("g");T.attr("transform",i(b.l+b.w*v.x[0]+10,b.t+b.h*(1-v.y[0])-31)),T.append("path").attr("d",a.mapboxLogo.path0).style({opacity:.9,fill:"#ffffff","enable-background":"new"}),T.append("path").attr("d",a.mapboxLogo.path1).style("opacity",.35).style("enable-background","new"),T.append("path").attr("d",a.mapboxLogo.path2).style("opacity",.35).style("enable-background","new"),T.append("polygon").attr("points",a.mapboxLogo.polygon).style({opacity:.9,fill:"#ffffff","enable-background":"new"})}var d=x.select(".mapboxgl-ctrl-attrib").text().replace("Improve this map",""),M=p._glimages.append("g"),A=M.append("text");A.text(d).classed("static-attribution",!0).attr({"font-size":12,"font-family":"Arial",color:"rgba(0, 0, 0, 0.75)","text-anchor":"end","data-unformatted":d});var C=t.bBox(A.node()),P=b.w*(v.x[1]-v.x[0]);if(C.width>P/2){var O=d.split("|").join("<br>");A.text(O).attr("data-unformatted",O).call(o.convertToTspans,u),C=t.bBox(A.node())}A.attr("transform",i(-3,8-C.height)),M.insert("rect",".static-attribution").attr({x:-C.width-6,y:-C.height-3,width:C.width+6,height:C.height+3,fill:"rgba(255, 255, 255, 0.75)"});var z=1;C.width+6>P&&(z=P/(C.width+6));var B=[b.l+b.w*v.x[1],b.t+b.h*(1-v.y[0])];M.attr("transform",i(B[0],B[1])+_(z))}},E.updateFx=function(u){for(var p=u._fullLayout,c=p._subplots[n],b=0;b<c.length;b++)p[c[b]]._subplot.updateFx(p)}},67911:function(R,E,e){var w=e(71828),k=e(63893).sanitizeHTML,i=e(13056),_=e(77734);function y(o,r){this.subplot=o,this.uid=o.uid+"-"+r,this.index=r,this.idSource="source-"+this.uid,this.idLayer=_.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var h=y.prototype;function l(o){if(!o.visible)return!1;var r=o.source;if(Array.isArray(r)&&r.length>0){for(var n=0;n<r.length;n++)if(typeof r[n]!="string"||r[n].length===0)return!1;return!0}return w.isPlainObject(r)||typeof r=="string"&&r.length>0}function t(o){var r={},n={};switch(o.type){case"circle":w.extendFlat(n,{"circle-radius":o.circle.radius,"circle-color":o.color,"circle-opacity":o.opacity});break;case"line":w.extendFlat(n,{"line-width":o.line.width,"line-color":o.color,"line-opacity":o.opacity,"line-dasharray":o.line.dash});break;case"fill":w.extendFlat(n,{"fill-color":o.color,"fill-outline-color":o.fill.outlinecolor,"fill-opacity":o.opacity});break;case"symbol":var a=o.symbol,s=i(a.textposition,a.iconsize);w.extendFlat(r,{"icon-image":a.icon+"-15","icon-size":a.iconsize/10,"text-field":a.text,"text-size":a.textfont.size,"text-anchor":s.anchor,"text-offset":s.offset,"symbol-placement":a.placement}),w.extendFlat(n,{"icon-color":o.color,"text-color":a.textfont.color,"text-opacity":o.opacity});break;case"raster":w.extendFlat(n,{"raster-fade-duration":0,"raster-opacity":o.opacity})}return{layout:r,paint:n}}h.update=function(o){this.visible?this.needsNewImage(o)?this.updateImage(o):this.needsNewSource(o)?(this.removeLayer(),this.updateSource(o),this.updateLayer(o)):this.needsNewLayer(o)?this.updateLayer(o):this.updateStyle(o):(this.updateSource(o),this.updateLayer(o)),this.visible=l(o)},h.needsNewImage=function(o){return this.subplot.map.getSource(this.idSource)&&this.sourceType==="image"&&o.sourcetype==="image"&&(this.source!==o.source||JSON.stringify(this.coordinates)!==JSON.stringify(o.coordinates))},h.needsNewSource=function(o){return this.sourceType!==o.sourcetype||JSON.stringify(this.source)!==JSON.stringify(o.source)||this.layerType!==o.type},h.needsNewLayer=function(o){return this.layerType!==o.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},h.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},h.updateImage=function(o){this.subplot.map.getSource(this.idSource).updateImage({url:o.source,coordinates:o.coordinates});var r=this.findFollowingMapboxLayerId(this.lookupBelow());r!==null&&this.subplot.map.moveLayer(this.idLayer,r)},h.updateSource=function(o){var r=this.subplot.map;if(r.getSource(this.idSource)&&r.removeSource(this.idSource),this.sourceType=o.sourcetype,this.source=o.source,l(o)){var n=function(a){var s,u=a.sourcetype,p=a.source,c={type:u};return u==="geojson"?s="data":u==="vector"?s=typeof p=="string"?"url":"tiles":u==="raster"?(s="tiles",c.tileSize=256):u==="image"&&(s="url",c.coordinates=a.coordinates),c[s]=p,a.sourceattribution&&(c.attribution=k(a.sourceattribution)),c}(o);r.addSource(this.idSource,n)}},h.findFollowingMapboxLayerId=function(o){if(o==="traces")for(var r=this.subplot.getMapLayers(),n=0;n<r.length;n++){var a=r[n].id;if(typeof a=="string"&&a.indexOf(_.traceLayerPrefix)===0){o=a;break}}return o},h.updateLayer=function(o){var r=this.subplot,n=t(o),a=this.lookupBelow(),s=this.findFollowingMapboxLayerId(a);this.removeLayer(),l(o)&&r.addLayer({id:this.idLayer,source:this.idSource,"source-layer":o.sourcelayer||"",type:o.type,minzoom:o.minzoom,maxzoom:o.maxzoom,layout:n.layout,paint:n.paint},s),this.layerType=o.type,this.below=a},h.updateStyle=function(o){if(l(o)){var r=t(o);this.subplot.setOptions(this.idLayer,"setLayoutProperty",r.layout),this.subplot.setOptions(this.idLayer,"setPaintProperty",r.paint)}},h.removeLayer=function(){var o=this.subplot.map;o.getLayer(this.idLayer)&&o.removeLayer(this.idLayer)},h.dispose=function(){var o=this.subplot.map;o.getLayer(this.idLayer)&&o.removeLayer(this.idLayer),o.getSource(this.idSource)&&o.removeSource(this.idSource)},R.exports=function(o,r,n){var a=new y(o,r);return a.update(n),a}},23585:function(R,E,e){var w=e(71828),k=e(7901).defaultLine,i=e(27670).Y,_=e(41940),y=e(82196).textposition,h=e(30962).overrideAll,l=e(44467).templatedArray,t=e(77734),o=_({});o.family.dflt="Open Sans Regular, Arial Unicode MS Regular",(R.exports=h({_arrayAttrRegexps:[w.counterRegex("mapbox",".layers",!0)],domain:i({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:t.styleValuesMapbox.concat(t.styleValuesNonMapbox),dflt:t.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:l("layer",{visible:{valType:"boolean",dflt:!0},sourcetype:{valType:"enumerated",values:["geojson","vector","raster","image"],dflt:"geojson"},source:{valType:"any"},sourcelayer:{valType:"string",dflt:""},sourceattribution:{valType:"string"},type:{valType:"enumerated",values:["circle","line","fill","symbol","raster"],dflt:"circle"},coordinates:{valType:"any"},below:{valType:"string"},color:{valType:"color",dflt:k},opacity:{valType:"number",min:0,max:1,dflt:1},minzoom:{valType:"number",min:0,max:24,dflt:0},maxzoom:{valType:"number",min:0,max:24,dflt:24},circle:{radius:{valType:"number",dflt:15}},line:{width:{valType:"number",dflt:2},dash:{valType:"data_array"}},fill:{outlinecolor:{valType:"color",dflt:k}},symbol:{icon:{valType:"string",dflt:"marker"},iconsize:{valType:"number",dflt:10},text:{valType:"string",dflt:""},placement:{valType:"enumerated",values:["point","line","line-center"],dflt:"point"},textfont:o,textposition:w.extendFlat({},y,{arrayOk:!1})}})},"plot","from-root")).uirevision={valType:"any",editType:"none"}},77882:function(R,E,e){var w=e(71828),k=e(49119),i=e(85501),_=e(23585);function y(l,t,o,r){o("accesstoken",r.accessToken),o("style"),o("center.lon"),o("center.lat"),o("zoom"),o("bearing"),o("pitch");var n=o("bounds.west"),a=o("bounds.east"),s=o("bounds.south"),u=o("bounds.north");n!==void 0&&a!==void 0&&s!==void 0&&u!==void 0||delete t.bounds,i(l,t,{name:"layers",handleItemDefaults:h}),t._input=l}function h(l,t){function o(u,p){return w.coerce(l,t,_.layers,u,p)}if(o("visible")){var r,n=o("sourcetype"),a=n==="raster"||n==="image";o("source"),o("sourceattribution"),n==="vector"&&o("sourcelayer"),n==="image"&&o("coordinates"),a&&(r="raster");var s=o("type",r);a&&s!=="raster"&&(s=t.type="raster",w.log("Source types *raster* and *image* must drawn *raster* layer type.")),o("below"),o("color"),o("opacity"),o("minzoom"),o("maxzoom"),s==="circle"&&o("circle.radius"),s==="line"&&(o("line.width"),o("line.dash")),s==="fill"&&o("fill.outlinecolor"),s==="symbol"&&(o("symbol.icon"),o("symbol.iconsize"),o("symbol.text"),w.coerceFont(o,"symbol.textfont"),o("symbol.textposition"),o("symbol.placement"))}}R.exports=function(l,t,o){k(l,t,o,{type:"mapbox",attributes:_,handleDefaults:y,partition:"y",accessToken:t._mapboxAccessToken})}},10481:function(R,E,e){var w=e(44517),k=e(71828),i=e(41327),_=e(73972),y=e(89298),h=e(28569),l=e(30211),t=e(64505),o=t.drawMode,r=t.selectMode,n=e(47322).prepSelect,a=e(47322).clearOutline,s=e(47322).clearSelectionsCache,u=e(47322).selectOnClick,p=e(77734),c=e(67911);function b(T,d){this.id=d,this.gd=T;var M=T._fullLayout,A=T._context;this.container=M._glcontainer.node(),this.isStatic=A.staticPlot,this.uid=M._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(M),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var g=b.prototype;g.plot=function(T,d,M){var A,C=this,P=d[C.id];C.map&&P.accesstoken!==C.accessToken&&(C.map.remove(),C.map=null,C.styleObj=null,C.traceHash={},C.layerList=[]),A=C.map?new Promise(function(O,z){C.updateMap(T,d,O,z)}):new Promise(function(O,z){C.createMap(T,d,O,z)}),M.push(A)},g.createMap=function(T,d,M,A){var C=this,P=d[C.id],O=C.styleObj=v(P.style);C.accessToken=P.accesstoken;var z=P.bounds,B=z?[[z.west,z.south],[z.east,z.north]]:null,Y=C.map=new w.Map({container:C.div,style:O.style,center:x(P.center),zoom:P.zoom,bearing:P.bearing,pitch:P.pitch,maxBounds:B,interactive:!C.isStatic,preserveDrawingBuffer:C.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new w.AttributionControl({compact:!0}));Y._canvas.style.left="0px",Y._canvas.style.top="0px",C.rejectOnError(A),C.isStatic||C.initFx(T,d);var D=[];D.push(new Promise(function(G){Y.once("load",G)})),D=D.concat(i.fetchTraceGeoData(T)),Promise.all(D).then(function(){C.fillBelowLookup(T,d),C.updateData(T),C.updateLayout(d),C.resolveOnRender(M)}).catch(A)},g.updateMap=function(T,d,M,A){var C=this,P=C.map,O=d[this.id];C.rejectOnError(A);var z=[],B=v(O.style);JSON.stringify(C.styleObj)!==JSON.stringify(B)&&(C.styleObj=B,P.setStyle(B.style),C.traceHash={},z.push(new Promise(function(Y){P.once("styledata",Y)}))),z=z.concat(i.fetchTraceGeoData(T)),Promise.all(z).then(function(){C.fillBelowLookup(T,d),C.updateData(T),C.updateLayout(d),C.resolveOnRender(M)}).catch(A)},g.fillBelowLookup=function(T,d){var M,A,C=d[this.id].layers,P=this.belowLookup={},O=!1;for(M=0;M<T.length;M++){var z=T[M][0].trace,B=z._module;typeof z.below=="string"?A=z.below:B.getBelow&&(A=B.getBelow(z,this)),A===""&&(O=!0),P["trace-"+z.uid]=A||""}for(M=0;M<C.length;M++){var Y=C[M];A=typeof Y.below=="string"?Y.below:O?"traces":"",P["layout-"+M]=A}var D,G,V={};for(D in P)V[A=P[D]]?V[A].push(D):V[A]=[D];for(A in V){var j=V[A];if(j.length>1)for(M=0;M<j.length;M++)(D=j[M]).indexOf("trace-")===0?(G=D.split("trace-")[1],this.traceHash[G]&&(this.traceHash[G].below=null)):D.indexOf("layout-")===0&&(G=D.split("layout-")[1],this.layerList[G]&&(this.layerList[G].below=null))}};var f={choroplethmapbox:0,densitymapbox:1,scattermapbox:2};function v(T){var d={};return k.isPlainObject(T)?(d.id=T.id,d.style=T):typeof T=="string"?(d.id=T,p.styleValuesMapbox.indexOf(T)!==-1?d.style=m(T):p.stylesNonMapbox[T]?d.style=p.stylesNonMapbox[T]:d.style=T):(d.id=p.styleValueDflt,d.style=m(p.styleValueDflt)),d.transition={duration:0,delay:0},d}function m(T){return p.styleUrlPrefix+T+"-"+p.styleUrlSuffix}function x(T){return[T.lon,T.lat]}g.updateData=function(T){var d,M,A,C,P=this.traceHash,O=T.slice().sort(function(G,V){return f[G[0].trace.type]-f[V[0].trace.type]});for(A=0;A<O.length;A++){var z=O[A],B=!1;(d=P[(M=z[0].trace).uid])&&(d.type===M.type?(d.update(z),B=!0):d.dispose()),!B&&M._module&&(P[M.uid]=M._module.plot(this,z))}var Y=Object.keys(P);e:for(A=0;A<Y.length;A++){var D=Y[A];for(C=0;C<T.length;C++)if(D===(M=T[C][0].trace).uid)continue e;(d=P[D]).dispose(),delete P[D]}},g.updateLayout=function(T){var d=this.map,M=T[this.id];this.dragging||this.wheeling||(d.setCenter(x(M.center)),d.setZoom(M.zoom),d.setBearing(M.bearing),d.setPitch(M.pitch)),this.updateLayers(T),this.updateFramework(T),this.updateFx(T),this.map.resize(),this.gd._context._scrollZoom.mapbox?d.scrollZoom.enable():d.scrollZoom.disable()},g.resolveOnRender=function(T){var d=this.map;d.on("render",function M(){d.loaded()&&(d.off("render",M),setTimeout(T,10))})},g.rejectOnError=function(T){var d=this.map;function M(){T(new Error(p.mapOnErrorMsg))}d.once("error",M),d.once("style.error",M),d.once("source.error",M),d.once("tile.error",M),d.once("layer.error",M)},g.createFramework=function(T){var d=this,M=d.div=document.createElement("div");M.id=d.uid,M.style.position="absolute",d.container.appendChild(M),d.xaxis={_id:"x",c2p:function(A){return d.project(A).x}},d.yaxis={_id:"y",c2p:function(A){return d.project(A).y}},d.updateFramework(T),d.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},y.setConvert(d.mockAxis,T)},g.initFx=function(T,d){var M=this,A=M.gd,C=M.map;function P(){l.loneUnhover(d._hoverlayer)}function O(){var z=M.getView();A.emit("plotly_relayouting",M.getViewEditsWithDerived(z))}C.on("moveend",function(z){if(M.map){var B=A._fullLayout;if(z.originalEvent||M.wheeling){var Y=B[M.id];_.call("_storeDirectGUIEdit",A.layout,B._preGUI,M.getViewEdits(Y));var D=M.getView();Y._input.center=Y.center=D.center,Y._input.zoom=Y.zoom=D.zoom,Y._input.bearing=Y.bearing=D.bearing,Y._input.pitch=Y.pitch=D.pitch,A.emit("plotly_relayout",M.getViewEditsWithDerived(D))}z.originalEvent&&z.originalEvent.type==="mouseup"?M.dragging=!1:M.wheeling&&(M.wheeling=!1),B._rehover&&B._rehover()}}),C.on("wheel",function(){M.wheeling=!0}),C.on("mousemove",function(z){var B=M.div.getBoundingClientRect(),Y=[z.originalEvent.offsetX,z.originalEvent.offsetY];z.target.getBoundingClientRect=function(){return B},M.xaxis.p2c=function(){return C.unproject(Y).lng},M.yaxis.p2c=function(){return C.unproject(Y).lat},A._fullLayout._rehover=function(){A._fullLayout._hoversubplot===M.id&&A._fullLayout[M.id]&&l.hover(A,z,M.id)},l.hover(A,z,M.id),A._fullLayout._hoversubplot=M.id}),C.on("dragstart",function(){M.dragging=!0,P()}),C.on("zoomstart",P),C.on("mouseout",function(){A._fullLayout._hoversubplot=null}),C.on("drag",O),C.on("zoom",O),C.on("dblclick",function(){var z=A._fullLayout[M.id];_.call("_storeDirectGUIEdit",A.layout,A._fullLayout._preGUI,M.getViewEdits(z));var B=M.viewInitial;C.setCenter(x(B.center)),C.setZoom(B.zoom),C.setBearing(B.bearing),C.setPitch(B.pitch);var Y=M.getView();z._input.center=z.center=Y.center,z._input.zoom=z.zoom=Y.zoom,z._input.bearing=z.bearing=Y.bearing,z._input.pitch=z.pitch=Y.pitch,A.emit("plotly_doubleclick",null),A.emit("plotly_relayout",M.getViewEditsWithDerived(Y))}),M.clearOutline=function(){s(M.dragOptions),a(M.dragOptions.gd)},M.onClickInPanFn=function(z){return function(B){var Y=A._fullLayout.clickmode;Y.indexOf("select")>-1&&u(B.originalEvent,A,[M.xaxis],[M.yaxis],M.id,z),Y.indexOf("event")>-1&&l.click(A,B.originalEvent)}}},g.updateFx=function(T){var d=this,M=d.map,A=d.gd;if(!d.isStatic){var C,P=T.dragmode;C=function(B,Y){Y.isRect?(B.range={})[d.id]=[z([Y.xmin,Y.ymin]),z([Y.xmax,Y.ymax])]:(B.lassoPoints={})[d.id]=Y.map(z)};var O=d.dragOptions;d.dragOptions=k.extendDeep(O||{},{dragmode:T.dragmode,element:d.div,gd:A,plotinfo:{id:d.id,domain:T[d.id].domain,xaxis:d.xaxis,yaxis:d.yaxis,fillRangeItems:C},xaxes:[d.xaxis],yaxes:[d.yaxis],subplot:d.id}),M.off("click",d.onClickInPanHandler),r(P)||o(P)?(M.dragPan.disable(),M.on("zoomstart",d.clearOutline),d.dragOptions.prepFn=function(B,Y,D){n(B,Y,D,d.dragOptions,P)},h.init(d.dragOptions)):(M.dragPan.enable(),M.off("zoomstart",d.clearOutline),d.div.onmousedown=null,d.div.ontouchstart=null,d.div.removeEventListener("touchstart",d.div._ontouchstart),d.onClickInPanHandler=d.onClickInPanFn(d.dragOptions),M.on("click",d.onClickInPanHandler))}function z(B){var Y=d.map.unproject(B);return[Y.lng,Y.lat]}},g.updateFramework=function(T){var d=T[this.id].domain,M=T._size,A=this.div.style;A.width=M.w*(d.x[1]-d.x[0])+"px",A.height=M.h*(d.y[1]-d.y[0])+"px",A.left=M.l+d.x[0]*M.w+"px",A.top=M.t+(1-d.y[1])*M.h+"px",this.xaxis._offset=M.l+d.x[0]*M.w,this.xaxis._length=M.w*(d.x[1]-d.x[0]),this.yaxis._offset=M.t+(1-d.y[1])*M.h,this.yaxis._length=M.h*(d.y[1]-d.y[0])},g.updateLayers=function(T){var d,M=T[this.id].layers,A=this.layerList;if(M.length!==A.length){for(d=0;d<A.length;d++)A[d].dispose();for(A=this.layerList=[],d=0;d<M.length;d++)A.push(c(this,d,M[d]))}else for(d=0;d<M.length;d++)A[d].update(M[d])},g.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))},g.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()},g.setOptions=function(T,d,M){for(var A in M)this.map[d](T,A,M[A])},g.getMapLayers=function(){return this.map.getStyle().layers},g.addLayer=function(T,d){var M=this.map;if(typeof d=="string"){if(d==="")return void M.addLayer(T,d);for(var A=this.getMapLayers(),C=0;C<A.length;C++)if(d===A[C].id)return void M.addLayer(T,d);k.warn(["Trying to add layer with *below* value",d,"referencing a layer that does not exist","or that does not yet exist."].join(" "))}M.addLayer(T)},g.project=function(T){return this.map.project(new w.LngLat(T[0],T[1]))},g.getView=function(){var T=this.map,d=T.getCenter(),M={lon:d.lng,lat:d.lat},A=T.getCanvas(),C=parseInt(A.style.width),P=parseInt(A.style.height);return{center:M,zoom:T.getZoom(),bearing:T.getBearing(),pitch:T.getPitch(),_derived:{coordinates:[T.unproject([0,0]).toArray(),T.unproject([C,0]).toArray(),T.unproject([C,P]).toArray(),T.unproject([0,P]).toArray()]}}},g.getViewEdits=function(T){for(var d=this.id,M=["center","zoom","bearing","pitch"],A={},C=0;C<M.length;C++){var P=M[C];A[d+"."+P]=T[P]}return A},g.getViewEditsWithDerived=function(T){var d=this.id,M=this.getViewEdits(T);return M[d+"._derived"]=T._derived,M},R.exports=b},35025:function(R){R.exports=function(E){var e=E.editType;return{t:{valType:"number",dflt:0,editType:e},r:{valType:"number",dflt:0,editType:e},b:{valType:"number",dflt:0,editType:e},l:{valType:"number",dflt:0,editType:e},editType:e}}},74875:function(R,E,e){var w=e(39898),k=e(84096).Dq,i=e(60721).FF,_=e(92770),y=e(73972),h=e(86281),l=e(44467),t=e(71828),o=e(7901),r=e(50606).BADNUM,n=e(41675),a=e(51873).clearOutline,s=e(21479),u=e(85594),p=e(31391),c=e(27659).a0,b=t.relinkPrivateKeys,g=t._,f=R.exports={};t.extendFlat(f,y),f.attributes=e(9012),f.attributes.type.values=f.allTypes,f.fontAttrs=e(41940),f.layoutAttributes=e(10820),f.fontWeight="normal";var v=f.transformsRegistry,m=e(31137);f.executeAPICommand=m.executeAPICommand,f.computeAPICommandBindings=m.computeAPICommandBindings,f.manageCommandObserver=m.manageCommandObserver,f.hasSimpleAPICommandBindings=m.hasSimpleAPICommandBindings,f.redrawText=function(V){return V=t.getGraphDiv(V),new Promise(function(j){setTimeout(function(){V._fullLayout&&(y.getComponentMethod("annotations","draw")(V),y.getComponentMethod("legend","draw")(V),y.getComponentMethod("colorbar","draw")(V),j(f.previousPromises(V)))},300)})},f.resize=function(V){var j;V=t.getGraphDiv(V);var W=new Promise(function(Z,ie){V&&!t.isHidden(V)||ie(new Error("Resize must be passed a displayed plot div element.")),V._redrawTimer&&clearTimeout(V._redrawTimer),V._resolveResize&&(j=V._resolveResize),V._resolveResize=Z,V._redrawTimer=setTimeout(function(){if(!V.layout||V.layout.width&&V.layout.height||t.isHidden(V))Z(V);else{delete V.layout.width,delete V.layout.height;var te=V.changed;V.autoplay=!0,y.call("relayout",V,{autosize:!0}).then(function(){V.changed=te,V._resolveResize===Z&&(delete V._resolveResize,Z(V))})}},100)});return j&&j(W),W},f.previousPromises=function(V){if((V._promises||[]).length)return Promise.all(V._promises).then(function(){V._promises=[]})},f.addLinks=function(V){if(V._context.showLink||V._context.showSources){var j=V._fullLayout,W=t.ensureSingle(j._paper,"text","js-plot-link-container",function(ee){ee.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:o.defaultLine,"pointer-events":"all"}).each(function(){var re=w.select(this);re.append("tspan").classed("js-link-to-tool",!0),re.append("tspan").classed("js-link-spacer",!0),re.append("tspan").classed("js-sourcelinks",!0)})}),Z=W.node(),ie={y:j._paper.attr("height")-9};document.body.contains(Z)&&Z.getComputedTextLength()>=j.width-20?(ie["text-anchor"]="start",ie.x=5):(ie["text-anchor"]="end",ie.x=j._paper.attr("width")-7),W.attr(ie);var te=W.select(".js-link-to-tool"),J=W.select(".js-link-spacer"),X=W.select(".js-sourcelinks");V._context.showSources&&V._context.showSources(V),V._context.showLink&&function(ee,re){re.text("");var oe=re.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(ee._context.linkText+" "+String.fromCharCode(187));if(ee._context.sendData)oe.on("click",function(){f.sendDataToCloud(ee)});else{var ue=window.location.pathname.split("/"),ce=window.location.search;oe.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+ue[2].split(".")[0]+"/"+ue[1]+ce})}}(V,te),J.text(te.text()&&X.text()?" - ":"")}},f.sendDataToCloud=function(V){var j=(window.PLOTLYENV||{}).BASE_URL||V._context.plotlyServerURL;if(j){V.emit("plotly_beforeexport");var W=w.select(V).append("div").attr("id","hiddenform").style("display","none"),Z=W.append("form").attr({action:j+"/external",method:"post",target:"_blank"});return Z.append("input").attr({type:"text",name:"data"}).node().value=f.graphJson(V,!1,"keepdata"),Z.node().submit(),W.remove(),V.emit("plotly_afterexport"),!1}};var x=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],T=["year","month","dayMonth","dayMonthYear"];function d(V,j){var W=V._context.locale;W||(W="en-US");var Z=!1,ie={};function te(ue){for(var ce=!0,de=0;de<j.length;de++){var me=j[de];ie[me]||(ue[me]?ie[me]=ue[me]:ce=!1)}ce&&(Z=!0)}for(var J=0;J<2;J++){for(var X=V._context.locales,ee=0;ee<2;ee++){var re=(X[W]||{}).format;if(re&&(te(re),Z))break;X=y.localeRegistry}var oe=W.split("-")[0];if(Z||oe===W)break;W=oe}return Z||te(y.localeRegistry.en.format),ie}function M(V,j){var W={_fullLayout:j},Z=V._id.charAt(0)==="x",ie=V._mainAxis._anchorAxis,te="",J="",X="";if(ie&&(X=ie._mainAxis._id,te=Z?V._id+X:X+V._id),!te||!j._plots[te]){te="";for(var ee=V._counterAxes,re=0;re<ee.length;re++){var oe=ee[re],ue=Z?V._id+oe:oe+V._id;J||(J=ue);var ce=n.getFromId(W,oe);if(X&&ce.overlaying===X){te=ue;break}}}return te||J}function A(V){var j=V.transforms;if(Array.isArray(j)&&j.length)for(var W=0;W<j.length;W++){var Z=j[W],ie=Z._module||v[Z.type];if(ie&&ie.makesData)return!0}return!1}function C(V,j,W,Z){for(var ie=V.transforms,te=[V],J=0;J<ie.length;J++){var X=ie[J],ee=v[X.type];ee&&ee.transform&&(te=ee.transform(te,{transform:X,fullTrace:V,fullData:j,layout:W,fullLayout:Z,transformIndex:J}))}return te}function P(V){return typeof V=="string"&&V.substr(V.length-2)==="px"&&parseFloat(V)}function O(V){var j=V.margin;if(!V._size){var W=V._size={l:Math.round(j.l),r:Math.round(j.r),t:Math.round(j.t),b:Math.round(j.b),p:Math.round(j.pad)};W.w=Math.round(V.width)-W.l-W.r,W.h=Math.round(V.height)-W.t-W.b}V._pushmargin||(V._pushmargin={}),V._pushmarginIds||(V._pushmarginIds={}),V._reservedMargin||(V._reservedMargin={})}f.supplyDefaults=function(V,j){var W=j&&j.skipUpdateCalc,Z=V._fullLayout||{};if(Z._skipDefaults)delete Z._skipDefaults;else{var ie,te=V._fullLayout={},J=V.layout||{},X=V._fullData||[],ee=V._fullData=[],re=V.data||[],oe=V.calcdata||[],ue=V._context||{};V._transitionData||f.createTransitionData(V),te._dfltTitle={plot:g(V,"Click to enter Plot title"),x:g(V,"Click to enter X axis title"),y:g(V,"Click to enter Y axis title"),colorbar:g(V,"Click to enter Colorscale title"),annotation:g(V,"new text")},te._traceWord=g(V,"trace");var ce=d(V,x);if(te._mapboxAccessToken=ue.mapboxAccessToken,Z._initialAutoSizeIsDone){var de=Z.width,me=Z.height;f.supplyLayoutGlobalDefaults(J,te,ce),J.width||(te.width=de),J.height||(te.height=me),f.sanitizeMargins(te)}else{f.supplyLayoutGlobalDefaults(J,te,ce);var _e=!J.width||!J.height,Se=te.autosize,we=ue.autosizable;_e&&(Se||we)?f.plotAutoSize(V,J,te):_e&&f.sanitizeMargins(te),!Se&&_e&&(J.width=te.width,J.height=te.height)}te._d3locale=function(Ue,Ve){return Ue.decimal=Ve.charAt(0),Ue.thousands=Ve.charAt(1),{numberFormat:function(Ye){try{Ye=i(Ue).format(t.adjustFormat(Ye))}catch{return t.warnBadFormat(Ye),t.noFormat}return Ye},timeFormat:k(Ue).utcFormat}}(ce,te.separators),te._extraFormat=d(V,T),te._initialAutoSizeIsDone=!0,te._dataLength=re.length,te._modules=[],te._visibleModules=[],te._basePlotModules=[];var xe=te._subplots=function(){var Ue,Ve,Ye=y.collectableSubplotTypes,$e={};if(!Ye){Ye=[];var rt=y.subplotsRegistry;for(var ht in rt){var nt=rt[ht].attr;if(nt&&(Ye.push(ht),Array.isArray(nt)))for(Ve=0;Ve<nt.length;Ve++)t.pushUnique(Ye,nt[Ve])}}for(Ue=0;Ue<Ye.length;Ue++)$e[Ye[Ue]]=[];return $e}(),De=te._splomAxes={x:{},y:{}},Ee=te._splomSubplots={};te._splomGridDflt={},te._scatterStackOpts={},te._firstScatter={},te._alignmentOpts={},te._colorAxes={},te._requestRangeslider={},te._traceUids=function(Ue,Ve){var Ye,$e,rt=Ve.length,ht=[];for(Ye=0;Ye<Ue.length;Ye++){var nt=Ue[Ye]._fullInput;nt!==$e&&ht.push(nt),$e=nt}var bt=ht.length,wt=new Array(rt),ut={};function lt(St,Ft){wt[Ft]=St,ut[St]=1}function Tt(St,Ft){if(St&&typeof St=="string"&&!ut[St])return lt(St,Ft),!0}for(Ye=0;Ye<rt;Ye++){var Et=Ve[Ye].uid;typeof Et=="number"&&(Et=String(Et)),Tt(Et,Ye)||Ye<bt&&Tt(ht[Ye].uid,Ye)||lt(t.randstr(ut),Ye)}return wt}(X,re),te._globalTransforms=(V._context||{}).globalTransforms,f.supplyDataDefaults(re,ee,J,te);var Me=Object.keys(De.x),he=Object.keys(De.y);if(Me.length>1&&he.length>1){for(y.getComponentMethod("grid","sizeDefaults")(J,te),ie=0;ie<Me.length;ie++)t.pushUnique(xe.xaxis,Me[ie]);for(ie=0;ie<he.length;ie++)t.pushUnique(xe.yaxis,he[ie]);for(var fe in Ee)t.pushUnique(xe.cartesian,fe)}if(te._has=f._hasPlotType.bind(te),X.length===ee.length)for(ie=0;ie<ee.length;ie++)b(ee[ie],X[ie]);f.supplyLayoutModuleDefaults(J,te,ee,V._transitionData);var ae=te._visibleModules,be=[];for(ie=0;ie<ae.length;ie++){var Ie=ae[ie].crossTraceDefaults;Ie&&t.pushUnique(be,Ie)}for(ie=0;ie<be.length;ie++)be[ie](ee,te);te._hasOnlyLargeSploms=te._basePlotModules.length===1&&te._basePlotModules[0].name==="splom"&&Me.length>15&&he.length>15&&te.shapes.length===0&&te.images.length===0,f.linkSubplots(ee,te,X,Z),f.cleanPlot(ee,te,X,Z);var Te=!(!Z._has||!Z._has("gl2d")),Ne=!(!te._has||!te._has("gl2d")),qe=!(!Z._has||!Z._has("cartesian"))||Te,ve=!(!te._has||!te._has("cartesian"))||Ne;qe&&!ve?Z._bgLayer.remove():ve&&!qe&&(te._shouldCreateBgLayer=!0),Z._zoomlayer&&!V._dragging&&a({_fullLayout:Z}),function(Ue,Ve){var Ye,$e=[];Ve.meta&&(Ye=Ve._meta={meta:Ve.meta,layout:{meta:Ve.meta}});for(var rt=0;rt<Ue.length;rt++){var ht=Ue[rt];ht.meta?$e[ht.index]=ht._meta={meta:ht.meta}:Ve.meta&&(ht._meta={meta:Ve.meta}),Ve.meta&&(ht._meta.layout={meta:Ve.meta})}$e.length&&(Ye||(Ye=Ve._meta={}),Ye.data=$e)}(ee,te),b(te,Z),y.getComponentMethod("colorscale","crossTraceDefaults")(ee,te),te._preGUI||(te._preGUI={}),te._tracePreGUI||(te._tracePreGUI={});var Ce,Ae=te._tracePreGUI,ze={};for(Ce in Ae)ze[Ce]="old";for(ie=0;ie<ee.length;ie++)ze[Ce=ee[ie]._fullInput.uid]||(Ae[Ce]={}),ze[Ce]="new";for(Ce in ze)ze[Ce]==="old"&&delete Ae[Ce];O(te),y.getComponentMethod("rangeslider","makeData")(te),W||oe.length!==ee.length||f.supplyDefaultsUpdateCalc(oe,ee)}},f.supplyDefaultsUpdateCalc=function(V,j){for(var W=0;W<j.length;W++){var Z=j[W],ie=(V[W]||[])[0];if(ie&&ie.trace){var te=ie.trace;if(te._hasCalcTransform){var J,X,ee,re=te._arrayAttrs;for(J=0;J<re.length;J++)X=re[J],ee=t.nestedProperty(te,X).get().slice(),t.nestedProperty(Z,X).set(ee)}ie.trace=Z}}},f.createTransitionData=function(V){V._transitionData||(V._transitionData={}),V._transitionData._frames||(V._transitionData._frames=[]),V._transitionData._frameHash||(V._transitionData._frameHash={}),V._transitionData._counter||(V._transitionData._counter=0),V._transitionData._interruptCallbacks||(V._transitionData._interruptCallbacks=[])},f._hasPlotType=function(V){var j,W=this._basePlotModules||[];for(j=0;j<W.length;j++)if(W[j].name===V)return!0;var Z=this._modules||[];for(j=0;j<Z.length;j++){var ie=Z[j].name;if(ie===V)return!0;var te=y.modules[ie];if(te&&te.categories[V])return!0}return!1},f.cleanPlot=function(V,j,W,Z){var ie,te,J=Z._basePlotModules||[];for(ie=0;ie<J.length;ie++){var X=J[ie];X.clean&&X.clean(V,j,W,Z)}var ee=Z._has&&Z._has("gl"),re=j._has&&j._has("gl");ee&&!re&&Z._glcontainer!==void 0&&(Z._glcontainer.selectAll(".gl-canvas").remove(),Z._glcontainer.selectAll(".no-webgl").remove(),Z._glcanvas=null);var oe=!!Z._infolayer;e:for(ie=0;ie<W.length;ie++){var ue=W[ie].uid;for(te=0;te<V.length;te++)if(ue===V[te].uid)continue e;oe&&Z._infolayer.select(".cb"+ue).remove()}},f.linkSubplots=function(V,j,W,Z){var ie,te,J=Z._plots||{},X=j._plots={},ee=j._subplots,re={_fullData:V,_fullLayout:j},oe=ee.cartesian.concat(ee.gl2d||[]);for(ie=0;ie<oe.length;ie++){var ue,ce=oe[ie],de=J[ce],me=n.getFromId(re,ce,"x"),_e=n.getFromId(re,ce,"y");for(de?ue=X[ce]=de:(ue=X[ce]={}).id=ce,me._counterAxes.push(_e._id),_e._counterAxes.push(me._id),me._subplotsWith.push(ce),_e._subplotsWith.push(ce),ue.xaxis=me,ue.yaxis=_e,ue._hasClipOnAxisFalse=!1,te=0;te<V.length;te++){var Se=V[te];if(Se.xaxis===ue.xaxis._id&&Se.yaxis===ue.yaxis._id&&Se.cliponaxis===!1){ue._hasClipOnAxisFalse=!0;break}}}var we,xe=n.list(re,null,!0);for(ie=0;ie<xe.length;ie++){var De=null;(we=xe[ie]).overlaying&&(De=n.getFromId(re,we.overlaying))&&De.overlaying&&(we.overlaying=!1,De=null),we._mainAxis=De||we,De&&(we.domain=De.domain.slice()),we._anchorAxis=we.anchor==="free"?null:n.getFromId(re,we.anchor)}for(ie=0;ie<xe.length;ie++)if((we=xe[ie])._counterAxes.sort(n.idSort),we._subplotsWith.sort(t.subplotSort),we._mainSubplot=M(we,j),we._counterAxes.length&&(we.spikemode&&we.spikemode.indexOf("across")!==-1||we.automargin&&we.mirror&&we.anchor!=="free"||y.getComponentMethod("rangeslider","isVisible")(we))){var Ee=1,Me=0;for(te=0;te<we._counterAxes.length;te++){var he=n.getFromId(re,we._counterAxes[te]);Ee=Math.min(Ee,he.domain[0]),Me=Math.max(Me,he.domain[1])}Ee<Me&&(we._counterDomainMin=Ee,we._counterDomainMax=Me)}},f.clearExpandedTraceDefaultColors=function(V){var j,W,Z;for(W=[],(j=V._module._colorAttrs)||(V._module._colorAttrs=j=[],h.crawl(V._module.attributes,function(ie,te,J,X){W[X]=te,W.length=X+1,ie.valType==="color"&&ie.dflt===void 0&&j.push(W.join("."))})),Z=0;Z<j.length;Z++)t.nestedProperty(V,"_input."+j[Z]).get()||t.nestedProperty(V,j[Z]).set(null)},f.supplyDataDefaults=function(V,j,W,Z){var ie,te,J,X=Z._modules,ee=Z._visibleModules,re=Z._basePlotModules,oe=0,ue=0;function ce(fe){j.push(fe);var ae=fe._module;ae&&(t.pushUnique(X,ae),fe.visible===!0&&t.pushUnique(ee,ae),t.pushUnique(re,fe._module.basePlotModule),oe++,fe._input.visible!==!1&&ue++)}Z._transformModules=[];var de={},me=[],_e=(W.template||{}).data||{},Se=l.traceTemplater(_e);for(ie=0;ie<V.length;ie++){if(J=V[ie],(te=Se.newTrace(J)).uid=Z._traceUids[ie],f.supplyTraceDefaults(J,te,ue,Z,ie),te.index=ie,te._input=J,te._expandedIndex=oe,te.transforms&&te.transforms.length)for(var we=J.visible!==!1&&te.visible===!1,xe=C(te,j,W,Z),De=0;De<xe.length;De++){var Ee=xe[De],Me={_template:te._template,type:te.type,uid:te.uid+De};we&&Ee.visible===!1&&delete Ee.visible,f.supplyTraceDefaults(Ee,Me,oe,Z,ie),b(Me,Ee),Me.index=ie,Me._input=J,Me._fullInput=te,Me._expandedIndex=oe,Me._expandedInput=Ee,ce(Me)}else te._fullInput=te,te._expandedInput=te,ce(te);y.traceIs(te,"carpetAxis")&&(de[te.carpet]=te),y.traceIs(te,"carpetDependent")&&me.push(ie)}for(ie=0;ie<me.length;ie++)if((te=j[me[ie]]).visible){var he=de[te.carpet];te._carpet=he,he&&he.visible?(te.xaxis=he.xaxis,te.yaxis=he.yaxis):te.visible=!1}},f.supplyAnimationDefaults=function(V){var j;V=V||{};var W={};function Z(ie,te){return t.coerce(V||{},W,u,ie,te)}if(Z("mode"),Z("direction"),Z("fromcurrent"),Array.isArray(V.frame))for(W.frame=[],j=0;j<V.frame.length;j++)W.frame[j]=f.supplyAnimationFrameDefaults(V.frame[j]||{});else W.frame=f.supplyAnimationFrameDefaults(V.frame||{});if(Array.isArray(V.transition))for(W.transition=[],j=0;j<V.transition.length;j++)W.transition[j]=f.supplyAnimationTransitionDefaults(V.transition[j]||{});else W.transition=f.supplyAnimationTransitionDefaults(V.transition||{});return W},f.supplyAnimationFrameDefaults=function(V){var j={};function W(Z,ie){return t.coerce(V||{},j,u.frame,Z,ie)}return W("duration"),W("redraw"),j},f.supplyAnimationTransitionDefaults=function(V){var j={};function W(Z,ie){return t.coerce(V||{},j,u.transition,Z,ie)}return W("duration"),W("easing"),j},f.supplyFrameDefaults=function(V){var j={};function W(Z,ie){return t.coerce(V,j,p,Z,ie)}return W("group"),W("name"),W("traces"),W("baseframe"),W("data"),W("layout"),j},f.supplyTraceDefaults=function(V,j,W,Z,ie){var te,J=Z.colorway||o.defaults,X=J[W%J.length];function ee(xe,De){return t.coerce(V,j,f.attributes,xe,De)}var re=ee("visible");ee("type"),ee("name",Z._traceWord+" "+ie),ee("uirevision",Z.uirevision);var oe=f.getModule(j);if(j._module=oe,oe){var ue=oe.basePlotModule,ce=ue.attr,de=ue.attributes;if(ce&&de){var me=Z._subplots,_e="";if(re||ue.name!=="gl2d"){if(Array.isArray(ce))for(te=0;te<ce.length;te++){var Se=ce[te],we=t.coerce(V,j,de,Se);me[Se]&&t.pushUnique(me[Se],we),_e+=we}else _e=t.coerce(V,j,de,ce);me[ue.name]&&t.pushUnique(me[ue.name],_e)}}}return re&&(ee("customdata"),ee("ids"),ee("meta"),y.traceIs(j,"showLegend")?(t.coerce(V,j,oe.attributes.showlegend?oe.attributes:f.attributes,"showlegend"),ee("legend"),ee("legendwidth"),ee("legendgroup"),ee("legendgrouptitle.text"),ee("legendrank"),j._dfltShowLegend=!0):j._dfltShowLegend=!1,oe&&oe.supplyDefaults(V,j,X,Z),y.traceIs(j,"noOpacity")||ee("opacity"),y.traceIs(j,"notLegendIsolatable")&&(j.visible=!!j.visible),y.traceIs(j,"noHover")||(j.hovertemplate||t.coerceHoverinfo(V,j,Z),j.type!=="parcats"&&y.getComponentMethod("fx","supplyDefaults")(V,j,X,Z)),oe&&oe.selectPoints&&ee("selectedpoints"),f.supplyTransformDefaults(V,j,Z)),j},f.hasMakesDataTransform=A,f.supplyTransformDefaults=function(V,j,W){if(j._length||A(V)){var Z=W._globalTransforms||[],ie=W._transformModules||[];if(Array.isArray(V.transforms)||Z.length!==0)for(var te=V.transforms||[],J=Z.concat(te),X=j.transforms=[],ee=0;ee<J.length;ee++){var re,oe=J[ee],ue=oe.type,ce=v[ue],de=!(oe._module&&oe._module===ce),me=ce&&typeof ce.transform=="function";ce||t.warn("Unrecognized transform type "+ue+"."),ce&&ce.supplyDefaults&&(de||me)?((re=ce.supplyDefaults(oe,j,W,V)).type=ue,re._module=ce,t.pushUnique(ie,ce)):re=t.extendFlat({},oe),X.push(re)}}},f.supplyLayoutGlobalDefaults=function(V,j,W){function Z(oe,ue){return t.coerce(V,j,f.layoutAttributes,oe,ue)}var ie=V.template;t.isPlainObject(ie)&&(j.template=ie,j._template=ie.layout,j._dataTemplate=ie.data),Z("autotypenumbers");var te=t.coerceFont(Z,"font"),J=te.size;t.coerceFont(Z,"title.font",t.extendFlat({},te,{size:Math.round(1.4*J)})),Z("title.text",j._dfltTitle.plot),Z("title.xref");var X=Z("title.yref");Z("title.pad.t"),Z("title.pad.r"),Z("title.pad.b"),Z("title.pad.l");var ee=Z("title.automargin");Z("title.x"),Z("title.xanchor"),Z("title.y"),Z("title.yanchor"),ee&&(X==="paper"&&(j.title.y!==0&&(j.title.y=1),j.title.yanchor==="auto"&&(j.title.yanchor=j.title.y===0?"top":"bottom")),X==="container"&&(j.title.y==="auto"&&(j.title.y=1),j.title.yanchor==="auto"&&(j.title.yanchor=j.title.y<.5?"bottom":"top"))),Z("uniformtext.mode")&&Z("uniformtext.minsize"),Z("autosize",!(V.width&&V.height)),Z("width"),Z("height"),Z("minreducedwidth"),Z("minreducedheight"),Z("margin.l"),Z("margin.r"),Z("margin.t"),Z("margin.b"),Z("margin.pad"),Z("margin.autoexpand"),V.width&&V.height&&f.sanitizeMargins(j),y.getComponentMethod("grid","sizeDefaults")(V,j),Z("paper_bgcolor"),Z("separators",W.decimal+W.thousands),Z("hidesources"),Z("colorway"),Z("datarevision");var re=Z("uirevision");Z("editrevision",re),Z("selectionrevision",re),y.getComponentMethod("modebar","supplyLayoutDefaults")(V,j),y.getComponentMethod("shapes","supplyDrawNewShapeDefaults")(V,j,Z),y.getComponentMethod("selections","supplyDrawNewSelectionDefaults")(V,j,Z),Z("meta"),t.isPlainObject(V.transition)&&(Z("transition.duration"),Z("transition.easing"),Z("transition.ordering")),y.getComponentMethod("calendars","handleDefaults")(V,j,"calendar"),y.getComponentMethod("fx","supplyLayoutGlobalDefaults")(V,j,Z),t.coerce(V,j,s,"scattermode")},f.plotAutoSize=function(V,j,W){var Z,ie,te=V._context||{},J=te.frameMargins,X=t.isPlotDiv(V);if(X&&V.emit("plotly_autosize"),te.fillFrame)Z=window.innerWidth,ie=window.innerHeight,document.body.style.overflow="hidden";else{var ee=X?window.getComputedStyle(V):{};if(Z=P(ee.width)||P(ee.maxWidth)||W.width,ie=P(ee.height)||P(ee.maxHeight)||W.height,_(J)&&J>0){var re=1-2*J;Z=Math.round(re*Z),ie=Math.round(re*ie)}}var oe=f.layoutAttributes.width.min,ue=f.layoutAttributes.height.min;Z<oe&&(Z=oe),ie<ue&&(ie=ue);var ce=!j.width&&Math.abs(W.width-Z)>1,de=!j.height&&Math.abs(W.height-ie)>1;(de||ce)&&(ce&&(W.width=Z),de&&(W.height=ie)),V._initialAutoSize||(V._initialAutoSize={width:Z,height:ie}),f.sanitizeMargins(W)},f.supplyLayoutModuleDefaults=function(V,j,W,Z){var ie,te,J,X=y.componentsRegistry,ee=j._basePlotModules,re=y.subplotsRegistry.cartesian;for(ie in X)(J=X[ie]).includeBasePlot&&J.includeBasePlot(V,j);for(var oe in ee.length||ee.push(re),j._has("cartesian")&&(y.getComponentMethod("grid","contentDefaults")(V,j),re.finalizeSubplots(V,j)),j._subplots)j._subplots[oe].sort(t.subplotSort);for(te=0;te<ee.length;te++)(J=ee[te]).supplyLayoutDefaults&&J.supplyLayoutDefaults(V,j,W);var ue=j._modules;for(te=0;te<ue.length;te++)(J=ue[te]).supplyLayoutDefaults&&J.supplyLayoutDefaults(V,j,W);var ce=j._transformModules;for(te=0;te<ce.length;te++)(J=ce[te]).supplyLayoutDefaults&&J.supplyLayoutDefaults(V,j,W,Z);for(ie in X)(J=X[ie]).supplyLayoutDefaults&&J.supplyLayoutDefaults(V,j,W)},f.purge=function(V){var j=V._fullLayout||{};j._glcontainer!==void 0&&(j._glcontainer.selectAll(".gl-canvas").remove(),j._glcontainer.remove(),j._glcanvas=null),j._modeBar&&j._modeBar.destroy(),V._transitionData&&(V._transitionData._interruptCallbacks&&(V._transitionData._interruptCallbacks.length=0),V._transitionData._animationRaf&&window.cancelAnimationFrame(V._transitionData._animationRaf)),t.clearThrottle(),t.clearResponsive(V),delete V.data,delete V.layout,delete V._fullData,delete V._fullLayout,delete V.calcdata,delete V.empty,delete V.fid,delete V.undoqueue,delete V.undonum,delete V.autoplay,delete V.changed,delete V._promises,delete V._redrawTimer,delete V._hmlumcount,delete V._hmpixcount,delete V._transitionData,delete V._transitioning,delete V._initialAutoSize,delete V._transitioningWithDuration,delete V._dragging,delete V._dragged,delete V._dragdata,delete V._hoverdata,delete V._snapshotInProgress,delete V._editing,delete V._mouseDownTime,delete V._legendMouseDownTime,V.removeAllListeners&&V.removeAllListeners()},f.style=function(V){var j,W=V._fullLayout._visibleModules,Z=[];for(j=0;j<W.length;j++){var ie=W[j];ie.style&&t.pushUnique(Z,ie.style)}for(j=0;j<Z.length;j++)Z[j](V)},f.sanitizeMargins=function(V){if(V&&V.margin){var j,W=V.width,Z=V.height,ie=V.margin,te=W-(ie.l+ie.r),J=Z-(ie.t+ie.b);te<0&&(j=(W-1)/(ie.l+ie.r),ie.l=Math.floor(j*ie.l),ie.r=Math.floor(j*ie.r)),J<0&&(j=(Z-1)/(ie.t+ie.b),ie.t=Math.floor(j*ie.t),ie.b=Math.floor(j*ie.b))}},f.clearAutoMarginIds=function(V){V._fullLayout._pushmarginIds={}},f.allowAutoMargin=function(V,j){V._fullLayout._pushmarginIds[j]=1},f.autoMargin=function(V,j,W){var Z=V._fullLayout,ie=Z.width,te=Z.height,J=Z.margin,X=Z.minreducedwidth,ee=Z.minreducedheight,re=t.constrain(ie-J.l-J.r,2,X),oe=t.constrain(te-J.t-J.b,2,ee),ue=Math.max(0,ie-re),ce=Math.max(0,te-oe),de=Z._pushmargin,me=Z._pushmarginIds;if(J.autoexpand!==!1){if(W){var _e=W.pad;if(_e===void 0&&(_e=Math.min(12,J.l,J.r,J.t,J.b)),ue){var Se=(W.l+W.r)/ue;Se>1&&(W.l/=Se,W.r/=Se)}if(ce){var we=(W.t+W.b)/ce;we>1&&(W.t/=we,W.b/=we)}var xe=W.xl!==void 0?W.xl:W.x,De=W.xr!==void 0?W.xr:W.x,Ee=W.yt!==void 0?W.yt:W.y,Me=W.yb!==void 0?W.yb:W.y;de[j]={l:{val:xe,size:W.l+_e},r:{val:De,size:W.r+_e},b:{val:Me,size:W.b+_e},t:{val:Ee,size:W.t+_e}},me[j]=1}else delete de[j],delete me[j];if(!Z._replotting)return f.doAutoMargin(V)}},f.doAutoMargin=function(V){var j=V._fullLayout,W=j.width,Z=j.height;j._size||(j._size={}),O(j);var ie=j._size,te=j.margin,J={t:0,b:0,l:0,r:0},X=t.extendFlat({},ie),ee=te.l,re=te.r,oe=te.t,ue=te.b,ce=j._pushmargin,de=j._pushmarginIds,me=j.minreducedwidth,_e=j.minreducedheight;if(te.autoexpand!==!1){for(var Se in ce)de[Se]||delete ce[Se];var we=V._fullLayout._reservedMargin;for(var xe in we)for(var De in we[xe]){var Ee=we[xe][De];J[De]=Math.max(J[De],Ee)}for(var Me in ce.base={l:{val:0,size:ee},r:{val:1,size:re},t:{val:1,size:oe},b:{val:0,size:ue}},J){var he=0;for(var fe in ce)fe!=="base"&&_(ce[fe][Me].size)&&(he=ce[fe][Me].size>he?ce[fe][Me].size:he);var ae=Math.max(0,te[Me]-he);J[Me]=Math.max(0,J[Me]-ae)}for(var be in ce){var Ie=ce[be].l||{},Te=ce[be].b||{},Ne=Ie.val,qe=Ie.size,ve=Te.val,Ce=Te.size,Ae=W-J.r-J.l,ze=Z-J.t-J.b;for(var Ue in ce){if(_(qe)&&ce[Ue].r){var Ve=ce[Ue].r.val,Ye=ce[Ue].r.size;if(Ve>Ne){var $e=(qe*Ve+(Ye-Ae)*Ne)/(Ve-Ne),rt=(Ye*(1-Ne)+(qe-Ae)*(1-Ve))/(Ve-Ne);$e+rt>ee+re&&(ee=$e,re=rt)}}if(_(Ce)&&ce[Ue].t){var ht=ce[Ue].t.val,nt=ce[Ue].t.size;if(ht>ve){var bt=(Ce*ht+(nt-ze)*ve)/(ht-ve),wt=(nt*(1-ve)+(Ce-ze)*(1-ht))/(ht-ve);bt+wt>ue+oe&&(ue=bt,oe=wt)}}}}}var ut=t.constrain(W-te.l-te.r,2,me),lt=t.constrain(Z-te.t-te.b,2,_e),Tt=Math.max(0,W-ut),Et=Math.max(0,Z-lt);if(Tt){var St=(ee+re)/Tt;St>1&&(ee/=St,re/=St)}if(Et){var Ft=(ue+oe)/Et;Ft>1&&(ue/=Ft,oe/=Ft)}if(ie.l=Math.round(ee)+J.l,ie.r=Math.round(re)+J.r,ie.t=Math.round(oe)+J.t,ie.b=Math.round(ue)+J.b,ie.p=Math.round(te.pad),ie.w=Math.round(W)-ie.l-ie.r,ie.h=Math.round(Z)-ie.t-ie.b,!j._replotting&&(f.didMarginChange(X,ie)||function(Je){if("_redrawFromAutoMarginCount"in Je._fullLayout)return!1;var et=n.list(Je,"",!0);for(var Ze in et)if(et[Ze].autoshift||et[Ze].shift)return!0;return!1}(V))){"_redrawFromAutoMarginCount"in j?j._redrawFromAutoMarginCount++:j._redrawFromAutoMarginCount=1;var zt=3*(1+Object.keys(de).length);if(j._redrawFromAutoMarginCount<zt)return y.call("_doPlot",V);j._size=X,t.warn("Too many auto-margin redraws.")}(function(Je){var et=n.list(Je,"",!0);["_adjustTickLabelsOverflow","_hideCounterAxisInsideTickLabels"].forEach(function(Ze){for(var Qe=0;Qe<et.length;Qe++){var st=et[Qe][Ze];st&&st()}})})(V)};var z=["l","r","t","b","p","w","h"];function B(V,j,W){var Z=!1,ie=[f.previousPromises,function(){if(V._transitionData)return V._transitioning=!1,function(J){var X=Promise.resolve();if(!J)return X;for(;J.length;)X=X.then(J.shift());return X}(V._transitionData._interruptCallbacks)},W.prepareFn,f.rehover,f.reselect,function(){return V.emit("plotly_transitioning",[]),new Promise(function(J){V._transitioning=!0,j.duration>0&&(V._transitioningWithDuration=!0),V._transitionData._interruptCallbacks.push(function(){Z=!0}),W.redraw&&V._transitionData._interruptCallbacks.push(function(){return y.call("redraw",V)}),V._transitionData._interruptCallbacks.push(function(){V.emit("plotly_transitioninterrupted",[])});var X=0,ee=0;function re(){return X++,function(){var oe;ee++,Z||ee!==X||(oe=J,V._transitionData&&(function(ue){if(ue)for(;ue.length;)ue.shift()}(V._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(W.redraw)return y.call("redraw",V)}).then(function(){V._transitioning=!1,V._transitioningWithDuration=!1,V.emit("plotly_transitioned",[])}).then(oe)))}}W.runFn(re),setTimeout(re())})}],te=t.syncOrAsync(ie,V);return te&&te.then||(te=Promise.resolve()),te.then(function(){return V})}f.didMarginChange=function(V,j){for(var W=0;W<z.length;W++){var Z=z[W],ie=V[Z],te=j[Z];if(!_(ie)||Math.abs(te-ie)>1)return!0}return!1},f.graphJson=function(V,j,W,Z,ie,te){(ie&&j&&!V._fullData||ie&&!j&&!V._fullLayout)&&f.supplyDefaults(V);var J=ie?V._fullData:V.data,X=ie?V._fullLayout:V.layout,ee=(V._transitionData||{})._frames;function re(ce,de){if(typeof ce=="function")return de?"_function_":null;if(t.isPlainObject(ce)){var me,_e={};return Object.keys(ce).sort().forEach(function(Se){if(["_","["].indexOf(Se.charAt(0))===-1)if(typeof ce[Se]!="function"){if(W==="keepdata"){if(Se.substr(Se.length-3)==="src")return}else if(W==="keepstream"){if(typeof(me=ce[Se+"src"])=="string"&&me.indexOf(":")>0&&!t.isPlainObject(ce.stream))return}else if(W!=="keepall"&&typeof(me=ce[Se+"src"])=="string"&&me.indexOf(":")>0)return;_e[Se]=re(ce[Se],de)}else de&&(_e[Se]="_function")}),_e}return Array.isArray(ce)?ce.map(function(Se){return re(Se,de)}):t.isTypedArray(ce)?t.simpleMap(ce,t.identity):t.isJSDate(ce)?t.ms2DateTimeLocal(+ce):ce}var oe={data:(J||[]).map(function(ce){var de=re(ce);return j&&delete de.fit,de})};if(!j&&(oe.layout=re(X),ie)){var ue=X._size;oe.layout.computed={margin:{b:ue.b,l:ue.l,r:ue.r,t:ue.t}}}return ee&&(oe.frames=re(ee)),te&&(oe.config=re(V._context,!0)),Z==="object"?oe:JSON.stringify(oe)},f.modifyFrames=function(V,j){var W,Z,ie,te=V._transitionData._frames,J=V._transitionData._frameHash;for(W=0;W<j.length;W++)switch((Z=j[W]).type){case"replace":ie=Z.value;var X=(te[Z.index]||{}).name,ee=ie.name;te[Z.index]=J[ee]=ie,ee!==X&&(delete J[X],J[ee]=ie);break;case"insert":J[(ie=Z.value).name]=ie,te.splice(Z.index,0,ie);break;case"delete":delete J[(ie=te[Z.index]).name],te.splice(Z.index,1)}return Promise.resolve()},f.computeFrame=function(V,j){var W,Z,ie,te,J=V._transitionData._frameHash;if(!j)throw new Error("computeFrame must be given a string frame name");var X=J[j.toString()];if(!X)return!1;for(var ee=[X],re=[X.name];X.baseframe&&(X=J[X.baseframe.toString()])&&re.indexOf(X.name)===-1;)ee.push(X),re.push(X.name);for(var oe={};X=ee.pop();)if(X.layout&&(oe.layout=f.extendLayout(oe.layout,X.layout)),X.data){if(oe.data||(oe.data=[]),!(Z=X.traces))for(Z=[],W=0;W<X.data.length;W++)Z[W]=W;for(oe.traces||(oe.traces=[]),W=0;W<X.data.length;W++)(ie=Z[W])!=null&&((te=oe.traces.indexOf(ie))===-1&&(te=oe.data.length,oe.traces[te]=ie),oe.data[te]=f.extendTrace(oe.data[te],X.data[W]))}return oe},f.recomputeFrameHash=function(V){for(var j=V._transitionData._frameHash={},W=V._transitionData._frames,Z=0;Z<W.length;Z++){var ie=W[Z];ie&&ie.name&&(j[ie.name]=ie)}},f.extendObjectWithContainers=function(V,j,W){var Z,ie,te,J,X,ee,re,oe=t.extendDeepNoArrays({},j||{}),ue=t.expandObjectPaths(oe),ce={};if(W&&W.length)for(te=0;te<W.length;te++)(ie=(Z=t.nestedProperty(ue,W[te])).get())===void 0?t.nestedProperty(ce,W[te]).set(null):(Z.set(null),t.nestedProperty(ce,W[te]).set(ie));if(V=t.extendDeepNoArrays(V||{},ue),W&&W.length){for(te=0;te<W.length;te++)if(ee=t.nestedProperty(ce,W[te]).get()){for(re=(X=t.nestedProperty(V,W[te])).get(),Array.isArray(re)||(re=[],X.set(re)),J=0;J<ee.length;J++){var de=ee[J];re[J]=de===null?null:f.extendObjectWithContainers(re[J],de)}X.set(re)}}return V},f.dataArrayContainers=["transforms","dimensions"],f.layoutArrayContainers=y.layoutArrayContainers,f.extendTrace=function(V,j){return f.extendObjectWithContainers(V,j,f.dataArrayContainers)},f.extendLayout=function(V,j){return f.extendObjectWithContainers(V,j,f.layoutArrayContainers)},f.transition=function(V,j,W,Z,ie,te){var J={redraw:ie.redraw},X={},ee=[];return J.prepareFn=function(){for(var re=Array.isArray(j)?j.length:0,oe=Z.slice(0,re),ue=0;ue<oe.length;ue++){var ce=oe[ue],de=V._fullData[ce]._module;if(de){if(de.animatable){var me=de.basePlotModule.name;X[me]||(X[me]=[]),X[me].push(ce)}V.data[oe[ue]]=f.extendTrace(V.data[oe[ue]],j[ue])}}var _e=t.expandObjectPaths(t.extendDeepNoArrays({},W)),Se=/^[xy]axis[0-9]*$/;for(var we in _e)Se.test(we)&&delete _e[we].range;f.extendLayout(V.layout,_e),delete V.calcdata,f.supplyDefaults(V),f.doCalcdata(V);var xe=t.expandObjectPaths(W);if(xe){var De=V._fullLayout._plots;for(var Ee in De){var Me=De[Ee],he=Me.xaxis,fe=Me.yaxis,ae=he.range.slice(),be=fe.range.slice(),Ie=null,Te=null,Ne=null,qe=null;Array.isArray(xe[he._name+".range"])?Ie=xe[he._name+".range"].slice():Array.isArray((xe[he._name]||{}).range)&&(Ie=xe[he._name].range.slice()),Array.isArray(xe[fe._name+".range"])?Te=xe[fe._name+".range"].slice():Array.isArray((xe[fe._name]||{}).range)&&(Te=xe[fe._name].range.slice()),ae&&Ie&&(he.r2l(ae[0])!==he.r2l(Ie[0])||he.r2l(ae[1])!==he.r2l(Ie[1]))&&(Ne={xr0:ae,xr1:Ie}),be&&Te&&(fe.r2l(be[0])!==fe.r2l(Te[0])||fe.r2l(be[1])!==fe.r2l(Te[1]))&&(qe={yr0:be,yr1:Te}),(Ne||qe)&&ee.push(t.extendFlat({plotinfo:Me},Ne,qe))}}return Promise.resolve()},J.runFn=function(re){var oe,ue,ce=V._fullLayout._basePlotModules,de=ee.length;if(W)for(ue=0;ue<ce.length;ue++)ce[ue].transitionAxes&&ce[ue].transitionAxes(V,ee,te,re);for(var me in de?((oe=t.extendFlat({},te)).duration=0,delete X.cartesian):oe=te,X){var _e=X[me];V._fullData[_e[0]]._module.basePlotModule.plot(V,_e,oe,re)}},B(V,te,J)},f.transitionFromReact=function(V,j,W,Z){var ie=V._fullLayout,te=ie.transition,J={},X=[];return J.prepareFn=function(){var ee=ie._plots;for(var re in J.redraw=!1,j.anim==="some"&&(J.redraw=!0),W.anim==="some"&&(J.redraw=!0),ee){var oe=ee[re],ue=oe.xaxis,ce=oe.yaxis,de=Z[ue._name].range.slice(),me=Z[ce._name].range.slice(),_e=ue.range.slice(),Se=ce.range.slice();ue.setScale(),ce.setScale();var we=null,xe=null;ue.r2l(de[0])===ue.r2l(_e[0])&&ue.r2l(de[1])===ue.r2l(_e[1])||(we={xr0:de,xr1:_e}),ce.r2l(me[0])===ce.r2l(Se[0])&&ce.r2l(me[1])===ce.r2l(Se[1])||(xe={yr0:me,yr1:Se}),(we||xe)&&X.push(t.extendFlat({plotinfo:oe},we,xe))}return Promise.resolve()},J.runFn=function(ee){for(var re,oe,ue,ce=V._fullData,de=V._fullLayout._basePlotModules,me=[],_e=0;_e<ce.length;_e++)me.push(_e);function Se(){if(V._fullLayout)for(var xe=0;xe<de.length;xe++)de[xe].transitionAxes&&de[xe].transitionAxes(V,X,re,ee)}function we(){if(V._fullLayout)for(var xe=0;xe<de.length;xe++)de[xe].plot(V,ue,oe,ee)}X.length&&j.anim?te.ordering==="traces first"?(re=t.extendFlat({},te,{duration:0}),ue=me,oe=te,setTimeout(Se,te.duration),we()):(re=te,ue=null,oe=t.extendFlat({},te,{duration:0}),setTimeout(we,re.duration),Se()):X.length?(re=te,Se()):j.anim&&(ue=me,oe=te,we())},B(V,te,J)},f.doCalcdata=function(V,j){var W,Z,ie,te,J=n.list(V),X=V._fullData,ee=V._fullLayout,re=new Array(X.length),oe=(V.calcdata||[]).slice();for(V.calcdata=re,ee._numBoxes=0,ee._numViolins=0,ee._violinScaleGroupStats={},V._hmpixcount=0,V._hmlumcount=0,ee._piecolormap={},ee._sunburstcolormap={},ee._treemapcolormap={},ee._iciclecolormap={},ee._funnelareacolormap={},ie=0;ie<X.length;ie++)Array.isArray(j)&&j.indexOf(ie)===-1&&(re[ie]=oe[ie]);for(ie=0;ie<X.length;ie++)(W=X[ie])._arrayAttrs=h.findArrayAttributes(W),W._extremes={};var ue=ee._subplots.polar||[];for(ie=0;ie<ue.length;ie++)J.push(ee[ue[ie]].radialaxis,ee[ue[ie]].angularaxis);for(var ce in ee._colorAxes){var de=ee[ce];de.cauto!==!1&&(delete de.cmin,delete de.cmax)}var me=!1;function _e(xe){if(W=X[xe],Z=W._module,W.visible===!0&&W.transforms){if(Z&&Z.calc){var De=Z.calc(V,W);De[0]&&De[0].t&&De[0].t._scene&&delete De[0].t._scene.dirty}for(te=0;te<W.transforms.length;te++){var Ee=W.transforms[te];(Z=v[Ee.type])&&Z.calcTransform&&(W._hasCalcTransform=!0,me=!0,Z.calcTransform(V,W,Ee))}}}function Se(xe,De){if(W=X[xe],!!(Z=W._module).isContainer===De){var Ee=[];if(W.visible===!0&&W._length!==0){delete W._indexToPoints;var Me=W.transforms||[];for(te=Me.length-1;te>=0;te--)if(Me[te].enabled){W._indexToPoints=Me[te]._indexToPoints;break}Z&&Z.calc&&(Ee=Z.calc(V,W))}Array.isArray(Ee)&&Ee[0]||(Ee=[{x:r,y:r}]),Ee[0].t||(Ee[0].t={}),Ee[0].trace=W,re[xe]=Ee}}for(D(J,X,ee),ie=0;ie<X.length;ie++)Se(ie,!0);for(ie=0;ie<X.length;ie++)_e(ie);for(me&&D(J,X,ee),ie=0;ie<X.length;ie++)Se(ie,!0);for(ie=0;ie<X.length;ie++)Se(ie,!1);G(V);var we=function(xe,De){var Ee,Me,he,fe,ae,be=[];function Ie(Je,et,Ze){var Qe=et._id.charAt(0);if(Je==="histogram2dcontour"){var st=et._counterAxes[0],ft=n.getFromId(De,st),Be=Qe==="x"||st==="x"&&ft.type==="category",je=Qe==="y"||st==="y"&&ft.type==="category";return function(at,ot){return at===0||ot===0||Be&&at===Ze[ot].length-1||je&&ot===Ze.length-1?-1:(Qe==="y"?ot:at)-1}}return function(at,ot){return Qe==="y"?ot:at}}var Te={min:function(Je){return t.aggNums(Math.min,null,Je)},max:function(Je){return t.aggNums(Math.max,null,Je)},sum:function(Je){return t.aggNums(function(et,Ze){return et+Ze},null,Je)},total:function(Je){return t.aggNums(function(et,Ze){return et+Ze},null,Je)},mean:function(Je){return t.mean(Je)},median:function(Je){return t.median(Je)}};for(Ee=0;Ee<xe.length;Ee++){var Ne=xe[Ee];if(Ne.type==="category"){var qe=Ne.categoryorder.match(Y);if(qe){var ve=qe[1],Ce=qe[2],Ae=Ne._id.charAt(0),ze=Ae==="x",Ue=[];for(Me=0;Me<Ne._categories.length;Me++)Ue.push([Ne._categories[Me],[]]);for(Me=0;Me<Ne._traceIndices.length;Me++){var Ve=Ne._traceIndices[Me],Ye=De._fullData[Ve];if(Ye.visible===!0){var $e=Ye.type;y.traceIs(Ye,"histogram")&&(delete Ye._xautoBinFinished,delete Ye._yautoBinFinished);var rt=$e==="splom",ht=$e==="scattergl",nt=De.calcdata[Ve];for(he=0;he<nt.length;he++){var bt,wt,ut=nt[he];if(rt){var lt=Ye._axesDim[Ne._id];if(!ze){var Tt=Ye._diag[lt][0];Tt&&(Ne=De._fullLayout[n.id2name(Tt)])}var Et=ut.trace.dimensions[lt].values;for(fe=0;fe<Et.length;fe++)for(bt=Ne._categoriesMap[Et[fe]],ae=0;ae<ut.trace.dimensions.length;ae++)if(ae!==lt){var St=ut.trace.dimensions[ae];Ue[bt][1].push(St.values[fe])}}else if(ht){for(fe=0;fe<ut.t.x.length;fe++)ze?(bt=ut.t.x[fe],wt=ut.t.y[fe]):(bt=ut.t.y[fe],wt=ut.t.x[fe]),Ue[bt][1].push(wt);ut.t&&ut.t._scene&&delete ut.t._scene.dirty}else if(ut.hasOwnProperty("z")){wt=ut.z;var Ft=Ie(Ye.type,Ne,wt);for(fe=0;fe<wt.length;fe++)for(ae=0;ae<wt[fe].length;ae++)(bt=Ft(ae,fe))+1&&Ue[bt][1].push(wt[fe][ae])}else for((bt=ut.p)===void 0&&(bt=ut[Ae]),(wt=ut.s)===void 0&&(wt=ut.v),wt===void 0&&(wt=ze?ut.y:ut.x),Array.isArray(wt)||(wt=wt===void 0?[]:[wt]),fe=0;fe<wt.length;fe++)Ue[bt][1].push(wt[fe])}}}Ne._categoriesValue=Ue;var zt=[];for(Me=0;Me<Ue.length;Me++)zt.push([Ue[Me][0],Te[ve](Ue[Me][1])]);zt.sort(function(Je,et){return Je[1]-et[1]}),Ne._categoriesAggregatedValue=zt,Ne._initialCategories=zt.map(function(Je){return Je[0]}),Ce==="descending"&&Ne._initialCategories.reverse(),be=be.concat(Ne.sortByInitialCategories())}}}return be}(J,V);if(we.length){for(ee._numBoxes=0,ee._numViolins=0,ie=0;ie<we.length;ie++)Se(we[ie],!0);for(ie=0;ie<we.length;ie++)Se(we[ie],!1);G(V)}y.getComponentMethod("fx","calc")(V),y.getComponentMethod("errorbars","calc")(V)};var Y=/(total|sum|min|max|mean|median) (ascending|descending)/;function D(V,j,W){var Z={};function ie(ee){ee.clearCalc(),ee.type==="multicategory"&&ee.setupMultiCategory(j),Z[ee._id]=1}t.simpleMap(V,ie);for(var te=W._axisMatchGroups||[],J=0;J<te.length;J++)for(var X in te[J])Z[X]||ie(W[n.id2name(X)])}function G(V){var j,W,Z,ie=V._fullLayout,te=ie._visibleModules,J={};for(W=0;W<te.length;W++){var X=te[W],ee=X.crossTraceCalc;if(ee){var re=X.basePlotModule.name;J[re]?t.pushUnique(J[re],ee):J[re]=[ee]}}for(Z in J){var oe=J[Z],ue=ie._subplots[Z];if(Array.isArray(ue))for(j=0;j<ue.length;j++){var ce=ue[j],de=Z==="cartesian"?ie._plots[ce]:ie[ce];for(W=0;W<oe.length;W++)oe[W](V,de,ce)}else for(W=0;W<oe.length;W++)oe[W](V)}}f.rehover=function(V){V._fullLayout._rehover&&V._fullLayout._rehover()},f.redrag=function(V){V._fullLayout._redrag&&V._fullLayout._redrag()},f.reselect=function(V){var j=V._fullLayout,W=(V.layout||{}).selections,Z=j._previousSelections;j._previousSelections=W;var ie=j._reselect||JSON.stringify(W)!==JSON.stringify(Z);y.getComponentMethod("selections","reselect")(V,ie)},f.generalUpdatePerTraceModule=function(V,j,W,Z){var ie,te=j.traceHash,J={};for(ie=0;ie<W.length;ie++){var X=W[ie],ee=X[0].trace;ee.visible&&(J[ee.type]=J[ee.type]||[],J[ee.type].push(X))}for(var re in te)if(!J[re]){var oe=te[re][0];oe[0].trace.visible=!1,J[re]=[oe]}for(var ue in J){var ce=J[ue];ce[0][0].trace._module.plot(V,j,t.filterVisible(ce),Z)}j.traceHash=J},f.plotBasePlot=function(V,j,W,Z,ie){var te=y.getModule(V),J=c(j.calcdata,te)[0];te.plot(j,J,Z,ie)},f.cleanBasePlot=function(V,j,W,Z,ie){var te=ie._has&&ie._has(V),J=W._has&&W._has(V);te&&!J&&ie["_"+V+"layer"].selectAll("g.trace").remove()}},9813:function(R){R.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}},10869:function(R,E,e){var w=e(71828),k=e(61082).tester,i=w.findIndexOfMin,_=w.isAngleInsideSector,y=w.angleDelta,h=w.angleDist;function l(n,a,s,u){var p,c,b=u[0],g=u[1],f=o(Math.sin(a)-Math.sin(n)),v=o(Math.cos(a)-Math.cos(n)),m=Math.tan(s),x=o(1/m),T=f/v,d=g-T*b;return x?f&&v?c=m*(p=d/(m-T)):v?(p=g*x,c=g):(p=b,c=b*m):f&&v?(p=0,c=d):v?(p=0,c=g):p=c=NaN,[p,c]}function t(n,a,s,u){return w.isFullCircle([a,s])?function(p,c){var b,g=c.length,f=new Array(g+1);for(b=0;b<g;b++){var v=c[b];f[b]=[p*Math.cos(v),p*Math.sin(v)]}return f[b]=f[0].slice(),f}(n,u):function(p,c,b,g){var f,v,m=g.length,x=[];function T(Y){return[p*Math.cos(Y),p*Math.sin(Y)]}function d(Y,D,G){return l(Y,D,G,T(Y))}function M(Y){return w.mod(Y,m)}function A(Y){return _(Y,[c,b])}var C=i(g,function(Y){return A(Y)?h(Y,c):1/0}),P=d(g[C],g[M(C-1)],c);for(x.push(P),f=C,v=0;v<m;f++,v++){var O=g[M(f)];if(!A(O))break;x.push(T(O))}var z=i(g,function(Y){return A(Y)?h(Y,b):1/0}),B=d(g[z],g[M(z+1)],b);return x.push(B),x.push([0,0]),x.push(x[0].slice()),x}(n,a,s,u)}function o(n){return Math.abs(n)>1e-10?n:0}function r(n,a,s){a=a||0,s=s||0;for(var u=n.length,p=new Array(u),c=0;c<u;c++){var b=n[c];p[c]=[a+b[0],s-b[1]]}return p}R.exports={isPtInsidePolygon:function(n,a,s,u,p){if(!_(a,u))return!1;var c,b;s[0]<s[1]?(c=s[0],b=s[1]):(c=s[1],b=s[0]);var g=k(t(c,u[0],u[1],p)),f=k(t(b,u[0],u[1],p)),v=[n*Math.cos(a),n*Math.sin(a)];return f.contains(v)&&!g.contains(v)},findPolygonOffset:function(n,a,s,u){for(var p=1/0,c=1/0,b=t(n,a,s,u),g=0;g<b.length;g++){var f=b[g];p=Math.min(p,f[0]),c=Math.min(c,-f[1])}return[p,c]},findEnclosingVertexAngles:function(n,a){var s=i(a,function(p){var c=y(p,n);return c>0?c:1/0}),u=w.mod(s+1,a.length);return[a[s],a[u]]},findIntersectionXY:l,findXYatLength:function(n,a,s,u){var p=-a*s,c=a*a+1,b=2*(a*p-s),g=p*p+s*s-n*n,f=Math.sqrt(b*b-4*c*g),v=(-b+f)/(2*c),m=(-b-f)/(2*c);return[[v,a*v+p+u],[m,a*m+p+u]]},clampTiny:o,pathPolygon:function(n,a,s,u,p,c){return"M"+r(t(n,a,s,u),p,c).join("L")},pathPolygonAnnulus:function(n,a,s,u,p,c,b){var g,f;n<a?(g=n,f=a):(g=a,f=n);var v=r(t(g,s,u,p),c,b);return"M"+r(t(f,s,u,p),c,b).reverse().join("L")+"M"+v.join("L")}}},23580:function(R,E,e){var w=e(27659).AU,k=e(71828).counterRegex,i=e(77997),_=e(9813),y=_.attr,h=_.name,l=k(h),t={};t[y]={valType:"subplotid",dflt:h,editType:"calc"},R.exports={attr:y,name:h,idRoot:h,idRegex:l,attrRegex:l,attributes:t,layoutAttributes:e(73812),supplyLayoutDefaults:e(68993),plot:function(o){for(var r=o._fullLayout,n=o.calcdata,a=r._subplots[h],s=0;s<a.length;s++){var u=a[s],p=w(n,h,u),c=r[u]._subplot;c||(c=i(o,u),r[u]._subplot=c),c.plot(p,r,o._promises)}},clean:function(o,r,n,a){for(var s=a._subplots[h]||[],u=a._has&&a._has("gl"),p=r._has&&r._has("gl"),c=u&&!p,b=0;b<s.length;b++){var g=s[b],f=a[g]._subplot;if(!r[g]&&f)for(var v in f.framework.remove(),f.layers["radial-axis-title"].remove(),f.clipPaths)f.clipPaths[v].remove();c&&f._scene&&(f._scene.destroy(),f._scene=null)}},toSVG:e(93612).toSVG}},73812:function(R,E,e){var w=e(22399),k=e(13838),i=e(27670).Y,_=e(71828).extendFlat,y=e(30962).overrideAll,h=y({color:k.color,showline:_({},k.showline,{dflt:!0}),linecolor:k.linecolor,linewidth:k.linewidth,showgrid:_({},k.showgrid,{dflt:!0}),gridcolor:k.gridcolor,gridwidth:k.gridwidth,griddash:k.griddash},"plot","from-root"),l=y({tickmode:k.minor.tickmode,nticks:k.nticks,tick0:k.tick0,dtick:k.dtick,tickvals:k.tickvals,ticktext:k.ticktext,ticks:k.ticks,ticklen:k.ticklen,tickwidth:k.tickwidth,tickcolor:k.tickcolor,ticklabelstep:k.ticklabelstep,showticklabels:k.showticklabels,labelalias:k.labelalias,showtickprefix:k.showtickprefix,tickprefix:k.tickprefix,showticksuffix:k.showticksuffix,ticksuffix:k.ticksuffix,showexponent:k.showexponent,exponentformat:k.exponentformat,minexponent:k.minexponent,separatethousands:k.separatethousands,tickfont:k.tickfont,tickangle:k.tickangle,tickformat:k.tickformat,tickformatstops:k.tickformatstops,layer:k.layer},"plot","from-root"),t={visible:_({},k.visible,{dflt:!0}),type:_({},k.type,{values:["-","linear","log","date","category"]}),autotypenumbers:k.autotypenumbers,autorange:_({},k.autorange,{editType:"plot"}),rangemode:{valType:"enumerated",values:["tozero","nonnegative","normal"],dflt:"tozero",editType:"calc"},range:_({},k.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],editType:"plot"}),categoryorder:k.categoryorder,categoryarray:k.categoryarray,angle:{valType:"angle",editType:"plot"},side:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"clockwise",editType:"plot"},title:{text:_({},k.title.text,{editType:"plot",dflt:""}),font:_({},k.title.font,{editType:"plot"}),editType:"plot"},hoverformat:k.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc",_deprecated:{title:k._deprecated.title,titlefont:k._deprecated.titlefont}};_(t,h,l);var o={visible:_({},k.visible,{dflt:!0}),type:{valType:"enumerated",values:["-","linear","category"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:k.autotypenumbers,categoryorder:k.categoryorder,categoryarray:k.categoryarray,thetaunit:{valType:"enumerated",values:["radians","degrees"],dflt:"degrees",editType:"calc"},period:{valType:"number",editType:"calc",min:0},direction:{valType:"enumerated",values:["counterclockwise","clockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",editType:"calc"},hoverformat:k.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};_(o,h,l),R.exports={domain:i({name:"polar",editType:"plot"}),sector:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],dflt:[0,360],editType:"plot"},hole:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},bgcolor:{valType:"color",editType:"plot",dflt:w.background},radialaxis:t,angularaxis:o,gridshape:{valType:"enumerated",values:["circular","linear"],dflt:"circular",editType:"plot"},uirevision:{valType:"any",editType:"none"},editType:"calc"}},68993:function(R,E,e){var w=e(71828),k=e(7901),i=e(44467),_=e(49119),y=e(27659).NG,h=e(26218),l=e(38701),t=e(96115),o=e(89426),r=e(15258),n=e(92128),a=e(4322),s=e(73812),u=e(12101),p=e(9813),c=p.axisNames;function b(f,v,m,x){var T=m("bgcolor");x.bgColor=k.combine(T,x.paper_bgcolor);var d=m("sector");m("hole");var M,A=y(x.fullData,p.name,x.id),C=x.layoutOut;function P(ee,re){return m(M+"."+ee,re)}for(var O=0;O<c.length;O++){M=c[O],w.isPlainObject(f[M])||(f[M]={});var z=f[M],B=i.newContainer(v,M);B._id=B._name=M,B._attr=x.id+"."+M,B._traceIndices=A.map(function(ee){return ee._expandedIndex});var Y=p.axisName2dataArray[M],D=g(z,B,P,A,Y,x);r(z,B,P,{axData:A,dataAttr:Y});var G=P("visible");switch(u(B,v,C),P("uirevision",v.uirevision),B._m=1,M){case"radialaxis":var V=P("autorange",!B.isValidRange(z.range));z.autorange=V,!V||D!=="linear"&&D!=="-"||P("rangemode"),V==="reversed"&&(B._m=-1),P("range"),B.cleanRange("range",{dfltRange:[0,1]});break;case"angularaxis":if(D==="date"){w.log("Polar plots do not support date angular axes yet.");for(var j=0;j<A.length;j++)A[j].visible=!1;D=z.type=B.type="linear"}P(D==="linear"?"thetaunit":"period");var W=P("direction");P("rotation",{counterclockwise:0,clockwise:90}[W])}if(o(z,B,P,B.type,{tickSuffixDflt:B.thetaunit==="degrees"?"°":void 0}),G){var Z,ie,te,J,X=x.font||{};ie=(Z=P("color"))===z.color?Z:X.color,te=X.size,J=X.family,h(z,B,P,B.type),t(z,B,P,B.type,{font:{color:ie,size:te,family:J}}),l(z,B,P,{outerTicks:!0}),n(z,B,P,{dfltColor:Z,bgColor:x.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:s[M]}),P("layer"),M==="radialaxis"&&(P("side"),P("angle",d[0]),P("title.text"),w.coerceFont(P,"title.font",{color:ie,size:w.bigFont(te),family:J}))}D!=="category"&&P("hoverformat"),B._input=z}v.angularaxis.type==="category"&&m("gridshape")}function g(f,v,m,x,T,d){var M=m("autotypenumbers",d.autotypenumbersDflt);if(m("type")==="-"){for(var A,C=0;C<x.length;C++)if(x[C].visible){A=x[C];break}A&&A[T]&&(v.type=a(A[T],"gregorian",{noMultiCategory:!0,autotypenumbers:M})),v.type==="-"?v.type="linear":f.type=v.type}return v.type}R.exports=function(f,v,m){_(f,v,m,{type:p.name,attributes:s,handleDefaults:b,font:v.font,autotypenumbersDflt:v.autotypenumbers,paper_bgcolor:v.paper_bgcolor,fullData:m,layoutOut:v})}},77997:function(R,E,e){var w=e(39898),k=e(84267),i=e(73972),_=e(71828),y=_.strRotate,h=_.strTranslate,l=e(7901),t=e(91424),o=e(74875),r=e(89298),n=e(21994),a=e(12101),s=e(71739).doAutoRange,u=e(29323),p=e(28569),c=e(30211),b=e(92998),g=e(47322).prepSelect,f=e(47322).selectOnClick,v=e(47322).clearOutline,m=e(6964),x=e(33306),T=e(61549).redrawReglTraces,d=e(18783).MID_SHIFT,M=e(9813),A=e(10869),C=e(23893),P=C.smith,O=C.reactanceArc,z=C.resistanceArc,B=C.smithTransform,Y=_._,D=_.mod,G=_.deg2rad,V=_.rad2deg;function j(J,X,ee){this.isSmith=ee||!1,this.id=X,this.gd=J,this._hasClipOnAxisFalse=null,this.vangles=null,this.radialAxisAngle=null,this.traceHash={},this.layers={},this.clipPaths={},this.clipIds={},this.viewInitial={};var re=J._fullLayout,oe="clip"+re._uid+X;this.clipIds.forTraces=oe+"-for-traces",this.clipPaths.forTraces=re._clips.append("clipPath").attr("id",this.clipIds.forTraces),this.clipPaths.forTraces.append("path"),this.framework=re["_"+(ee?"smith":"polar")+"layer"].append("g").attr("class",X),this.getHole=function(ue){return this.isSmith?0:ue.hole},this.getSector=function(ue){return this.isSmith?[0,360]:ue.sector},this.getRadial=function(ue){return this.isSmith?ue.realaxis:ue.radialaxis},this.getAngular=function(ue){return this.isSmith?ue.imaginaryaxis:ue.angularaxis},ee||(this.radialTickLayout=null,this.angularTickLayout=null)}var W=j.prototype;function Z(J){var X=J.ticks+String(J.ticklen)+String(J.showticklabels);return"side"in J&&(X+=J.side),X}function ie(J,X){return X[_.findIndexOfMin(X,function(ee){return _.angleDist(J,ee)})]}function te(J,X,ee){return X?(J.attr("display",null),J.attr(ee)):J&&J.attr("display","none"),J}R.exports=function(J,X,ee){return new j(J,X,ee)},W.plot=function(J,X){for(var ee=this,re=X[ee.id],oe=!1,ue=0;ue<J.length;ue++)if(J[ue][0].trace.cliponaxis===!1){oe=!0;break}ee._hasClipOnAxisFalse=oe,ee.updateLayers(X,re),ee.updateLayout(X,re),o.generalUpdatePerTraceModule(ee.gd,ee,J,re),ee.updateFx(X,re),ee.isSmith&&(delete re.realaxis.range,delete re.imaginaryaxis.range)},W.updateLayers=function(J,X){var ee=this,re=ee.isSmith,oe=ee.layers,ue=ee.getRadial(X),ce=ee.getAngular(X),de=M.layerNames,me=de.indexOf("frontplot"),_e=de.slice(0,me),Se=ce.layer==="below traces",we=ue.layer==="below traces";Se&&_e.push("angular-line"),we&&_e.push("radial-line"),Se&&_e.push("angular-axis"),we&&_e.push("radial-axis"),_e.push("frontplot"),Se||_e.push("angular-line"),we||_e.push("radial-line"),Se||_e.push("angular-axis"),we||_e.push("radial-axis");var xe=(re?"smith":"polar")+"sublayer",De=ee.framework.selectAll("."+xe).data(_e,String);De.enter().append("g").attr("class",function(Ee){return xe+" "+Ee}).each(function(Ee){var Me=oe[Ee]=w.select(this);switch(Ee){case"frontplot":re||Me.append("g").classed("barlayer",!0),Me.append("g").classed("scatterlayer",!0);break;case"backplot":Me.append("g").classed("maplayer",!0);break;case"plotbg":oe.bg=Me.append("path");break;case"radial-grid":case"angular-grid":Me.style("fill","none");break;case"radial-line":Me.append("line").style("fill","none");break;case"angular-line":Me.append("path").style("fill","none")}}),De.order()},W.updateLayout=function(J,X){var ee=this,re=ee.layers,oe=J._size,ue=ee.getRadial(X),ce=ee.getAngular(X),de=X.domain.x,me=X.domain.y;ee.xOffset=oe.l+oe.w*de[0],ee.yOffset=oe.t+oe.h*(1-me[1]);var _e=ee.xLength=oe.w*(de[1]-de[0]),Se=ee.yLength=oe.h*(me[1]-me[0]),we=ee.getSector(X);ee.sectorInRad=we.map(G);var xe,De,Ee,Me,he,fe=ee.sectorBBox=function(ht){var nt,bt=ht[0],wt=ht[1]-bt,ut=D(bt,360),lt=ut+wt,Tt=Math.cos(G(ut)),Et=Math.sin(G(ut)),St=Math.cos(G(lt)),Ft=Math.sin(G(lt));return nt=ut<=90&<>=90||ut>90&<>=450?1:Et<=0&&Ft<=0?0:Math.max(Et,Ft),[ut<=180&<>=180||ut>180&<>=540?-1:Tt>=0&&St>=0?0:Math.min(Tt,St),ut<=270&<>=270||ut>270&<>=630?-1:Et>=0&&Ft>=0?0:Math.min(Et,Ft),lt>=360?1:Tt<=0&&St<=0?0:Math.max(Tt,St),nt]}(we),ae=fe[2]-fe[0],be=fe[3]-fe[1],Ie=Se/_e,Te=Math.abs(be/ae);Ie>Te?(xe=_e,he=(Se-(De=_e*Te))/oe.h/2,Ee=[de[0],de[1]],Me=[me[0]+he,me[1]-he]):(De=Se,he=(_e-(xe=Se/Te))/oe.w/2,Ee=[de[0]+he,de[1]-he],Me=[me[0],me[1]]),ee.xLength2=xe,ee.yLength2=De,ee.xDomain2=Ee,ee.yDomain2=Me;var Ne,qe=ee.xOffset2=oe.l+oe.w*Ee[0],ve=ee.yOffset2=oe.t+oe.h*(1-Me[1]),Ce=ee.radius=xe/ae,Ae=ee.innerRadius=ee.getHole(X)*Ce,ze=ee.cx=qe-Ce*fe[0],Ue=ee.cy=ve+Ce*fe[3],Ve=ee.cxx=ze-qe,Ye=ee.cyy=Ue-ve,$e=ue.side;$e==="counterclockwise"?(Ne=$e,$e="top"):$e==="clockwise"&&(Ne=$e,$e="bottom"),ee.radialAxis=ee.mockAxis(J,X,ue,{_id:"x",side:$e,_trueSide:Ne,domain:[Ae/oe.w,Ce/oe.w]}),ee.angularAxis=ee.mockAxis(J,X,ce,{side:"right",domain:[0,Math.PI],autorange:!1}),ee.doAutoRange(J,X),ee.updateAngularAxis(J,X),ee.updateRadialAxis(J,X),ee.updateRadialAxisTitle(J,X),ee.xaxis=ee.mockCartesianAxis(J,X,{_id:"x",domain:Ee}),ee.yaxis=ee.mockCartesianAxis(J,X,{_id:"y",domain:Me});var rt=ee.pathSubplot();ee.clipPaths.forTraces.select("path").attr("d",rt).attr("transform",h(Ve,Ye)),re.frontplot.attr("transform",h(qe,ve)).call(t.setClipUrl,ee._hasClipOnAxisFalse?null:ee.clipIds.forTraces,ee.gd),re.bg.attr("d",rt).attr("transform",h(ze,Ue)).call(l.fill,X.bgcolor)},W.mockAxis=function(J,X,ee,re){var oe=_.extendFlat({},ee,re);return a(oe,X,J),oe},W.mockCartesianAxis=function(J,X,ee){var re=this,oe=re.isSmith,ue=ee._id,ce=_.extendFlat({type:"linear"},ee);n(ce,J);var de={x:[0,2],y:[1,3]};return ce.setRange=function(){var me=re.sectorBBox,_e=de[ue],Se=re.radialAxis._rl,we=(Se[1]-Se[0])/(1-re.getHole(X));ce.range=[me[_e[0]]*we,me[_e[1]]*we]},ce.isPtWithinRange=ue!=="x"||oe?function(){return!0}:function(me){return re.isPtInside(me)},ce.setRange(),ce.setScale(),ce},W.doAutoRange=function(J,X){var ee=this,re=ee.gd,oe=ee.radialAxis,ue=ee.getRadial(X);s(re,oe);var ce=oe.range;ue.range=ce.slice(),ue._input.range=ce.slice(),oe._rl=[oe.r2l(ce[0],null,"gregorian"),oe.r2l(ce[1],null,"gregorian")]},W.updateRadialAxis=function(J,X){var ee=this,re=ee.gd,oe=ee.layers,ue=ee.radius,ce=ee.innerRadius,de=ee.cx,me=ee.cy,_e=ee.getRadial(X),Se=D(ee.getSector(X)[0],360),we=ee.radialAxis,xe=ce<ue,De=ee.isSmith;De||(ee.fillViewInitialKey("radialaxis.angle",_e.angle),ee.fillViewInitialKey("radialaxis.range",we.range.slice()),we.setGeometry()),we.tickangle==="auto"&&Se>90&&Se<=270&&(we.tickangle=180);var Ee=De?function(ve){var Ce=B(ee,P([ve.x,0]));return h(Ce[0]-de,Ce[1]-me)}:function(ve){return h(we.l2p(ve.x)+ce,0)},Me=De?function(ve){return z(ee,ve.x,-1/0,1/0)}:function(ve){return ee.pathArc(we.r2p(ve.x)+ce)},he=Z(_e);if(ee.radialTickLayout!==he&&(oe["radial-axis"].selectAll(".xtick").remove(),ee.radialTickLayout=he),xe){we.setScale();var fe=0,ae=De?(we.tickvals||[]).filter(function(ve){return ve>=0}).map(function(ve){return r.tickText(we,ve,!0,!1)}):r.calcTicks(we),be=De?ae:r.clipEnds(we,ae),Ie=r.getTickSigns(we)[2];De&&((we.ticks==="top"&&we.side==="bottom"||we.ticks==="bottom"&&we.side==="top")&&(Ie=-Ie),we.ticks==="top"&&we.side==="top"&&(fe=-we.ticklen),we.ticks==="bottom"&&we.side==="bottom"&&(fe=we.ticklen)),r.drawTicks(re,we,{vals:ae,layer:oe["radial-axis"],path:r.makeTickPath(we,0,Ie),transFn:Ee,crisp:!1}),r.drawGrid(re,we,{vals:be,layer:oe["radial-grid"],path:Me,transFn:_.noop,crisp:!1}),r.drawLabels(re,we,{vals:ae,layer:oe["radial-axis"],transFn:Ee,labelFns:r.makeLabelFns(we,fe)})}var Te=ee.radialAxisAngle=ee.vangles?V(ie(G(_e.angle),ee.vangles)):_e.angle,Ne=h(de,me),qe=Ne+y(-Te);te(oe["radial-axis"],xe&&(_e.showticklabels||_e.ticks),{transform:qe}),te(oe["radial-grid"],xe&&_e.showgrid,{transform:De?"":Ne}),te(oe["radial-line"].select("line"),xe&&_e.showline,{x1:De?-ue:ce,y1:0,x2:ue,y2:0,transform:qe}).attr("stroke-width",_e.linewidth).call(l.stroke,_e.linecolor)},W.updateRadialAxisTitle=function(J,X,ee){if(!this.isSmith){var re=this,oe=re.gd,ue=re.radius,ce=re.cx,de=re.cy,me=re.getRadial(X),_e=re.id+"title",Se=0;if(me.title){var we=t.bBox(re.layers["radial-axis"].node()).height,xe=me.title.font.size,De=me.side;Se=De==="top"?xe:De==="counterclockwise"?-(we+.4*xe):we+.8*xe}var Ee=ee!==void 0?ee:re.radialAxisAngle,Me=G(Ee),he=Math.cos(Me),fe=Math.sin(Me),ae=ce+ue/2*he+Se*fe,be=de-ue/2*fe+Se*he;re.layers["radial-axis-title"]=b.draw(oe,_e,{propContainer:me,propName:re.id+".radialaxis.title",placeholder:Y(oe,"Click to enter radial axis title"),attributes:{x:ae,y:be,"text-anchor":"middle"},transform:{rotate:-Ee}})}},W.updateAngularAxis=function(J,X){var ee=this,re=ee.gd,oe=ee.layers,ue=ee.radius,ce=ee.innerRadius,de=ee.cx,me=ee.cy,_e=ee.getAngular(X),Se=ee.angularAxis,we=ee.isSmith;we||(ee.fillViewInitialKey("angularaxis.rotation",_e.rotation),Se.setGeometry(),Se.setScale());var xe=we?function(ve){var Ce=B(ee,P([0,ve.x]));return Math.atan2(Ce[0]-de,Ce[1]-me)-Math.PI/2}:function(ve){return Se.t2g(ve.x)};Se.type==="linear"&&Se.thetaunit==="radians"&&(Se.tick0=V(Se.tick0),Se.dtick=V(Se.dtick));var De=function(ve){return h(de+ue*Math.cos(ve),me-ue*Math.sin(ve))},Ee=we?function(ve){var Ce=B(ee,P([0,ve.x]));return h(Ce[0],Ce[1])}:function(ve){return De(xe(ve))},Me=we?function(ve){var Ce=B(ee,P([0,ve.x])),Ae=Math.atan2(Ce[0]-de,Ce[1]-me)-Math.PI/2;return h(Ce[0],Ce[1])+y(-V(Ae))}:function(ve){var Ce=xe(ve);return De(Ce)+y(-V(Ce))},he=we?function(ve){return O(ee,ve.x,0,1/0)}:function(ve){var Ce=xe(ve),Ae=Math.cos(Ce),ze=Math.sin(Ce);return"M"+[de+ce*Ae,me-ce*ze]+"L"+[de+ue*Ae,me-ue*ze]},fe=r.makeLabelFns(Se,0).labelStandoff,ae={xFn:function(ve){var Ce=xe(ve);return Math.cos(Ce)*fe},yFn:function(ve){var Ce=xe(ve),Ae=Math.sin(Ce)>0?.2:1;return-Math.sin(Ce)*(fe+ve.fontSize*Ae)+Math.abs(Math.cos(Ce))*(ve.fontSize*d)},anchorFn:function(ve){var Ce=xe(ve),Ae=Math.cos(Ce);return Math.abs(Ae)<.1?"middle":Ae>0?"start":"end"},heightFn:function(ve,Ce,Ae){var ze=xe(ve);return-.5*(1+Math.sin(ze))*Ae}},be=Z(_e);ee.angularTickLayout!==be&&(oe["angular-axis"].selectAll("."+Se._id+"tick").remove(),ee.angularTickLayout=be);var Ie,Te=we?[1/0].concat(Se.tickvals||[]).map(function(ve){return r.tickText(Se,ve,!0,!1)}):r.calcTicks(Se);if(we&&(Te[0].text="∞",Te[0].fontSize*=1.75),X.gridshape==="linear"?(Ie=Te.map(xe),_.angleDelta(Ie[0],Ie[1])<0&&(Ie=Ie.slice().reverse())):Ie=null,ee.vangles=Ie,Se.type==="category"&&(Te=Te.filter(function(ve){return _.isAngleInsideSector(xe(ve),ee.sectorInRad)})),Se.visible){var Ne=Se.ticks==="inside"?-1:1,qe=(Se.linewidth||1)/2;r.drawTicks(re,Se,{vals:Te,layer:oe["angular-axis"],path:"M"+Ne*qe+",0h"+Ne*Se.ticklen,transFn:Me,crisp:!1}),r.drawGrid(re,Se,{vals:Te,layer:oe["angular-grid"],path:he,transFn:_.noop,crisp:!1}),r.drawLabels(re,Se,{vals:Te,layer:oe["angular-axis"],repositionOnUpdate:!0,transFn:Ee,labelFns:ae})}te(oe["angular-line"].select("path"),_e.showline,{d:ee.pathSubplot(),transform:h(de,me)}).attr("stroke-width",_e.linewidth).call(l.stroke,_e.linecolor)},W.updateFx=function(J,X){this.gd._context.staticPlot||(!this.isSmith&&(this.updateAngularDrag(J),this.updateRadialDrag(J,X,0),this.updateRadialDrag(J,X,1)),this.updateHoverAndMainDrag(J))},W.updateHoverAndMainDrag=function(J){var X,ee,re=this,oe=re.isSmith,ue=re.gd,ce=re.layers,de=J._zoomlayer,me=M.MINZOOM,_e=M.OFFEDGE,Se=re.radius,we=re.innerRadius,xe=re.cx,De=re.cy,Ee=re.cxx,Me=re.cyy,he=re.sectorInRad,fe=re.vangles,ae=re.radialAxis,be=A.clampTiny,Ie=A.findXYatLength,Te=A.findEnclosingVertexAngles,Ne=M.cornerHalfWidth,qe=M.cornerLen/2,ve=u.makeDragger(ce,"path","maindrag",J.dragmode===!1?"none":"crosshair");w.select(ve).attr("d",re.pathSubplot()).attr("transform",h(xe,De)),ve.onmousemove=function(ft){c.hover(ue,ft,re.id),ue._fullLayout._lasthover=ve,ue._fullLayout._hoversubplot=re.id},ve.onmouseout=function(ft){ue._dragging||p.unhover(ue,ft)};var Ce,Ae,ze,Ue,Ve,Ye,$e,rt,ht,nt={element:ve,gd:ue,subplot:re.id,plotinfo:{id:re.id,xaxis:re.xaxis,yaxis:re.yaxis},xaxes:[re.xaxis],yaxes:[re.yaxis]};function bt(ft,Be){return Math.sqrt(ft*ft+Be*Be)}function wt(ft,Be){return bt(ft-Ee,Be-Me)}function ut(ft,Be){return Math.atan2(Me-Be,ft-Ee)}function lt(ft,Be){return[ft*Math.cos(Be),ft*Math.sin(-Be)]}function Tt(ft,Be){if(ft===0)return re.pathSector(2*Ne);var je=qe/ft,at=Be-je,ot=Be+je,xt=Math.max(0,Math.min(ft,Se)),yt=xt-Ne,_t=xt+Ne;return"M"+lt(yt,at)+"A"+[yt,yt]+" 0,0,0 "+lt(yt,ot)+"L"+lt(_t,ot)+"A"+[_t,_t]+" 0,0,1 "+lt(_t,at)+"Z"}function Et(ft,Be,je){if(ft===0)return re.pathSector(2*Ne);var at,ot,xt=lt(ft,Be),yt=lt(ft,je),_t=be((xt[0]+yt[0])/2),gt=be((xt[1]+yt[1])/2);if(_t&>){var Ct=gt/_t,dt=-1/Ct,vt=Ie(Ne,Ct,_t,gt);at=Ie(qe,dt,vt[0][0],vt[0][1]),ot=Ie(qe,dt,vt[1][0],vt[1][1])}else{var At,Bt;gt?(At=qe,Bt=Ne):(At=Ne,Bt=qe),at=[[_t-At,gt-Bt],[_t+At,gt-Bt]],ot=[[_t-At,gt+Bt],[_t+At,gt+Bt]]}return"M"+at.join("L")+"L"+ot.reverse().join("L")+"Z"}function St(ft,Be){return Be=Math.max(Math.min(Be,Se),we),ft<_e?ft=0:Se-ft<_e?ft=Se:Be<_e?Be=0:Se-Be<_e&&(Be=Se),Math.abs(Be-ft)>me?(ft<Be?(ze=ft,Ue=Be):(ze=Be,Ue=ft),!0):(ze=null,Ue=null,!1)}function Ft(ft,Be){ft=ft||Ve,Be=Be||"M0,0Z",rt.attr("d",ft),ht.attr("d",Be),u.transitionZoombox(rt,ht,Ye,$e),Ye=!0;var je={};Qe(je),ue.emit("plotly_relayouting",je)}function zt(ft,Be){var je,at,ot=Ce+(ft*=X),xt=Ae+(Be*=ee),yt=wt(Ce,Ae),_t=Math.min(wt(ot,xt),Se),gt=ut(Ce,Ae);St(yt,_t)&&(je=Ve+re.pathSector(Ue),ze&&(je+=re.pathSector(ze)),at=Tt(ze,gt)+Tt(Ue,gt)),Ft(je,at)}function Je(ft,Be,je,at){var ot=A.findIntersectionXY(je,at,je,[ft-Ee,Me-Be]);return bt(ot[0],ot[1])}function et(ft,Be){var je,at,ot=Ce+ft,xt=Ae+Be,yt=ut(Ce,Ae),_t=ut(ot,xt),gt=Te(yt,fe),Ct=Te(_t,fe);St(Je(Ce,Ae,gt[0],gt[1]),Math.min(Je(ot,xt,Ct[0],Ct[1]),Se))&&(je=Ve+re.pathSector(Ue),ze&&(je+=re.pathSector(ze)),at=[Et(ze,gt[0],gt[1]),Et(Ue,gt[0],gt[1])].join(" ")),Ft(je,at)}function Ze(){if(u.removeZoombox(ue),ze!==null&&Ue!==null){var ft={};Qe(ft),u.showDoubleClickNotifier(ue),i.call("_guiRelayout",ue,ft)}}function Qe(ft){var Be=ae._rl,je=(Be[1]-Be[0])/(1-we/Se)/Se,at=[Be[0]+(ze-we)*je,Be[0]+(Ue-we)*je];ft[re.id+".radialaxis.range"]=at}function st(ft,Be){var je=ue._fullLayout.clickmode;if(u.removeZoombox(ue),ft===2){var at={};for(var ot in re.viewInitial)at[re.id+"."+ot]=re.viewInitial[ot];ue.emit("plotly_doubleclick",null),i.call("_guiRelayout",ue,at)}je.indexOf("select")>-1&&ft===1&&f(Be,ue,[re.xaxis],[re.yaxis],re.id,nt),je.indexOf("event")>-1&&c.click(ue,Be,re.id)}nt.prepFn=function(ft,Be,je){var at=ue._fullLayout.dragmode,ot=ve.getBoundingClientRect();ue._fullLayout._calcInverseTransform(ue);var xt=ue._fullLayout._invTransform;X=ue._fullLayout._invScaleX,ee=ue._fullLayout._invScaleY;var yt=_.apply3DTransform(xt)(Be-ot.left,je-ot.top);if(Ce=yt[0],Ae=yt[1],fe){var _t=A.findPolygonOffset(Se,he[0],he[1],fe);Ce+=Ee+_t[0],Ae+=Me+_t[1]}switch(at){case"zoom":nt.clickFn=st,oe||(nt.moveFn=fe?et:zt,nt.doneFn=Ze,function(){ze=null,Ue=null,Ve=re.pathSubplot(),Ye=!1;var gt=ue._fullLayout[re.id];$e=k(gt.bgcolor).getLuminance(),(rt=u.makeZoombox(de,$e,xe,De,Ve)).attr("fill-rule","evenodd"),ht=u.makeCorners(de,xe,De),v(ue)}());break;case"select":case"lasso":g(ft,Be,je,nt,at)}},p.init(nt)},W.updateRadialDrag=function(J,X,ee){var re=this,oe=re.gd,ue=re.layers,ce=re.radius,de=re.innerRadius,me=re.cx,_e=re.cy,Se=re.radialAxis,we=M.radialDragBoxSize,xe=we/2;if(Se.visible){var De,Ee,Me,he=G(re.radialAxisAngle),fe=Se._rl,ae=fe[0],be=fe[1],Ie=fe[ee],Te=.75*(fe[1]-fe[0])/(1-re.getHole(X))/ce;ee?(De=me+(ce+xe)*Math.cos(he),Ee=_e-(ce+xe)*Math.sin(he),Me="radialdrag"):(De=me+(de-xe)*Math.cos(he),Ee=_e-(de-xe)*Math.sin(he),Me="radialdrag-inner");var Ne,qe,ve,Ce=u.makeRectDragger(ue,Me,"crosshair",-xe,-xe,we,we),Ae={element:Ce,gd:oe};J.dragmode===!1&&(Ae.dragmode=!1),te(w.select(Ce),Se.visible&&de<ce,{transform:h(De,Ee)}),Ae.prepFn=function(){Ne=null,qe=null,ve=null,Ae.moveFn=ze,Ae.doneFn=Ue,v(oe)},Ae.clampFn=function($e,rt){return Math.sqrt($e*$e+rt*rt)<M.MINDRAG&&($e=0,rt=0),[$e,rt]},p.init(Ae)}function ze($e,rt){if(Ne)Ne($e,rt);else{var ht=[$e,-rt],nt=[Math.cos(he),Math.sin(he)],bt=Math.abs(_.dot(ht,nt)/Math.sqrt(_.dot(ht,ht)));isNaN(bt)||(Ne=bt<.5?Ve:Ye)}var wt={};(function(ut){qe!==null?ut[re.id+".radialaxis.angle"]=qe:ve!==null&&(ut[re.id+".radialaxis.range["+ee+"]"]=ve)})(wt),oe.emit("plotly_relayouting",wt)}function Ue(){qe!==null?i.call("_guiRelayout",oe,re.id+".radialaxis.angle",qe):ve!==null&&i.call("_guiRelayout",oe,re.id+".radialaxis.range["+ee+"]",ve)}function Ve($e,rt){if(ee!==0){var ht=De+$e,nt=Ee+rt;qe=Math.atan2(_e-nt,ht-me),re.vangles&&(qe=ie(qe,re.vangles)),qe=V(qe);var bt=h(me,_e)+y(-qe);ue["radial-axis"].attr("transform",bt),ue["radial-line"].select("line").attr("transform",bt);var wt=re.gd._fullLayout,ut=wt[re.id];re.updateRadialAxisTitle(wt,ut,qe)}}function Ye($e,rt){var ht=_.dot([$e,-rt],[Math.cos(he),Math.sin(he)]);if(ve=Ie-Te*ht,Te>0==(ee?ve>ae:ve<be)){var nt=oe._fullLayout,bt=nt[re.id];Se.range[ee]=ve,Se._rl[ee]=ve,re.updateRadialAxis(nt,bt),re.xaxis.setRange(),re.xaxis.setScale(),re.yaxis.setRange(),re.yaxis.setScale();var wt=!1;for(var ut in re.traceHash){var lt=re.traceHash[ut],Tt=_.filterVisible(lt);lt[0][0].trace._module.plot(oe,re,Tt,bt),i.traceIs(ut,"gl")&&Tt.length&&(wt=!0)}wt&&(x(oe),T(oe))}else ve=null}},W.updateAngularDrag=function(J){var X=this,ee=X.gd,re=X.layers,oe=X.radius,ue=X.angularAxis,ce=X.cx,de=X.cy,me=X.cxx,_e=X.cyy,Se=M.angularDragBoxSize,we=u.makeDragger(re,"path","angulardrag",J.dragmode===!1?"none":"move"),xe={element:we,gd:ee};function De(Ae,ze){return Math.atan2(_e+Se-ze,Ae-me-Se)}J.dragmode===!1?xe.dragmode=!1:w.select(we).attr("d",X.pathAnnulus(oe,oe+Se)).attr("transform",h(ce,de)).call(m,"move");var Ee,Me,he,fe,ae,be,Ie=re.frontplot.select(".scatterlayer").selectAll(".trace"),Te=Ie.selectAll(".point"),Ne=Ie.selectAll(".textpoint");function qe(Ae,ze){var Ue=X.gd._fullLayout,Ve=Ue[X.id],Ye=De(Ee+Ae*J._invScaleX,Me+ze*J._invScaleY),$e=V(Ye-be);if(fe=he+$e,re.frontplot.attr("transform",h(X.xOffset2,X.yOffset2)+y([-$e,me,_e])),X.vangles){ae=X.radialAxisAngle+$e;var rt=h(ce,de)+y(-$e),ht=h(ce,de)+y(-ae);re.bg.attr("transform",rt),re["radial-grid"].attr("transform",rt),re["radial-axis"].attr("transform",ht),re["radial-line"].select("line").attr("transform",ht),X.updateRadialAxisTitle(Ue,Ve,ae)}else X.clipPaths.forTraces.select("path").attr("transform",h(me,_e)+y($e));Te.each(function(){var Tt=w.select(this),Et=t.getTranslate(Tt);Tt.attr("transform",h(Et.x,Et.y)+y([$e]))}),Ne.each(function(){var Tt=w.select(this),Et=Tt.select("text"),St=t.getTranslate(Tt);Tt.attr("transform",y([$e,Et.attr("x"),Et.attr("y")])+h(St.x,St.y))}),ue.rotation=_.modHalf(fe,360),X.updateAngularAxis(Ue,Ve),X._hasClipOnAxisFalse&&!_.isFullCircle(X.sectorInRad)&&Ie.call(t.hideOutsideRangePoints,X);var nt=!1;for(var bt in X.traceHash)if(i.traceIs(bt,"gl")){var wt=X.traceHash[bt],ut=_.filterVisible(wt);wt[0][0].trace._module.plot(ee,X,ut,Ve),ut.length&&(nt=!0)}nt&&(x(ee),T(ee));var lt={};ve(lt),ee.emit("plotly_relayouting",lt)}function ve(Ae){Ae[X.id+".angularaxis.rotation"]=fe,X.vangles&&(Ae[X.id+".radialaxis.angle"]=ae)}function Ce(){Ne.select("text").attr("transform",null);var Ae={};ve(Ae),i.call("_guiRelayout",ee,Ae)}xe.prepFn=function(Ae,ze,Ue){var Ve=J[X.id];he=Ve.angularaxis.rotation;var Ye=we.getBoundingClientRect();Ee=ze-Ye.left,Me=Ue-Ye.top,ee._fullLayout._calcInverseTransform(ee);var $e=_.apply3DTransform(J._invTransform)(Ee,Me);Ee=$e[0],Me=$e[1],be=De(Ee,Me),xe.moveFn=qe,xe.doneFn=Ce,v(ee)},X.vangles&&!_.isFullCircle(X.sectorInRad)&&(xe.prepFn=_.noop,m(w.select(we),null)),p.init(xe)},W.isPtInside=function(J){if(this.isSmith)return!0;var X=this.sectorInRad,ee=this.vangles,re=this.angularAxis.c2g(J.theta),oe=this.radialAxis,ue=oe.c2l(J.r),ce=oe._rl;return(ee?A.isPtInsidePolygon:_.isPtInsideSector)(ue,re,ce,X,ee)},W.pathArc=function(J){var X=this.sectorInRad,ee=this.vangles;return(ee?A.pathPolygon:_.pathArc)(J,X[0],X[1],ee)},W.pathSector=function(J){var X=this.sectorInRad,ee=this.vangles;return(ee?A.pathPolygon:_.pathSector)(J,X[0],X[1],ee)},W.pathAnnulus=function(J,X){var ee=this.sectorInRad,re=this.vangles;return(re?A.pathPolygonAnnulus:_.pathAnnulus)(J,X,ee[0],ee[1],re)},W.pathSubplot=function(){var J=this.innerRadius,X=this.radius;return J?this.pathAnnulus(J,X):this.pathSector(X)},W.fillViewInitialKey=function(J,X){J in this.viewInitial||(this.viewInitial[J]=X)}},12101:function(R,E,e){var w=e(71828),k=e(21994),i=w.deg2rad,_=w.rad2deg;R.exports=function(y,h,l){switch(k(y,l),y._id){case"x":case"radialaxis":(function(t,o){var r=o._subplot;t.setGeometry=function(){var n=t._rl[0],a=t._rl[1],s=r.innerRadius,u=(r.radius-s)/(a-n),p=s/u,c=n>a?function(b){return b<=0}:function(b){return b>=0};t.c2g=function(b){var g=t.c2l(b)-n;return(c(g)?g:0)+p},t.g2c=function(b){return t.l2c(b+n-p)},t.g2p=function(b){return b*u},t.c2p=function(b){return t.g2p(t.c2g(b))}}})(y,h);break;case"angularaxis":(function(t,o){var r=t.type;if(r==="linear"){var n=t.d2c,a=t.c2d;t.d2c=function(s,u){return function(p,c){return c==="degrees"?i(p):p}(n(s),u)},t.c2d=function(s,u){return a(function(p,c){return c==="degrees"?_(p):p}(s,u))}}t.makeCalcdata=function(s,u){var p,c,b=s[u],g=s._length,f=function(d){return t.d2c(d,s.thetaunit)};if(b){if(w.isTypedArray(b)&&r==="linear"){if(g===b.length)return b;if(b.subarray)return b.subarray(0,g)}for(p=new Array(g),c=0;c<g;c++)p[c]=f(b[c])}else{var v=u+"0",m="d"+u,x=v in s?f(s[v]):0,T=s[m]?f(s[m]):(t.period||2*Math.PI)/g;for(p=new Array(g),c=0;c<g;c++)p[c]=x+c*T}return p},t.setGeometry=function(){var s,u,p,c,b=o.sector,g=b.map(i),f={clockwise:-1,counterclockwise:1}[t.direction],v=i(t.rotation),m=function(M){return f*M+v},x=function(M){return(M-v)/f};switch(r){case"linear":u=s=w.identity,c=i,p=_,t.range=w.isFullCircle(g)?[b[0],b[0]+360]:g.map(x).map(_);break;case"category":var T=t._categories.length,d=t.period?Math.max(t.period,T):T;d===0&&(d=1),u=c=function(M){return 2*M*Math.PI/d},s=p=function(M){return M*d/Math.PI/2},t.range=[0,d]}t.c2g=function(M){return m(u(M))},t.g2c=function(M){return s(x(M))},t.t2g=function(M){return m(c(M))},t.g2t=function(M){return p(x(M))}}})(y,h)}}},39779:function(R){R.exports={attr:"subplot",name:"smith",axisNames:["realaxis","imaginaryaxis"],axisName2dataArray:{imaginaryaxis:"imag",realaxis:"real"}}},23893:function(R){function E(i){return i<0?-1:i>0?1:0}function e(i){var _=i[0],y=i[1];if(!isFinite(_)||!isFinite(y))return[1,0];var h=(_+1)*(_+1)+y*y;return[(_*_+y*y-1)/h,2*y/h]}function w(i,_){var y=_[0],h=_[1];return[y*i.radius+i.cx,-h*i.radius+i.cy]}function k(i,_){return _*i.radius}R.exports={smith:e,reactanceArc:function(i,_,y,h){var l=w(i,e([y,_])),t=l[0],o=l[1],r=w(i,e([h,_])),n=r[0],a=r[1];if(_===0)return["M"+t+","+o,"L"+n+","+a].join(" ");var s=k(i,1/Math.abs(_));return["M"+t+","+o,"A"+s+","+s+" 0 0,"+(_<0?1:0)+" "+n+","+a].join(" ")},resistanceArc:function(i,_,y,h){var l=k(i,1/(_+1)),t=w(i,e([_,y])),o=t[0],r=t[1],n=w(i,e([_,h])),a=n[0],s=n[1];if(E(y)!==E(h)){var u=w(i,e([_,0]));return["M"+o+","+r,"A"+l+","+l+" 0 0,"+(0<y?0:1)+" "+u[0]+","+u[1],"A"+l+","+l+" 0 0,"+(h<0?0:1)+a+","+s].join(" ")}return["M"+o+","+r,"A"+l+","+l+" 0 0,"+(h<y?0:1)+" "+a+","+s].join(" ")},smithTransform:w}},7504:function(R,E,e){var w=e(27659).AU,k=e(71828).counterRegex,i=e(77997),_=e(39779),y=_.attr,h=_.name,l=k(h),t={};t[y]={valType:"subplotid",dflt:h,editType:"calc"},R.exports={attr:y,name:h,idRoot:h,idRegex:l,attrRegex:l,attributes:t,layoutAttributes:e(33419),supplyLayoutDefaults:e(9558),plot:function(o){for(var r=o._fullLayout,n=o.calcdata,a=r._subplots[h],s=0;s<a.length;s++){var u=a[s],p=w(n,h,u),c=r[u]._subplot;c||(c=i(o,u,!0),r[u]._subplot=c),c.plot(p,r,o._promises)}},clean:function(o,r,n,a){for(var s=a._subplots[h]||[],u=0;u<s.length;u++){var p=s[u],c=a[p]._subplot;if(!r[p]&&c)for(var b in c.framework.remove(),c.clipPaths)c.clipPaths[b].remove()}},toSVG:e(93612).toSVG}},33419:function(R,E,e){var w=e(22399),k=e(13838),i=e(27670).Y,_=e(71828).extendFlat,y=e(30962).overrideAll,h=y({color:k.color,showline:_({},k.showline,{dflt:!0}),linecolor:k.linecolor,linewidth:k.linewidth,showgrid:_({},k.showgrid,{dflt:!0}),gridcolor:k.gridcolor,gridwidth:k.gridwidth,griddash:k.griddash},"plot","from-root"),l=y({ticklen:k.ticklen,tickwidth:_({},k.tickwidth,{dflt:2}),tickcolor:k.tickcolor,showticklabels:k.showticklabels,labelalias:k.labelalias,showtickprefix:k.showtickprefix,tickprefix:k.tickprefix,showticksuffix:k.showticksuffix,ticksuffix:k.ticksuffix,tickfont:k.tickfont,tickformat:k.tickformat,hoverformat:k.hoverformat,layer:k.layer},"plot","from-root"),t=_({visible:_({},k.visible,{dflt:!0}),tickvals:{dflt:[.2,.5,1,2,5],valType:"data_array",editType:"plot"},tickangle:_({},k.tickangle,{dflt:90}),ticks:{valType:"enumerated",values:["top","bottom",""],editType:"ticks"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},editType:"calc"},h,l),o=_({visible:_({},k.visible,{dflt:!0}),tickvals:{valType:"data_array",editType:"plot"},ticks:k.ticks,editType:"calc"},h,l);R.exports={domain:i({name:"smith",editType:"plot"}),bgcolor:{valType:"color",editType:"plot",dflt:w.background},realaxis:t,imaginaryaxis:o,editType:"calc"}},9558:function(R,E,e){var w,k,i,_=e(71828),y=e(7901),h=e(44467),l=e(49119),t=e(27659).NG,o=e(89426),r=e(96115),n=e(92128),a=e(21994),s=e(33419),u=e(39779),p=u.axisNames,c=(w=function(g){return g.slice().reverse().map(function(f){return-f}).concat([0]).concat(g)},k=String,i={},function(g){var f=k?k(g):g;if(f in i)return i[f];var v=w(g);return i[f]=v,v});function b(g,f,v,m){var x=v("bgcolor");m.bgColor=y.combine(x,m.paper_bgcolor);var T,d=t(m.fullData,u.name,m.id),M=m.layoutOut;function A(W,Z){return v(T+"."+W,Z)}for(var C=0;C<p.length;C++){T=p[C],_.isPlainObject(g[T])||(g[T]={});var P=g[T],O=h.newContainer(f,T);O._id=O._name=T,O._attr=m.id+"."+T,O._traceIndices=d.map(function(W){return W._expandedIndex});var z=A("visible");if(O.type="linear",a(O,M),o(P,O,A,O.type),z){var B,Y,D,G,V=T==="realaxis";V&&A("side"),V?A("tickvals"):A("tickvals",c(f.realaxis.tickvals||s.realaxis.tickvals.dflt));var j=m.font||{};z&&(Y=(B=A("color"))===P.color?B:j.color,D=j.size,G=j.family),r(P,O,A,O.type,{noTicklabelstep:!0,noAng:!V,noExp:!0,font:{color:Y,size:D,family:G}}),_.coerce2(g,f,s,T+".ticklen"),_.coerce2(g,f,s,T+".tickwidth"),_.coerce2(g,f,s,T+".tickcolor",f.color),A("ticks")||(delete f[T].ticklen,delete f[T].tickwidth,delete f[T].tickcolor),n(P,O,A,{dfltColor:B,bgColor:m.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:s[T]}),A("layer")}A("hoverformat"),delete O.type,O._input=P}}R.exports=function(g,f,v){l(g,f,v,{noUirevision:!0,type:u.name,attributes:s,handleDefaults:b,font:f.font,paper_bgcolor:f.paper_bgcolor,fullData:v,layoutOut:f})}},49119:function(R,E,e){var w=e(71828),k=e(44467),i=e(27670).c;R.exports=function(_,y,h,l){var t,o,r=l.type,n=l.attributes,a=l.handleDefaults,s=l.partition||"x",u=y._subplots[r],p=u.length,c=p&&u[0].replace(/\d+$/,"");function b(m,x){return w.coerce(t,o,n,m,x)}for(var g=0;g<p;g++){var f=u[g];t=_[f]?_[f]:_[f]={},o=k.newContainer(y,f,c),l.noUirevision||b("uirevision",y.uirevision);var v={};v[s]=[g/p,(g+1)/p],i(o,y,b,v),l.id=f,a(t,o,b,l)}}},5386:function(R,E,e){var w=e(31562);function k(i){var _=i.description?" "+i.description:"",y=i.keys||[];if(y.length>0){for(var h=[],l=0;l<y.length;l++)h[l]="`"+y[l]+"`";_+="Finally, the template string has access to ",_=y.length===1?_+"variable "+h[0]:_+"variables "+h.slice(0,-1).join(", ")+" and "+h.slice(-1)+"."}return _}w.FORMAT_LINK,w.DATE_FORMAT_LINK,E.fF=function(i,_){i=i||{},k(_=_||{});var y={valType:"string",dflt:"",editType:i.editType||"none"};return i.arrayOk!==!1&&(y.arrayOk=!0),y},E.si=function(i,_){i=i||{},k(_=_||{});var y={valType:"string",dflt:"",editType:i.editType||"calc"};return i.arrayOk!==!1&&(y.arrayOk=!0),y},E.R=function(i,_){return _=_||{},(i=i||{}).newshape,k(_),{valType:"string",dflt:"",editType:i.editType||"arraydraw"}}},61639:function(R,E,e){var w=e(64380),k=e(27659).AU,i=e(71828).counterRegex,_="ternary";E.name=_;var y=E.attr="subplot";E.idRoot=_,E.idRegex=E.attrRegex=i(_),(E.attributes={})[y]={valType:"subplotid",dflt:"ternary",editType:"calc"},E.layoutAttributes=e(81367),E.supplyLayoutDefaults=e(25369),E.plot=function(h){for(var l=h._fullLayout,t=h.calcdata,o=l._subplots[_],r=0;r<o.length;r++){var n=o[r],a=k(t,_,n),s=l[n]._subplot;s||(s=new w({id:n,graphDiv:h,container:l._ternarylayer.node()},l),l[n]._subplot=s),s.plot(a,l,h._promises)}},E.clean=function(h,l,t,o){for(var r=o._subplots[_]||[],n=0;n<r.length;n++){var a=r[n],s=o[a]._subplot;!l[a]&&s&&(s.plotContainer.remove(),s.clipDef.remove(),s.clipDefRelative.remove(),s.layers["a-title"].remove(),s.layers["b-title"].remove(),s.layers["c-title"].remove())}}},81367:function(R,E,e){var w=e(22399),k=e(27670).Y,i=e(13838),_=e(30962).overrideAll,y=e(1426).extendFlat,h={title:{text:i.title.text,font:i.title.font},color:i.color,tickmode:i.minor.tickmode,nticks:y({},i.nticks,{dflt:6,min:1}),tick0:i.tick0,dtick:i.dtick,tickvals:i.tickvals,ticktext:i.ticktext,ticks:i.ticks,ticklen:i.ticklen,tickwidth:i.tickwidth,tickcolor:i.tickcolor,ticklabelstep:i.ticklabelstep,showticklabels:i.showticklabels,labelalias:i.labelalias,showtickprefix:i.showtickprefix,tickprefix:i.tickprefix,showticksuffix:i.showticksuffix,ticksuffix:i.ticksuffix,showexponent:i.showexponent,exponentformat:i.exponentformat,minexponent:i.minexponent,separatethousands:i.separatethousands,tickfont:i.tickfont,tickangle:i.tickangle,tickformat:i.tickformat,tickformatstops:i.tickformatstops,hoverformat:i.hoverformat,showline:y({},i.showline,{dflt:!0}),linecolor:i.linecolor,linewidth:i.linewidth,showgrid:y({},i.showgrid,{dflt:!0}),gridcolor:i.gridcolor,gridwidth:i.gridwidth,griddash:i.griddash,layer:i.layer,min:{valType:"number",dflt:0,min:0},_deprecated:{title:i._deprecated.title,titlefont:i._deprecated.titlefont}},l=R.exports=_({domain:k({name:"ternary"}),bgcolor:{valType:"color",dflt:w.background},sum:{valType:"number",dflt:1,min:0},aaxis:h,baxis:h,caxis:h},"plot","from-root");l.uirevision={valType:"any",editType:"none"},l.aaxis.uirevision=l.baxis.uirevision=l.caxis.uirevision={valType:"any",editType:"none"}},25369:function(R,E,e){var w=e(7901),k=e(44467),i=e(71828),_=e(49119),y=e(96115),h=e(89426),l=e(38701),t=e(26218),o=e(92128),r=e(81367),n=["aaxis","baxis","caxis"];function a(u,p,c,b){var g,f,v,m=c("bgcolor"),x=c("sum");b.bgColor=w.combine(m,b.paper_bgcolor);for(var T=0;T<n.length;T++)f=u[g=n[T]]||{},(v=k.newContainer(p,g))._name=g,s(f,v,b,p);var d=p.aaxis,M=p.baxis,A=p.caxis;d.min+M.min+A.min>=x&&(d.min=0,M.min=0,A.min=0,u.aaxis&&delete u.aaxis.min,u.baxis&&delete u.baxis.min,u.caxis&&delete u.caxis.min)}function s(u,p,c,b){var g=r[p._name];function f(M,A){return i.coerce(u,p,g,M,A)}f("uirevision",b.uirevision),p.type="linear";var v=f("color"),m=v!==g.color.dflt?v:c.font.color,x=p._name.charAt(0).toUpperCase(),T="Component "+x,d=f("title.text",T);p._hovertitle=d===T?d:x,i.coerceFont(f,"title.font",{family:c.font.family,size:i.bigFont(c.font.size),color:m}),f("min"),t(u,p,f,"linear"),h(u,p,f,"linear"),y(u,p,f,"linear"),l(u,p,f,{outerTicks:!0}),f("showticklabels")&&(i.coerceFont(f,"tickfont",{family:c.font.family,size:c.font.size,color:m}),f("tickangle"),f("tickformat")),o(u,p,f,{dfltColor:v,bgColor:c.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:g}),f("hoverformat"),f("layer")}R.exports=function(u,p,c){_(u,p,c,{type:"ternary",attributes:r,handleDefaults:a,font:p.font,paper_bgcolor:p.paper_bgcolor})}},64380:function(R,E,e){var w=e(39898),k=e(84267),i=e(73972),_=e(71828),y=_.strTranslate,h=_._,l=e(7901),t=e(91424),o=e(21994),r=e(1426).extendFlat,n=e(74875),a=e(89298),s=e(28569),u=e(30211),p=e(64505),c=p.freeMode,b=p.rectMode,g=e(92998),f=e(47322).prepSelect,v=e(47322).selectOnClick,m=e(47322).clearOutline,x=e(47322).clearSelectionsCache,T=e(85555);function d(D,G){this.id=D.id,this.graphDiv=D.graphDiv,this.init(G),this.makeFramework(G),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}R.exports=d;var M=d.prototype;M.init=function(D){this.container=D._ternarylayer,this.defs=D._defs,this.layoutId=D._uid,this.traceHash={},this.layers={}},M.plot=function(D,G){var V=this,j=G[V.id],W=G._size;V._hasClipOnAxisFalse=!1;for(var Z=0;Z<D.length;Z++)if(D[Z][0].trace.cliponaxis===!1){V._hasClipOnAxisFalse=!0;break}V.updateLayers(j),V.adjustLayout(j,W),n.generalUpdatePerTraceModule(V.graphDiv,V,D,j),V.layers.plotbg.select("path").call(l.fill,j.bgcolor)},M.makeFramework=function(D){var G=this,V=G.graphDiv,j=D[G.id],W=G.clipId="clip"+G.layoutId+G.id,Z=G.clipIdRelative="clip-relative"+G.layoutId+G.id;G.clipDef=_.ensureSingleById(D._clips,"clipPath",W,function(ie){ie.append("path").attr("d","M0,0Z")}),G.clipDefRelative=_.ensureSingleById(D._clips,"clipPath",Z,function(ie){ie.append("path").attr("d","M0,0Z")}),G.plotContainer=_.ensureSingle(G.container,"g",G.id),G.updateLayers(j),t.setClipUrl(G.layers.backplot,W,V),t.setClipUrl(G.layers.grids,W,V)},M.updateLayers=function(D){var G=this.layers,V=["draglayer","plotbg","backplot","grids"];D.aaxis.layer==="below traces"&&V.push("aaxis","aline"),D.baxis.layer==="below traces"&&V.push("baxis","bline"),D.caxis.layer==="below traces"&&V.push("caxis","cline"),V.push("frontplot"),D.aaxis.layer==="above traces"&&V.push("aaxis","aline"),D.baxis.layer==="above traces"&&V.push("baxis","bline"),D.caxis.layer==="above traces"&&V.push("caxis","cline");var j=this.plotContainer.selectAll("g.toplevel").data(V,String),W=["agrid","bgrid","cgrid"];j.enter().append("g").attr("class",function(Z){return"toplevel "+Z}).each(function(Z){var ie=w.select(this);G[Z]=ie,Z==="frontplot"?ie.append("g").classed("scatterlayer",!0):Z==="backplot"?ie.append("g").classed("maplayer",!0):Z==="plotbg"?ie.append("path").attr("d","M0,0Z"):Z==="aline"||Z==="bline"||Z==="cline"?ie.append("path"):Z==="grids"&&W.forEach(function(te){G[te]=ie.append("g").classed("grid "+te,!0)})}),j.order()};var A=Math.sqrt(4/3);M.adjustLayout=function(D,G){var V,j,W,Z,ie,te,J=this,X=D.domain,ee=(X.x[0]+X.x[1])/2,re=(X.y[0]+X.y[1])/2,oe=X.x[1]-X.x[0],ue=X.y[1]-X.y[0],ce=oe*G.w,de=ue*G.h,me=D.sum,_e=D.aaxis.min,Se=D.baxis.min,we=D.caxis.min;ce>A*de?W=(Z=de)*A:Z=(W=ce)/A,ie=oe*W/ce,te=ue*Z/de,V=G.l+G.w*ee-W/2,j=G.t+G.h*(1-re)-Z/2,J.x0=V,J.y0=j,J.w=W,J.h=Z,J.sum=me,J.xaxis={type:"linear",range:[_e+2*we-me,me-_e-2*Se],domain:[ee-ie/2,ee+ie/2],_id:"x"},o(J.xaxis,J.graphDiv._fullLayout),J.xaxis.setScale(),J.xaxis.isPtWithinRange=function(Ne){return Ne.a>=J.aaxis.range[0]&&Ne.a<=J.aaxis.range[1]&&Ne.b>=J.baxis.range[1]&&Ne.b<=J.baxis.range[0]&&Ne.c>=J.caxis.range[1]&&Ne.c<=J.caxis.range[0]},J.yaxis={type:"linear",range:[_e,me-Se-we],domain:[re-te/2,re+te/2],_id:"y"},o(J.yaxis,J.graphDiv._fullLayout),J.yaxis.setScale(),J.yaxis.isPtWithinRange=function(){return!0};var xe=J.yaxis.domain[0],De=J.aaxis=r({},D.aaxis,{range:[_e,me-Se-we],side:"left",tickangle:(+D.aaxis.tickangle||0)-30,domain:[xe,xe+te*A],anchor:"free",position:0,_id:"y",_length:W});o(De,J.graphDiv._fullLayout),De.setScale();var Ee=J.baxis=r({},D.baxis,{range:[me-_e-we,Se],side:"bottom",domain:J.xaxis.domain,anchor:"free",position:0,_id:"x",_length:W});o(Ee,J.graphDiv._fullLayout),Ee.setScale();var Me=J.caxis=r({},D.caxis,{range:[me-_e-Se,we],side:"right",tickangle:(+D.caxis.tickangle||0)+30,domain:[xe,xe+te*A],anchor:"free",position:0,_id:"y",_length:W});o(Me,J.graphDiv._fullLayout),Me.setScale();var he="M"+V+","+(j+Z)+"h"+W+"l-"+W/2+",-"+Z+"Z";J.clipDef.select("path").attr("d",he),J.layers.plotbg.select("path").attr("d",he);var fe="M0,"+Z+"h"+W+"l-"+W/2+",-"+Z+"Z";J.clipDefRelative.select("path").attr("d",fe);var ae=y(V,j);J.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",ae),J.clipDefRelative.select("path").attr("transform",null);var be=y(V-Ee._offset,j+Z);J.layers.baxis.attr("transform",be),J.layers.bgrid.attr("transform",be);var Ie=y(V+W/2,j)+"rotate(30)"+y(0,-De._offset);J.layers.aaxis.attr("transform",Ie),J.layers.agrid.attr("transform",Ie);var Te=y(V+W/2,j)+"rotate(-30)"+y(0,-Me._offset);J.layers.caxis.attr("transform",Te),J.layers.cgrid.attr("transform",Te),J.drawAxes(!0),J.layers.aline.select("path").attr("d",De.showline?"M"+V+","+(j+Z)+"l"+W/2+",-"+Z:"M0,0").call(l.stroke,De.linecolor||"#000").style("stroke-width",(De.linewidth||0)+"px"),J.layers.bline.select("path").attr("d",Ee.showline?"M"+V+","+(j+Z)+"h"+W:"M0,0").call(l.stroke,Ee.linecolor||"#000").style("stroke-width",(Ee.linewidth||0)+"px"),J.layers.cline.select("path").attr("d",Me.showline?"M"+(V+W/2)+","+j+"l"+W/2+","+Z:"M0,0").call(l.stroke,Me.linecolor||"#000").style("stroke-width",(Me.linewidth||0)+"px"),J.graphDiv._context.staticPlot||J.initInteractions(),t.setClipUrl(J.layers.frontplot,J._hasClipOnAxisFalse?null:J.clipId,J.graphDiv)},M.drawAxes=function(D){var G=this,V=G.graphDiv,j=G.id.substr(7)+"title",W=G.layers,Z=G.aaxis,ie=G.baxis,te=G.caxis;if(G.drawAx(Z),G.drawAx(ie),G.drawAx(te),D){var J=Math.max(Z.showticklabels?Z.tickfont.size/2:0,(te.showticklabels?.75*te.tickfont.size:0)+(te.ticks==="outside"?.87*te.ticklen:0)),X=(ie.showticklabels?ie.tickfont.size:0)+(ie.ticks==="outside"?ie.ticklen:0)+3;W["a-title"]=g.draw(V,"a"+j,{propContainer:Z,propName:G.id+".aaxis.title",placeholder:h(V,"Click to enter Component A title"),attributes:{x:G.x0+G.w/2,y:G.y0-Z.title.font.size/3-J,"text-anchor":"middle"}}),W["b-title"]=g.draw(V,"b"+j,{propContainer:ie,propName:G.id+".baxis.title",placeholder:h(V,"Click to enter Component B title"),attributes:{x:G.x0-X,y:G.y0+G.h+.83*ie.title.font.size+X,"text-anchor":"middle"}}),W["c-title"]=g.draw(V,"c"+j,{propContainer:te,propName:G.id+".caxis.title",placeholder:h(V,"Click to enter Component C title"),attributes:{x:G.x0+G.w+X,y:G.y0+G.h+.83*te.title.font.size+X,"text-anchor":"middle"}})}},M.drawAx=function(D){var G,V=this,j=V.graphDiv,W=D._name,Z=W.charAt(0),ie=D._id,te=V.layers[W],J=Z+"tickLayout",X=(G=D).ticks+String(G.ticklen)+String(G.showticklabels);V[J]!==X&&(te.selectAll("."+ie+"tick").remove(),V[J]=X),D.setScale();var ee=a.calcTicks(D),re=a.clipEnds(D,ee),oe=a.makeTransTickFn(D),ue=a.getTickSigns(D)[2],ce=_.deg2rad(30),de=ue*(D.linewidth||1)/2,me=ue*D.ticklen,_e=V.w,Se=V.h,we=Z==="b"?"M0,"+de+"l"+Math.sin(ce)*me+","+Math.cos(ce)*me:"M"+de+",0l"+Math.cos(ce)*me+","+-Math.sin(ce)*me,xe={a:"M0,0l"+Se+",-"+_e/2,b:"M0,0l-"+_e/2+",-"+Se,c:"M0,0l-"+Se+","+_e/2}[Z];a.drawTicks(j,D,{vals:D.ticks==="inside"?re:ee,layer:te,path:we,transFn:oe,crisp:!1}),a.drawGrid(j,D,{vals:re,layer:V.layers[Z+"grid"],path:xe,transFn:oe,crisp:!1}),a.drawLabels(j,D,{vals:ee,layer:te,transFn:oe,labelFns:a.makeLabelFns(D,0,30)})};var C=T.MINZOOM/2+.87,P="m-0.87,.5h"+C+"v3h-"+(C+5.2)+"l"+(C/2+2.6)+",-"+(.87*C+4.5)+"l2.6,1.5l-"+C/2+","+.87*C+"Z",O="m0.87,.5h-"+C+"v3h"+(C+5.2)+"l-"+(C/2+2.6)+",-"+(.87*C+4.5)+"l-2.6,1.5l"+C/2+","+.87*C+"Z",z="m0,1l"+C/2+","+.87*C+"l2.6,-1.5l-"+(C/2+2.6)+",-"+(.87*C+4.5)+"l-"+(C/2+2.6)+","+(.87*C+4.5)+"l2.6,1.5l"+C/2+",-"+.87*C+"Z",B=!0;function Y(D){w.select(D).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}M.clearOutline=function(){x(this.dragOptions),m(this.dragOptions.gd)},M.initInteractions=function(){var D,G,V,j,W,Z,ie,te,J,X,ee,re,oe=this,ue=oe.layers.plotbg.select("path").node(),ce=oe.graphDiv,de=ce._fullLayout._zoomlayer;function me(fe){var ae={};return ae[oe.id+".aaxis.min"]=fe.a,ae[oe.id+".baxis.min"]=fe.b,ae[oe.id+".caxis.min"]=fe.c,ae}function _e(fe,ae){var be=ce._fullLayout.clickmode;Y(ce),fe===2&&(ce.emit("plotly_doubleclick",null),i.call("_guiRelayout",ce,me({a:0,b:0,c:0}))),be.indexOf("select")>-1&&fe===1&&v(ae,ce,[oe.xaxis],[oe.yaxis],oe.id,oe.dragOptions),be.indexOf("event")>-1&&u.click(ce,ae,oe.id)}function Se(fe,ae){return 1-ae/oe.h}function we(fe,ae){return 1-(fe+(oe.h-ae)/Math.sqrt(3))/oe.w}function xe(fe,ae){return(fe-(oe.h-ae)/Math.sqrt(3))/oe.w}function De(fe,ae){var be=V+fe*D,Ie=j+ae*G,Te=Math.max(0,Math.min(1,Se(0,j),Se(0,Ie))),Ne=Math.max(0,Math.min(1,we(V,j),we(be,Ie))),qe=Math.max(0,Math.min(1,xe(V,j),xe(be,Ie))),ve=(Te/2+qe)*oe.w,Ce=(1-Te/2-Ne)*oe.w,Ae=(ve+Ce)/2,ze=Ce-ve,Ue=(1-Te)*oe.h,Ve=Ue-ze/A;ze<T.MINZOOM?(ie=W,ee.attr("d",J),re.attr("d","M0,0Z")):(ie={a:W.a+Te*Z,b:W.b+Ne*Z,c:W.c+qe*Z},ee.attr("d",J+"M"+ve+","+Ue+"H"+Ce+"L"+Ae+","+Ve+"L"+ve+","+Ue+"Z"),re.attr("d","M"+V+","+j+"m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2ZM"+ve+","+Ue+P+"M"+Ce+","+Ue+O+"M"+Ae+","+Ve+z)),X||(ee.transition().style("fill",te>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),re.transition().style("opacity",1).duration(200),X=!0),ce.emit("plotly_relayouting",me(ie))}function Ee(){Y(ce),ie!==W&&(i.call("_guiRelayout",ce,me(ie)),B&&ce.data&&ce._context.showTips&&(_.notifier(h(ce,"Double-click to zoom back out"),"long"),B=!1))}function Me(fe,ae){var be=fe/oe.xaxis._m,Ie=ae/oe.yaxis._m,Te=[(ie={a:W.a-Ie,b:W.b+(be+Ie)/2,c:W.c-(be-Ie)/2}).a,ie.b,ie.c].sort(_.sorterAsc),Ne=Te.indexOf(ie.a),qe=Te.indexOf(ie.b),ve=Te.indexOf(ie.c);Te[0]<0&&(Te[1]+Te[0]/2<0?(Te[2]+=Te[0]+Te[1],Te[0]=Te[1]=0):(Te[2]+=Te[0]/2,Te[1]+=Te[0]/2,Te[0]=0),ie={a:Te[Ne],b:Te[qe],c:Te[ve]},ae=(W.a-ie.a)*oe.yaxis._m,fe=(W.c-ie.c-W.b+ie.b)*oe.xaxis._m);var Ce=y(oe.x0+fe,oe.y0+ae);oe.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",Ce);var Ae=y(-fe,-ae);oe.clipDefRelative.select("path").attr("transform",Ae),oe.aaxis.range=[ie.a,oe.sum-ie.b-ie.c],oe.baxis.range=[oe.sum-ie.a-ie.c,ie.b],oe.caxis.range=[oe.sum-ie.a-ie.b,ie.c],oe.drawAxes(!1),oe._hasClipOnAxisFalse&&oe.plotContainer.select(".scatterlayer").selectAll(".trace").call(t.hideOutsideRangePoints,oe),ce.emit("plotly_relayouting",me(ie))}function he(){i.call("_guiRelayout",ce,me(ie))}this.dragOptions={element:ue,gd:ce,plotinfo:{id:oe.id,domain:ce._fullLayout[oe.id].domain,xaxis:oe.xaxis,yaxis:oe.yaxis},subplot:oe.id,prepFn:function(fe,ae,be){oe.dragOptions.xaxes=[oe.xaxis],oe.dragOptions.yaxes=[oe.yaxis],D=ce._fullLayout._invScaleX,G=ce._fullLayout._invScaleY;var Ie=oe.dragOptions.dragmode=ce._fullLayout.dragmode;c(Ie)?oe.dragOptions.minDrag=1:oe.dragOptions.minDrag=void 0,Ie==="zoom"?(oe.dragOptions.moveFn=De,oe.dragOptions.clickFn=_e,oe.dragOptions.doneFn=Ee,function(Te,Ne,qe){var ve=ue.getBoundingClientRect();V=Ne-ve.left,j=qe-ve.top,ce._fullLayout._calcInverseTransform(ce);var Ce=ce._fullLayout._invTransform,Ae=_.apply3DTransform(Ce)(V,j);V=Ae[0],j=Ae[1],W={a:oe.aaxis.range[0],b:oe.baxis.range[1],c:oe.caxis.range[1]},ie=W,Z=oe.aaxis.range[1]-W.a,te=k(oe.graphDiv._fullLayout[oe.id].bgcolor).getLuminance(),J="M0,"+oe.h+"L"+oe.w/2+", 0L"+oe.w+","+oe.h+"Z",X=!1,ee=de.append("path").attr("class","zoombox").attr("transform",y(oe.x0,oe.y0)).style({fill:te>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",J),re=de.append("path").attr("class","zoombox-corners").attr("transform",y(oe.x0,oe.y0)).style({fill:l.background,stroke:l.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),oe.clearOutline(ce)}(0,ae,be)):Ie==="pan"?(oe.dragOptions.moveFn=Me,oe.dragOptions.clickFn=_e,oe.dragOptions.doneFn=he,W={a:oe.aaxis.range[0],b:oe.baxis.range[1],c:oe.caxis.range[1]},ie=W,oe.clearOutline(ce)):(b(Ie)||c(Ie))&&f(fe,ae,be,oe.dragOptions,Ie)}},ue.onmousemove=function(fe){u.hover(ce,fe,oe.id),ce._fullLayout._lasthover=ue,ce._fullLayout._hoversubplot=oe.id},ue.onmouseout=function(fe){ce._dragging||s.unhover(ce,fe)},s.init(this.dragOptions)}},73972:function(R,E,e){var w=e(47769),k=e(64213),i=e(75138),_=e(41965),y=e(24401).addStyleRule,h=e(1426),l=e(9012),t=e(10820),o=h.extendFlat,r=h.extendDeepAll;function n(v){var m=v.name,x=v.categories,T=v.meta;if(E.modules[m])w.log("Type "+m+" already registered");else{E.subplotsRegistry[v.basePlotModule.name]||function(B){var Y=B.name;if(E.subplotsRegistry[Y])w.log("Plot type "+Y+" already registered.");else for(var D in p(B),E.subplotsRegistry[Y]=B,E.componentsRegistry)g(D,B.name)}(v.basePlotModule);for(var d={},M=0;M<x.length;M++)d[x[M]]=!0,E.allCategories[x[M]]=!0;for(var A in E.modules[m]={_module:v,categories:d},T&&Object.keys(T).length&&(E.modules[m].meta=T),E.allTypes.push(m),E.componentsRegistry)c(A,m);v.layoutAttributes&&o(E.traceLayoutAttributes,v.layoutAttributes);var C=v.basePlotModule,P=C.name;if(P==="mapbox"){var O=C.constants.styleRules;for(var z in O)y(".js-plotly-plot .plotly .mapboxgl-"+z,O[z])}P!=="geo"&&P!=="mapbox"||window.PlotlyGeoAssets!==void 0||(window.PlotlyGeoAssets={topojson:{}})}}function a(v){if(typeof v.name!="string")throw new Error("Component module *name* must be a string.");var m=v.name;for(var x in E.componentsRegistry[m]=v,v.layoutAttributes&&(v.layoutAttributes._isLinkedToArray&&i(E.layoutArrayContainers,m),p(v)),E.modules)c(m,x);for(var T in E.subplotsRegistry)g(m,T);for(var d in E.transformsRegistry)b(m,d);v.schema&&v.schema.layout&&r(t,v.schema.layout)}function s(v){if(typeof v.name!="string")throw new Error("Transform module *name* must be a string.");var m="Transform module "+v.name,x=typeof v.transform=="function",T=typeof v.calcTransform=="function";if(!x&&!T)throw new Error(m+" is missing a *transform* or *calcTransform* method.");for(var d in x&&T&&w.log([m+" has both a *transform* and *calcTransform* methods.","Please note that all *transform* methods are executed","before all *calcTransform* methods."].join(" ")),_(v.attributes)||w.log(m+" registered without an *attributes* object."),typeof v.supplyDefaults!="function"&&w.log(m+" registered without a *supplyDefaults* method."),E.transformsRegistry[v.name]=v,E.componentsRegistry)b(d,v.name)}function u(v){var m=v.name,x=m.split("-")[0],T=v.dictionary,d=v.format,M=T&&Object.keys(T).length,A=d&&Object.keys(d).length,C=E.localeRegistry,P=C[m];if(P||(C[m]=P={}),x!==m){var O=C[x];O||(C[x]=O={}),M&&O.dictionary===P.dictionary&&(O.dictionary=T),A&&O.format===P.format&&(O.format=d)}M&&(P.dictionary=T),A&&(P.format=d)}function p(v){if(v.layoutAttributes){var m=v.layoutAttributes._arrayAttrRegexps;if(m)for(var x=0;x<m.length;x++)i(E.layoutArrayRegexes,m[x])}}function c(v,m){var x=E.componentsRegistry[v].schema;if(x&&x.traces){var T=x.traces[m];T&&r(E.modules[m]._module.attributes,T)}}function b(v,m){var x=E.componentsRegistry[v].schema;if(x&&x.transforms){var T=x.transforms[m];T&&r(E.transformsRegistry[m].attributes,T)}}function g(v,m){var x=E.componentsRegistry[v].schema;if(x&&x.subplots){var T=E.subplotsRegistry[m],d=T.layoutAttributes,M=T.attr==="subplot"?T.name:T.attr;Array.isArray(M)&&(M=M[0]);var A=x.subplots[M];d&&A&&r(d,A)}}function f(v){return typeof v=="object"&&(v=v.type),v}E.modules={},E.allCategories={},E.allTypes=[],E.subplotsRegistry={},E.transformsRegistry={},E.componentsRegistry={},E.layoutArrayContainers=[],E.layoutArrayRegexes=[],E.traceLayoutAttributes={},E.localeRegistry={},E.apiMethodRegistry={},E.collectableSubplotTypes=null,E.register=function(v){if(E.collectableSubplotTypes=null,!v)throw new Error("No argument passed to Plotly.register.");v&&!Array.isArray(v)&&(v=[v]);for(var m=0;m<v.length;m++){var x=v[m];if(!x)throw new Error("Invalid module was attempted to be registered!");switch(x.moduleType){case"trace":n(x);break;case"transform":s(x);break;case"component":a(x);break;case"locale":u(x);break;case"apiMethod":var T=x.name;E.apiMethodRegistry[T]=x.fn;break;default:throw new Error("Invalid module was attempted to be registered!")}}},E.getModule=function(v){var m=E.modules[f(v)];return!!m&&m._module},E.traceIs=function(v,m){if((v=f(v))==="various")return!1;var x=E.modules[v];return x||(v&&w.log("Unrecognized trace type "+v+"."),x=E.modules[l.type.dflt]),!!x.categories[m]},E.getTransformIndices=function(v,m){for(var x=[],T=v.transforms||[],d=0;d<T.length;d++)T[d].type===m&&x.push(d);return x},E.hasTransform=function(v,m){for(var x=v.transforms||[],T=0;T<x.length;T++)if(x[T].type===m)return!0;return!1},E.getComponentMethod=function(v,m){var x=E.componentsRegistry[v];return x&&x[m]||k},E.call=function(){var v=arguments[0],m=[].slice.call(arguments,1);return E.apiMethodRegistry[v].apply(null,m)}},61914:function(R,E,e){var w=e(73972),k=e(71828),i=k.extendFlat,_=k.extendDeep;function y(h){var l;switch(h){case"themes__thumb":l={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":l={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:l={}}return l}R.exports=function(h,l){var t,o,r=h.data,n=h.layout,a=_([],r),s=_({},n,y(l.tileClass)),u=h._context||{};if(l.width&&(s.width=l.width),l.height&&(s.height=l.height),l.tileClass==="thumbnail"||l.tileClass==="themes__thumb"){s.annotations=[];var p=Object.keys(s);for(t=0;t<p.length;t++)o=p[t],["xaxis","yaxis","zaxis"].indexOf(o.slice(0,5))>-1&&(s[p[t]].title={text:""});for(t=0;t<a.length;t++){var c=a[t];c.showscale=!1,c.marker&&(c.marker.showscale=!1),w.traceIs(c,"pie-like")&&(c.textposition="none")}}if(Array.isArray(l.annotations))for(t=0;t<l.annotations.length;t++)s.annotations.push(l.annotations[t]);var b=Object.keys(s).filter(function(x){return x.match(/^scene\d*$/)});if(b.length){var g={};for(l.tileClass==="thumbnail"&&(g={title:{text:""},showaxeslabels:!1,showticklabels:!1,linetickenable:!1}),t=0;t<b.length;t++){var f=s[b[t]];f.xaxis||(f.xaxis={}),f.yaxis||(f.yaxis={}),f.zaxis||(f.zaxis={}),i(f.xaxis,g),i(f.yaxis,g),i(f.zaxis,g),f._scene=null}}var v=document.createElement("div");l.tileClass&&(v.className=l.tileClass);var m={gd:v,td:v,layout:s,data:a,config:{staticPlot:l.staticPlot===void 0||l.staticPlot,plotGlPixelRatio:l.plotGlPixelRatio===void 0?2:l.plotGlPixelRatio,displaylogo:l.displaylogo||!1,showLink:l.showLink||!1,showTips:l.showTips||!1,mapboxAccessToken:u.mapboxAccessToken}};return l.setBackground!=="transparent"&&(m.config.setBackground=l.setBackground||"opaque"),m.gd.defaultLayout=y(l.tileClass),m}},7239:function(R,E,e){var w=e(71828),k=e(403),i=e(22435),_=e(25095);R.exports=function(y,h){var l;return w.isPlainObject(y)||(l=w.getGraphDiv(y)),(h=h||{}).format=h.format||"png",h.width=h.width||null,h.height=h.height||null,h.imageDataOnly=!0,new Promise(function(t,o){l&&l._snapshotInProgress&&o(new Error("Snapshotting already in progress.")),w.isIE()&&h.format!=="svg"&&o(new Error(_.MSG_IE_BAD_FORMAT)),l&&(l._snapshotInProgress=!0);var r=k(y,h),n=h.filename||y.fn||"newplot";n+="."+h.format.replace("-","."),r.then(function(a){return l&&(l._snapshotInProgress=!1),i(a,n,h.format)}).then(function(a){t(a)}).catch(function(a){l&&(l._snapshotInProgress=!1),o(a)})})}},22435:function(R,E,e){var w=e(71828),k=e(25095);R.exports=function(i,_,y){var h=document.createElement("a"),l="download"in h;return new Promise(function(t,o){var r,n;if(w.isIE())return r=k.createBlob(i,"svg"),window.navigator.msSaveBlob(r,_),r=null,t(_);if(l)return r=k.createBlob(i,y),n=k.createObjectURL(r),h.href=n,h.download=_,document.body.appendChild(h),h.click(),document.body.removeChild(h),k.revokeObjectURL(n),r=null,t(_);if(w.isSafari()){var a=y==="svg"?",":";base64,";return k.octetStream(a+encodeURIComponent(i)),t(_)}o(new Error("download error"))})}},25095:function(R,E,e){var w=e(73972);E.getDelay=function(i){return i._has&&(i._has("gl3d")||i._has("gl2d")||i._has("mapbox"))?500:0},E.getRedrawFunc=function(i){return function(){w.getComponentMethod("colorbar","draw")(i)}},E.encodeSVG=function(i){return"data:image/svg+xml,"+encodeURIComponent(i)},E.encodeJSON=function(i){return"data:application/json,"+encodeURIComponent(i)};var k=window.URL||window.webkitURL;E.createObjectURL=function(i){return k.createObjectURL(i)},E.revokeObjectURL=function(i){return k.revokeObjectURL(i)},E.createBlob=function(i,_){if(_==="svg")return new window.Blob([i],{type:"image/svg+xml;charset=utf-8"});if(_==="full-json")return new window.Blob([i],{type:"application/json;charset=utf-8"});var y=function(h){for(var l=h.length,t=new ArrayBuffer(l),o=new Uint8Array(t),r=0;r<l;r++)o[r]=h.charCodeAt(r);return t}(window.atob(i));return new window.Blob([y],{type:"image/"+_})},E.octetStream=function(i){document.location.href="data:application/octet-stream"+i},E.IMAGE_URL_PREFIX=/^data:image\/\w+;base64,/,E.MSG_IE_BAD_FORMAT="Sorry IE does not support downloading from canvas. Try {format:'svg'} instead."},44511:function(R,E,e){var w=e(25095),k={getDelay:w.getDelay,getRedrawFunc:w.getRedrawFunc,clone:e(61914),toSVG:e(5900),svgToImg:e(70942),toImage:e(56395),downloadImage:e(7239)};R.exports=k},70942:function(R,E,e){var w=e(71828),k=e(15398).EventEmitter,i=e(25095);R.exports=function(_){var y=_.emitter||new k,h=new Promise(function(l,t){var o=window.Image,r=_.svg,n=_.format||"png";if(w.isIE()&&n!=="svg"){var a=new Error(i.MSG_IE_BAD_FORMAT);return t(a),_.promise?h:y.emit("error",a)}var s,u,p=_.canvas,c=_.scale||1,b=_.width||300,g=_.height||150,f=c*b,v=c*g,m=p.getContext("2d",{willReadFrequently:!0}),x=new o;n==="svg"||w.isSafari()?u=i.encodeSVG(r):(s=i.createBlob(r,"svg"),u=i.createObjectURL(s)),p.width=f,p.height=v,x.onload=function(){var T;switch(s=null,i.revokeObjectURL(u),n!=="svg"&&m.drawImage(x,0,0,f,v),n){case"jpeg":T=p.toDataURL("image/jpeg");break;case"png":T=p.toDataURL("image/png");break;case"webp":T=p.toDataURL("image/webp");break;case"svg":T=u;break;default:var d="Image format is not jpeg, png, svg or webp.";if(t(new Error(d)),!_.promise)return y.emit("error",d)}l(T),_.promise||y.emit("success",T)},x.onerror=function(T){if(s=null,i.revokeObjectURL(u),t(T),!_.promise)return y.emit("error",T)},x.src=u});return _.promise?h:y}},56395:function(R,E,e){var w=e(15398).EventEmitter,k=e(73972),i=e(71828),_=e(25095),y=e(61914),h=e(5900),l=e(70942);R.exports=function(t,o){var r=new w,n=y(t,{format:"png"}),a=n.gd;a.style.position="absolute",a.style.left="-5000px",document.body.appendChild(a);var s=_.getRedrawFunc(a);return k.call("_doPlot",a,n.data,n.layout,n.config).then(s).then(function(){var u=_.getDelay(a._fullLayout);setTimeout(function(){var p=h(a),c=document.createElement("canvas");c.id=i.randstr(),(r=l({format:o.format,width:a._fullLayout.width,height:a._fullLayout.height,canvas:c,emitter:r,svg:p})).clean=function(){a&&document.body.removeChild(a)}},u)}).catch(function(u){r.emit("error",u)}),r}},5900:function(R,E,e){var w=e(39898),k=e(71828),i=e(91424),_=e(7901),y=e(77922),h=/"/g,l="TOBESTRIPPED",t=new RegExp('("'+l+")|("+l+'")',"g");R.exports=function(o,r,n){var a,s=o._fullLayout,u=s._paper,p=s._toppaper,c=s.width,b=s.height;u.insert("rect",":first-child").call(i.setRect,0,0,c,b).call(_.fill,s.paper_bgcolor);var g=s._basePlotModules||[];for(a=0;a<g.length;a++){var f=g[a];f.toSVG&&f.toSVG(o)}if(p){var v=p.node().childNodes,m=Array.prototype.slice.call(v);for(a=0;a<m.length;a++){var x=m[a];x.childNodes.length&&u.node().appendChild(x)}}s._draggers&&s._draggers.remove(),u.node().style.background="",u.selectAll("text").attr({"data-unformatted":null,"data-math":null}).each(function(){var d=w.select(this);if(this.style.visibility!=="hidden"&&this.style.display!=="none"){d.style({visibility:null,display:null});var M=this.style.fontFamily;M&&M.indexOf('"')!==-1&&d.style("font-family",M.replace(h,l))}else d.remove()}),u.selectAll(".gradient_filled,.pattern_filled").each(function(){var d=w.select(this),M=this.style.fill;M&&M.indexOf("url(")!==-1&&d.style("fill",M.replace(h,l));var A=this.style.stroke;A&&A.indexOf("url(")!==-1&&d.style("stroke",A.replace(h,l))}),r!=="pdf"&&r!=="eps"||u.selectAll("#MathJax_SVG_glyphs path").attr("stroke-width",0),u.node().setAttributeNS(y.xmlns,"xmlns",y.svg),u.node().setAttributeNS(y.xmlns,"xmlns:xlink",y.xlink),r==="svg"&&n&&(u.attr("width",n*c),u.attr("height",n*b),u.attr("viewBox","0 0 "+c+" "+b));var T=new window.XMLSerializer().serializeToString(u.node());return T=(T=(T=function(d){var M=w.select("body").append("div").style({display:"none"}).html(""),A=d.replace(/(&[^;]*;)/gi,function(C){return C==="<"?"<":C==="&rt;"?">":C.indexOf("<")!==-1||C.indexOf(">")!==-1?"":M.html(C).text()});return M.remove(),A}(T)).replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&")).replace(t,"'"),k.isIE()&&(T=(T=(T=T.replace(/"/gi,"'")).replace(/(\('#)([^']*)('\))/gi,'("#$2")')).replace(/(\\')/gi,'"')),T}},75341:function(R,E,e){var w=e(71828);R.exports=function(k,i){for(var _=0;_<k.length;_++)k[_].i=_;w.mergeArray(i.text,k,"tx"),w.mergeArray(i.hovertext,k,"htx");var y=i.marker;if(y){w.mergeArray(y.opacity,k,"mo",!0),w.mergeArray(y.color,k,"mc");var h=y.line;h&&(w.mergeArray(h.color,k,"mlc"),w.mergeArrayCastPositive(h.width,k,"mlw"))}}},1486:function(R,E,e){var w=e(82196),k=e(12663).axisHoverFormat,i=e(5386).fF,_=e(5386).si,y=e(50693),h=e(41940),l=e(97313),t=e(79952).u,o=e(1426).extendFlat,r=h({editType:"calc",arrayOk:!0,colorEditType:"style"}),n=o({},w.marker.line.width,{dflt:0}),a=o({width:n,editType:"calc"},y("marker.line")),s=o({line:a,editType:"calc"},y("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:t});R.exports={x:w.x,x0:w.x0,dx:w.dx,y:w.y,y0:w.y0,dy:w.dy,xperiod:w.xperiod,yperiod:w.yperiod,xperiod0:w.xperiod0,yperiod0:w.yperiod0,xperiodalignment:w.xperiodalignment,yperiodalignment:w.yperiodalignment,xhoverformat:k("x"),yhoverformat:k("y"),text:w.text,texttemplate:_({editType:"plot"},{keys:l.eventDataKeys}),hovertext:w.hovertext,hovertemplate:i({},{keys:l.eventDataKeys}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:o({},r,{}),insidetextfont:o({},r,{}),outsidetextfont:o({},r,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:o({},w.cliponaxis,{}),orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},base:{valType:"any",dflt:null,arrayOk:!0,editType:"calc"},offset:{valType:"number",dflt:null,arrayOk:!0,editType:"calc"},width:{valType:"number",dflt:null,min:0,arrayOk:!0,editType:"calc"},marker:s,offsetgroup:w.offsetgroup,alignmentgroup:w.alignmentgroup,selected:{marker:{opacity:w.selected.marker.opacity,color:w.selected.marker.color,editType:"style"},textfont:w.selected.textfont,editType:"style"},unselected:{marker:{opacity:w.unselected.marker.opacity,color:w.unselected.marker.color,editType:"style"},textfont:w.unselected.textfont,editType:"style"},_deprecated:{bardir:{valType:"enumerated",editType:"calc",values:["v","h"]}}}},92290:function(R,E,e){var w=e(89298),k=e(42973),i=e(52075).hasColorscale,_=e(78803),y=e(75341),h=e(66279);R.exports=function(l,t){var o,r,n,a,s,u,p=w.getFromId(l,t.xaxis||"x"),c=w.getFromId(l,t.yaxis||"y"),b={msUTC:!(!t.base&&t.base!==0)};t.orientation==="h"?(o=p.makeCalcdata(t,"x",b),n=c.makeCalcdata(t,"y"),a=k(t,c,"y",n),s=!!t.yperiodalignment,u="y"):(o=c.makeCalcdata(t,"y",b),n=p.makeCalcdata(t,"x"),a=k(t,p,"x",n),s=!!t.xperiodalignment,u="x"),r=a.vals;for(var g=Math.min(r.length,o.length),f=new Array(g),v=0;v<g;v++)f[v]={p:r[v],s:o[v]},s&&(f[v].orig_p=n[v],f[v][u+"End"]=a.ends[v],f[v][u+"Start"]=a.starts[v]),t.ids&&(f[v].id=String(t.ids[v]));return i(t,"marker")&&_(l,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),i(t,"marker.line")&&_(l,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}),y(f,t),h(f,t),f}},97313:function(R){R.exports={TEXTPAD:3,eventDataKeys:["value","label"]}},11661:function(R,E,e){var w=e(92770),k=e(71828).isArrayOrTypedArray,i=e(50606).BADNUM,_=e(73972),y=e(89298),h=e(99082).getAxisGroup,l=e(61546);function t(g,f,v,m,x){if(m.length){var T,d,M,A;switch(function(C,P){var O,z;for(O=0;O<P.length;O++){var B,Y=P[O],D=Y[0].trace,G=D.type==="funnel"?D._base:D.base,V=D.orientation==="h"?D.xcalendar:D.ycalendar,j=C.type==="category"||C.type==="multicategory"?function(){return null}:C.d2c;if(k(G)){for(z=0;z<Math.min(G.length,Y.length);z++)B=j(G[z],0,V),w(B)?(Y[z].b=+B,Y[z].hasB=1):Y[z].b=0;for(;z<Y.length;z++)Y[z].b=0}else{B=j(G,0,V);var W=w(B);for(B=W?B:0,z=0;z<Y.length;z++)Y[z].b=B,W&&(Y[z].hasB=1)}}}(v,m),x.mode){case"overlay":o(f,v,m,x);break;case"group":for(T=[],d=[],M=0;M<m.length;M++)(A=m[M])[0].trace.offset===void 0?d.push(A):T.push(A);d.length&&function(C,P,O,z,B){var Y=new l(z,{posAxis:P,sepNegVal:!1,overlapNoMerge:!B.norm});(function(D,G,V,j){for(var W=D._fullLayout,Z=V.positions,ie=V.distinctPositions,te=V.minDiff,J=V.traces,X=J.length,ee=Z.length!==ie.length,re=te*(1-j.gap),oe=h(W,G._id)+J[0][0].trace.orientation,ue=W._alignmentOpts[oe]||{},ce=0;ce<X;ce++){var de,me,_e=J[ce],Se=_e[0].trace,we=ue[Se.alignmentgroup]||{},xe=Object.keys(we.offsetGroups||{}).length,De=(de=xe?re/xe:ee?re/X:re)*(1-(j.groupgap||0));me=xe?((2*Se._offsetIndex+1-xe)*de-De)/2:ee?((2*ce+1-X)*de-De)/2:-De/2;var Ee=_e[0].t;Ee.barwidth=De,Ee.poffset=me,Ee.bargroupwidth=re,Ee.bardelta=te}V.binWidth=J[0][0].t.barwidth/100,n(V),a(G,V),s(G,V,ee)})(C,P,Y,B),function(D,G){for(var V=D.traces,j=0;j<V.length;j++){var W=V[j];if(W[0].trace.base===void 0)for(var Z=new l([W],{posAxis:G,sepNegVal:!0,overlapNoMerge:!0}),ie=0;ie<W.length;ie++){var te=W[ie];if(te.p!==i){var J=Z.put(te.p,te.b+te.s);J&&(te.b=J)}}}}(Y,P),B.norm?(p(Y),c(O,Y,B)):u(O,Y)}(g,f,v,d,x),T.length&&o(f,v,T,x);break;case"stack":case"relative":for(T=[],d=[],M=0;M<m.length;M++)(A=m[M])[0].trace.base===void 0?d.push(A):T.push(A);d.length&&function(C,P,O,z,B){var Y=new l(z,{posAxis:P,sepNegVal:B.mode==="relative",overlapNoMerge:!(B.norm||B.mode==="stack"||B.mode==="relative")});r(P,Y,B),function(W,Z,ie){var te,J,X,ee,re,oe,ue=b(W),ce=Z.traces;for(ee=0;ee<ce.length;ee++)if((J=(te=ce[ee])[0].trace).type==="funnel")for(re=0;re<te.length;re++)(oe=te[re]).s!==i&&Z.put(oe.p,-.5*oe.s);for(ee=0;ee<ce.length;ee++){X=(J=(te=ce[ee])[0].trace).type==="funnel";var de=[];for(re=0;re<te.length;re++)if((oe=te[re]).s!==i){var me;me=X?oe.s:oe.s+oe.b;var _e=Z.put(oe.p,me),Se=_e+me;oe.b=_e,oe[ue]=Se,ie.norm||(de.push(Se),oe.hasB&&de.push(_e))}ie.norm||(J._extremes[W._id]=y.findExtremes(W,de,{tozero:!0,padded:!0}))}}(O,Y,B);for(var D=0;D<z.length;D++)for(var G=z[D],V=0;V<G.length;V++){var j=G[V];j.s!==i&&j.b+j.s===Y.get(j.p,j.s)&&(j._outmost=!0)}B.norm&&c(O,Y,B)}(0,f,v,d,x),T.length&&o(f,v,T,x)}(function(C,P){var O,z,B,Y=b(P),D={},G=1/0,V=-1/0;for(O=0;O<C.length;O++)for(B=C[O],z=0;z<B.length;z++){var j=B[z].p;w(j)&&(G=Math.min(G,j),V=Math.max(V,j))}var W=1e4/(V-G),Z=D.round=function(oe){return String(Math.round(W*(oe-G)))};for(O=0;O<C.length;O++){(B=C[O])[0].t.extents=D;var ie=B[0].t.poffset,te=Array.isArray(ie);for(z=0;z<B.length;z++){var J=B[z],X=J[Y]-J.w/2;if(w(X)){var ee=J[Y]+J.w/2,re=Z(J.p);D[re]?D[re]=[Math.min(X,D[re][0]),Math.max(ee,D[re][1])]:D[re]=[X,ee]}J.p0=J.p+(te?ie[z]:ie),J.p1=J.p0+J.w,J.s0=J.b,J.s1=J.s0+J.s}}})(m,f)}}function o(g,f,v,m){for(var x=0;x<v.length;x++){var T=v[x],d=new l([T],{posAxis:g,sepNegVal:!1,overlapNoMerge:!m.norm});r(g,d,m),m.norm?(p(d),c(f,d,m)):u(f,d)}}function r(g,f,v){for(var m=f.minDiff,x=f.traces,T=m*(1-v.gap),d=T*(1-(v.groupgap||0)),M=-d/2,A=0;A<x.length;A++){var C=x[A][0].t;C.barwidth=d,C.poffset=M,C.bargroupwidth=T,C.bardelta=m}f.binWidth=x[0][0].t.barwidth/100,n(f),a(g,f),s(g,f)}function n(g){var f,v,m=g.traces;for(f=0;f<m.length;f++){var x,T=m[f],d=T[0],M=d.trace,A=d.t,C=M._offset||M.offset,P=A.poffset;if(k(C)){for(x=Array.prototype.slice.call(C,0,T.length),v=0;v<x.length;v++)w(x[v])||(x[v]=P);for(v=x.length;v<T.length;v++)x.push(P);A.poffset=x}else C!==void 0&&(A.poffset=C);var O=M._width||M.width,z=A.barwidth;if(k(O)){var B=Array.prototype.slice.call(O,0,T.length);for(v=0;v<B.length;v++)w(B[v])||(B[v]=z);for(v=B.length;v<T.length;v++)B.push(z);if(A.barwidth=B,C===void 0){for(x=[],v=0;v<T.length;v++)x.push(P+(z-B[v])/2);A.poffset=x}}else O!==void 0&&(A.barwidth=O,C===void 0&&(A.poffset=P+(z-O)/2))}}function a(g,f){for(var v=f.traces,m=b(g),x=0;x<v.length;x++)for(var T=v[x],d=T[0].t,M=d.poffset,A=Array.isArray(M),C=d.barwidth,P=Array.isArray(C),O=0;O<T.length;O++){var z=T[O],B=z.w=P?C[O]:C;z.p===void 0&&(z.p=z[m],z["orig_"+m]=z[m]);var Y=(A?M[O]:M)+B/2;z[m]=z.p+Y}}function s(g,f,v){var m=f.traces,x=f.minDiff/2;y.minDtick(g,f.minDiff,f.distinctPositions[0],v);for(var T=0;T<m.length;T++){var d,M,A,C,P=m[T],O=P[0],z=O.trace,B=[];for(C=0;C<P.length;C++)M=(d=P[C]).p-x,A=d.p+x,B.push(M,A);if(z.width||z.offset){var Y=O.t,D=Y.poffset,G=Y.barwidth,V=Array.isArray(D),j=Array.isArray(G);for(C=0;C<P.length;C++){d=P[C];var W=V?D[C]:D,Z=j?G[C]:G;A=(M=d.p+W)+Z,B.push(M,A)}}z._extremes[g._id]=y.findExtremes(g,B,{padded:!1})}}function u(g,f){for(var v=f.traces,m=b(g),x=0;x<v.length;x++){for(var T=v[x],d=T[0].trace,M=d.type==="scatter",A=d.orientation==="v",C=[],P=!1,O=0;O<T.length;O++){var z=T[O],B=M?0:z.b,Y=M?A?z.y:z.x:B+z.s;z[m]=Y,C.push(Y),z.hasB&&C.push(B),z.hasB&&z.b||(P=!0)}d._extremes[g._id]=y.findExtremes(g,C,{tozero:P,padded:!0})}}function p(g){for(var f=g.traces,v=0;v<f.length;v++)for(var m=f[v],x=0;x<m.length;x++){var T=m[x];T.s!==i&&g.put(T.p,T.b+T.s)}}function c(g,f,v){var m=f.traces,x=b(g),T=v.norm==="fraction"?1:100,d=T/1e9,M=g.l2c(g.c2l(0)),A=v.mode==="stack"?T:M;function C(ie){return w(g.c2l(ie))&&(ie<M-d||ie>A+d||!w(M))}for(var P=0;P<m.length;P++){for(var O=m[P],z=O[0].trace,B=[],Y=!1,D=!1,G=0;G<O.length;G++){var V=O[G];if(V.s!==i){var j=Math.abs(T/f.get(V.p,V.s));V.b*=j,V.s*=j;var W=V.b,Z=W+V.s;V[x]=Z,B.push(Z),D=D||C(Z),V.hasB&&(B.push(W),D=D||C(W)),V.hasB&&V.b||(Y=!0)}}z._extremes[g._id]=y.findExtremes(g,B,{tozero:Y,padded:D})}}function b(g){return g._id.charAt(0)}R.exports={crossTraceCalc:function(g,f){for(var v=f.xaxis,m=f.yaxis,x=g._fullLayout,T=g._fullData,d=g.calcdata,M=[],A=[],C=0;C<T.length;C++){var P=T[C];if(P.visible===!0&&_.traceIs(P,"bar")&&P.xaxis===v._id&&P.yaxis===m._id&&(P.orientation==="h"?M.push(d[C]):A.push(d[C]),P._computePh))for(var O=g.calcdata[C],z=0;z<O.length;z++)typeof O[z].ph0=="function"&&(O[z].ph0=O[z].ph0()),typeof O[z].ph1=="function"&&(O[z].ph1=O[z].ph1())}var B={xCat:v.type==="category"||v.type==="multicategory",yCat:m.type==="category"||m.type==="multicategory",mode:x.barmode,norm:x.barnorm,gap:x.bargap,groupgap:x.bargroupgap};t(g,v,m,A,B),t(g,m,v,M,B)},setGroupPositions:t}},90769:function(R,E,e){var w=e(71828),k=e(7901),i=e(73972),_=e(67513),y=e(73927),h=e(98340),l=e(26125),t=e(1486),o=w.coerceFont;function r(n,a,s,u,p,c){var b=(c=c||{}).moduleHasSelected!==!1,g=c.moduleHasUnselected!==!1,f=c.moduleHasConstrain!==!1,v=c.moduleHasCliponaxis!==!1,m=c.moduleHasTextangle!==!1,x=c.moduleHasInsideanchor!==!1,T=!!c.hasPathbar,d=Array.isArray(p)||p==="auto",M=d||p==="inside",A=d||p==="outside";if(M||A){var C=o(u,"textfont",s.font),P=w.extendFlat({},C),O=!(n.textfont&&n.textfont.color);if(O&&delete P.color,o(u,"insidetextfont",P),T){var z=w.extendFlat({},C);O&&delete z.color,o(u,"pathbar.textfont",z)}A&&o(u,"outsidetextfont",C),b&&u("selected.textfont.color"),g&&u("unselected.textfont.color"),f&&u("constraintext"),v&&u("cliponaxis"),m&&u("textangle"),u("texttemplate")}M&&x&&u("insidetextanchor")}R.exports={supplyDefaults:function(n,a,s,u){function p(f,v){return w.coerce(n,a,t,f,v)}if(_(n,a,u,p)){y(n,a,u,p),p("xhoverformat"),p("yhoverformat"),p("orientation",a.x&&!a.y?"h":"v"),p("base"),p("offset"),p("width"),p("text"),p("hovertext"),p("hovertemplate");var c=p("textposition");r(n,0,u,p,c,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),h(n,a,p,s,u);var b=(a.marker.line||{}).color,g=i.getComponentMethod("errorbars","supplyDefaults");g(n,a,b||k.defaultLine,{axis:"y"}),g(n,a,b||k.defaultLine,{axis:"x",inherit:"y"}),w.coerceSelectionMarkerOpacity(a,p)}else a.visible=!1},crossTraceDefaults:function(n,a){var s,u;function p(b){return w.coerce(u._input,u,t,b)}if(a.barmode==="group")for(var c=0;c<n.length;c++)(u=n[c]).type==="bar"&&(s=u._input,l(s,u,a,p))},handleText:r}},58065:function(R){R.exports=function(E,e,w){return E.x="xVal"in e?e.xVal:e.x,E.y="yVal"in e?e.yVal:e.y,e.xa&&(E.xaxis=e.xa),e.ya&&(E.yaxis=e.ya),w.orientation==="h"?(E.label=E.y,E.value=E.x):(E.label=E.x,E.value=E.y),E}},69383:function(R,E,e){var w=e(92770),k=e(84267),i=e(71828).isArrayOrTypedArray;E.coerceString=function(_,y,h){if(typeof y=="string"){if(y||!_.noBlank)return y}else if((typeof y=="number"||y===!0)&&!_.strict)return String(y);return h!==void 0?h:_.dflt},E.coerceNumber=function(_,y,h){if(w(y)){y=+y;var l=_.min,t=_.max;if(!(l!==void 0&&y<l||t!==void 0&&y>t))return y}return h!==void 0?h:_.dflt},E.coerceColor=function(_,y,h){return k(y).isValid()?y:h!==void 0?h:_.dflt},E.coerceEnumerated=function(_,y,h){return _.coerceNumber&&(y=+y),_.values.indexOf(y)!==-1?y:h!==void 0?h:_.dflt},E.getValue=function(_,y){var h;return Array.isArray(_)?y<_.length&&(h=_[y]):h=_,h},E.getLineWidth=function(_,y){return 0<y.mlw?y.mlw:i(_.marker.line.width)?0:_.marker.line.width}},95423:function(R,E,e){var w=e(30211),k=e(73972),i=e(7901),_=e(71828).fillText,y=e(69383).getLineWidth,h=e(89298).hoverLabelText,l=e(50606).BADNUM;function t(r,n,a,s,u){var p,c,b,g,f,v,m,x=r.cd,T=x[0].trace,d=x[0].t,M=s==="closest",A=T.type==="waterfall",C=r.maxHoverDistance,P=r.maxSpikeDistance;T.orientation==="h"?(p=a,c=n,b="y",g="x",f=te,v=Z):(p=n,c=a,b="x",g="y",v=te,f=Z);var O=T[b+"period"],z=M||O;function B(de){return D(de,-1)}function Y(de){return D(de,1)}function D(de,me){var _e=de.w;return de[b]+me*_e/2}function G(de){return de[b+"End"]-de[b+"Start"]}var V=M?B:O?function(de){return de.p-G(de)/2}:function(de){return Math.min(B(de),de.p-d.bardelta/2)},j=M?Y:O?function(de){return de.p+G(de)/2}:function(de){return Math.max(Y(de),de.p+d.bardelta/2)};function W(de,me,_e){return u.finiteRange&&(_e=0),w.inbox(de-p,me-p,_e+Math.min(1,Math.abs(me-de)/m)-1)}function Z(de){return W(V(de),j(de),C)}function ie(de){var me=de[g];if(A){var _e=Math.abs(de.rawS)||0;c>0?me+=_e:c<0&&(me-=_e)}return me}function te(de){var me=c,_e=de.b,Se=ie(de);return w.inbox(_e-me,Se-me,C+(Se-me)/(Se-_e)-1)}var J=r[b+"a"],X=r[g+"a"];m=Math.abs(J.r2c(J.range[1])-J.r2c(J.range[0]));var ee=w.getDistanceFunction(s,f,v,function(de){return(f(de)+v(de))/2});if(w.getClosest(x,ee,r),r.index!==!1&&x[r.index].p!==l){z||(V=function(de){return Math.min(B(de),de.p-d.bargroupwidth/2)},j=function(de){return Math.max(Y(de),de.p+d.bargroupwidth/2)});var re=x[r.index],oe=T.base?re.b+re.s:re.s;r[g+"0"]=r[g+"1"]=X.c2p(re[g],!0),r[g+"LabelVal"]=oe;var ue=d.extents[d.extents.round(re.p)];r[b+"0"]=J.c2p(M?V(re):ue[0],!0),r[b+"1"]=J.c2p(M?j(re):ue[1],!0);var ce=re.orig_p!==void 0;return r[b+"LabelVal"]=ce?re.orig_p:re.p,r.labelLabel=h(J,r[b+"LabelVal"],T[b+"hoverformat"]),r.valueLabel=h(X,r[g+"LabelVal"],T[g+"hoverformat"]),r.baseLabel=h(X,re.b,T[g+"hoverformat"]),r.spikeDistance=(function(de){var me=c,_e=de.b,Se=ie(de);return w.inbox(_e-me,Se-me,P+(Se-me)/(Se-_e)-1)}(re)+function(de){return W(B(de),Y(de),P)}(re))/2,r[b+"Spike"]=J.c2p(re.p,!0),_(re,T,r),r.hovertemplate=T.hovertemplate,r}}function o(r,n){var a=n.mcc||r.marker.color,s=n.mlcc||r.marker.line.color,u=y(r,n);return i.opacity(a)?a:i.opacity(s)&&u?s:void 0}R.exports={hoverPoints:function(r,n,a,s,u){var p=t(r,n,a,s,u);if(p){var c=p.cd,b=c[0].trace,g=c[p.index];return p.color=o(b,g),k.getComponentMethod("errorbars","hoverInfo")(g,b,p),[p]}},hoverOnBars:t,getTraceColor:o}},60822:function(R,E,e){R.exports={attributes:e(1486),layoutAttributes:e(43641),supplyDefaults:e(90769).supplyDefaults,crossTraceDefaults:e(90769).crossTraceDefaults,supplyLayoutDefaults:e(13957),calc:e(92290),crossTraceCalc:e(11661).crossTraceCalc,colorbar:e(4898),arraysToCalcdata:e(75341),plot:e(17295).plot,style:e(16688).style,styleOnSelect:e(16688).styleOnSelect,hoverPoints:e(95423).hoverPoints,eventData:e(58065),selectPoints:e(81974),moduleType:"trace",name:"bar",basePlotModule:e(93612),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}},43641:function(R){R.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}},13957:function(R,E,e){var w=e(73972),k=e(89298),i=e(71828),_=e(43641);R.exports=function(y,h,l){function t(b,g){return i.coerce(y,h,_,b,g)}for(var o=!1,r=!1,n=!1,a={},s=t("barmode"),u=0;u<l.length;u++){var p=l[u];if(w.traceIs(p,"bar")&&p.visible){if(o=!0,s==="group"){var c=p.xaxis+p.yaxis;a[c]&&(n=!0),a[c]=!0}p.visible&&p.type==="histogram"&&k.getFromId({_fullLayout:h},p[p.orientation==="v"?"xaxis":"yaxis"]).type!=="category"&&(r=!0)}}o?(s!=="overlay"&&t("barnorm"),t("bargap",r&&!n?0:.2),t("bargroupgap")):delete h.barmode}},17295:function(R,E,e){var w=e(39898),k=e(92770),i=e(71828),_=e(63893),y=e(7901),h=e(91424),l=e(73972),t=e(89298).tickText,o=e(72597),r=o.recordMinTextSize,n=o.clearMinTextSize,a=e(16688),s=e(69383),u=e(97313),p=e(1486),c=p.text,b=p.textposition,g=e(23469).appendArrayPointValue,f=u.TEXTPAD;function v(P){return P.id}function m(P){if(P.ids)return v}function x(P,O){return P<O?1:-1}function T(P,O,z,B){var Y;return!O.uniformtext.mode&&d(z)?(B&&(Y=B()),P.transition().duration(z.duration).ease(z.easing).each("end",function(){Y&&Y()}).each("interrupt",function(){Y&&Y()})):P}function d(P){return P&&P.duration>0}function M(P){return P==="auto"?0:P}function A(P,O){var z=Math.PI/180*O,B=Math.abs(Math.sin(z)),Y=Math.abs(Math.cos(z));return{x:P.width*Y+P.height*B,y:P.width*B+P.height*Y}}function C(P,O,z,B,Y,D){var G=!!D.isHorizontal,V=!!D.constrained,j=D.angle||0,W=D.anchor||"end",Z=W==="end",ie=W==="start",te=((D.leftToRight||0)+1)/2,J=1-te,X=Y.width,ee=Y.height,re=Math.abs(O-P),oe=Math.abs(B-z),ue=re>2*f&&oe>2*f?f:0;re-=2*ue,oe-=2*ue;var ce=M(j);j!=="auto"||X<=re&&ee<=oe||!(X>re||ee>oe)||(X>oe||ee>re)&&X<ee==re<oe||(ce+=90);var de=A(Y,ce),me=1;V&&(me=Math.min(1,re/de.x,oe/de.y));var _e=Y.left*J+Y.right*te,Se=(Y.top+Y.bottom)/2,we=(P+f)*J+(O-f)*te,xe=(z+B)/2,De=0,Ee=0;if(ie||Z){var Me=(G?de.x:de.y)/2,he=G?x(P,O):x(z,B);G?ie?(we=P+he*ue,De=-he*Me):(we=O-he*ue,De=he*Me):ie?(xe=z+he*ue,Ee=-he*Me):(xe=B-he*ue,Ee=he*Me)}return{textX:_e,textY:Se,targetX:we,targetY:xe,anchorX:De,anchorY:Ee,scale:me,rotate:ce}}R.exports={plot:function(P,O,z,B,Y,D){var G=O.xaxis,V=O.yaxis,j=P._fullLayout,W=P._context.staticPlot;Y||(Y={mode:j.barmode,norm:j.barmode,gap:j.bargap,groupgap:j.bargroupgap},n("bar",j));var Z=i.makeTraceGroups(B,z,"trace bars").each(function(ie){var te=w.select(this),J=ie[0].trace,X=J.type==="waterfall",ee=J.type==="funnel",re=J.type==="bar"||ee,oe=0;X&&J.connector.visible&&J.connector.mode==="between"&&(oe=J.connector.line.width/2);var ue=J.orientation==="h",ce=d(Y),de=i.ensureSingle(te,"g","points"),me=m(J),_e=de.selectAll("g.point").data(i.identity,me);_e.enter().append("g").classed("point",!0),_e.exit().remove(),_e.each(function(we,xe){var De,Ee,Me=w.select(this),he=function(ze,Ue,Ve,Ye){var $e=[],rt=[],ht=Ye?Ue:Ve,nt=Ye?Ve:Ue;return $e[0]=ht.c2p(ze.s0,!0),rt[0]=nt.c2p(ze.p0,!0),$e[1]=ht.c2p(ze.s1,!0),rt[1]=nt.c2p(ze.p1,!0),Ye?[$e,rt]:[rt,$e]}(we,G,V,ue),fe=he[0][0],ae=he[0][1],be=he[1][0],Ie=he[1][1],Te=(ue?ae-fe:Ie-be)==0;if(Te&&re&&s.getLineWidth(J,we)&&(Te=!1),Te||(Te=!(k(fe)&&k(ae)&&k(be)&&k(Ie))),we.isBlank=Te,Te&&(ue?ae=fe:Ie=be),oe&&!Te&&(ue?(fe-=x(fe,ae)*oe,ae+=x(fe,ae)*oe):(be-=x(be,Ie)*oe,Ie+=x(be,Ie)*oe)),J.type==="waterfall"){if(!Te){var Ne=J[we.dir].marker;De=Ne.line.width,Ee=Ne.color}}else De=s.getLineWidth(J,we),Ee=we.mc||J.marker.color;function qe(ze){var Ue=w.round(De/2%1,2);return Y.gap===0&&Y.groupgap===0?w.round(Math.round(ze)-Ue,2):ze}if(!P._context.staticPlot){var ve=y.opacity(Ee)<1||De>.01?qe:function(ze,Ue,Ve){return Ve&&ze===Ue?ze:Math.abs(ze-Ue)>=2?qe(ze):ze>Ue?Math.ceil(ze):Math.floor(ze)};fe=ve(fe,ae,ue),ae=ve(ae,fe,ue),be=ve(be,Ie,!ue),Ie=ve(Ie,be,!ue)}var Ce=T(i.ensureSingle(Me,"path"),j,Y,D);if(Ce.style("vector-effect",W?"none":"non-scaling-stroke").attr("d",isNaN((ae-fe)*(Ie-be))||Te&&P._context.staticPlot?"M0,0Z":"M"+fe+","+be+"V"+Ie+"H"+ae+"V"+be+"Z").call(h.setClipUrl,O.layerClipId,P),!j.uniformtext.mode&&ce){var Ae=h.makePointStyleFns(J);h.singlePointStyle(we,Ce,J,Ae,P)}(function(ze,Ue,Ve,Ye,$e,rt,ht,nt,bt,wt,ut){var lt,Tt=Ue.xaxis,Et=Ue.yaxis,St=ze._fullLayout;function Ft(tn,Xt,Qt){return i.ensureSingle(tn,"text").text(Xt).attr({class:"bartext bartext-"+lt,"text-anchor":"middle","data-notex":1}).call(h.font,Qt).call(_.convertToTspans,ze)}var zt=Ye[0].trace,Je=zt.orientation==="h",et=function(tn,Xt,Qt,Gt,vn){var Tn,dn=Xt[0].trace;return Tn=dn.texttemplate?function(Yt,ln,nn,fn,mn){var xn=ln[0].trace,Pn=i.castOption(xn,nn,"texttemplate");if(!Pn)return"";var Dn,En,Fn,er,ir=xn.type==="histogram",fr=xn.type==="waterfall",ar=xn.type==="funnel",Kn=xn.orientation==="h";function wr(Nn){return t(er,er.c2l(Nn),!0).text}Kn?(Dn="y",En=mn,Fn="x",er=fn):(Dn="x",En=fn,Fn="y",er=mn);var Ht,sn=ln[nn],gn={};gn.label=sn.p,gn.labelLabel=gn[Dn+"Label"]=(Ht=sn.p,t(En,En.c2l(Ht),!0).text);var bn=i.castOption(xn,sn.i,"text");(bn===0||bn)&&(gn.text=bn),gn.value=sn.s,gn.valueLabel=gn[Fn+"Label"]=wr(sn.s);var Cn={};g(Cn,xn,sn.i),(ir||Cn.x===void 0)&&(Cn.x=Kn?gn.value:gn.label),(ir||Cn.y===void 0)&&(Cn.y=Kn?gn.label:gn.value),(ir||Cn.xLabel===void 0)&&(Cn.xLabel=Kn?gn.valueLabel:gn.labelLabel),(ir||Cn.yLabel===void 0)&&(Cn.yLabel=Kn?gn.labelLabel:gn.valueLabel),fr&&(gn.delta=+sn.rawS||sn.s,gn.deltaLabel=wr(gn.delta),gn.final=sn.v,gn.finalLabel=wr(gn.final),gn.initial=gn.final-gn.delta,gn.initialLabel=wr(gn.initial)),ar&&(gn.value=sn.s,gn.valueLabel=wr(gn.value),gn.percentInitial=sn.begR,gn.percentInitialLabel=i.formatPercent(sn.begR),gn.percentPrevious=sn.difR,gn.percentPreviousLabel=i.formatPercent(sn.difR),gn.percentTotal=sn.sumR,gn.percenTotalLabel=i.formatPercent(sn.sumR));var Yn=i.castOption(xn,sn.i,"customdata");return Yn&&(gn.customdata=Yn),i.texttemplateString(Pn,gn,Yt._d3locale,Cn,gn,xn._meta||{})}(tn,Xt,Qt,Gt,vn):dn.textinfo?function(Yt,ln,nn,fn){var mn=Yt[0].trace,xn=mn.orientation==="h",Pn=mn.type==="waterfall",Dn=mn.type==="funnel";function En(Yn){return t(xn?nn:fn,+Yn,!0).text}var Fn,er,ir=mn.textinfo,fr=Yt[ln],ar=ir.split("+"),Kn=[],wr=function(Yn){return ar.indexOf(Yn)!==-1};if(wr("label")&&Kn.push((er=Yt[ln].p,t(xn?fn:nn,er,!0).text)),wr("text")&&((Fn=i.castOption(mn,fr.i,"text"))===0||Fn)&&Kn.push(Fn),Pn){var Ht=+fr.rawS||fr.s,sn=fr.v,gn=sn-Ht;wr("initial")&&Kn.push(En(gn)),wr("delta")&&Kn.push(En(Ht)),wr("final")&&Kn.push(En(sn))}if(Dn){wr("value")&&Kn.push(En(fr.s));var bn=0;wr("percent initial")&&bn++,wr("percent previous")&&bn++,wr("percent total")&&bn++;var Cn=bn>1;wr("percent initial")&&(Fn=i.formatPercent(fr.begR),Cn&&(Fn+=" of initial"),Kn.push(Fn)),wr("percent previous")&&(Fn=i.formatPercent(fr.difR),Cn&&(Fn+=" of previous"),Kn.push(Fn)),wr("percent total")&&(Fn=i.formatPercent(fr.sumR),Cn&&(Fn+=" of total"),Kn.push(Fn))}return Kn.join("<br>")}(Xt,Qt,Gt,vn):s.getValue(dn.text,Qt),s.coerceString(c,Tn)}(St,Ye,$e,Tt,Et);lt=function(tn,Xt){var Qt=s.getValue(tn.textposition,Xt);return s.coerceEnumerated(b,Qt)}(zt,$e);var Ze=wt.mode==="stack"||wt.mode==="relative",Qe=Ye[$e],st=!Ze||Qe._outmost;if(et&<!=="none"&&(!Qe.isBlank&&rt!==ht&&nt!==bt||lt!=="auto"&<!=="inside")){var ft=St.font,Be=a.getBarColor(Ye[$e],zt),je=a.getInsideTextFont(zt,$e,ft,Be),at=a.getOutsideTextFont(zt,$e,ft),ot=Ve.datum();Je?Tt.type==="log"&&ot.s0<=0&&(rt=Tt.range[0]<Tt.range[1]?0:Tt._length):Et.type==="log"&&ot.s0<=0&&(nt=Et.range[0]<Et.range[1]?Et._length:0);var xt,yt,_t,gt,Ct,dt=Math.abs(ht-rt)-2*f,vt=Math.abs(bt-nt)-2*f;if(lt==="outside"&&(st||Qe.hasB||(lt="inside")),lt==="auto"&&(st?(lt="inside",xt=Ft(Ve,et,Ct=i.ensureUniformFontSize(ze,je)),_t=(yt=h.bBox(xt.node())).width,gt=yt.height,_t>0&>>0&&(_t<=dt&><=vt||_t<=vt&><=dt||(Je?dt>=_t*(vt/gt):vt>=gt*(dt/_t)))?lt="inside":(lt="outside",xt.remove(),xt=null)):lt="inside"),!xt){var At=(xt=Ft(Ve,et,Ct=i.ensureUniformFontSize(ze,lt==="outside"?at:je))).attr("transform");if(xt.attr("transform",""),_t=(yt=h.bBox(xt.node())).width,gt=yt.height,xt.attr("transform",At),_t<=0||gt<=0)return void xt.remove()}var Bt,jt=zt.textangle;Bt=lt==="outside"?function(tn,Xt,Qt,Gt,vn,Tn){var dn,Yt=!!Tn.isHorizontal,ln=!!Tn.constrained,nn=Tn.angle||0,fn=vn.width,mn=vn.height,xn=Math.abs(Xt-tn),Pn=Math.abs(Gt-Qt);dn=Yt?Pn>2*f?f:0:xn>2*f?f:0;var Dn=1;ln&&(Dn=Yt?Math.min(1,Pn/mn):Math.min(1,xn/fn));var En=M(nn),Fn=A(vn,En),er=(Yt?Fn.x:Fn.y)/2,ir=(vn.left+vn.right)/2,fr=(vn.top+vn.bottom)/2,ar=(tn+Xt)/2,Kn=(Qt+Gt)/2,wr=0,Ht=0,sn=Yt?x(Xt,tn):x(Qt,Gt);return Yt?(ar=Xt-sn*dn,wr=sn*er):(Kn=Gt+sn*dn,Ht=-sn*er),{textX:ir,textY:fr,targetX:ar,targetY:Kn,anchorX:wr,anchorY:Ht,scale:Dn,rotate:En}}(rt,ht,nt,bt,yt,{isHorizontal:Je,constrained:zt.constraintext==="both"||zt.constraintext==="outside",angle:jt}):C(rt,ht,nt,bt,yt,{isHorizontal:Je,constrained:zt.constraintext==="both"||zt.constraintext==="inside",angle:jt,anchor:zt.insidetextanchor}),Bt.fontSize=Ct.size,r(zt.type==="histogram"?"bar":zt.type,Bt,St),Qe.transform=Bt;var Ut=T(xt,St,wt,ut);i.setTransormAndDisplay(Ut,Bt)}else Ve.select("text").remove()})(P,O,Me,ie,xe,fe,ae,be,Ie,Y,D),O.layerClipId&&h.hideOutsideRangePoint(we,Me.select("text"),G,V,J.xcalendar,J.ycalendar)});var Se=J.cliponaxis===!1;h.setClipUrl(te,Se?null:O.layerClipId,P)});l.getComponentMethod("errorbars","plot")(P,Z,O,Y)},toMoveInsideBar:C}},81974:function(R){function E(e,w,k,i,_){var y=w.c2p(i?e.s0:e.p0,!0),h=w.c2p(i?e.s1:e.p1,!0),l=k.c2p(i?e.p0:e.s0,!0),t=k.c2p(i?e.p1:e.s1,!0);return _?[(y+h)/2,(l+t)/2]:i?[h,(l+t)/2]:[(y+h)/2,t]}R.exports=function(e,w){var k,i=e.cd,_=e.xaxis,y=e.yaxis,h=i[0].trace,l=h.type==="funnel",t=h.orientation==="h",o=[];if(w===!1)for(k=0;k<i.length;k++)i[k].selected=0;else for(k=0;k<i.length;k++){var r=i[k],n="ct"in r?r.ct:E(r,_,y,t,l);w.contains(n,!1,k,e)?(o.push({pointNumber:k,x:_.c2d(r.x),y:y.c2d(r.y)}),r.selected=1):r.selected=0}return o}},61546:function(R,E,e){R.exports=k;var w=e(71828).distinctVals;function k(i,_){this.traces=i,this.sepNegVal=_.sepNegVal,this.overlapNoMerge=_.overlapNoMerge;for(var y=1/0,h=_.posAxis._id.charAt(0),l=[],t=0;t<i.length;t++){for(var o=i[t],r=0;r<o.length;r++){var n=o[r],a=n.p;a===void 0&&(a=n[h]),a!==void 0&&l.push(a)}o[0]&&o[0].width1&&(y=Math.min(o[0].width1,y))}this.positions=l;var s=w(l);this.distinctPositions=s.vals,s.vals.length===1&&y!==1/0?this.minDiff=y:this.minDiff=Math.min(s.minDiff,y);var u=(_.posAxis||{}).type;u!=="category"&&u!=="multicategory"||(this.minDiff=1),this.binWidth=this.minDiff,this.bins={}}k.prototype.put=function(i,_){var y=this.getLabel(i,_),h=this.bins[y]||0;return this.bins[y]=h+_,h},k.prototype.get=function(i,_){var y=this.getLabel(i,_);return this.bins[y]||0},k.prototype.getLabel=function(i,_){return(_<0&&this.sepNegVal?"v":"^")+(this.overlapNoMerge?i:Math.round(i/this.binWidth))}},16688:function(R,E,e){var w=e(39898),k=e(7901),i=e(91424),_=e(71828),y=e(73972),h=e(72597).resizeText,l=e(1486),t=l.textfont,o=l.insidetextfont,r=l.outsidetextfont,n=e(69383);function a(v,m,x){i.pointStyle(v.selectAll("path"),m,x),s(v,m,x)}function s(v,m,x){v.selectAll("text").each(function(T){var d=w.select(this),M=_.ensureUniformFontSize(x,u(d,T,m,x));i.font(d,M)})}function u(v,m,x,T){var d=T._fullLayout.font,M=x.textfont;if(v.classed("bartext-inside")){var A=f(m,x);M=c(x,m.i,d,A)}else v.classed("bartext-outside")&&(M=b(x,m.i,d));return M}function p(v,m,x){return g(t,v.textfont,m,x)}function c(v,m,x,T){var d=p(v,m,x);return(v._input.textfont===void 0||v._input.textfont.color===void 0||Array.isArray(v.textfont.color)&&v.textfont.color[m]===void 0)&&(d={color:k.contrast(T),family:d.family,size:d.size}),g(o,v.insidetextfont,m,d)}function b(v,m,x){var T=p(v,m,x);return g(r,v.outsidetextfont,m,T)}function g(v,m,x,T){m=m||{};var d=n.getValue(m.family,x),M=n.getValue(m.size,x),A=n.getValue(m.color,x);return{family:n.coerceString(v.family,d,T.family),size:n.coerceNumber(v.size,M,T.size),color:n.coerceColor(v.color,A,T.color)}}function f(v,m){return m.type==="waterfall"?m[v.dir].marker.color:v.mcc||v.mc||m.marker.color}R.exports={style:function(v){var m=w.select(v).selectAll("g.barlayer").selectAll("g.trace");h(v,m,"bar");var x=m.size(),T=v._fullLayout;m.style("opacity",function(d){return d[0].trace.opacity}).each(function(d){(T.barmode==="stack"&&x>1||T.bargap===0&&T.bargroupgap===0&&!d[0].trace.marker.line.width)&&w.select(this).attr("shape-rendering","crispEdges")}),m.selectAll("g.points").each(function(d){a(w.select(this),d[0].trace,v)}),y.getComponentMethod("errorbars","style")(m)},styleTextPoints:s,styleOnSelect:function(v,m,x){var T=m[0].trace;T.selectedpoints?function(d,M,A){i.selectedPointStyle(d.selectAll("path"),M),function(C,P,O){C.each(function(z){var B,Y=w.select(this);if(z.selected){B=_.ensureUniformFontSize(O,u(Y,z,P,O));var D=P.selected.textfont&&P.selected.textfont.color;D&&(B.color=D),i.font(Y,B)}else i.selectedTextStyle(Y,P)})}(d.selectAll("text"),M,A)}(x,T,v):(a(x,T,v),y.getComponentMethod("errorbars","style")(x))},getInsideTextFont:c,getOutsideTextFont:b,getBarColor:f,resizeText:h}},98340:function(R,E,e){var w=e(7901),k=e(52075).hasColorscale,i=e(1586),_=e(71828).coercePattern;R.exports=function(y,h,l,t,o){var r=l("marker.color",t),n=k(y,"marker");n&&i(y,h,o,l,{prefix:"marker.",cLetter:"c"}),l("marker.line.color",w.defaultLine),k(y,"marker.line")&&i(y,h,o,l,{prefix:"marker.line.",cLetter:"c"}),l("marker.line.width"),l("marker.opacity"),_(l,"marker.pattern",r,n),l("selected.marker.color"),l("unselected.marker.color")}},72597:function(R,E,e){var w=e(39898),k=e(71828);function i(_){return"_"+_+"Text_minsize"}R.exports={recordMinTextSize:function(_,y,h){if(h.uniformtext.mode){var l=i(_),t=h.uniformtext.minsize,o=y.scale*y.fontSize;y.hide=o<t,h[l]=h[l]||1/0,y.hide||(h[l]=Math.min(h[l],Math.max(o,t)))}},clearMinTextSize:function(_,y){y[i(_)]=void 0},resizeText:function(_,y,h){var l=_._fullLayout,t=l["_"+h+"Text_minsize"];if(t){var o,r=l.uniformtext.mode==="hide";switch(h){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"}y.selectAll(o).each(function(n){var a=n.transform;if(a){a.scale=r&&a.hide?0:t/a.fontSize;var s=w.select(this).select("text");k.setTransormAndDisplay(s,a)}})}}}},55023:function(R,E,e){var w=e(5386).fF,k=e(1426).extendFlat,i=e(81245),_=e(1486);R.exports={r:i.r,theta:i.theta,r0:i.r0,dr:i.dr,theta0:i.theta0,dtheta:i.dtheta,thetaunit:i.thetaunit,base:k({},_.base,{}),offset:k({},_.offset,{}),width:k({},_.width,{}),text:k({},_.text,{}),hovertext:k({},_.hovertext,{}),marker:_.marker,hoverinfo:i.hoverinfo,hovertemplate:w(),selected:_.selected,unselected:_.unselected}},74692:function(R,E,e){var w=e(52075).hasColorscale,k=e(78803),i=e(75341),_=e(11661).setGroupPositions,y=e(66279),h=e(73972).traceIs,l=e(71828).extendFlat;R.exports={calc:function(t,o){for(var r=t._fullLayout,n=o.subplot,a=r[n].radialaxis,s=r[n].angularaxis,u=a.makeCalcdata(o,"r"),p=s.makeCalcdata(o,"theta"),c=o._length,b=new Array(c),g=u,f=p,v=0;v<c;v++)b[v]={p:f[v],s:g[v]};function m(x){var T=o[x];T!==void 0&&(o["_"+x]=Array.isArray(T)?s.makeCalcdata(o,x):s.d2c(T,o.thetaunit))}return s.type==="linear"&&(m("width"),m("offset")),w(o,"marker")&&k(t,o,{vals:o.marker.color,containerStr:"marker",cLetter:"c"}),w(o,"marker.line")&&k(t,o,{vals:o.marker.line.color,containerStr:"marker.line",cLetter:"c"}),i(b,o),y(b,o),b},crossTraceCalc:function(t,o,r){for(var n=t.calcdata,a=[],s=0;s<n.length;s++){var u=n[s],p=u[0].trace;p.visible===!0&&h(p,"bar")&&p.subplot===r&&a.push(u)}var c=l({},o.radialaxis,{_id:"x"}),b=o.angularaxis;_(t,b,c,a,{mode:o.barmode,norm:o.barnorm,gap:o.bargap,groupgap:o.bargroupgap})}}},6135:function(R,E,e){var w=e(71828),k=e(22184).handleRThetaDefaults,i=e(98340),_=e(55023);R.exports=function(y,h,l,t){function o(r,n){return w.coerce(y,h,_,r,n)}k(y,h,t,o)?(o("thetaunit"),o("base"),o("offset"),o("width"),o("text"),o("hovertext"),o("hovertemplate"),i(y,h,o,l,t),w.coerceSelectionMarkerOpacity(h,o)):h.visible=!1}},27379:function(R,E,e){var w=e(30211),k=e(71828),i=e(95423).getTraceColor,_=k.fillText,y=e(59150).makeHoverPointText,h=e(10869).isPtInsidePolygon;R.exports=function(l,t,o){var r=l.cd,n=r[0].trace,a=l.subplot,s=a.radialAxis,u=a.angularAxis,p=a.vangles,c=p?h:k.isPtInsideSector,b=l.maxHoverDistance,g=u._period||2*Math.PI,f=Math.abs(s.g2p(Math.sqrt(t*t+o*o))),v=Math.atan2(o,t);if(s.range[0]>s.range[1]&&(v+=Math.PI),w.getClosest(r,function(T){return c(f,v,[T.rp0,T.rp1],[T.thetag0,T.thetag1],p)?b+Math.min(1,Math.abs(T.thetag1-T.thetag0)/g)-1+(T.rp1-f)/(T.rp1-T.rp0)-1:1/0},l),l.index!==!1){var m=r[l.index];l.x0=l.x1=m.ct[0],l.y0=l.y1=m.ct[1];var x=k.extendFlat({},m,{r:m.s,theta:m.p});return _(m,n,l),y(x,n,a,l),l.hovertemplate=n.hovertemplate,l.color=i(n,m),l.xLabelVal=l.yLabelVal=void 0,m.s<0&&(l.idealAlign="left"),[l]}}},23381:function(R,E,e){R.exports={moduleType:"trace",name:"barpolar",basePlotModule:e(23580),categories:["polar","bar","showLegend"],attributes:e(55023),layoutAttributes:e(40151),supplyDefaults:e(6135),supplyLayoutDefaults:e(19860),calc:e(74692).calc,crossTraceCalc:e(74692).crossTraceCalc,plot:e(60173),colorbar:e(4898),formatLabels:e(98608),style:e(16688).style,styleOnSelect:e(16688).styleOnSelect,hoverPoints:e(27379),selectPoints:e(81974),meta:{}}},40151:function(R){R.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}},19860:function(R,E,e){var w=e(71828),k=e(40151);R.exports=function(i,_,y){var h,l={};function t(n,a){return w.coerce(i[h]||{},_[h],k,n,a)}for(var o=0;o<y.length;o++){var r=y[o];r.type==="barpolar"&&r.visible===!0&&(l[h=r.subplot]||(t("barmode"),t("bargap"),l[h]=1))}}},60173:function(R,E,e){var w=e(39898),k=e(92770),i=e(71828),_=e(91424),y=e(10869);R.exports=function(h,l,t){var o=h._context.staticPlot,r=l.xaxis,n=l.yaxis,a=l.radialAxis,s=l.angularAxis,u=function(c){var b=c.cxx,g=c.cyy;return c.vangles?function(f,v,m,x){var T,d;i.angleDelta(m,x)>0?(T=m,d=x):(T=x,d=m);var M=[y.findEnclosingVertexAngles(T,c.vangles)[0],(T+d)/2,y.findEnclosingVertexAngles(d,c.vangles)[1]];return y.pathPolygonAnnulus(f,v,T,d,M,b,g)}:function(f,v,m,x){return i.pathAnnulus(f,v,m,x,b,g)}}(l),p=l.layers.frontplot.select("g.barlayer");i.makeTraceGroups(p,t,"trace bars").each(function(){var c=w.select(this),b=i.ensureSingle(c,"g","points").selectAll("g.point").data(i.identity);b.enter().append("g").style("vector-effect",o?"none":"non-scaling-stroke").style("stroke-miterlimit",2).classed("point",!0),b.exit().remove(),b.each(function(g){var f,v=w.select(this),m=g.rp0=a.c2p(g.s0),x=g.rp1=a.c2p(g.s1),T=g.thetag0=s.c2g(g.p0),d=g.thetag1=s.c2g(g.p1);if(k(m)&&k(x)&&k(T)&&k(d)&&m!==x&&T!==d){var M=a.c2g(g.s1),A=(T+d)/2;g.ct=[r.c2p(M*Math.cos(A)),n.c2p(M*Math.sin(A))],f=u(m,x,T,d)}else f="M0,0Z";i.ensureSingle(v,"path").attr("d",f)}),_.setClipUrl(c,l._hasClipOnAxisFalse?l.clipIds.forTraces:null,h)})}},53522:function(R,E,e){var w=e(82196),k=e(1486),i=e(22399),_=e(12663).axisHoverFormat,y=e(5386).fF,h=e(1426).extendFlat,l=w.marker,t=l.line;R.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},x0:{valType:"any",editType:"calc+clearAxisTypes"},y0:{valType:"any",editType:"calc+clearAxisTypes"},dx:{valType:"number",editType:"calc"},dy:{valType:"number",editType:"calc"},xperiod:w.xperiod,yperiod:w.yperiod,xperiod0:w.xperiod0,yperiod0:w.yperiod0,xperiodalignment:w.xperiodalignment,yperiodalignment:w.yperiodalignment,xhoverformat:_("x"),yhoverformat:_("y"),name:{valType:"string",editType:"calc+clearAxisTypes"},q1:{valType:"data_array",editType:"calc+clearAxisTypes"},median:{valType:"data_array",editType:"calc+clearAxisTypes"},q3:{valType:"data_array",editType:"calc+clearAxisTypes"},lowerfence:{valType:"data_array",editType:"calc"},upperfence:{valType:"data_array",editType:"calc"},notched:{valType:"boolean",editType:"calc"},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc"},notchspan:{valType:"data_array",editType:"calc"},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc"},jitter:{valType:"number",min:0,max:1,editType:"calc"},pointpos:{valType:"number",min:-2,max:2,editType:"calc"},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc"},mean:{valType:"data_array",editType:"calc"},sd:{valType:"data_array",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc"},width:{valType:"number",min:0,dflt:0,editType:"calc"},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style"},symbol:h({},l.symbol,{arrayOk:!1,editType:"plot"}),opacity:h({},l.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:h({},l.angle,{arrayOk:!1,editType:"calc"}),size:h({},l.size,{arrayOk:!1,editType:"calc"}),color:h({},l.color,{arrayOk:!1,editType:"style"}),line:{color:h({},t.color,{arrayOk:!1,dflt:i.defaultLine,editType:"style"}),width:h({},t.width,{arrayOk:!1,dflt:0,editType:"style"}),outliercolor:{valType:"color",editType:"style"},outlierwidth:{valType:"number",min:0,dflt:1,editType:"style"},editType:"style"},editType:"plot"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:w.fillcolor,whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},offsetgroup:k.offsetgroup,alignmentgroup:k.alignmentgroup,selected:{marker:w.selected.marker,editType:"style"},unselected:{marker:w.unselected.marker,editType:"style"},text:h({},w.text,{}),hovertext:h({},w.hovertext,{}),hovertemplate:y({}),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"}}},48518:function(R,E,e){var w=e(92770),k=e(89298),i=e(42973),_=e(71828),y=e(50606).BADNUM,h=_._;R.exports=function(c,b){var g,f,v,m,x,T,d,M=c._fullLayout,A=k.getFromId(c,b.xaxis||"x"),C=k.getFromId(c,b.yaxis||"y"),P=[],O=b.type==="violin"?"_numViolins":"_numBoxes";b.orientation==="h"?(v=A,m="x",x=C,T="y",d=!!b.yperiodalignment):(v=C,m="y",x=A,T="x",d=!!b.xperiodalignment);var z,B,Y,D,G,V,j=function(Ue,Ve,Ye,$e){var rt,ht=Ve+"0"in Ue;if(Ve in Ue||ht&&"d"+Ve in Ue){var nt=Ye.makeCalcdata(Ue,Ve);return[i(Ue,Ye,Ve,nt).vals,nt]}rt=ht?Ue[Ve+"0"]:"name"in Ue&&(Ye.type==="category"||w(Ue.name)&&["linear","log"].indexOf(Ye.type)!==-1||_.isDateTime(Ue.name)&&Ye.type==="date")?Ue.name:$e;for(var bt=Ye.type==="multicategory"?Ye.r2c_just_indices(rt):Ye.d2c(rt,0,Ue[Ve+"calendar"]),wt=Ue._length,ut=new Array(wt),lt=0;lt<wt;lt++)ut[lt]=bt;return[ut]}(b,T,x,M[O]),W=j[0],Z=j[1],ie=_.distinctVals(W,x),te=ie.vals,J=ie.minDiff/2,X=(b.boxpoints||b.points)==="all"?_.identity:function(Ue){return Ue.v<z.lf||Ue.v>z.uf};if(b._hasPreCompStats){var ee=b[m],re=function(Ue){return v.d2c((b[Ue]||[])[g])},oe=1/0,ue=-1/0;for(g=0;g<b._length;g++){var ce=W[g];if(w(ce)){if((z={}).pos=z[T]=ce,d&&Z&&(z.orig_p=Z[g]),z.q1=re("q1"),z.med=re("median"),z.q3=re("q3"),B=[],ee&&_.isArrayOrTypedArray(ee[g]))for(f=0;f<ee[g].length;f++)(V=v.d2c(ee[g][f]))!==y&&(t(G={v:V,i:[g,f]},b,[g,f]),B.push(G));if(z.pts=B.sort(o),D=(Y=z[m]=B.map(r)).length,z.med!==y&&z.q1!==y&&z.q3!==y&&z.med>=z.q1&&z.q3>=z.med){var de=re("lowerfence");z.lf=de!==y&&de<=z.q1?de:n(z,Y,D);var me=re("upperfence");z.uf=me!==y&&me>=z.q3?me:a(z,Y,D);var _e=re("mean");z.mean=_e!==y?_e:D?_.mean(Y,D):(z.q1+z.q3)/2;var Se=re("sd");z.sd=_e!==y&&Se>=0?Se:D?_.stdev(Y,D,z.mean):z.q3-z.q1,z.lo=s(z),z.uo=u(z);var we=re("notchspan");we=we!==y&&we>0?we:p(z,D),z.ln=z.med-we,z.un=z.med+we;var xe=z.lf,De=z.uf;b.boxpoints&&Y.length&&(xe=Math.min(xe,Y[0]),De=Math.max(De,Y[D-1])),b.notched&&(xe=Math.min(xe,z.ln),De=Math.max(De,z.un)),z.min=xe,z.max=De}else{var Ee;_.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+z.q1,"median = "+z.med,"q3 = "+z.q3].join(`
|
||
`)),Ee=z.med!==y?z.med:z.q1!==y?z.q3!==y?(z.q1+z.q3)/2:z.q1:z.q3!==y?z.q3:0,z.med=Ee,z.q1=z.q3=Ee,z.lf=z.uf=Ee,z.mean=z.sd=Ee,z.ln=z.un=Ee,z.min=z.max=Ee}oe=Math.min(oe,z.min),ue=Math.max(ue,z.max),z.pts2=B.filter(X),P.push(z)}}b._extremes[v._id]=k.findExtremes(v,[oe,ue],{padded:!0})}else{var Me=v.makeCalcdata(b,m),he=function(Ue,Ve){for(var Ye=Ue.length,$e=new Array(Ye+1),rt=0;rt<Ye;rt++)$e[rt]=Ue[rt]-Ve;return $e[Ye]=Ue[Ye-1]+Ve,$e}(te,J),fe=te.length,ae=function(Ue){for(var Ve=new Array(Ue),Ye=0;Ye<Ue;Ye++)Ve[Ye]=[];return Ve}(fe);for(g=0;g<b._length;g++)if(V=Me[g],w(V)){var be=_.findBin(W[g],he);be>=0&&be<fe&&(t(G={v:V,i:g},b,g),ae[be].push(G))}var Ie=1/0,Te=-1/0,Ne=b.quartilemethod,qe=Ne==="exclusive",ve=Ne==="inclusive";for(g=0;g<fe;g++)if(ae[g].length>0){var Ce,Ae;(z={}).pos=z[T]=te[g],B=z.pts=ae[g].sort(o),D=(Y=z[m]=B.map(r)).length,z.min=Y[0],z.max=Y[D-1],z.mean=_.mean(Y,D),z.sd=_.stdev(Y,D,z.mean),z.med=_.interp(Y,.5),D%2&&(qe||ve)?(qe?(Ce=Y.slice(0,D/2),Ae=Y.slice(D/2+1)):ve&&(Ce=Y.slice(0,D/2+1),Ae=Y.slice(D/2)),z.q1=_.interp(Ce,.5),z.q3=_.interp(Ae,.5)):(z.q1=_.interp(Y,.25),z.q3=_.interp(Y,.75)),z.lf=n(z,Y,D),z.uf=a(z,Y,D),z.lo=s(z),z.uo=u(z);var ze=p(z,D);z.ln=z.med-ze,z.un=z.med+ze,Ie=Math.min(Ie,z.ln),Te=Math.max(Te,z.un),z.pts2=B.filter(X),P.push(z)}b._extremes[v._id]=k.findExtremes(v,b.notched?Me.concat([Ie,Te]):Me,{padded:!0})}return function(Ue,Ve){if(_.isArrayOrTypedArray(Ve.selectedpoints))for(var Ye=0;Ye<Ue.length;Ye++){for(var $e=Ue[Ye].pts||[],rt={},ht=0;ht<$e.length;ht++)rt[$e[ht].i]=ht;_.tagSelected($e,Ve,rt)}}(P,b),P.length>0?(P[0].t={num:M[O],dPos:J,posLetter:T,valLetter:m,labels:{med:h(c,"median:"),min:h(c,"min:"),q1:h(c,"q1:"),q3:h(c,"q3:"),max:h(c,"max:"),mean:b.boxmean==="sd"?h(c,"mean ± σ:"):h(c,"mean:"),lf:h(c,"lower fence:"),uf:h(c,"upper fence:")}},M[O]++,P):[{t:{empty:!0}}]};var l={text:"tx",hovertext:"htx"};function t(c,b,g){for(var f in l)_.isArrayOrTypedArray(b[f])&&(Array.isArray(g)?_.isArrayOrTypedArray(b[f][g[0]])&&(c[l[f]]=b[f][g[0]][g[1]]):c[l[f]]=b[f][g])}function o(c,b){return c.v-b.v}function r(c){return c.v}function n(c,b,g){return g===0?c.q1:Math.min(c.q1,b[Math.min(_.findBin(2.5*c.q1-1.5*c.q3,b,!0)+1,g-1)])}function a(c,b,g){return g===0?c.q3:Math.max(c.q3,b[Math.max(_.findBin(2.5*c.q3-1.5*c.q1,b),0)])}function s(c){return 4*c.q1-3*c.q3}function u(c){return 4*c.q3-3*c.q1}function p(c,b){return b===0?0:1.57*(c.q3-c.q1)/Math.sqrt(b)}},37188:function(R,E,e){var w=e(89298),k=e(71828),i=e(99082).getAxisGroup,_=["v","h"];function y(h,l,t,o){var r,n,a,s=l.calcdata,u=l._fullLayout,p=o._id,c=p.charAt(0),b=[],g=0;for(r=0;r<t.length;r++)for(a=s[t[r]],n=0;n<a.length;n++)b.push(o.c2l(a[n].pos,!0)),g+=(a[n].pts2||[]).length;if(b.length){var f=k.distinctVals(b);o.type!=="category"&&o.type!=="multicategory"||(f.minDiff=1);var v=f.minDiff/2;w.minDtick(o,f.minDiff,f.vals[0],!0);var m=u[h==="violin"?"_numViolins":"_numBoxes"],x=u[h+"mode"]==="group"&&m>1,T=1-u[h+"gap"],d=1-u[h+"groupgap"];for(r=0;r<t.length;r++){var M,A,C,P,O,z,B=(a=s[t[r]])[0].trace,Y=a[0].t,D=B.width,G=B.side;if(D)M=A=P=D/2,C=0;else if(M=v,x){var V=i(u,o._id)+B.orientation,j=(u._alignmentOpts[V]||{})[B.alignmentgroup]||{},W=Object.keys(j.offsetGroups||{}).length,Z=W||m;A=M*T*d/Z,C=2*M*(((W?B._offsetIndex:Y.num)+.5)/Z-.5)*T,P=M*T/Z}else A=M*T*d,C=0,P=M;Y.dPos=M,Y.bPos=C,Y.bdPos=A,Y.wHover=P;var ie,te,J,X,ee,re,oe=C+A,ue=!!D;if(G==="positive"?(O=M*(D?1:.5),ie=oe,z=ie=C):G==="negative"?(O=ie=C,z=M*(D?1:.5),te=oe):(O=z=M,ie=te=oe),(B.boxpoints||B.points)&&g>0){var ce=B.pointpos,de=B.jitter,me=B.marker.size/2,_e=0;ce+de>=0&&((_e=oe*(ce+de))>O?(ue=!0,ee=me,J=_e):_e>ie&&(ee=me,J=O)),_e<=O&&(J=O);var Se=0;ce-de<=0&&((Se=-oe*(ce-de))>z?(ue=!0,re=me,X=Se):Se>te&&(re=me,X=z)),Se<=z&&(X=z)}else J=O,X=z;var we=new Array(a.length);for(n=0;n<a.length;n++)we[n]=a[n].pos;B._extremes[p]=w.findExtremes(o,we,{padded:ue,vpadminus:X,vpadplus:J,vpadLinearized:!0,ppadminus:{x:re,y:ee}[c],ppadplus:{x:ee,y:re}[c]})}}}R.exports={crossTraceCalc:function(h,l){for(var t=h.calcdata,o=l.xaxis,r=l.yaxis,n=0;n<_.length;n++){for(var a=_[n],s=a==="h"?r:o,u=[],p=0;p<t.length;p++){var c=t[p],b=c[0].t,g=c[0].trace;g.visible!==!0||g.type!=="box"&&g.type!=="candlestick"||b.empty||(g.orientation||"v")!==a||g.xaxis!==o._id||g.yaxis!==r._id||u.push(p)}y("box",h,u,s)}},setPositionOffset:y}},36411:function(R,E,e){var w=e(71828),k=e(73972),i=e(7901),_=e(73927),y=e(26125),h=e(4322),l=e(53522);function t(r,n,a,s){function u(G){var V=0;return G&&G.length&&(V+=1,w.isArrayOrTypedArray(G[0])&&G[0].length&&(V+=1)),V}function p(G){return w.validate(r[G],l[G])}var c,b=a("y"),g=a("x");if(n.type==="box"){var f=a("q1"),v=a("median"),m=a("q3");n._hasPreCompStats=f&&f.length&&v&&v.length&&m&&m.length,c=Math.min(w.minRowLength(f),w.minRowLength(v),w.minRowLength(m))}var x,T,d=u(b),M=u(g),A=d&&w.minRowLength(b),C=M&&w.minRowLength(g),P=s.calendar,O={autotypenumbers:s.autotypenumbers};if(n._hasPreCompStats)switch(String(M)+String(d)){case"00":var z=p("x0")||p("dx");x=!p("y0")&&!p("dy")||z?"v":"h",T=c;break;case"10":x="v",T=Math.min(c,C);break;case"20":x="h",T=Math.min(c,g.length);break;case"01":x="h",T=Math.min(c,A);break;case"02":x="v",T=Math.min(c,b.length);break;case"12":x="v",T=Math.min(c,C,b.length);break;case"21":x="h",T=Math.min(c,g.length,A);break;case"11":T=0;break;case"22":var B,Y=!1;for(B=0;B<g.length;B++)if(h(g[B],P,O)==="category"){Y=!0;break}if(Y)x="v",T=Math.min(c,C,b.length);else{for(B=0;B<b.length;B++)if(h(b[B],P,O)==="category"){Y=!0;break}Y?(x="h",T=Math.min(c,g.length,A)):(x="v",T=Math.min(c,C,b.length))}}else d>0?(x="v",T=M>0?Math.min(C,A):Math.min(A)):M>0?(x="h",T=Math.min(C)):T=0;if(T){n._length=T;var D=a("orientation",x);n._hasPreCompStats?D==="v"&&M===0?(a("x0",0),a("dx",1)):D==="h"&&d===0&&(a("y0",0),a("dy",1)):D==="v"&&M===0?a("x0"):D==="h"&&d===0&&a("y0"),k.getComponentMethod("calendars","handleTraceDefaults")(r,n,["x","y"],s)}else n.visible=!1}function o(r,n,a,s){var u=s.prefix,p=w.coerce2(r,n,l,"marker.outliercolor"),c=a("marker.line.outliercolor"),b="outliers";n._hasPreCompStats?b="all":(p||c)&&(b="suspectedoutliers");var g=a(u+"points",b);g?(a("jitter",g==="all"?.3:0),a("pointpos",g==="all"?-1.5:0),a("marker.symbol"),a("marker.opacity"),a("marker.size"),a("marker.angle"),a("marker.color",n.line.color),a("marker.line.color"),a("marker.line.width"),g==="suspectedoutliers"&&(a("marker.line.outliercolor",n.marker.color),a("marker.line.outlierwidth")),a("selected.marker.color"),a("unselected.marker.color"),a("selected.marker.size"),a("unselected.marker.size"),a("text"),a("hovertext")):delete n.marker;var f=a("hoveron");f!=="all"&&f.indexOf("points")===-1||a("hovertemplate"),w.coerceSelectionMarkerOpacity(n,a)}R.exports={supplyDefaults:function(r,n,a,s){function u(m,x){return w.coerce(r,n,l,m,x)}if(t(r,n,u,s),n.visible!==!1){_(r,n,s,u),u("xhoverformat"),u("yhoverformat");var p=n._hasPreCompStats;p&&(u("lowerfence"),u("upperfence")),u("line.color",(r.marker||{}).color||a),u("line.width"),u("fillcolor",i.addOpacity(n.line.color,.5));var c=!1;if(p){var b=u("mean"),g=u("sd");b&&b.length&&(c=!0,g&&g.length&&(c="sd"))}u("boxmean",c),u("whiskerwidth"),u("width"),u("quartilemethod");var f=!1;if(p){var v=u("notchspan");v&&v.length&&(f=!0)}else w.validate(r.notchwidth,l.notchwidth)&&(f=!0);u("notched",f)&&u("notchwidth"),o(r,n,u,{prefix:"box"})}},crossTraceDefaults:function(r,n){var a,s;function u(b){return w.coerce(s._input,s,l,b)}for(var p=0;p<r.length;p++){var c=(s=r[p]).type;c!=="box"&&c!=="violin"||(a=s._input,n[c+"mode"]==="group"&&y(a,s,n,u))}},handleSampleDefaults:t,handlePointsDefaults:o}},74907:function(R){R.exports=function(E,e){return e.hoverOnBox&&(E.hoverOnBox=e.hoverOnBox),"xVal"in e&&(E.x=e.xVal),"yVal"in e&&(E.y=e.yVal),e.xa&&(E.xaxis=e.xa),e.ya&&(E.yaxis=e.ya),E}},41868:function(R,E,e){var w=e(89298),k=e(71828),i=e(30211),_=e(7901),y=k.fillText;function h(t,o,r,n){var a,s,u,p,c,b,g,f,v,m,x,T,d,M,A=t.cd,C=t.xa,P=t.ya,O=A[0].trace,z=A[0].t,B=O.type==="violin",Y=z.bdPos,D=z.wHover,G=function(Ee){return u.c2l(Ee.pos)+z.bPos-u.c2l(b)};B&&O.side!=="both"?(O.side==="positive"&&(v=function(Ee){var Me=G(Ee);return i.inbox(Me,Me+D,m)},T=Y,d=0),O.side==="negative"&&(v=function(Ee){var Me=G(Ee);return i.inbox(Me-D,Me,m)},T=0,d=Y)):(v=function(Ee){var Me=G(Ee);return i.inbox(Me-D,Me+D,m)},T=d=Y),M=B?function(Ee){return i.inbox(Ee.span[0]-c,Ee.span[1]-c,m)}:function(Ee){return i.inbox(Ee.min-c,Ee.max-c,m)},O.orientation==="h"?(c=o,b=r,g=M,f=v,a="y",u=P,s="x",p=C):(c=r,b=o,g=v,f=M,a="x",u=C,s="y",p=P);var V=Math.min(1,Y/Math.abs(u.r2c(u.range[1])-u.r2c(u.range[0])));function j(Ee){return(g(Ee)+f(Ee))/2}m=t.maxHoverDistance-V,x=t.maxSpikeDistance-V;var W=i.getDistanceFunction(n,g,f,j);if(i.getClosest(A,W,t),t.index===!1)return[];var Z=A[t.index],ie=O.line.color,te=(O.marker||{}).color;_.opacity(ie)&&O.line.width?t.color=ie:_.opacity(te)&&O.boxpoints?t.color=te:t.color=O.fillcolor,t[a+"0"]=u.c2p(Z.pos+z.bPos-d,!0),t[a+"1"]=u.c2p(Z.pos+z.bPos+T,!0),t[a+"LabelVal"]=Z.orig_p!==void 0?Z.orig_p:Z.pos;var J=a+"Spike";t.spikeDistance=j(Z)*x/m,t[J]=u.c2p(Z.pos,!0);var X=O.boxmean||(O.meanline||{}).visible,ee=O.boxpoints||O.points,re=ee&&X?["max","uf","q3","med","mean","q1","lf","min"]:ee&&!X?["max","uf","q3","med","q1","lf","min"]:!ee&&X?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],oe=p.range[1]<p.range[0];O.orientation===(oe?"v":"h")&&re.reverse();for(var ue=t.spikeDistance,ce=t[J],de=[],me=0;me<re.length;me++){var _e=re[me];if(_e in Z){var Se=Z[_e],we=p.c2p(Se,!0),xe=k.extendFlat({},t);xe.attr=_e,xe[s+"0"]=xe[s+"1"]=we,xe[s+"LabelVal"]=Se,xe[s+"Label"]=(z.labels?z.labels[_e]+" ":"")+w.hoverLabelText(p,Se,O[s+"hoverformat"]),xe.hoverOnBox=!0,_e==="mean"&&"sd"in Z&&O.boxmean==="sd"&&(xe[s+"err"]=Z.sd),xe.hovertemplate=!1,de.push(xe)}}t.name="",t.spikeDistance=void 0,t[J]=void 0;for(var De=0;De<de.length;De++)de[De].attr!=="med"?(de[De].name="",de[De].spikeDistance=void 0,de[De][J]=void 0):(de[De].spikeDistance=ue,de[De][J]=ce);return de}function l(t,o,r){for(var n,a,s,u=t.cd,p=t.xa,c=t.ya,b=u[0].trace,g=p.c2p(o),f=c.c2p(r),v=i.quadrature(function(B){var Y=Math.max(3,B.mrc||0);return Math.max(Math.abs(p.c2p(B.x)-g)-Y,1-3/Y)},function(B){var Y=Math.max(3,B.mrc||0);return Math.max(Math.abs(c.c2p(B.y)-f)-Y,1-3/Y)}),m=!1,x=0;x<u.length;x++){a=u[x];for(var T=0;T<(a.pts||[]).length;T++){var d=v(s=a.pts[T]);d<=t.distance&&(t.distance=d,m=[x,T])}}if(!m)return!1;s=(a=u[m[0]]).pts[m[1]];var M=p.c2p(s.x,!0),A=c.c2p(s.y,!0),C=s.mrc||1;n=k.extendFlat({},t,{index:s.i,color:(b.marker||{}).color,name:b.name,x0:M-C,x1:M+C,y0:A-C,y1:A+C,spikeDistance:t.distance,hovertemplate:b.hovertemplate});var P,O=a.orig_p,z=O!==void 0?O:a.pos;return b.orientation==="h"?(P=c,n.xLabelVal=s.x,n.yLabelVal=z):(P=p,n.xLabelVal=z,n.yLabelVal=s.y),n[P._id.charAt(0)+"Spike"]=P.c2p(a.pos,!0),y(s,b,n),n}R.exports={hoverPoints:function(t,o,r,n){var a,s=t.cd[0].trace.hoveron,u=[];return s.indexOf("boxes")!==-1&&(u=u.concat(h(t,o,r,n))),s.indexOf("points")!==-1&&(a=l(t,o,r)),n==="closest"?a?[a]:u:(a&&u.push(a),u)},hoverOnBoxes:h,hoverOnPoints:l}},83832:function(R,E,e){R.exports={attributes:e(53522),layoutAttributes:e(40094),supplyDefaults:e(36411).supplyDefaults,crossTraceDefaults:e(36411).crossTraceDefaults,supplyLayoutDefaults:e(4199).supplyLayoutDefaults,calc:e(48518),crossTraceCalc:e(37188).crossTraceCalc,plot:e(86047).plot,style:e(58063).style,styleOnSelect:e(58063).styleOnSelect,hoverPoints:e(41868).hoverPoints,eventData:e(74907),selectPoints:e(24626),moduleType:"trace",name:"box",basePlotModule:e(93612),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","boxLayout","zoomScale"],meta:{}}},40094:function(R){R.exports={boxmode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},boxgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"},boxgroupgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"}}},4199:function(R,E,e){var w=e(73972),k=e(71828),i=e(40094);function _(y,h,l,t,o){for(var r=o+"Layout",n=!1,a=0;a<l.length;a++){var s=l[a];if(w.traceIs(s,r)){n=!0;break}}n&&(t(o+"mode"),t(o+"gap"),t(o+"groupgap"))}R.exports={supplyLayoutDefaults:function(y,h,l){_(0,0,l,function(t,o){return k.coerce(y,h,i,t,o)},"box")},_supply:_}},86047:function(R,E,e){var w=e(39898),k=e(71828),i=e(91424);function _(l,t,o,r,n){var a,s,u=o.orientation==="h",p=t.val,c=t.pos,b=!!c.rangebreaks,g=r.bPos,f=r.wdPos||0,v=r.bPosPxOffset||0,m=o.whiskerwidth||0,x=o.notched||!1,T=x?1-2*o.notchwidth:1;Array.isArray(r.bdPos)?(a=r.bdPos[0],s=r.bdPos[1]):(a=r.bdPos,s=r.bdPos);var d=l.selectAll("path.box").data(o.type!=="violin"||o.box.visible?k.identity:[]);d.enter().append("path").style("vector-effect",n?"none":"non-scaling-stroke").attr("class","box"),d.exit().remove(),d.each(function(M){if(M.empty)return"M0,0Z";var A=c.c2l(M.pos+g,!0),C=c.l2p(A-a)+v,P=c.l2p(A+s)+v,O=b?(C+P)/2:c.l2p(A)+v,z=o.whiskerwidth,B=b?C*z+(1-z)*O:c.l2p(A-f)+v,Y=b?P*z+(1-z)*O:c.l2p(A+f)+v,D=c.l2p(A-a*T)+v,G=c.l2p(A+s*T)+v,V=p.c2p(M.q1,!0),j=p.c2p(M.q3,!0),W=k.constrain(p.c2p(M.med,!0),Math.min(V,j)+1,Math.max(V,j)-1),Z=M.lf===void 0||o.boxpoints===!1,ie=p.c2p(Z?M.min:M.lf,!0),te=p.c2p(Z?M.max:M.uf,!0),J=p.c2p(M.ln,!0),X=p.c2p(M.un,!0);u?w.select(this).attr("d","M"+W+","+D+"V"+G+"M"+V+","+C+"V"+P+(x?"H"+J+"L"+W+","+G+"L"+X+","+P:"")+"H"+j+"V"+C+(x?"H"+X+"L"+W+","+D+"L"+J+","+C:"")+"ZM"+V+","+O+"H"+ie+"M"+j+","+O+"H"+te+(m===0?"":"M"+ie+","+B+"V"+Y+"M"+te+","+B+"V"+Y)):w.select(this).attr("d","M"+D+","+W+"H"+G+"M"+C+","+V+"H"+P+(x?"V"+J+"L"+G+","+W+"L"+P+","+X:"")+"V"+j+"H"+C+(x?"V"+X+"L"+D+","+W+"L"+C+","+J:"")+"ZM"+O+","+V+"V"+ie+"M"+O+","+j+"V"+te+(m===0?"":"M"+B+","+ie+"H"+Y+"M"+B+","+te+"H"+Y))})}function y(l,t,o,r){var n=t.x,a=t.y,s=r.bdPos,u=r.bPos,p=o.boxpoints||o.points;k.seedPseudoRandom();var c=l.selectAll("g.points").data(p?function(g){return g.forEach(function(f){f.t=r,f.trace=o}),g}:[]);c.enter().append("g").attr("class","points"),c.exit().remove();var b=c.selectAll("path").data(function(g){var f,v,m=g.pts2,x=Math.max((g.max-g.min)/10,g.q3-g.q1),T=1e-9*x,d=.01*x,M=[],A=0;if(o.jitter){if(x===0)for(A=1,M=new Array(m.length),f=0;f<m.length;f++)M[f]=1;else for(f=0;f<m.length;f++){var C=Math.max(0,f-5),P=m[C].v,O=Math.min(m.length-1,f+5),z=m[O].v;p!=="all"&&(m[f].v<g.lf?z=Math.min(z,g.lf):P=Math.max(P,g.uf));var B=Math.sqrt(d*(O-C)/(z-P+T))||0;B=k.constrain(Math.abs(B),0,1),M.push(B),A=Math.max(B,A)}v=2*o.jitter/(A||1)}for(f=0;f<m.length;f++){var Y=m[f],D=Y.v,G=o.jitter?v*M[f]*(k.pseudoRandom()-.5):0,V=g.pos+u+s*(o.pointpos+G);o.orientation==="h"?(Y.y=V,Y.x=D):(Y.x=V,Y.y=D),p==="suspectedoutliers"&&D<g.uo&&D>g.lo&&(Y.so=!0)}return m});b.enter().append("path").classed("point",!0),b.exit().remove(),b.call(i.translatePoints,n,a)}function h(l,t,o,r){var n,a,s=t.val,u=t.pos,p=!!u.rangebreaks,c=r.bPos,b=r.bPosPxOffset||0,g=o.boxmean||(o.meanline||{}).visible;Array.isArray(r.bdPos)?(n=r.bdPos[0],a=r.bdPos[1]):(n=r.bdPos,a=r.bdPos);var f=l.selectAll("path.mean").data(o.type==="box"&&o.boxmean||o.type==="violin"&&o.box.visible&&o.meanline.visible?k.identity:[]);f.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),f.exit().remove(),f.each(function(v){var m=u.c2l(v.pos+c,!0),x=u.l2p(m-n)+b,T=u.l2p(m+a)+b,d=p?(x+T)/2:u.l2p(m)+b,M=s.c2p(v.mean,!0),A=s.c2p(v.mean-v.sd,!0),C=s.c2p(v.mean+v.sd,!0);o.orientation==="h"?w.select(this).attr("d","M"+M+","+x+"V"+T+(g==="sd"?"m0,0L"+A+","+d+"L"+M+","+x+"L"+C+","+d+"Z":"")):w.select(this).attr("d","M"+x+","+M+"H"+T+(g==="sd"?"m0,0L"+d+","+A+"L"+x+","+M+"L"+d+","+C+"Z":""))})}R.exports={plot:function(l,t,o,r){var n=l._context.staticPlot,a=t.xaxis,s=t.yaxis;k.makeTraceGroups(r,o,"trace boxes").each(function(u){var p,c,b=w.select(this),g=u[0],f=g.t,v=g.trace;f.wdPos=f.bdPos*v.whiskerwidth,v.visible!==!0||f.empty?b.remove():(v.orientation==="h"?(p=s,c=a):(p=a,c=s),_(b,{pos:p,val:c},v,f,n),y(b,{x:a,y:s},v,f),h(b,{pos:p,val:c},v,f))})},plotBoxAndWhiskers:_,plotPoints:y,plotBoxMean:h}},24626:function(R){R.exports=function(E,e){var w,k,i=E.cd,_=E.xaxis,y=E.yaxis,h=[];if(e===!1)for(w=0;w<i.length;w++)for(k=0;k<(i[w].pts||[]).length;k++)i[w].pts[k].selected=0;else for(w=0;w<i.length;w++)for(k=0;k<(i[w].pts||[]).length;k++){var l=i[w].pts[k],t=_.c2p(l.x),o=y.c2p(l.y);e.contains([t,o],null,l.i,E)?(h.push({pointNumber:l.i,x:_.c2d(l.x),y:y.c2d(l.y)}),l.selected=1):l.selected=0}return h}},58063:function(R,E,e){var w=e(39898),k=e(7901),i=e(91424);R.exports={style:function(_,y,h){var l=h||w.select(_).selectAll("g.trace.boxes");l.style("opacity",function(t){return t[0].trace.opacity}),l.each(function(t){var o=w.select(this),r=t[0].trace,n=r.line.width;function a(p,c,b,g){p.style("stroke-width",c+"px").call(k.stroke,b).call(k.fill,g)}var s=o.selectAll("path.box");if(r.type==="candlestick")s.each(function(p){if(!p.empty){var c=w.select(this),b=r[p.dir];a(c,b.line.width,b.line.color,b.fillcolor),c.style("opacity",r.selectedpoints&&!p.selected?.3:1)}});else{a(s,n,r.line.color,r.fillcolor),o.selectAll("path.mean").style({"stroke-width":n,"stroke-dasharray":2*n+"px,"+n+"px"}).call(k.stroke,r.line.color);var u=o.selectAll("path.point");i.pointStyle(u,r,_)}})},styleOnSelect:function(_,y,h){var l=y[0].trace,t=h.selectAll("path.point");l.selectedpoints?i.selectedPointStyle(t,l):i.pointStyle(t,l,_)}}},75343:function(R,E,e){var w=e(71828).extendFlat,k=e(12663).axisHoverFormat,i=e(2522),_=e(53522);function y(h){return{line:{color:w({},_.line.color,{dflt:h}),width:_.line.width,editType:"style"},fillcolor:_.fillcolor,editType:"style"}}R.exports={xperiod:i.xperiod,xperiod0:i.xperiod0,xperiodalignment:i.xperiodalignment,xhoverformat:k("x"),yhoverformat:k("y"),x:i.x,open:i.open,high:i.high,low:i.low,close:i.close,line:{width:w({},_.line.width,{}),editType:"style"},increasing:y(i.increasing.line.color.dflt),decreasing:y(i.decreasing.line.color.dflt),text:i.text,hovertext:i.hovertext,whiskerwidth:w({},_.whiskerwidth,{dflt:0}),hoverlabel:i.hoverlabel}},41197:function(R,E,e){var w=e(71828),k=e(89298),i=e(42973),_=e(3485).calcCommon;function y(h,l,t,o){return{min:t,q1:Math.min(h,o),med:o,q3:Math.max(h,o),max:l}}R.exports=function(h,l){var t=h._fullLayout,o=k.getFromId(h,l.xaxis),r=k.getFromId(h,l.yaxis),n=o.makeCalcdata(l,"x"),a=i(l,o,"x",n).vals,s=_(h,l,n,a,r,y);return s.length?(w.extendFlat(s[0].t,{num:t._numBoxes,dPos:w.distinctVals(a).minDiff/2,posLetter:"x",valLetter:"y"}),t._numBoxes++,s):[{t:{empty:!0}}]}},1026:function(R,E,e){var w=e(71828),k=e(7901),i=e(14555),_=e(73927),y=e(75343);function h(l,t,o,r){var n=o(r+".line.color");o(r+".line.width",t.line.width),o(r+".fillcolor",k.addOpacity(n,.5))}R.exports=function(l,t,o,r){function n(a,s){return w.coerce(l,t,y,a,s)}i(l,t,n,r)?(_(l,t,r,n,{x:!0}),n("xhoverformat"),n("yhoverformat"),n("line.width"),h(0,t,n,"increasing"),h(0,t,n,"decreasing"),n("text"),n("hovertext"),n("whiskerwidth"),r._requestRangeslider[t.xaxis]=!0):t.visible=!1}},91815:function(R,E,e){R.exports={moduleType:"trace",name:"candlestick",basePlotModule:e(93612),categories:["cartesian","svg","showLegend","candlestick","boxLayout"],meta:{},attributes:e(75343),layoutAttributes:e(40094),supplyLayoutDefaults:e(4199).supplyLayoutDefaults,crossTraceCalc:e(37188).crossTraceCalc,supplyDefaults:e(1026),calc:e(41197),plot:e(86047).plot,layerName:"boxlayer",style:e(58063).style,hoverPoints:e(66449).hoverPoints,selectPoints:e(67324)}},13145:function(R,E,e){var w=e(11500),k=e(44467);R.exports=function(i,_,y,h,l){h("a")||(h("da"),h("a0")),h("b")||(h("db"),h("b0")),function(t,o,r,n){["aaxis","baxis"].forEach(function(a){var s=a.charAt(0),u=t[a]||{},p=k.newContainer(o,a),c={noTicklabelstep:!0,tickfont:"x",id:s+"axis",letter:s,font:o.font,name:a,data:t[s],calendar:o.calendar,dfltColor:n,bgColor:r.paper_bgcolor,autotypenumbersDflt:r.autotypenumbers,fullLayout:r};w(u,p,c),p._categories=p._categories||[],t[a]||u.type==="-"||(t[a]={type:u.type})})}(i,_,y,l)}},402:function(R,E,e){var w=e(71828).isArrayOrTypedArray;function k(i,_){if(!w(i)||_>=10)return null;for(var y=1/0,h=-1/0,l=i.length,t=0;t<l;t++){var o=i[t];if(w(o)){var r=k(o,_+1);r&&(y=Math.min(r[0],y),h=Math.max(r[1],h))}else y=Math.min(o,y),h=Math.max(o,h)}return[y,h]}R.exports=function(i){return k(i,0)}},99798:function(R,E,e){var w=e(41940),k=e(1928),i=e(22399),_=w({editType:"calc"});_.family.dflt='"Open Sans", verdana, arial, sans-serif',_.size.dflt=12,_.color.dflt=i.defaultLine,R.exports={carpet:{valType:"string",editType:"calc"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},a:{valType:"data_array",editType:"calc"},a0:{valType:"number",dflt:0,editType:"calc"},da:{valType:"number",dflt:1,editType:"calc"},b:{valType:"data_array",editType:"calc"},b0:{valType:"number",dflt:0,editType:"calc"},db:{valType:"number",dflt:1,editType:"calc"},cheaterslope:{valType:"number",dflt:1,editType:"calc"},aaxis:k,baxis:k,font:_,color:{valType:"color",dflt:i.defaultLine,editType:"plot"},transforms:void 0}},4536:function(R,E,e){var w=e(71828).isArrayOrTypedArray;R.exports=function(k,i,_,y){var h,l,t,o,r,n,a,s,u,p,c,b,g,f=w(_)?"a":"b",v=(f==="a"?k.aaxis:k.baxis).smoothing,m=f==="a"?k.a2i:k.b2j,x=f==="a"?_:y,T=f==="a"?y:_,d=f==="a"?i.a.length:i.b.length,M=f==="a"?i.b.length:i.a.length,A=Math.floor(f==="a"?k.b2j(T):k.a2i(T)),C=f==="a"?function(ie){return k.evalxy([],ie,A)}:function(ie){return k.evalxy([],A,ie)};v&&(t=Math.max(0,Math.min(M-2,A)),o=A-t,l=f==="a"?function(ie,te){return k.dxydi([],ie,t,te,o)}:function(ie,te){return k.dxydj([],t,ie,o,te)});var P=m(x[0]),O=m(x[1]),z=P<O?1:-1,B=1e-8*(O-P),Y=z>0?Math.floor:Math.ceil,D=z>0?Math.ceil:Math.floor,G=z>0?Math.min:Math.max,V=z>0?Math.max:Math.min,j=Y(P+B),W=D(O-B),Z=[[a=C(P)]];for(h=j;h*z<W*z;h+=z)r=[],c=V(P,h),g=(b=G(O,h+z))-c,n=Math.max(0,Math.min(d-2,Math.floor(.5*(c+b)))),s=C(b),v&&(u=l(n,c-n),p=l(n,b-n),r.push([a[0]+u[0]/3*g,a[1]+u[1]/3*g]),r.push([s[0]-p[0]/3*g,s[1]-p[1]/3*g])),r.push(s),Z.push(r),a=s;return Z}},1928:function(R,E,e){var w=e(41940),k=e(22399),i=e(13838),_=e(12663).descriptionWithDates,y=e(30962).overrideAll,h=e(79952).P,l=e(1426).extendFlat;R.exports={color:{valType:"color",editType:"calc"},smoothing:{valType:"number",dflt:1,min:0,max:1.3,editType:"calc"},title:{text:{valType:"string",dflt:"",editType:"calc"},font:w({editType:"calc"}),offset:{valType:"number",dflt:10,editType:"calc"},editType:"calc"},type:{valType:"enumerated",values:["-","linear","date","category"],dflt:"-",editType:"calc"},autotypenumbers:i.autotypenumbers,autorange:{valType:"enumerated",values:[!0,!1,"reversed"],dflt:!0,editType:"calc"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"calc"},range:{valType:"info_array",editType:"calc",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}]},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},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"},tickvals:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},showticklabels:{valType:"enumerated",values:["start","end","both","none"],dflt:"start",editType:"calc"},labelalias:l({},i.labelalias,{editType:"calc"}),tickfont:w({editType:"calc"}),tickangle:{valType:"angle",dflt:"auto",editType:"calc"},tickprefix:{valType:"string",dflt:"",editType:"calc"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},ticksuffix:{valType:"string",dflt:"",editType:"calc"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"calc"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B"],dflt:"B",editType:"calc"},minexponent:{valType:"number",dflt:3,min:0,editType:"calc"},separatethousands:{valType:"boolean",dflt:!1,editType:"calc"},tickformat:{valType:"string",dflt:"",editType:"calc",description:_("tick label")},tickformatstops:y(i.tickformatstops,"calc","from-root"),categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},labelpadding:{valType:"integer",dflt:10,editType:"calc"},labelprefix:{valType:"string",editType:"calc"},labelsuffix:{valType:"string",dflt:"",editType:"calc"},showline:{valType:"boolean",dflt:!1,editType:"calc"},linecolor:{valType:"color",dflt:k.defaultLine,editType:"calc"},linewidth:{valType:"number",min:0,dflt:1,editType:"calc"},gridcolor:{valType:"color",editType:"calc"},gridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},griddash:l({},h,{editType:"calc"}),showgrid:{valType:"boolean",dflt:!0,editType:"calc"},minorgridcount:{valType:"integer",min:0,dflt:0,editType:"calc"},minorgridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},minorgriddash:l({},h,{editType:"calc"}),minorgridcolor:{valType:"color",dflt:k.lightLine,editType:"calc"},startline:{valType:"boolean",editType:"calc"},startlinecolor:{valType:"color",editType:"calc"},startlinewidth:{valType:"number",dflt:1,editType:"calc"},endline:{valType:"boolean",editType:"calc"},endlinewidth:{valType:"number",dflt:1,editType:"calc"},endlinecolor:{valType:"color",editType:"calc"},tick0:{valType:"number",min:0,dflt:0,editType:"calc"},dtick:{valType:"number",min:0,dflt:1,editType:"calc"},arraytick0:{valType:"integer",min:0,dflt:0,editType:"calc"},arraydtick:{valType:"integer",min:1,dflt:1,editType:"calc"},_deprecated:{title:{valType:"string",editType:"calc"},titlefont:w({editType:"calc"}),titleoffset:{valType:"number",dflt:10,editType:"calc"}},editType:"calc"}},11500:function(R,E,e){var w=e(99798),k=e(7901).addOpacity,i=e(73972),_=e(71828),y=e(26218),h=e(96115),l=e(89426),t=e(15258),o=e(21994),r=e(4322);R.exports=function(n,a,s){var u=s.letter,p=s.font||{},c=w[u+"axis"];function b(z,B){return _.coerce(n,a,c,z,B)}function g(z,B){return _.coerce2(n,a,c,z,B)}s.name&&(a._name=s.name,a._id=s.name),b("autotypenumbers",s.autotypenumbersDflt);var f=b("type");f==="-"&&(s.data&&function(z,B){if(z.type==="-"){var Y=z._id.charAt(0),D=z[Y+"calendar"];z.type=r(B,D,{autotypenumbers:z.autotypenumbers})}}(a,s.data),a.type==="-"?a.type="linear":f=n.type=a.type),b("smoothing"),b("cheatertype"),b("showticklabels"),b("labelprefix",u+" = "),b("labelsuffix"),b("showtickprefix"),b("showticksuffix"),b("separatethousands"),b("tickformat"),b("exponentformat"),b("minexponent"),b("showexponent"),b("categoryorder"),b("tickmode"),b("tickvals"),b("ticktext"),b("tick0"),b("dtick"),a.tickmode==="array"&&(b("arraytick0"),b("arraydtick")),b("labelpadding"),a._hovertitle=u,f==="date"&&i.getComponentMethod("calendars","handleDefaults")(n,a,"calendar",s.calendar),o(a,s.fullLayout),a.c2p=_.identity;var v=b("color",s.dfltColor),m=v===n.color?v:p.color;b("title.text")&&(_.coerceFont(b,"title.font",{family:p.family,size:_.bigFont(p.size),color:m}),b("title.offset")),b("tickangle"),b("autorange",!a.isValidRange(n.range))&&b("rangemode"),b("range"),a.cleanRange(),b("fixedrange"),y(n,a,b,f),l(n,a,b,f,s),h(n,a,b,f,s),t(n,a,b,{data:s.data,dataAttr:u});var x=g("gridcolor",k(v,.3)),T=g("gridwidth"),d=g("griddash"),M=b("showgrid");M||(delete a.gridcolor,delete a.gridwidth,delete a.griddash);var A=g("startlinecolor",v),C=g("startlinewidth",T);b("startline",a.showgrid||!!A||!!C)||(delete a.startlinecolor,delete a.startlinewidth);var P=g("endlinecolor",v),O=g("endlinewidth",T);return b("endline",a.showgrid||!!P||!!O)||(delete a.endlinecolor,delete a.endlinewidth),M?(b("minorgridcount"),b("minorgridwidth",T),b("minorgriddash",d),b("minorgridcolor",k(x,.06)),a.minorgridcount||(delete a.minorgridwidth,delete a.minorgriddash,delete a.minorgridcolor)):(delete a.gridcolor,delete a.gridwidth,delete a.griddash),a.showticklabels==="none"&&(delete a.tickfont,delete a.tickangle,delete a.showexponent,delete a.exponentformat,delete a.minexponent,delete a.tickformat,delete a.showticksuffix,delete a.showtickprefix),a.showticksuffix||delete a.ticksuffix,a.showtickprefix||delete a.tickprefix,b("tickmode"),a}},25281:function(R,E,e){var w=e(89298),k=e(71828).isArray1D,i=e(53824),_=e(402),y=e(20347),h=e(83311),l=e(44807),t=e(4742),o=e(72505),r=e(68296),n=e(11435);R.exports=function(a,s){var u=w.getFromId(a,s.xaxis),p=w.getFromId(a,s.yaxis),c=s.aaxis,b=s.baxis,g=s.x,f=s.y,v=[];g&&k(g)&&v.push("x"),f&&k(f)&&v.push("y"),v.length&&r(s,c,b,"a","b",v);var m=s._a=s._a||s.a,x=s._b=s._b||s.b;g=s._x||s.x,f=s._y||s.y;var T={};if(s._cheater){var d=c.cheatertype==="index"?m.length:m,M=b.cheatertype==="index"?x.length:x;g=i(d,M,s.cheaterslope)}s._x=g=t(g),s._y=f=t(f),o(g,m,x),o(f,m,x),n(s),s.setScale();var A=_(g),C=_(f),P=.5*(A[1]-A[0]),O=.5*(A[1]+A[0]),z=.5*(C[1]-C[0]),B=.5*(C[1]+C[0]),Y=1.3;return A=[O-P*Y,O+P*Y],C=[B-z*Y,B+z*Y],s._extremes[u._id]=w.findExtremes(u,A,{padded:!0}),s._extremes[p._id]=w.findExtremes(p,C,{padded:!0}),y(s,"a","b"),y(s,"b","a"),h(s,c),h(s,b),T.clipsegments=l(s._xctrl,s._yctrl,c,b),T.x=g,T.y=f,T.a=m,T.b=x,[T]}},44807:function(R){R.exports=function(E,e,w,k){var i,_,y,h=[],l=!!w.smoothing,t=!!k.smoothing,o=E[0].length-1,r=E.length-1;for(i=0,_=[],y=[];i<=o;i++)_[i]=E[0][i],y[i]=e[0][i];for(h.push({x:_,y,bicubic:l}),i=0,_=[],y=[];i<=r;i++)_[i]=E[i][o],y[i]=e[i][o];for(h.push({x:_,y,bicubic:t}),i=o,_=[],y=[];i>=0;i--)_[o-i]=E[r][i],y[o-i]=e[r][i];for(h.push({x:_,y,bicubic:l}),i=r,_=[],y=[];i>=0;i--)_[r-i]=E[i][0],y[r-i]=e[i][0];return h.push({x:_,y,bicubic:t}),h}},20347:function(R,E,e){var w=e(89298),k=e(1426).extendFlat;R.exports=function(i,_,y){var h,l,t,o,r,n,a,s,u,p,c,b,g,f,v=i["_"+_],m=i[_+"axis"],x=m._gridlines=[],T=m._minorgridlines=[],d=m._boundarylines=[],M=i["_"+y],A=i[y+"axis"];m.tickmode==="array"&&(m.tickvals=v.slice());var C=i._xctrl,P=i._yctrl,O=C[0].length,z=C.length,B=i._a.length,Y=i._b.length;w.prepTicks(m),m.tickmode==="array"&&delete m.tickvals;var D=m.smoothing?3:1;function G(j){var W,Z,ie,te,J,X,ee,re,oe,ue,ce,de,me=[],_e=[],Se={};if(_==="b")for(Z=i.b2j(j),ie=Math.floor(Math.max(0,Math.min(Y-2,Z))),te=Z-ie,Se.length=Y,Se.crossLength=B,Se.xy=function(we){return i.evalxy([],we,Z)},Se.dxy=function(we,xe){return i.dxydi([],we,ie,xe,te)},W=0;W<B;W++)X=Math.min(B-2,W),ee=W-X,re=i.evalxy([],W,Z),A.smoothing&&W>0&&(oe=i.dxydi([],W-1,ie,0,te),me.push(J[0]+oe[0]/3),_e.push(J[1]+oe[1]/3),ue=i.dxydi([],W-1,ie,1,te),me.push(re[0]-ue[0]/3),_e.push(re[1]-ue[1]/3)),me.push(re[0]),_e.push(re[1]),J=re;else for(W=i.a2i(j),X=Math.floor(Math.max(0,Math.min(B-2,W))),ee=W-X,Se.length=B,Se.crossLength=Y,Se.xy=function(we){return i.evalxy([],W,we)},Se.dxy=function(we,xe){return i.dxydj([],X,we,ee,xe)},Z=0;Z<Y;Z++)ie=Math.min(Y-2,Z),te=Z-ie,re=i.evalxy([],W,Z),A.smoothing&&Z>0&&(ce=i.dxydj([],X,Z-1,ee,0),me.push(J[0]+ce[0]/3),_e.push(J[1]+ce[1]/3),de=i.dxydj([],X,Z-1,ee,1),me.push(re[0]-de[0]/3),_e.push(re[1]-de[1]/3)),me.push(re[0]),_e.push(re[1]),J=re;return Se.axisLetter=_,Se.axis=m,Se.crossAxis=A,Se.value=j,Se.constvar=y,Se.index=s,Se.x=me,Se.y=_e,Se.smoothing=A.smoothing,Se}function V(j){var W,Z,ie,te,J,X=[],ee=[],re={};if(re.length=v.length,re.crossLength=M.length,_==="b")for(ie=Math.max(0,Math.min(Y-2,j)),J=Math.min(1,Math.max(0,j-ie)),re.xy=function(oe){return i.evalxy([],oe,j)},re.dxy=function(oe,ue){return i.dxydi([],oe,ie,ue,J)},W=0;W<O;W++)X[W]=C[j*D][W],ee[W]=P[j*D][W];else for(Z=Math.max(0,Math.min(B-2,j)),te=Math.min(1,Math.max(0,j-Z)),re.xy=function(oe){return i.evalxy([],j,oe)},re.dxy=function(oe,ue){return i.dxydj([],Z,oe,te,ue)},W=0;W<z;W++)X[W]=C[W][j*D],ee[W]=P[W][j*D];return re.axisLetter=_,re.axis=m,re.crossAxis=A,re.value=v[j],re.constvar=y,re.index=j,re.x=X,re.y=ee,re.smoothing=A.smoothing,re}if(m.tickmode==="array"){for(o=5e-15,n=(r=[Math.floor((v.length-1-m.arraytick0)/m.arraydtick*(1+o)),Math.ceil(-m.arraytick0/m.arraydtick/(1+o))].sort(function(j,W){return j-W}))[0]-1,a=r[1]+1,s=n;s<a;s++)(l=m.arraytick0+m.arraydtick*s)<0||l>v.length-1||x.push(k(V(l),{color:m.gridcolor,width:m.gridwidth,dash:m.griddash}));for(s=n;s<a;s++)if(t=m.arraytick0+m.arraydtick*s,c=Math.min(t+m.arraydtick,v.length-1),!(t<0||t>v.length-1||c<0||c>v.length-1))for(b=v[t],g=v[c],h=0;h<m.minorgridcount;h++)(f=c-t)<=0||(p=b+(g-b)*(h+1)/(m.minorgridcount+1)*(m.arraydtick/f))<v[0]||p>v[v.length-1]||T.push(k(G(p),{color:m.minorgridcolor,width:m.minorgridwidth,dash:m.minorgriddash}));m.startline&&d.push(k(V(0),{color:m.startlinecolor,width:m.startlinewidth})),m.endline&&d.push(k(V(v.length-1),{color:m.endlinecolor,width:m.endlinewidth}))}else{for(o=5e-15,n=(r=[Math.floor((v[v.length-1]-m.tick0)/m.dtick*(1+o)),Math.ceil((v[0]-m.tick0)/m.dtick/(1+o))].sort(function(j,W){return j-W}))[0],a=r[1],s=n;s<=a;s++)u=m.tick0+m.dtick*s,x.push(k(G(u),{color:m.gridcolor,width:m.gridwidth,dash:m.griddash}));for(s=n-1;s<a+1;s++)for(u=m.tick0+m.dtick*s,h=0;h<m.minorgridcount;h++)(p=u+m.dtick*(h+1)/(m.minorgridcount+1))<v[0]||p>v[v.length-1]||T.push(k(G(p),{color:m.minorgridcolor,width:m.minorgridwidth,dash:m.minorgriddash}));m.startline&&d.push(k(G(v[0]),{color:m.startlinecolor,width:m.startlinewidth})),m.endline&&d.push(k(G(v[v.length-1]),{color:m.endlinecolor,width:m.endlinewidth}))}}},83311:function(R,E,e){var w=e(89298),k=e(1426).extendFlat;R.exports=function(i,_){var y,h,l,t=_._labels=[],o=_._gridlines;for(y=0;y<o.length;y++)l=o[y],["start","both"].indexOf(_.showticklabels)!==-1&&(h=w.tickText(_,l.value),k(h,{prefix:void 0,suffix:void 0,endAnchor:!0,xy:l.xy(0),dxy:l.dxy(0,0),axis:l.axis,length:l.crossAxis.length,font:l.axis.tickfont,isFirst:y===0,isLast:y===o.length-1}),t.push(h)),["end","both"].indexOf(_.showticklabels)!==-1&&(h=w.tickText(_,l.value),k(h,{endAnchor:!1,xy:l.xy(l.crossLength-1),dxy:l.dxy(l.crossLength-2,1),axis:l.axis,length:l.crossAxis.length,font:l.axis.tickfont,isFirst:y===0,isLast:y===o.length-1}),t.push(h))}},42048:function(R){R.exports=function(E,e,w,k){var i=E[0]-e[0],_=E[1]-e[1],y=w[0]-e[0],h=w[1]-e[1],l=Math.pow(i*i+_*_,.25),t=Math.pow(y*y+h*h,.25),o=(t*t*i-l*l*y)*k,r=(t*t*_-l*l*h)*k,n=t*(l+t)*3,a=l*(l+t)*3;return[[e[0]+(n&&o/n),e[1]+(n&&r/n)],[e[0]-(a&&o/a),e[1]-(a&&r/a)]]}},53824:function(R,E,e){var w=e(71828).isArrayOrTypedArray;R.exports=function(k,i,_){var y,h,l,t,o,r,n=[],a=w(k)?k.length:k,s=w(i)?i.length:i,u=w(k)?k:null,p=w(i)?i:null;u&&(l=(u.length-1)/(u[u.length-1]-u[0])/(a-1)),p&&(t=(p.length-1)/(p[p.length-1]-p[0])/(s-1));var c=1/0,b=-1/0;for(h=0;h<s;h++)for(n[h]=[],o=p?(p[h]-p[0])*t:h/(s-1),y=0;y<a;y++)r=(u?(u[y]-u[0])*l:y/(a-1))-o*_,c=Math.min(r,c),b=Math.max(r,b),n[h][y]=r;var g=1/(b-c),f=-c*g;for(h=0;h<s;h++)for(y=0;y<a;y++)n[h][y]=g*n[h][y]+f;return n}},45664:function(R,E,e){var w=e(42048),k=e(71828).ensureArray;function i(_,y,h){var l=-.5*h[0]+1.5*y[0],t=-.5*h[1]+1.5*y[1];return[(2*l+_[0])/3,(2*t+_[1])/3]}R.exports=function(_,y,h,l,t,o){var r,n,a,s,u,p,c,b,g,f,v=h[0].length,m=h.length,x=t?3*v-2:v,T=o?3*m-2:m;for(_=k(_,T),y=k(y,T),a=0;a<T;a++)_[a]=k(_[a],x),y[a]=k(y[a],x);for(n=0,s=0;n<m;n++,s+=o?3:1)for(u=_[s],p=y[s],c=h[n],b=l[n],r=0,a=0;r<v;r++,a+=t?3:1)u[a]=c[r],p[a]=b[r];if(t)for(n=0,s=0;n<m;n++,s+=o?3:1){for(r=1,a=3;r<v-1;r++,a+=3)g=w([h[n][r-1],l[n][r-1]],[h[n][r],l[n][r]],[h[n][r+1],l[n][r+1]],t),_[s][a-1]=g[0][0],y[s][a-1]=g[0][1],_[s][a+1]=g[1][0],y[s][a+1]=g[1][1];f=i([_[s][0],y[s][0]],[_[s][2],y[s][2]],[_[s][3],y[s][3]]),_[s][1]=f[0],y[s][1]=f[1],f=i([_[s][x-1],y[s][x-1]],[_[s][x-3],y[s][x-3]],[_[s][x-4],y[s][x-4]]),_[s][x-2]=f[0],y[s][x-2]=f[1]}if(o)for(a=0;a<x;a++){for(s=3;s<T-3;s+=3)g=w([_[s-3][a],y[s-3][a]],[_[s][a],y[s][a]],[_[s+3][a],y[s+3][a]],o),_[s-1][a]=g[0][0],y[s-1][a]=g[0][1],_[s+1][a]=g[1][0],y[s+1][a]=g[1][1];f=i([_[0][a],y[0][a]],[_[2][a],y[2][a]],[_[3][a],y[3][a]]),_[1][a]=f[0],y[1][a]=f[1],f=i([_[T-1][a],y[T-1][a]],[_[T-3][a],y[T-3][a]],[_[T-4][a],y[T-4][a]]),_[T-2][a]=f[0],y[T-2][a]=f[1]}if(t&&o)for(s=1;s<T;s+=(s+1)%3==0?2:1){for(a=3;a<x-3;a+=3)g=w([_[s][a-3],y[s][a-3]],[_[s][a],y[s][a]],[_[s][a+3],y[s][a+3]],t),_[s][a-1]=.5*(_[s][a-1]+g[0][0]),y[s][a-1]=.5*(y[s][a-1]+g[0][1]),_[s][a+1]=.5*(_[s][a+1]+g[1][0]),y[s][a+1]=.5*(y[s][a+1]+g[1][1]);f=i([_[s][0],y[s][0]],[_[s][2],y[s][2]],[_[s][3],y[s][3]]),_[s][1]=.5*(_[s][1]+f[0]),y[s][1]=.5*(y[s][1]+f[1]),f=i([_[s][x-1],y[s][x-1]],[_[s][x-3],y[s][x-3]],[_[s][x-4],y[s][x-4]]),_[s][x-2]=.5*(_[s][x-2]+f[0]),y[s][x-2]=.5*(y[s][x-2]+f[1])}return[_,y]}},35509:function(R){R.exports={RELATIVE_CULL_TOLERANCE:1e-6}},54495:function(R){R.exports=function(E,e,w){return e&&w?function(k,i,_,y,h){var l,t,o,r,n,a;k||(k=[]),i*=3,_*=3;var s=y*y,u=1-y,p=u*u,c=u*y*2,b=-3*p,g=3*(p-c),f=3*(c-s),v=3*s,m=h*h,x=m*h,T=1-h,d=T*T,M=d*T;for(a=0;a<E.length;a++)l=b*(n=E[a])[_][i]+g*n[_][i+1]+f*n[_][i+2]+v*n[_][i+3],t=b*n[_+1][i]+g*n[_+1][i+1]+f*n[_+1][i+2]+v*n[_+1][i+3],o=b*n[_+2][i]+g*n[_+2][i+1]+f*n[_+2][i+2]+v*n[_+2][i+3],r=b*n[_+3][i]+g*n[_+3][i+1]+f*n[_+3][i+2]+v*n[_+3][i+3],k[a]=M*l+3*(d*h*t+T*m*o)+x*r;return k}:e?function(k,i,_,y,h){var l,t,o,r;k||(k=[]),i*=3;var n=y*y,a=1-y,s=a*a,u=a*y*2,p=-3*s,c=3*(s-u),b=3*(u-n),g=3*n,f=1-h;for(o=0;o<E.length;o++)l=p*(r=E[o])[_][i]+c*r[_][i+1]+b*r[_][i+2]+g*r[_][i+3],t=p*r[_+1][i]+c*r[_+1][i+1]+b*r[_+1][i+2]+g*r[_+1][i+3],k[o]=f*l+h*t;return k}:w?function(k,i,_,y,h){var l,t,o,r,n,a;k||(k=[]),_*=3;var s=h*h,u=s*h,p=1-h,c=p*p,b=c*p;for(n=0;n<E.length;n++)l=(a=E[n])[_][i+1]-a[_][i],t=a[_+1][i+1]-a[_+1][i],o=a[_+2][i+1]-a[_+2][i],r=a[_+3][i+1]-a[_+3][i],k[n]=b*l+3*(c*h*t+p*s*o)+u*r;return k}:function(k,i,_,y,h){var l,t,o,r;k||(k=[]);var n=1-h;for(o=0;o<E.length;o++)l=(r=E[o])[_][i+1]-r[_][i],t=r[_+1][i+1]-r[_+1][i],k[o]=n*l+h*t;return k}}},73057:function(R){R.exports=function(E,e,w){return e&&w?function(k,i,_,y,h){var l,t,o,r,n,a;k||(k=[]),i*=3,_*=3;var s=y*y,u=s*y,p=1-y,c=p*p,b=c*p,g=h*h,f=1-h,v=f*f,m=f*h*2,x=-3*v,T=3*(v-m),d=3*(m-g),M=3*g;for(a=0;a<E.length;a++)l=x*(n=E[a])[_][i]+T*n[_+1][i]+d*n[_+2][i]+M*n[_+3][i],t=x*n[_][i+1]+T*n[_+1][i+1]+d*n[_+2][i+1]+M*n[_+3][i+1],o=x*n[_][i+2]+T*n[_+1][i+2]+d*n[_+2][i+2]+M*n[_+3][i+2],r=x*n[_][i+3]+T*n[_+1][i+3]+d*n[_+2][i+3]+M*n[_+3][i+3],k[a]=b*l+3*(c*y*t+p*s*o)+u*r;return k}:e?function(k,i,_,y,h){var l,t,o,r,n,a;k||(k=[]),i*=3;var s=h*h,u=s*h,p=1-h,c=p*p,b=c*p;for(n=0;n<E.length;n++)l=(a=E[n])[_+1][i]-a[_][i],t=a[_+1][i+1]-a[_][i+1],o=a[_+1][i+2]-a[_][i+2],r=a[_+1][i+3]-a[_][i+3],k[n]=b*l+3*(c*h*t+p*s*o)+u*r;return k}:w?function(k,i,_,y,h){var l,t,o,r;k||(k=[]),_*=3;var n=1-y,a=h*h,s=1-h,u=s*s,p=s*h*2,c=-3*u,b=3*(u-p),g=3*(p-a),f=3*a;for(o=0;o<E.length;o++)l=c*(r=E[o])[_][i]+b*r[_+1][i]+g*r[_+2][i]+f*r[_+3][i],t=c*r[_][i+1]+b*r[_+1][i+1]+g*r[_+2][i+1]+f*r[_+3][i+1],k[o]=n*l+y*t;return k}:function(k,i,_,y,h){var l,t,o,r;k||(k=[]);var n=1-y;for(o=0;o<E.length;o++)l=(r=E[o])[_+1][i]-r[_][i],t=r[_+1][i+1]-r[_][i+1],k[o]=n*l+y*t;return k}}},20349:function(R){R.exports=function(E,e,w,k,i){var _=e-2,y=w-2;return k&&i?function(h,l,t){var o,r,n,a,s,u;h||(h=[]);var p=Math.max(0,Math.min(Math.floor(l),_)),c=Math.max(0,Math.min(Math.floor(t),y)),b=Math.max(0,Math.min(1,l-p)),g=Math.max(0,Math.min(1,t-c));p*=3,c*=3;var f=b*b,v=f*b,m=1-b,x=m*m,T=x*m,d=g*g,M=d*g,A=1-g,C=A*A,P=C*A;for(u=0;u<E.length;u++)o=T*(s=E[u])[c][p]+3*(x*b*s[c][p+1]+m*f*s[c][p+2])+v*s[c][p+3],r=T*s[c+1][p]+3*(x*b*s[c+1][p+1]+m*f*s[c+1][p+2])+v*s[c+1][p+3],n=T*s[c+2][p]+3*(x*b*s[c+2][p+1]+m*f*s[c+2][p+2])+v*s[c+2][p+3],a=T*s[c+3][p]+3*(x*b*s[c+3][p+1]+m*f*s[c+3][p+2])+v*s[c+3][p+3],h[u]=P*o+3*(C*g*r+A*d*n)+M*a;return h}:k?function(h,l,t){h||(h=[]);var o,r,n,a,s,u,p=Math.max(0,Math.min(Math.floor(l),_)),c=Math.max(0,Math.min(Math.floor(t),y)),b=Math.max(0,Math.min(1,l-p)),g=Math.max(0,Math.min(1,t-c));p*=3;var f=b*b,v=f*b,m=1-b,x=m*m,T=x*m,d=1-g;for(s=0;s<E.length;s++)o=d*(u=E[s])[c][p]+g*u[c+1][p],r=d*u[c][p+1]+g*u[c+1][p+1],n=d*u[c][p+2]+g*u[c+1][p+1],a=d*u[c][p+3]+g*u[c+1][p+1],h[s]=T*o+3*(x*b*r+m*f*n)+v*a;return h}:i?function(h,l,t){h||(h=[]);var o,r,n,a,s,u,p=Math.max(0,Math.min(Math.floor(l),_)),c=Math.max(0,Math.min(Math.floor(t),y)),b=Math.max(0,Math.min(1,l-p)),g=Math.max(0,Math.min(1,t-c));c*=3;var f=g*g,v=f*g,m=1-g,x=m*m,T=x*m,d=1-b;for(s=0;s<E.length;s++)o=d*(u=E[s])[c][p]+b*u[c][p+1],r=d*u[c+1][p]+b*u[c+1][p+1],n=d*u[c+2][p]+b*u[c+2][p+1],a=d*u[c+3][p]+b*u[c+3][p+1],h[s]=T*o+3*(x*g*r+m*f*n)+v*a;return h}:function(h,l,t){h||(h=[]);var o,r,n,a,s=Math.max(0,Math.min(Math.floor(l),_)),u=Math.max(0,Math.min(Math.floor(t),y)),p=Math.max(0,Math.min(1,l-s)),c=Math.max(0,Math.min(1,t-u)),b=1-c,g=1-p;for(n=0;n<E.length;n++)o=g*(a=E[n])[u][s]+p*a[u][s+1],r=g*a[u+1][s]+p*a[u+1][s+1],h[n]=b*o+c*r;return h}}},92087:function(R,E,e){var w=e(71828),k=e(19237),i=e(13145),_=e(99798),y=e(22399);R.exports=function(h,l,t,o){function r(a,s){return w.coerce(h,l,_,a,s)}l._clipPathId="clip"+l.uid+"carpet";var n=r("color",y.defaultLine);w.coerceFont(r,"font"),r("carpet"),i(h,l,o,r,n),l.a&&l.b?(l.a.length<3&&(l.aaxis.smoothing=0),l.b.length<3&&(l.baxis.smoothing=0),k(h,l,r)||(l.visible=!1),l._cheater&&r("cheaterslope")):l.visible=!1}},21462:function(R,E,e){R.exports={attributes:e(99798),supplyDefaults:e(92087),plot:e(89740),calc:e(25281),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:e(93612),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{}}},22882:function(R){R.exports=function(E,e){for(var w,k=E._fullData.length,i=0;i<k;i++){var _=E._fullData[i];if(_.index!==e.index&&_.type==="carpet"&&(w||(w=_),_.carpet===e.carpet))return _}return w}},67961:function(R){R.exports=function(E,e,w){if(E.length===0)return"";var k,i=[],_=w?3:1;for(k=0;k<E.length;k+=_)i.push(E[k]+","+e[k]),w&&k<E.length-_&&(i.push("C"),i.push([E[k+1]+","+e[k+1],E[k+2]+","+e[k+2]+" "].join(" ")));return i.join(w?"":"L")}},27669:function(R,E,e){var w=e(71828).isArrayOrTypedArray;R.exports=function(k,i,_){var y;for(w(k)?k.length>i.length&&(k=k.slice(0,i.length)):k=[],y=0;y<i.length;y++)k[y]=_(i[y]);return k}},11651:function(R){R.exports=function(E,e,w,k,i,_){var y=i[0]*E.dpdx(e),h=i[1]*E.dpdy(w),l=1,t=1;if(_){var o=Math.sqrt(i[0]*i[0]+i[1]*i[1]),r=Math.sqrt(_[0]*_[0]+_[1]*_[1]),n=(i[0]*_[0]+i[1]*_[1])/o/r;t=Math.max(0,n)}var a=180*Math.atan2(h,y)/Math.PI;return a<-90?(a+=180,l=-l):a>90&&(a-=180,l=-l),{angle:a,flip:l,p:E.c2p(k,e,w),offsetMultplier:t}}},89740:function(R,E,e){var w=e(39898),k=e(91424),i=e(27669),_=e(67961),y=e(11651),h=e(63893),l=e(71828),t=l.strRotate,o=l.strTranslate,r=e(18783);function n(c,b,g,f,v,m,x){var T="const-"+v+"-lines",d=g.selectAll("."+T).data(m);d.enter().append("path").classed(T,!0).style("vector-effect",x?"none":"non-scaling-stroke"),d.each(function(M){var A=M,C=A.x,P=A.y,O=i([],C,c.c2p),z=i([],P,b.c2p),B="M"+_(O,z,A.smoothing);w.select(this).attr("d",B).style("stroke-width",A.width).style("stroke",A.color).style("stroke-dasharray",k.dashStyle(A.dash,A.width)).style("fill","none")}),d.exit().remove()}function a(c,b,g,f,v,m,x,T){var d=m.selectAll("text."+T).data(x);d.enter().append("text").classed(T,!0);var M=0,A={};return d.each(function(C,P){var O;if(C.axis.tickangle==="auto")O=y(f,b,g,C.xy,C.dxy);else{var z=(C.axis.tickangle+180)*Math.PI/180;O=y(f,b,g,C.xy,[Math.cos(z),Math.sin(z)])}P||(A={angle:O.angle,flip:O.flip});var B=(C.endAnchor?-1:1)*O.flip,Y=w.select(this).attr({"text-anchor":B>0?"start":"end","data-notex":1}).call(k.font,C.font).text(C.text).call(h.convertToTspans,c),D=k.bBox(this);Y.attr("transform",o(O.p[0],O.p[1])+t(O.angle)+o(C.axis.labelpadding*B,.3*D.height)),M=Math.max(M,D.width+C.axis.labelpadding)}),d.exit().remove(),A.maxExtent=M,A}R.exports=function(c,b,g,f){var v=c._context.staticPlot,m=b.xaxis,x=b.yaxis,T=c._fullLayout._clips;l.makeTraceGroups(f,g,"trace").each(function(d){var M=w.select(this),A=d[0],C=A.trace,P=C.aaxis,O=C.baxis,z=l.ensureSingle(M,"g","minorlayer"),B=l.ensureSingle(M,"g","majorlayer"),Y=l.ensureSingle(M,"g","boundarylayer"),D=l.ensureSingle(M,"g","labellayer");M.style("opacity",C.opacity),n(m,x,B,0,"a",P._gridlines,!0),n(m,x,B,0,"b",O._gridlines,!0),n(m,x,z,0,"a",P._minorgridlines,!0),n(m,x,z,0,"b",O._minorgridlines,!0),n(m,x,Y,0,"a-boundary",P._boundarylines,v),n(m,x,Y,0,"b-boundary",O._boundarylines,v);var G=a(c,m,x,C,0,D,P._labels,"a-label"),V=a(c,m,x,C,0,D,O._labels,"b-label");(function(j,W,Z,ie,te,J,X,ee){var re,oe,ue,ce,de=l.aggNums(Math.min,null,Z.a),me=l.aggNums(Math.max,null,Z.a),_e=l.aggNums(Math.min,null,Z.b),Se=l.aggNums(Math.max,null,Z.b);re=.5*(de+me),oe=_e,ue=Z.ab2xy(re,oe,!0),ce=Z.dxyda_rough(re,oe),X.angle===void 0&&l.extendFlat(X,y(Z,te,J,ue,Z.dxydb_rough(re,oe))),p(j,W,Z,0,ue,ce,Z.aaxis,te,J,X,"a-title"),re=de,oe=.5*(_e+Se),ue=Z.ab2xy(re,oe,!0),ce=Z.dxydb_rough(re,oe),ee.angle===void 0&&l.extendFlat(ee,y(Z,te,J,ue,Z.dxyda_rough(re,oe))),p(j,W,Z,0,ue,ce,Z.baxis,te,J,ee,"b-title")})(c,D,C,0,m,x,G,V),function(j,W,Z,ie,te){var J,X,ee,re,oe=Z.select("#"+j._clipPathId);oe.size()||(oe=Z.append("clipPath").classed("carpetclip",!0));var ue=l.ensureSingle(oe,"path","carpetboundary"),ce=W.clipsegments,de=[];for(re=0;re<ce.length;re++)J=ce[re],X=i([],J.x,ie.c2p),ee=i([],J.y,te.c2p),de.push(_(X,ee,J.bicubic));var me="M"+de.join("L")+"Z";oe.attr("id",j._clipPathId),ue.attr("d",me)}(C,A,T,m,x)})};var s=r.LINE_SPACING,u=(1-r.MID_SHIFT)/s+1;function p(c,b,g,f,v,m,x,T,d,M,A){var C=[];x.title.text&&C.push(x.title.text);var P=b.selectAll("text."+A).data(C),O=M.maxExtent;P.enter().append("text").classed(A,!0),P.each(function(){var z=y(g,T,d,v,m);["start","both"].indexOf(x.showticklabels)===-1&&(O=0);var B=x.title.font.size;O+=B+x.title.offset;var Y=(M.angle+(M.flip<0?180:0)-z.angle+450)%360,D=Y>90&&Y<270,G=w.select(this);G.text(x.title.text).call(h.convertToTspans,c),D&&(O=(-h.lineCount(G)+u)*s*B-O),G.attr("transform",o(z.p[0],z.p[1])+t(z.angle)+o(0,O)).attr("text-anchor","middle").call(k.font,x.title.font)}),P.exit().remove()}},11435:function(R,E,e){var w=e(35509),k=e(65888).findBin,i=e(45664),_=e(20349),y=e(54495),h=e(73057);R.exports=function(l){var t=l._a,o=l._b,r=t.length,n=o.length,a=l.aaxis,s=l.baxis,u=t[0],p=t[r-1],c=o[0],b=o[n-1],g=t[t.length-1]-t[0],f=o[o.length-1]-o[0],v=g*w.RELATIVE_CULL_TOLERANCE,m=f*w.RELATIVE_CULL_TOLERANCE;u-=v,p+=v,c-=m,b+=m,l.isVisible=function(x,T){return x>u&&x<p&&T>c&&T<b},l.isOccluded=function(x,T){return x<u||x>p||T<c||T>b},l.setScale=function(){var x=l._x,T=l._y,d=i(l._xctrl,l._yctrl,x,T,a.smoothing,s.smoothing);l._xctrl=d[0],l._yctrl=d[1],l.evalxy=_([l._xctrl,l._yctrl],r,n,a.smoothing,s.smoothing),l.dxydi=y([l._xctrl,l._yctrl],a.smoothing,s.smoothing),l.dxydj=h([l._xctrl,l._yctrl],a.smoothing,s.smoothing)},l.i2a=function(x){var T=Math.max(0,Math.floor(x[0]),r-2),d=x[0]-T;return(1-d)*t[T]+d*t[T+1]},l.j2b=function(x){var T=Math.max(0,Math.floor(x[1]),r-2),d=x[1]-T;return(1-d)*o[T]+d*o[T+1]},l.ij2ab=function(x){return[l.i2a(x[0]),l.j2b(x[1])]},l.a2i=function(x){var T=Math.max(0,Math.min(k(x,t),r-2)),d=t[T],M=t[T+1];return Math.max(0,Math.min(r-1,T+(x-d)/(M-d)))},l.b2j=function(x){var T=Math.max(0,Math.min(k(x,o),n-2)),d=o[T],M=o[T+1];return Math.max(0,Math.min(n-1,T+(x-d)/(M-d)))},l.ab2ij=function(x){return[l.a2i(x[0]),l.b2j(x[1])]},l.i2c=function(x,T){return l.evalxy([],x,T)},l.ab2xy=function(x,T,d){if(!d&&(x<t[0]||x>t[r-1]|T<o[0]||T>o[n-1]))return[!1,!1];var M=l.a2i(x),A=l.b2j(T),C=l.evalxy([],M,A);if(d){var P,O,z,B,Y=0,D=0,G=[];x<t[0]?(P=0,O=0,Y=(x-t[0])/(t[1]-t[0])):x>t[r-1]?(P=r-2,O=1,Y=(x-t[r-1])/(t[r-1]-t[r-2])):O=M-(P=Math.max(0,Math.min(r-2,Math.floor(M)))),T<o[0]?(z=0,B=0,D=(T-o[0])/(o[1]-o[0])):T>o[n-1]?(z=n-2,B=1,D=(T-o[n-1])/(o[n-1]-o[n-2])):B=A-(z=Math.max(0,Math.min(n-2,Math.floor(A)))),Y&&(l.dxydi(G,P,z,O,B),C[0]+=G[0]*Y,C[1]+=G[1]*Y),D&&(l.dxydj(G,P,z,O,B),C[0]+=G[0]*D,C[1]+=G[1]*D)}return C},l.c2p=function(x,T,d){return[T.c2p(x[0]),d.c2p(x[1])]},l.p2x=function(x,T,d){return[T.p2c(x[0]),d.p2c(x[1])]},l.dadi=function(x){var T=Math.max(0,Math.min(t.length-2,x));return t[T+1]-t[T]},l.dbdj=function(x){var T=Math.max(0,Math.min(o.length-2,x));return o[T+1]-o[T]},l.dxyda=function(x,T,d,M){var A=l.dxydi(null,x,T,d,M),C=l.dadi(x,d);return[A[0]/C,A[1]/C]},l.dxydb=function(x,T,d,M){var A=l.dxydj(null,x,T,d,M),C=l.dbdj(T,M);return[A[0]/C,A[1]/C]},l.dxyda_rough=function(x,T,d){var M=g*(d||.1),A=l.ab2xy(x+M,T,!0),C=l.ab2xy(x-M,T,!0);return[.5*(A[0]-C[0])/M,.5*(A[1]-C[1])/M]},l.dxydb_rough=function(x,T,d){var M=f*(d||.1),A=l.ab2xy(x,T+M,!0),C=l.ab2xy(x,T-M,!0);return[.5*(A[0]-C[0])/M,.5*(A[1]-C[1])/M]},l.dpdx=function(x){return x._m},l.dpdy=function(x){return x._m}}},72505:function(R,E,e){var w=e(71828);R.exports=function(k,i,_){var y,h,l,t=[],o=[],r=k[0].length,n=k.length;function a(j,W){var Z,ie=0,te=0;return j>0&&(Z=k[W][j-1])!==void 0&&(te++,ie+=Z),j<r-1&&(Z=k[W][j+1])!==void 0&&(te++,ie+=Z),W>0&&(Z=k[W-1][j])!==void 0&&(te++,ie+=Z),W<n-1&&(Z=k[W+1][j])!==void 0&&(te++,ie+=Z),ie/Math.max(1,te)}var s,u,p,c,b,g,f,v,m,x,T,d=0;for(y=0;y<r;y++)for(h=0;h<n;h++)k[h][y]===void 0&&(t.push(y),o.push(h),k[h][y]=a(y,h)),d=Math.max(d,Math.abs(k[h][y]));if(!t.length)return k;var M=0,A=0,C=t.length;do{for(M=0,l=0;l<C;l++){y=t[l],h=o[l];var P,O,z,B,Y,D,G=0,V=0;y===0?(z=i[Y=Math.min(r-1,2)],B=i[1],P=k[h][Y],V+=(O=k[h][1])+(O-P)*(i[0]-B)/(B-z),G++):y===r-1&&(z=i[Y=Math.max(0,r-3)],B=i[r-2],P=k[h][Y],V+=(O=k[h][r-2])+(O-P)*(i[r-1]-B)/(B-z),G++),(y===0||y===r-1)&&h>0&&h<n-1&&(s=_[h+1]-_[h],V+=((u=_[h]-_[h-1])*k[h+1][y]+s*k[h-1][y])/(u+s),G++),h===0?(z=_[D=Math.min(n-1,2)],B=_[1],P=k[D][y],V+=(O=k[1][y])+(O-P)*(_[0]-B)/(B-z),G++):h===n-1&&(z=_[D=Math.max(0,n-3)],B=_[n-2],P=k[D][y],V+=(O=k[n-2][y])+(O-P)*(_[n-1]-B)/(B-z),G++),(h===0||h===n-1)&&y>0&&y<r-1&&(s=i[y+1]-i[y],V+=((u=i[y]-i[y-1])*k[h][y+1]+s*k[h][y-1])/(u+s),G++),G?V/=G:(p=i[y+1]-i[y],c=i[y]-i[y-1],v=(b=_[h+1]-_[h])*(g=_[h]-_[h-1])*(b+g),V=((f=p*c*(p+c))*(g*k[h+1][y]+b*k[h-1][y])+v*(c*k[h][y+1]+p*k[h][y-1]))/(v*(c+p)+f*(g+b))),M+=(x=(m=V-k[h][y])/d)*x,T=G?0:.85,k[h][y]+=m*(1+T)}M=Math.sqrt(M)}while(A++<100&&M>1e-5);return w.log("Smoother converged to",M,"after",A,"iterations"),k}},19237:function(R,E,e){var w=e(71828).isArray1D;R.exports=function(k,i,_){var y=_("x"),h=y&&y.length,l=_("y"),t=l&&l.length;if(!h&&!t)return!1;if(i._cheater=!y,h&&!w(y)||t&&!w(l))i._length=null;else{var o=h?y.length:1/0;t&&(o=Math.min(o,l.length)),i.a&&i.a.length&&(o=Math.min(o,i.a.length)),i.b&&i.b.length&&(o=Math.min(o,i.b.length)),i._length=o}return!0}},69568:function(R,E,e){var w=e(5386).fF,k=e(19316),i=e(50693),_=e(9012),y=e(22399).defaultLine,h=e(1426).extendFlat,l=k.marker.line;R.exports=h({locations:{valType:"data_array",editType:"calc"},locationmode:k.locationmode,z:{valType:"data_array",editType:"calc"},geojson:h({},k.geojson,{}),featureidkey:k.featureidkey,text:h({},k.text,{}),hovertext:h({},k.hovertext,{}),marker:{line:{color:h({},l.color,{dflt:y}),width:h({},l.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:k.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:k.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:h({},_.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:w(),showlegend:h({},_.showlegend,{dflt:!1})},i("",{cLetter:"z",editTypeOverride:"calc"}))},38675:function(R,E,e){var w=e(92770),k=e(50606).BADNUM,i=e(78803),_=e(75225),y=e(66279);function h(l){return l&&typeof l=="string"}R.exports=function(l,t){var o,r=t._length,n=new Array(r);o=t.geojson?function(c){return h(c)||w(c)}:h;for(var a=0;a<r;a++){var s=n[a]={},u=t.locations[a],p=t.z[a];o(u)&&w(p)?(s.loc=u,s.z=p):(s.loc=null,s.z=k),s.index=a}return _(n,t),i(l,t,{vals:t.z,containerStr:"",cLetter:"z"}),y(n,t),n}},61869:function(R,E,e){var w=e(71828),k=e(1586),i=e(69568);R.exports=function(_,y,h,l){function t(s,u){return w.coerce(_,y,i,s,u)}var o=t("locations"),r=t("z");if(o&&o.length&&w.isArrayOrTypedArray(r)&&r.length){y._length=Math.min(o.length,r.length);var n,a=t("geojson");(typeof a=="string"&&a!==""||w.isPlainObject(a))&&(n="geojson-id"),t("locationmode",n)==="geojson-id"&&t("featureidkey"),t("text"),t("hovertext"),t("hovertemplate"),t("marker.line.width")&&t("marker.line.color"),t("marker.opacity"),k(_,y,l,t,{prefix:"",cLetter:"z"}),w.coerceSelectionMarkerOpacity(y,t)}else y.visible=!1}},92069:function(R){R.exports=function(E,e,w,k,i){E.location=e.location,E.z=e.z;var _=k[i];return _.fIn&&_.fIn.properties&&(E.properties=_.fIn.properties),E.ct=_.ct,E}},42300:function(R,E,e){var w=e(89298),k=e(69568),i=e(71828).fillText;R.exports=function(_,y,h){var l,t,o,r,n=_.cd,a=n[0].trace,s=_.subplot,u=[y,h],p=[y+360,h];for(t=0;t<n.length;t++)if(r=!1,(l=n[t])._polygons){for(o=0;o<l._polygons.length;o++)l._polygons[o].contains(u)&&(r=!r),l._polygons[o].contains(p)&&(r=!r);if(r)break}if(r&&l)return _.x0=_.x1=_.xa.c2p(l.ct),_.y0=_.y1=_.ya.c2p(l.ct),_.index=l.index,_.location=l.loc,_.z=l.z,_.zLabel=w.tickText(s.mockAxis,s.mockAxis.c2l(l.z),"hover").text,_.hovertemplate=l.hovertemplate,function(c,b,g){if(!b.hovertemplate){var f=g.hi||b.hoverinfo,v=String(g.loc),m=f==="all"?k.hoverinfo.flags:f.split("+"),x=m.indexOf("name")!==-1,T=m.indexOf("location")!==-1,d=m.indexOf("z")!==-1,M=m.indexOf("text")!==-1,A=[];!x&&T?c.nameOverride=v:(x&&(c.nameOverride=b.name),T&&A.push(v)),d&&A.push(c.zLabel),M&&i(g,b,A),c.extraText=A.join("<br>")}}(_,a,l),[_]}},51319:function(R,E,e){R.exports={attributes:e(69568),supplyDefaults:e(61869),colorbar:e(61243),calc:e(38675),calcGeoJSON:e(99841).calcGeoJSON,plot:e(99841).plot,style:e(99636).style,styleOnSelect:e(99636).styleOnSelect,hoverPoints:e(42300),eventData:e(92069),selectPoints:e(81253),moduleType:"trace",name:"choropleth",basePlotModule:e(44622),categories:["geo","noOpacity","showLegend"],meta:{}}},99841:function(R,E,e){var w=e(39898),k=e(71828),i=e(41327),_=e(90973).getTopojsonFeatures,y=e(71739).findExtremes,h=e(99636).style;R.exports={calcGeoJSON:function(l,t){for(var o=l[0].trace,r=t[o.geo],n=r._subplot,a=o.locationmode,s=o._length,u=a==="geojson-id"?i.extractTraceFeature(l):_(o,n.topojson),p=[],c=[],b=0;b<s;b++){var g=l[b],f=a==="geojson-id"?g.fOut:i.locationToFeature(a,g.loc,u);if(f){g.geojson=f,g.ct=f.properties.ct,g._polygons=i.feature2polygons(f);var v=i.computeBbox(f);p.push(v[0],v[2]),c.push(v[1],v[3])}else g.geojson=null}if(r.fitbounds==="geojson"&&a==="geojson-id"){var m=i.computeBbox(i.getTraceGeojson(o));p=[m[0],m[2]],c=[m[1],m[3]]}var x={padded:!0};o._extremes.lon=y(r.lonaxis._ax,p,x),o._extremes.lat=y(r.lataxis._ax,c,x)},plot:function(l,t,o){var r=t.layers.backplot.select(".choroplethlayer");k.makeTraceGroups(r,o,"trace choropleth").each(function(n){var a=w.select(this).selectAll("path.choroplethlocation").data(k.identity);a.enter().append("path").classed("choroplethlocation",!0),a.exit().remove(),h(l,n)})}}},81253:function(R){R.exports=function(E,e){var w,k,i,_,y,h=E.cd,l=E.xaxis,t=E.yaxis,o=[];if(e===!1)for(w=0;w<h.length;w++)h[w].selected=0;else for(w=0;w<h.length;w++)(i=(k=h[w]).ct)&&(_=l.c2p(i),y=t.c2p(i),e.contains([_,y],null,w,E)?(o.push({pointNumber:w,lon:i[0],lat:i[1]}),k.selected=1):k.selected=0);return o}},99636:function(R,E,e){var w=e(39898),k=e(7901),i=e(91424),_=e(21081);function y(h,l){var t=l[0].trace,o=l[0].node3.selectAll(".choroplethlocation"),r=t.marker||{},n=r.line||{},a=_.makeColorScaleFuncFromTrace(t);o.each(function(s){w.select(this).attr("fill",a(s.z)).call(k.stroke,s.mlc||n.color).call(i.dashLine,"",s.mlw||n.width||0).style("opacity",r.opacity)}),i.selectedPointStyle(o,t)}R.exports={style:function(h,l){l&&y(0,l)},styleOnSelect:function(h,l){var t=l[0].node3,o=l[0].trace;o.selectedpoints?i.selectedPointStyle(t.selectAll(".choroplethlocation"),o):y(0,l)}}},64496:function(R,E,e){var w=e(69568),k=e(50693),i=e(5386).fF,_=e(9012),y=e(1426).extendFlat;R.exports=y({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:y({},w.featureidkey,{}),below:{valType:"string",editType:"plot"},text:w.text,hovertext:w.hovertext,marker:{line:{color:y({},w.marker.line.color,{editType:"plot"}),width:y({},w.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:y({},w.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:y({},w.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:y({},w.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:w.hoverinfo,hovertemplate:i({},{keys:["properties"]}),showlegend:y({},_.showlegend,{dflt:!1})},k("",{cLetter:"z",editTypeOverride:"calc"}))},82004:function(R,E,e){var w=e(92770),k=e(71828),i=e(21081),_=e(91424),y=e(18214).makeBlank,h=e(41327);function l(t){var o,r=t[0].trace,n=r._opts;if(r.selectedpoints){for(var a=_.makeSelectedPointStyleFns(r),s=0;s<t.length;s++){var u=t[s];u.fOut&&(u.fOut.properties.mo2=a.selectedOpacityFn(u))}o={type:"identity",property:"mo2"}}else o=k.isArrayOrTypedArray(r.marker.opacity)?{type:"identity",property:"mo"}:r.marker.opacity;return k.extendFlat(n.fill.paint,{"fill-opacity":o}),k.extendFlat(n.line.paint,{"line-opacity":o}),n}R.exports={convert:function(t){var o=t[0].trace,r=o.visible===!0&&o._length!==0,n={layout:{visibility:"none"},paint:{}},a={layout:{visibility:"none"},paint:{}},s=o._opts={fill:n,line:a,geojson:y()};if(!r)return s;var u=h.extractTraceFeature(t);if(!u)return s;var p,c,b,g=i.makeColorScaleFuncFromTrace(o),f=o.marker,v=f.line||{};k.isArrayOrTypedArray(f.opacity)&&(p=function(A){var C=A.mo;return w(C)?+k.constrain(C,0,1):0}),k.isArrayOrTypedArray(v.color)&&(c=function(A){return A.mlc}),k.isArrayOrTypedArray(v.width)&&(b=function(A){return A.mlw});for(var m=0;m<t.length;m++){var x=t[m],T=x.fOut;if(T){var d=T.properties;d.fc=g(x.z),p&&(d.mo=p(x)),c&&(d.mlc=c(x)),b&&(d.mlw=b(x)),x.ct=d.ct,x._polygons=h.feature2polygons(T)}}var M=p?{type:"identity",property:"mo"}:f.opacity;return k.extendFlat(n.paint,{"fill-color":{type:"identity",property:"fc"},"fill-opacity":M}),k.extendFlat(a.paint,{"line-color":c?{type:"identity",property:"mlc"}:v.color,"line-width":b?{type:"identity",property:"mlw"}:v.width,"line-opacity":M}),n.layout.visibility="visible",a.layout.visibility="visible",s.geojson={type:"FeatureCollection",features:u},l(t),s},convertOnSelect:l}},22654:function(R,E,e){var w=e(71828),k=e(1586),i=e(64496);R.exports=function(_,y,h,l){function t(a,s){return w.coerce(_,y,i,a,s)}var o=t("locations"),r=t("z"),n=t("geojson");w.isArrayOrTypedArray(o)&&o.length&&w.isArrayOrTypedArray(r)&&r.length&&(typeof n=="string"&&n!==""||w.isPlainObject(n))?(t("featureidkey"),y._length=Math.min(o.length,r.length),t("below"),t("text"),t("hovertext"),t("hovertemplate"),t("marker.line.width")&&t("marker.line.color"),t("marker.opacity"),k(_,y,l,t,{prefix:"",cLetter:"z"}),w.coerceSelectionMarkerOpacity(y,t)):y.visible=!1}},57516:function(R,E,e){R.exports={attributes:e(64496),supplyDefaults:e(22654),colorbar:e(61243),calc:e(38675),plot:e(7852),hoverPoints:e(42300),eventData:e(92069),selectPoints:e(81253),styleOnSelect:function(w,k){k&&k[0].trace._glTrace.updateOnSelect(k)},getBelow:function(w,k){for(var i=k.getMapLayers(),_=i.length-2;_>=0;_--){var y=i[_].id;if(typeof y=="string"&&y.indexOf("water")===0){for(var h=_+1;h<i.length;h++)if(typeof(y=i[h].id)=="string"&&y.indexOf("plotly-")===-1)return y}}},moduleType:"trace",name:"choroplethmapbox",basePlotModule:e(50101),categories:["mapbox","gl","noOpacity","showLegend"],meta:{hr_name:"choropleth_mapbox"}}},7852:function(R,E,e){var w=e(82004).convert,k=e(82004).convertOnSelect,i=e(77734).traceLayerPrefix;function _(h,l){this.type="choroplethmapbox",this.subplot=h,this.uid=l,this.sourceId="source-"+l,this.layerList=[["fill",i+l+"-fill"],["line",i+l+"-line"]],this.below=null}var y=_.prototype;y.update=function(h){this._update(w(h)),h[0].trace._glTrace=this},y.updateOnSelect=function(h){this._update(k(h))},y._update=function(h){var l=this.subplot,t=this.layerList,o=l.belowLookup["trace-"+this.uid];l.map.getSource(this.sourceId).setData(h.geojson),o!==this.below&&(this._removeLayers(),this._addLayers(h,o),this.below=o);for(var r=0;r<t.length;r++){var n=t[r],a=n[0],s=n[1],u=h[a];l.setOptions(s,"setLayoutProperty",u.layout),u.layout.visibility==="visible"&&l.setOptions(s,"setPaintProperty",u.paint)}},y._addLayers=function(h,l){for(var t=this.subplot,o=this.layerList,r=this.sourceId,n=0;n<o.length;n++){var a=o[n],s=a[0],u=h[s];t.addLayer({type:s,id:a[1],source:r,layout:u.layout,paint:u.paint},l)}},y._removeLayers=function(){for(var h=this.subplot.map,l=this.layerList,t=l.length-1;t>=0;t--)h.removeLayer(l[t][1])},y.dispose=function(){var h=this.subplot.map;this._removeLayers(),h.removeSource(this.sourceId)},R.exports=function(h,l){var t=l[0].trace,o=new _(h,t.uid),r=o.sourceId,n=w(l),a=o.below=h.belowLookup["trace-"+t.uid];return h.map.addSource(r,{type:"geojson",data:n.geojson}),o._addLayers(n,a),l[0].trace._glTrace=o,o}},12674:function(R,E,e){var w=e(50693),k=e(12663).axisHoverFormat,i=e(5386).fF,_=e(2418),y=e(9012),h=e(1426).extendFlat,l={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},sizemode:{valType:"enumerated",values:["scaled","absolute"],editType:"calc",dflt:"scaled"},sizeref:{valType:"number",editType:"calc",min:0},anchor:{valType:"enumerated",editType:"calc",values:["tip","tail","cm","center"],dflt:"cm"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:i({editType:"calc"},{keys:["norm"]}),uhoverformat:k("u",1),vhoverformat:k("v",1),whoverformat:k("w",1),xhoverformat:k("x"),yhoverformat:k("y"),zhoverformat:k("z"),showlegend:h({},y.showlegend,{dflt:!1})};h(l,w("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"})),["opacity","lightposition","lighting"].forEach(function(t){l[t]=_[t]}),l.hoverinfo=h({},y.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"}),l.transforms=void 0,R.exports=l},31371:function(R,E,e){var w=e(78803);R.exports=function(k,i){for(var _=i.u,y=i.v,h=i.w,l=Math.min(i.x.length,i.y.length,i.z.length,_.length,y.length,h.length),t=-1/0,o=1/0,r=0;r<l;r++){var n=_[r],a=y[r],s=h[r],u=Math.sqrt(n*n+a*a+s*s);t=Math.max(t,u),o=Math.min(o,u)}i._len=l,i._normMax=t,w(k,i,{vals:[o,t],containerStr:"",cLetter:"c"})}},5453:function(R,E,e){var w=e(9330).gl_cone3d,k=e(9330).gl_cone3d.createConeMesh,i=e(71828).simpleMap,_=e(81697).parseColorScale,y=e(21081).extractOpts,h=e(90060);function l(s,u){this.scene=s,this.uid=u,this.mesh=null,this.data=null}var t=l.prototype;t.handlePick=function(s){if(s.object===this.mesh){var u=s.index=s.data.index,p=this.data.x[u],c=this.data.y[u],b=this.data.z[u],g=this.data.u[u],f=this.data.v[u],v=this.data.w[u];s.traceCoordinate=[p,c,b,g,f,v,Math.sqrt(g*g+f*f+v*v)];var m=this.data.hovertext||this.data.text;return Array.isArray(m)&&m[u]!==void 0?s.textLabel=m[u]:m&&(s.textLabel=m),!0}};var o={xaxis:0,yaxis:1,zaxis:2},r={tip:1,tail:0,cm:.25,center:.5},n={tip:1,tail:1,cm:.75,center:.5};function a(s,u){var p=s.fullSceneLayout,c=s.dataScale,b={};function g(x,T){var d=p[T],M=c[o[T]];return i(x,function(A){return d.d2l(A)*M})}b.vectors=h(g(u.u,"xaxis"),g(u.v,"yaxis"),g(u.w,"zaxis"),u._len),b.positions=h(g(u.x,"xaxis"),g(u.y,"yaxis"),g(u.z,"zaxis"),u._len);var f=y(u);b.colormap=_(u),b.vertexIntensityBounds=[f.min/u._normMax,f.max/u._normMax],b.coneOffset=r[u.anchor],u.sizemode==="scaled"?b.coneSize=u.sizeref||.5:b.coneSize=u.sizeref&&u._normMax?u.sizeref/u._normMax:.5;var v=w(b),m=u.lightposition;return v.lightPosition=[m.x,m.y,m.z],v.ambient=u.lighting.ambient,v.diffuse=u.lighting.diffuse,v.specular=u.lighting.specular,v.roughness=u.lighting.roughness,v.fresnel=u.lighting.fresnel,v.opacity=u.opacity,u._pad=n[u.anchor]*v.vectorScale*v.coneScale*u._normMax,v}t.update=function(s){this.data=s;var u=a(this.scene,s);this.mesh.update(u)},t.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},R.exports=function(s,u){var p=s.glplot.gl,c=a(s,u),b=k(p,c),g=new l(s,u.uid);return g.mesh=b,g.data=u,b._trace=g,s.glplot.add(b),g}},91750:function(R,E,e){var w=e(71828),k=e(1586),i=e(12674);R.exports=function(_,y,h,l){function t(p,c){return w.coerce(_,y,i,p,c)}var o=t("u"),r=t("v"),n=t("w"),a=t("x"),s=t("y"),u=t("z");o&&o.length&&r&&r.length&&n&&n.length&&a&&a.length&&s&&s.length&&u&&u.length?(t("sizeref"),t("sizemode"),t("anchor"),t("lighting.ambient"),t("lighting.diffuse"),t("lighting.specular"),t("lighting.roughness"),t("lighting.fresnel"),t("lightposition.x"),t("lightposition.y"),t("lightposition.z"),k(_,y,l,t,{prefix:"",cLetter:"c"}),t("text"),t("hovertext"),t("hovertemplate"),t("uhoverformat"),t("vhoverformat"),t("whoverformat"),t("xhoverformat"),t("yhoverformat"),t("zhoverformat"),y._length=null):y.visible=!1}},98128:function(R,E,e){R.exports={moduleType:"trace",name:"cone",basePlotModule:e(58547),categories:["gl3d","showLegend"],attributes:e(12674),supplyDefaults:e(91750),colorbar:{min:"cmin",max:"cmax"},calc:e(31371),plot:e(5453),eventData:function(w,k){return w.norm=k.traceCoordinate[6],w},meta:{}}},70600:function(R,E,e){var w=e(21606),k=e(82196),i=e(12663),_=i.axisHoverFormat,y=i.descriptionOnlyNumbers,h=e(50693),l=e(79952).P,t=e(41940),o=e(1426).extendFlat,r=e(74808),n=r.COMPARISON_OPS2,a=r.INTERVAL_OPS,s=k.line;R.exports=o({z:w.z,x:w.x,x0:w.x0,dx:w.dx,y:w.y,y0:w.y0,dy:w.dy,xperiod:w.xperiod,yperiod:w.yperiod,xperiod0:k.xperiod0,yperiod0:k.yperiod0,xperiodalignment:w.xperiodalignment,yperiodalignment:w.yperiodalignment,text:w.text,hovertext:w.hovertext,transpose:w.transpose,xtype:w.xtype,ytype:w.ytype,xhoverformat:_("x"),yhoverformat:_("y"),zhoverformat:_("z",1),hovertemplate:w.hovertemplate,texttemplate:o({},w.texttemplate,{}),textfont:o({},w.textfont,{}),hoverongaps:w.hoverongaps,connectgaps:o({},w.connectgaps,{}),fillcolor:{valType:"color",editType:"calc"},autocontour:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"contours.start":void 0,"contours.end":void 0,"contours.size":void 0}},ncontours:{valType:"integer",dflt:15,min:1,editType:"calc"},contours:{type:{valType:"enumerated",values:["levels","constraint"],dflt:"levels",editType:"calc"},start:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},end:{valType:"number",dflt:null,editType:"plot",impliedEdits:{"^autocontour":!1}},size:{valType:"number",dflt:null,min:0,editType:"plot",impliedEdits:{"^autocontour":!1}},coloring:{valType:"enumerated",values:["fill","heatmap","lines","none"],dflt:"fill",editType:"calc"},showlines:{valType:"boolean",dflt:!0,editType:"plot"},showlabels:{valType:"boolean",dflt:!1,editType:"plot"},labelfont:t({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:y("contour label")},operation:{valType:"enumerated",values:[].concat(n).concat(a),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:o({},s.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:l,smoothing:o({},s.smoothing,{}),editType:"plot"}},h("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))},27529:function(R,E,e){var w=e(21081),k=e(90757),i=e(18670),_=e(53572);R.exports=function(y,h){var l=k(y,h),t=l[0].z;i(h,t);var o,r=h.contours,n=w.extractOpts(h);if(r.coloring==="heatmap"&&n.auto&&h.autocontour===!1){var a=r.start,s=_(r),u=r.size||1,p=Math.floor((s-a)/u)+1;isFinite(u)||(u=1,p=1);var c=a-u/2;o=[c,c+p*u]}else o=t;return w.calc(y,h,{vals:o,cLetter:"z"}),l}},20083:function(R){R.exports=function(E,e){var w,k=E[0],i=k.z;switch(e.type){case"levels":var _=Math.min(i[0][0],i[0][1]);for(w=0;w<E.length;w++){var y=E[w];y.prefixBoundary=!y.edgepaths.length&&(_>y.level||y.starts.length&&_===y.level)}break;case"constraint":if(k.prefixBoundary=!1,k.edgepaths.length)return;var h=k.x.length,l=k.y.length,t=-1/0,o=1/0;for(w=0;w<l;w++)o=Math.min(o,i[w][0]),o=Math.min(o,i[w][h-1]),t=Math.max(t,i[w][0]),t=Math.max(t,i[w][h-1]);for(w=1;w<h-1;w++)o=Math.min(o,i[0][w]),o=Math.min(o,i[l-1][w]),t=Math.max(t,i[0][w]),t=Math.max(t,i[l-1][w]);var r,n,a=e.value;switch(e._operation){case">":a>t&&(k.prefixBoundary=!0);break;case"<":(a<o||k.starts.length&&a===o)&&(k.prefixBoundary=!0);break;case"[]":r=Math.min(a[0],a[1]),((n=Math.max(a[0],a[1]))<o||r>t||k.starts.length&&n===o)&&(k.prefixBoundary=!0);break;case"][":r=Math.min(a[0],a[1]),n=Math.max(a[0],a[1]),r<o&&n>t&&(k.prefixBoundary=!0)}}}},90654:function(R,E,e){var w=e(21081),k=e(86068),i=e(53572);R.exports={min:"zmin",max:"zmax",calc:function(_,y,h){var l=y.contours,t=y.line,o=l.size||1,r=l.coloring,n=k(y,{isColorbar:!0});if(r==="heatmap"){var a=w.extractOpts(y);h._fillgradient=a.reversescale?w.flipScale(a.colorscale):a.colorscale,h._zrange=[a.min,a.max]}else r==="fill"&&(h._fillcolor=n);h._line={color:r==="lines"?n:t.color,width:l.showlines!==!1?t.width:0,dash:t.dash},h._levels={start:l.start,end:i(l),size:o}}}},36914:function(R){R.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}}},83179:function(R,E,e){var w=e(92770),k=e(14523),i=e(7901),_=i.addOpacity,y=i.opacity,h=e(74808),l=h.CONSTRAINT_REDUCTION,t=h.COMPARISON_OPS2;R.exports=function(o,r,n,a,s,u){var p,c,b,g=r.contours,f=n("contours.operation");g._operation=l[f],function(v,m){var x;t.indexOf(m.operation)===-1?(v("contours.value",[0,1]),Array.isArray(m.value)?m.value.length>2?m.value=m.value.slice(2):m.length===0?m.value=[0,1]:m.length<2?(x=parseFloat(m.value[0]),m.value=[x,x+1]):m.value=[parseFloat(m.value[0]),parseFloat(m.value[1])]:w(m.value)&&(x=parseFloat(m.value),m.value=[x,x+1])):(v("contours.value",0),w(m.value)||(Array.isArray(m.value)?m.value=parseFloat(m.value[0]):m.value=0))}(n,g),f==="="?p=g.showlines=!0:(p=n("contours.showlines"),b=n("fillcolor",_((o.line||{}).color||s,.5))),p&&(c=n("line.color",b&&y(b)?_(r.fillcolor,1):s),n("line.width",2),n("line.dash")),n("line.smoothing"),k(n,a,c,u)}},64237:function(R,E,e){var w=e(74808),k=e(92770);function i(h,l){var t,o=Array.isArray(l);function r(n){return k(n)?+n:null}return w.COMPARISON_OPS2.indexOf(h)!==-1?t=r(o?l[0]:l):w.INTERVAL_OPS.indexOf(h)!==-1?t=o?[r(l[0]),r(l[1])]:[r(l),r(l)]:w.SET_OPS.indexOf(h)!==-1&&(t=o?l.map(r):[r(l)]),t}function _(h){return function(l){l=i(h,l);var t=Math.min(l[0],l[1]),o=Math.max(l[0],l[1]);return{start:t,end:o,size:o-t}}}function y(h){return function(l){return{start:l=i(h,l),end:1/0,size:1/0}}}R.exports={"[]":_("[]"),"][":_("]["),">":y(">"),"<":y("<"),"=":y("=")}},67217:function(R){R.exports=function(E,e,w,k){var i=k("contours.start"),_=k("contours.end"),y=i===!1||_===!1,h=w("contours.size");!(y?e.autocontour=!0:w("autocontour",!1))&&h||w("ncontours")}},84857:function(R,E,e){var w=e(71828);function k(i){return w.extendFlat({},i,{edgepaths:w.extendDeep([],i.edgepaths),paths:w.extendDeep([],i.paths),starts:w.extendDeep([],i.starts)})}R.exports=function(i,_){var y,h,l,t=function(n){return n.reverse()},o=function(n){return n};switch(_){case"=":case"<":return i;case">":for(i.length!==1&&w.warn("Contour data invalid for the specified inequality operation."),h=i[0],y=0;y<h.edgepaths.length;y++)h.edgepaths[y]=t(h.edgepaths[y]);for(y=0;y<h.paths.length;y++)h.paths[y]=t(h.paths[y]);for(y=0;y<h.starts.length;y++)h.starts[y]=t(h.starts[y]);return i;case"][":var r=t;t=o,o=r;case"[]":for(i.length!==2&&w.warn("Contour data invalid for the specified inequality range operation."),h=k(i[0]),l=k(i[1]),y=0;y<h.edgepaths.length;y++)h.edgepaths[y]=t(h.edgepaths[y]);for(y=0;y<h.paths.length;y++)h.paths[y]=t(h.paths[y]);for(y=0;y<h.starts.length;y++)h.starts[y]=t(h.starts[y]);for(;l.edgepaths.length;)h.edgepaths.push(o(l.edgepaths.shift()));for(;l.paths.length;)h.paths.push(o(l.paths.shift()));for(;l.starts.length;)h.starts.push(o(l.starts.shift()));return[h]}}},13031:function(R,E,e){var w=e(71828),k=e(67684),i=e(73927),_=e(83179),y=e(67217),h=e(8724),l=e(58623),t=e(70600);R.exports=function(o,r,n,a){function s(p,c){return w.coerce(o,r,t,p,c)}if(k(o,r,s,a)){i(o,r,a,s),s("xhoverformat"),s("yhoverformat"),s("text"),s("hovertext"),s("hoverongaps"),s("hovertemplate");var u=s("contours.type")==="constraint";s("connectgaps",w.isArray1D(r.z)),u?_(o,r,s,a,n):(y(o,r,s,function(p){return w.coerce2(o,r,t,p)}),h(o,r,s,a)),r.contours&&r.contours.coloring==="heatmap"&&l(s,a)}else r.visible=!1}},87558:function(R,E,e){var w=e(71828),k=e(64237),i=e(53572);R.exports=function(_,y,h){for(var l=_.type==="constraint"?k[_._operation](_.value):_,t=l.size,o=[],r=i(l),n=h.trace._carpetTrace,a=n?{xaxis:n.aaxis,yaxis:n.baxis,x:h.a,y:h.b}:{xaxis:y.xaxis,yaxis:y.yaxis,x:h.x,y:h.y},s=l.start;s<r;s+=t)if(o.push(w.extendFlat({level:s,crossings:{},starts:[],edgepaths:[],paths:[],z:h.z,smoothing:h.trace.line.smoothing},a)),o.length>1e3){w.warn("Too many contours, clipping at 1000",_);break}return o}},53572:function(R){R.exports=function(E){return E.end+E.size/1e6}},81696:function(R,E,e){var w=e(71828),k=e(36914);function i(h,l,t,o){return Math.abs(h[0]-l[0])<t&&Math.abs(h[1]-l[1])<o}function _(h,l,t,o,r){var n,a=l.join(","),s=h.crossings[a],u=function(oe,ue,ce){var de=0,me=0;return oe>20&&ue?oe===208||oe===1114?de=ce[0]===0?1:-1:me=ce[1]===0?1:-1:k.BOTTOMSTART.indexOf(oe)!==-1?me=1:k.LEFTSTART.indexOf(oe)!==-1?de=1:k.TOPSTART.indexOf(oe)!==-1?me=-1:de=-1,[de,me]}(s,t,l),p=[y(h,l,[-u[0],-u[1]])],c=h.z.length,b=h.z[0].length,g=l.slice(),f=u.slice();for(n=0;n<1e4;n++){if(s>20?(s=k.CHOOSESADDLE[s][(u[0]||u[1])<0?0:1],h.crossings[a]=k.SADDLEREMAINDER[s]):delete h.crossings[a],!(u=k.NEWDELTA[s])){w.log("Found bad marching index:",s,l,h.level);break}p.push(y(h,l,u)),l[0]+=u[0],l[1]+=u[1],a=l.join(","),i(p[p.length-1],p[p.length-2],o,r)&&p.pop();var v=u[0]&&(l[0]<0||l[0]>b-2)||u[1]&&(l[1]<0||l[1]>c-2);if(l[0]===g[0]&&l[1]===g[1]&&u[0]===f[0]&&u[1]===f[1]||t&&v)break;s=h.crossings[a]}n===1e4&&w.log("Infinite loop in contour?");var m,x,T,d,M,A,C,P,O,z,B,Y,D,G,V,j=i(p[0],p[p.length-1],o,r),W=0,Z=.2*h.smoothing,ie=[],te=0;for(n=1;n<p.length;n++)Y=p[n],D=p[n-1],G=Y[2]-D[2],V=Y[3]-D[3],W+=C=Math.sqrt(G*G+V*V),ie.push(C);var J=W/ie.length*Z;function X(oe){return p[oe%p.length]}for(n=p.length-2;n>=te;n--)if((m=ie[n])<J){for(T=0,x=n-1;x>=te&&m+ie[x]<J;x--)m+=ie[x];if(j&&n===p.length-2)for(T=0;T<x&&m+ie[T]<J;T++)m+=ie[T];M=n-x+T+1,A=Math.floor((n+x+T+2)/2),d=j||n!==p.length-2?j||x!==-1?M%2?X(A):[(X(A)[0]+X(A+1)[0])/2,(X(A)[1]+X(A+1)[1])/2]:p[0]:p[p.length-1],p.splice(x+1,n-x+1,d),n=x+1,T&&(te=T),j&&(n===p.length-2?p[T]=p[p.length-1]:n===0&&(p[p.length-1]=p[0]))}for(p.splice(0,te),n=0;n<p.length;n++)p[n].length=2;if(!(p.length<2))if(j)p.pop(),h.paths.push(p);else{t||w.log("Unclosed interior contour?",h.level,g.join(","),p.join("L"));var ee=!1;for(P=0;P<h.edgepaths.length;P++)if(z=h.edgepaths[P],!ee&&i(z[0],p[p.length-1],o,r)){p.pop(),ee=!0;var re=!1;for(O=0;O<h.edgepaths.length;O++)if(i((B=h.edgepaths[O])[B.length-1],p[0],o,r)){re=!0,p.shift(),h.edgepaths.splice(P,1),O===P?h.paths.push(p.concat(B)):(O>P&&O--,h.edgepaths[O]=B.concat(p,z));break}re||(h.edgepaths[P]=p.concat(z))}for(P=0;P<h.edgepaths.length&&!ee;P++)i((z=h.edgepaths[P])[z.length-1],p[0],o,r)&&(p.shift(),h.edgepaths[P]=z.concat(p),ee=!0);ee||h.edgepaths.push(p)}}function y(h,l,t){var o=l[0]+Math.max(t[0],0),r=l[1]+Math.max(t[1],0),n=h.z[r][o],a=h.xaxis,s=h.yaxis;if(t[1]){var u=(h.level-n)/(h.z[r][o+1]-n),p=(u!==1?(1-u)*a.c2l(h.x[o]):0)+(u!==0?u*a.c2l(h.x[o+1]):0);return[a.c2p(a.l2c(p),!0),s.c2p(h.y[r],!0),o+u,r]}var c=(h.level-n)/(h.z[r+1][o]-n),b=(c!==1?(1-c)*s.c2l(h.y[r]):0)+(c!==0?c*s.c2l(h.y[r+1]):0);return[a.c2p(h.x[o],!0),s.c2p(s.l2c(b),!0),o,r+c]}R.exports=function(h,l,t){var o,r,n,a;for(l=l||.01,t=t||.01,r=0;r<h.length;r++){for(n=h[r],a=0;a<n.starts.length;a++)_(n,n.starts[a],"edge",l,t);for(o=0;Object.keys(n.crossings).length&&o<1e4;)o++,_(n,Object.keys(n.crossings)[0].split(",").map(Number),void 0,l,t);o===1e4&&w.log("Infinite loop in contour?")}}},52421:function(R,E,e){var w=e(7901),k=e(46248);R.exports=function(i,_,y,h,l){l||(l={}),l.isContour=!0;var t=k(i,_,y,h,l);return t&&t.forEach(function(o){var r=o.trace;r.contours.type==="constraint"&&(r.fillcolor&&w.opacity(r.fillcolor)?o.color=w.addOpacity(r.fillcolor,1):r.contours.showlines&&w.opacity(r.line.color)&&(o.color=w.addOpacity(r.line.color,1)))}),t}},99442:function(R,E,e){R.exports={attributes:e(70600),supplyDefaults:e(13031),calc:e(27529),plot:e(29854).plot,style:e(84426),colorbar:e(90654),hoverPoints:e(52421),moduleType:"trace",name:"contour",basePlotModule:e(93612),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}},14523:function(R,E,e){var w=e(71828);R.exports=function(k,i,_,y){if(y||(y={}),k("contours.showlabels")){var h=i.font;w.coerceFont(k,"contours.labelfont",{family:h.family,size:h.size,color:_}),k("contours.labelformat")}y.hasHover!==!1&&k("zhoverformat")}},86068:function(R,E,e){var w=e(39898),k=e(21081),i=e(53572);R.exports=function(_){var y=_.contours,h=y.start,l=i(y),t=y.size||1,o=Math.floor((l-h)/t)+1,r=y.coloring==="lines"?0:1,n=k.extractOpts(_);isFinite(t)||(t=1,o=1);var a,s,u=n.reversescale?k.flipScale(n.colorscale):n.colorscale,p=u.length,c=new Array(p),b=new Array(p);if(y.coloring==="heatmap"){var g=n.min,f=n.max;for(s=0;s<p;s++)a=u[s],c[s]=a[0]*(f-g)+g,b[s]=a[1];var v=w.extent([g,f,y.start,y.start+t*(o-1)]),m=v[g<f?0:1],x=v[g<f?1:0];m!==g&&(c.splice(0,0,m),b.splice(0,0,b[0])),x!==f&&(c.push(x),b.push(b[b.length-1]))}else for(s=0;s<p;s++)a=u[s],c[s]=(a[0]*(o+r-1)-r/2)*t+h,b[s]=a[1];return k.makeColorScaleFunc({domain:c,range:b},{noNumericCheck:!0})}},87678:function(R,E,e){var w=e(36914);function k(i,_){var y=(_[0][0]>i?0:1)+(_[0][1]>i?0:2)+(_[1][1]>i?0:4)+(_[1][0]>i?0:8);return y===5||y===10?i>(_[0][0]+_[0][1]+_[1][0]+_[1][1])/4?y===5?713:1114:y===5?104:208:y===15?0:y}R.exports=function(i){var _,y,h,l,t,o,r,n,a,s=i[0].z,u=s.length,p=s[0].length,c=u===2||p===2;for(y=0;y<u-1;y++)for(l=[],y===0&&(l=l.concat(w.BOTTOMSTART)),y===u-2&&(l=l.concat(w.TOPSTART)),_=0;_<p-1;_++)for(h=l.slice(),_===0&&(h=h.concat(w.LEFTSTART)),_===p-2&&(h=h.concat(w.RIGHTSTART)),t=_+","+y,o=[[s[y][_],s[y][_+1]],[s[y+1][_],s[y+1][_+1]]],a=0;a<i.length;a++)(r=k((n=i[a]).level,o))&&(n.crossings[t]=r,h.indexOf(r)!==-1&&(n.starts.push([_,y]),c&&h.indexOf(r,h.indexOf(r)+1)!==-1&&n.starts.push([_,y])))}},29854:function(R,E,e){var w=e(39898),k=e(71828),i=e(91424),_=e(21081),y=e(63893),h=e(89298),l=e(21994),t=e(50347),o=e(87678),r=e(81696),n=e(87558),a=e(84857),s=e(20083),u=e(36914),p=u.LABELOPTIMIZER;function c(f,v){var m,x,T,d,M,A,C,P="",O=0,z=f.edgepaths.map(function(j,W){return W}),B=!0;function Y(j){return Math.abs(j[1]-v[2][1])<.01}function D(j){return Math.abs(j[0]-v[0][0])<.01}function G(j){return Math.abs(j[0]-v[2][0])<.01}for(;z.length;){for(A=i.smoothopen(f.edgepaths[O],f.smoothing),P+=B?A:A.replace(/^M/,"L"),z.splice(z.indexOf(O),1),m=f.edgepaths[O][f.edgepaths[O].length-1],d=-1,T=0;T<4;T++){if(!m){k.log("Missing end?",O,f);break}for(C=m,Math.abs(C[1]-v[0][1])<.01&&!G(m)?x=v[1]:D(m)?x=v[0]:Y(m)?x=v[3]:G(m)&&(x=v[2]),M=0;M<f.edgepaths.length;M++){var V=f.edgepaths[M][0];Math.abs(m[0]-x[0])<.01?Math.abs(m[0]-V[0])<.01&&(V[1]-m[1])*(x[1]-V[1])>=0&&(x=V,d=M):Math.abs(m[1]-x[1])<.01?Math.abs(m[1]-V[1])<.01&&(V[0]-m[0])*(x[0]-V[0])>=0&&(x=V,d=M):k.log("endpt to newendpt is not vert. or horz.",m,x,V)}if(m=x,d>=0)break;P+="L"+x}if(d===f.edgepaths.length){k.log("unclosed perimeter path");break}O=d,(B=z.indexOf(O)===-1)&&(O=z[0],P+="Z")}for(O=0;O<f.paths.length;O++)P+=i.smoothclosed(f.paths[O],f.smoothing);return P}function b(f,v,m,x){var T=v.width/2,d=v.height/2,M=f.x,A=f.y,C=f.theta,P=Math.cos(C)*T,O=Math.sin(C)*T,z=(M>x.center?x.right-M:M-x.left)/(P+Math.abs(Math.sin(C)*d)),B=(A>x.middle?x.bottom-A:A-x.top)/(Math.abs(O)+Math.cos(C)*d);if(z<1||B<1)return 1/0;var Y=p.EDGECOST*(1/(z-1)+1/(B-1));Y+=p.ANGLECOST*C*C;for(var D=M-P,G=A-O,V=M+P,j=A+O,W=0;W<m.length;W++){var Z=m[W],ie=Math.cos(Z.theta)*Z.width/2,te=Math.sin(Z.theta)*Z.width/2,J=2*k.segmentDistance(D,G,V,j,Z.x-ie,Z.y-te,Z.x+ie,Z.y+te)/(v.height+Z.height),X=Z.level===v.level,ee=X?p.SAMELEVELDISTANCE:1;if(J<=ee)return 1/0;Y+=p.NEIGHBORCOST*(X?p.SAMELEVELFACTOR:1)/(J-ee)}return Y}function g(f){var v,m,x=f.trace._emptypoints,T=[],d=f.z.length,M=f.z[0].length,A=[];for(v=0;v<M;v++)A.push(1);for(v=0;v<d;v++)T.push(A.slice());for(v=0;v<x.length;v++)T[(m=x[v])[0]][m[1]]=0;return f.zmask=T,T}E.plot=function(f,v,m,x){var T=v.xaxis,d=v.yaxis;k.makeTraceGroups(x,m,"contour").each(function(M){var A=w.select(this),C=M[0],P=C.trace,O=C.x,z=C.y,B=P.contours,Y=n(B,v,C),D=k.ensureSingle(A,"g","heatmapcoloring"),G=[];B.coloring==="heatmap"&&(G=[M]),t(f,v,G,D),o(Y),r(Y);var V=T.c2p(O[0],!0),j=T.c2p(O[O.length-1],!0),W=d.c2p(z[0],!0),Z=d.c2p(z[z.length-1],!0),ie=[[V,Z],[j,Z],[j,W],[V,W]],te=Y;B.type==="constraint"&&(te=a(Y,B._operation)),function(J,X,ee){var re=k.ensureSingle(J,"g","contourbg").selectAll("path").data(ee.coloring==="fill"?[0]:[]);re.enter().append("path"),re.exit().remove(),re.attr("d","M"+X.join("L")+"Z").style("stroke","none")}(A,ie,B),function(J,X,ee,re){var oe=re.coloring==="fill"||re.type==="constraint"&&re._operation!=="=",ue="M"+ee.join("L")+"Z";oe&&s(X,re);var ce=k.ensureSingle(J,"g","contourfill").selectAll("path").data(oe?X:[]);ce.enter().append("path"),ce.exit().remove(),ce.each(function(de){var me=(de.prefixBoundary?ue:"")+c(de,ee);me?w.select(this).attr("d",me).style("stroke","none"):w.select(this).remove()})}(A,te,ie,B),function(J,X,ee,re,oe){var ue=ee._context.staticPlot,ce=k.ensureSingle(J,"g","contourlines"),de=oe.showlines!==!1,me=oe.showlabels,_e=de&&me,Se=E.createLines(ce,de||me,X,ue),we=E.createLineClip(ce,_e,ee,re.trace.uid),xe=J.selectAll("g.contourlabels").data(me?[0]:[]);if(xe.exit().remove(),xe.enter().append("g").classed("contourlabels",!0),me){var De=[],Ee=[];k.clearLocationCache();var Me=E.labelFormatter(ee,re),he=i.tester.append("text").attr("data-notex",1).call(i.font,oe.labelfont),fe=X[0].xaxis,ae=X[0].yaxis,be=fe._length,Ie=ae._length,Te=fe.range,Ne=ae.range,qe=k.aggNums(Math.min,null,re.x),ve=k.aggNums(Math.max,null,re.x),Ce=k.aggNums(Math.min,null,re.y),Ae=k.aggNums(Math.max,null,re.y),ze=Math.max(fe.c2p(qe,!0),0),Ue=Math.min(fe.c2p(ve,!0),be),Ve=Math.max(ae.c2p(Ae,!0),0),Ye=Math.min(ae.c2p(Ce,!0),Ie),$e={};Te[0]<Te[1]?($e.left=ze,$e.right=Ue):($e.left=Ue,$e.right=ze),Ne[0]<Ne[1]?($e.top=Ve,$e.bottom=Ye):($e.top=Ye,$e.bottom=Ve),$e.middle=($e.top+$e.bottom)/2,$e.center=($e.left+$e.right)/2,De.push([[$e.left,$e.top],[$e.right,$e.top],[$e.right,$e.bottom],[$e.left,$e.bottom]]);var rt=Math.sqrt(be*be+Ie*Ie),ht=u.LABELDISTANCE*rt/Math.max(1,X.length/u.LABELINCREASE);Se.each(function(nt){var bt=E.calcTextOpts(nt.level,Me,he,ee);w.select(this).selectAll("path").each(function(){var wt=k.getVisibleSegment(this,$e,bt.height/2);if(wt&&!(wt.len<(bt.width+bt.height)*u.LABELMIN))for(var ut=Math.min(Math.ceil(wt.len/ht),u.LABELMAX),lt=0;lt<ut;lt++){var Tt=E.findBestTextLocation(this,wt,bt,Ee,$e);if(!Tt)break;E.addLabelData(Tt,bt,Ee,De)}})}),he.remove(),E.drawLabels(xe,Ee,ee,we,_e?De:null)}me&&!de&&Se.remove()}(A,Y,f,C,B),function(J,X,ee,re,oe){var ue=re.trace,ce=ee._fullLayout._clips,de="clip"+ue.uid,me=ce.selectAll("#"+de).data(ue.connectgaps?[]:[0]);if(me.enter().append("clipPath").classed("contourclip",!0).attr("id",de),me.exit().remove(),ue.connectgaps===!1){var _e={level:.9,crossings:{},starts:[],edgepaths:[],paths:[],xaxis:X.xaxis,yaxis:X.yaxis,x:re.x,y:re.y,z:g(re),smoothing:0};o([_e]),r([_e]),s([_e],{type:"levels"}),k.ensureSingle(me,"path","").attr("d",(_e.prefixBoundary?"M"+oe.join("L")+"Z":"")+c(_e,oe))}else de=null;i.setClipUrl(J,de,ee)}(A,v,f,C,ie)})},E.createLines=function(f,v,m,x){var T=m[0].smoothing,d=f.selectAll("g.contourlevel").data(v?m:[]);if(d.exit().remove(),d.enter().append("g").classed("contourlevel",!0),v){var M=d.selectAll("path.openline").data(function(C){return C.pedgepaths||C.edgepaths});M.exit().remove(),M.enter().append("path").classed("openline",!0),M.attr("d",function(C){return i.smoothopen(C,T)}).style("stroke-miterlimit",1).style("vector-effect",x?"none":"non-scaling-stroke");var A=d.selectAll("path.closedline").data(function(C){return C.ppaths||C.paths});A.exit().remove(),A.enter().append("path").classed("closedline",!0),A.attr("d",function(C){return i.smoothclosed(C,T)}).style("stroke-miterlimit",1).style("vector-effect",x?"none":"non-scaling-stroke")}return d},E.createLineClip=function(f,v,m,x){var T=v?"clipline"+x:null,d=m._fullLayout._clips.selectAll("#"+T).data(v?[0]:[]);return d.exit().remove(),d.enter().append("clipPath").classed("contourlineclip",!0).attr("id",T),i.setClipUrl(f,T,m),d},E.labelFormatter=function(f,v){var m=f._fullLayout,x=v.trace,T=x.contours,d={type:"linear",_id:"ycontour",showexponent:"all",exponentformat:"B"};if(T.labelformat)d.tickformat=T.labelformat,l(d,m);else{var M=_.extractOpts(x);if(M&&M.colorbar&&M.colorbar._axis)d=M.colorbar._axis;else{if(T.type==="constraint"){var A=T.value;Array.isArray(A)?d.range=[A[0],A[A.length-1]]:d.range=[A,A]}else d.range=[T.start,T.end],d.nticks=(T.end-T.start)/T.size;d.range[0]===d.range[1]&&(d.range[1]+=d.range[0]||1),d.nticks||(d.nticks=1e3),l(d,m),h.prepTicks(d),d._tmin=null,d._tmax=null}}return function(C){return h.tickText(d,C).text}},E.calcTextOpts=function(f,v,m,x){var T=v(f);m.text(T).call(y.convertToTspans,x);var d=m.node(),M=i.bBox(d,!0);return{text:T,width:M.width,height:M.height,fontSize:+d.style["font-size"].replace("px",""),level:f,dy:(M.top+M.bottom)/2}},E.findBestTextLocation=function(f,v,m,x,T){var d,M,A,C,P,O=m.width;v.isClosed?(M=v.len/p.INITIALSEARCHPOINTS,d=v.min+M/2,A=v.max):(M=(v.len-O)/(p.INITIALSEARCHPOINTS+1),d=v.min+M+O/2,A=v.max-(M+O)/2);for(var z=1/0,B=0;B<p.ITERATIONS;B++){for(var Y=d;Y<A;Y+=M){var D=k.getTextLocation(f,v.total,Y,O),G=b(D,m,x,T);G<z&&(z=G,P=D,C=Y)}if(z>2*p.MAXCOST)break;B&&(M/=2),A=(d=C-M/2)+1.5*M}if(z<=p.MAXCOST)return P},E.addLabelData=function(f,v,m,x){var T=v.fontSize,d=v.width+T/3,M=Math.max(0,v.height-T/3),A=f.x,C=f.y,P=f.theta,O=Math.sin(P),z=Math.cos(P),B=function(D,G){return[A+D*z-G*O,C+D*O+G*z]},Y=[B(-d/2,-M/2),B(-d/2,M/2),B(d/2,M/2),B(d/2,-M/2)];m.push({text:v.text,x:A,y:C,dy:v.dy,theta:P,level:v.level,width:d,height:M}),x.push(Y)},E.drawLabels=function(f,v,m,x,T){var d=f.selectAll("text").data(v,function(C){return C.text+","+C.x+","+C.y+","+C.theta});if(d.exit().remove(),d.enter().append("text").attr({"data-notex":1,"text-anchor":"middle"}).each(function(C){var P=C.x+Math.sin(C.theta)*C.dy,O=C.y-Math.cos(C.theta)*C.dy;w.select(this).text(C.text).attr({x:P,y:O,transform:"rotate("+180*C.theta/Math.PI+" "+P+" "+O+")"}).call(y.convertToTspans,m)}),T){for(var M="",A=0;A<T.length;A++)M+="M"+T[A].join("L")+"Z";k.ensureSingle(x,"path","").attr("d",M)}}},18670:function(R,E,e){var w=e(89298),k=e(71828);function i(_,y,h){var l={type:"linear",range:[_,y]};return w.autoTicks(l,(y-_)/(h||15)),l}R.exports=function(_,y){var h=_.contours;if(_.autocontour){var l=_.zmin,t=_.zmax;(_.zauto||l===void 0)&&(l=k.aggNums(Math.min,null,y)),(_.zauto||t===void 0)&&(t=k.aggNums(Math.max,null,y));var o=i(l,t,_.ncontours);h.size=o.dtick,h.start=w.tickFirst(o),o.range.reverse(),h.end=w.tickFirst(o),h.start===l&&(h.start+=h.size),h.end===t&&(h.end-=h.size),h.start>h.end&&(h.start=h.end=(h.start+h.end)/2),_._input.contours||(_._input.contours={}),k.extendFlat(_._input.contours,{start:h.start,end:h.end,size:h.size}),_._input.autocontour=!0}else if(h.type!=="constraint"){var r,n=h.start,a=h.end,s=_._input.contours;n>a&&(h.start=s.start=a,a=h.end=s.end=n,n=h.start),h.size>0||(r=n===a?1:i(n,a,_.ncontours).dtick,s.size=h.size=r)}}},84426:function(R,E,e){var w=e(39898),k=e(91424),i=e(70035),_=e(86068);R.exports=function(y){var h=w.select(y).selectAll("g.contour");h.style("opacity",function(l){return l[0].trace.opacity}),h.each(function(l){var t=w.select(this),o=l[0].trace,r=o.contours,n=o.line,a=r.size||1,s=r.start,u=r.type==="constraint",p=!u&&r.coloring==="lines",c=!u&&r.coloring==="fill",b=p||c?_(o):null;t.selectAll("g.contourlevel").each(function(v){w.select(this).selectAll("path").call(k.lineGroupStyle,n.width,p?b(v.level):n.color,n.dash)});var g=r.labelfont;if(t.selectAll("g.contourlabels text").each(function(v){k.font(w.select(this),{family:g.family,size:g.size,color:g.color||(p?b(v.level):n.color)})}),u)t.selectAll("g.contourfill path").style("fill",o.fillcolor);else if(c){var f;t.selectAll("g.contourfill path").style("fill",function(v){return f===void 0&&(f=v.level),b(v.level+.5*a)}),f===void 0&&(f=s),t.selectAll("g.contourbg path").style("fill",b(f-.5*a))}}),i(y)}},8724:function(R,E,e){var w=e(1586),k=e(14523);R.exports=function(i,_,y,h,l){var t,o=y("contours.coloring"),r="";o==="fill"&&(t=y("contours.showlines")),t!==!1&&(o!=="lines"&&(r=y("line.color","#000")),y("line.width",.5),y("line.dash")),o!=="none"&&(i.showlegend!==!0&&(_.showlegend=!1),_._dfltShowLegend=!1,w(i,_,h,y,{prefix:"",cLetter:"z"})),y("line.smoothing"),k(y,h,r,l)}},88085:function(R,E,e){var w=e(21606),k=e(70600),i=e(50693),_=e(1426).extendFlat,y=k.contours;R.exports=_({carpet:{valType:"string",editType:"calc"},z:w.z,a:w.x,a0:w.x0,da:w.dx,b:w.y,b0:w.y0,db:w.dy,text:w.text,hovertext:w.hovertext,transpose:w.transpose,atype:w.xtype,btype:w.ytype,fillcolor:k.fillcolor,autocontour:k.autocontour,ncontours:k.ncontours,contours:{type:y.type,start:y.start,end:y.end,size:y.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:y.showlines,showlabels:y.showlabels,labelfont:y.labelfont,labelformat:y.labelformat,operation:y.operation,value:y.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:k.line.color,width:k.line.width,dash:k.line.dash,smoothing:k.line.smoothing,editType:"plot"},transforms:void 0},i("",{cLetter:"z",autoColorDflt:!1}))},59885:function(R,E,e){var w=e(78803),k=e(71828),i=e(68296),_=e(4742),y=e(824),h=e(43907),l=e(70769),t=e(75005),o=e(22882),r=e(18670);R.exports=function(n,a){var s=a._carpetTrace=o(n,a);if(s&&s.visible&&s.visible!=="legendonly"){if(!a.a||!a.b){var u=n.data[s.index],p=n.data[a.index];p.a||(p.a=u.a),p.b||(p.b=u.b),t(p,a,a._defaultColor,n._fullLayout)}var c=function(b,g){var f,v,m,x,T,d,M,A=g._carpetTrace,C=A.aaxis,P=A.baxis;C._minDtick=0,P._minDtick=0,k.isArray1D(g.z)&&i(g,C,P,"a","b",["z"]),f=g._a=g._a||g.a,x=g._b=g._b||g.b,f=f?C.makeCalcdata(g,"_a"):[],x=x?P.makeCalcdata(g,"_b"):[],v=g.a0||0,m=g.da||1,T=g.b0||0,d=g.db||1,M=g._z=_(g._z||g.z,g.transpose),g._emptypoints=h(M),y(M,g._emptypoints);var O=k.maxRowLength(M),z=g.xtype==="scaled"?"":f,B=l(g,z,v,m,O,C),Y=g.ytype==="scaled"?"":x,D={a:B,b:l(g,Y,T,d,M.length,P),z:M};return g.contours.type==="levels"&&g.contours.coloring!=="none"&&w(b,g,{vals:M,containerStr:"",cLetter:"z"}),[D]}(n,a);return r(a,a._z),c}}},75005:function(R,E,e){var w=e(71828),k=e(67684),i=e(88085),_=e(83179),y=e(67217),h=e(8724);R.exports=function(l,t,o,r){function n(a,s){return w.coerce(l,t,i,a,s)}if(n("carpet"),l.a&&l.b){if(!k(l,t,n,r,"a","b"))return void(t.visible=!1);n("text"),n("contours.type")==="constraint"?_(l,t,n,r,o,{hasHover:!1}):(y(l,t,n,function(a){return w.coerce2(l,t,i,a)}),h(l,t,n,r,{hasHover:!1}))}else t._defaultColor=o,t._length=null}},93740:function(R,E,e){R.exports={attributes:e(88085),supplyDefaults:e(75005),colorbar:e(90654),calc:e(59885),plot:e(51048),style:e(84426),moduleType:"trace",name:"contourcarpet",basePlotModule:e(93612),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}},51048:function(R,E,e){var w=e(39898),k=e(27669),i=e(67961),_=e(91424),y=e(71828),h=e(87678),l=e(81696),t=e(29854),o=e(36914),r=e(84857),n=e(87558),a=e(20083),s=e(22882),u=e(4536);function p(g,f,v){var m=g.getPointAtLength(f),x=g.getPointAtLength(v),T=x.x-m.x,d=x.y-m.y,M=Math.sqrt(T*T+d*d);return[T/M,d/M]}function c(g){var f=Math.sqrt(g[0]*g[0]+g[1]*g[1]);return[g[0]/f,g[1]/f]}function b(g,f){var v=Math.abs(g[0]*f[0]+g[1]*f[1]);return Math.sqrt(1-v*v)/v}R.exports=function(g,f,v,m){var x=f.xaxis,T=f.yaxis;y.makeTraceGroups(m,v,"contour").each(function(d){var M=w.select(this),A=d[0],C=A.trace,P=C._carpetTrace=s(g,C),O=g.calcdata[P.index][0];if(P.visible&&P.visible!=="legendonly"){var z=A.a,B=A.b,Y=C.contours,D=n(Y,f,A),G=Y.type==="constraint",V=Y._operation,j=G?V==="="?"lines":"fill":Y.coloring,W=[[z[0],B[B.length-1]],[z[z.length-1],B[B.length-1]],[z[z.length-1],B[0]],[z[0],B[0]]];h(D);var Z=1e-8*(z[z.length-1]-z[0]),ie=1e-8*(B[B.length-1]-B[0]);l(D,Z,ie);var te,J,X,ee,re=D;Y.type==="constraint"&&(re=r(D,V)),function(de,me){var _e,Se,we,xe,De,Ee,Me,he,fe;for(_e=0;_e<de.length;_e++){for(De=(xe=de[_e]).pedgepaths=[],Ee=xe.ppaths=[],Se=0;Se<xe.edgepaths.length;Se++){for(fe=xe.edgepaths[Se],Me=[],we=0;we<fe.length;we++)Me[we]=me(fe[we]);De.push(Me)}for(Se=0;Se<xe.paths.length;Se++){for(fe=xe.paths[Se],he=[],we=0;we<fe.length;we++)he[we]=me(fe[we]);Ee.push(he)}}}(D,ce);var oe=[];for(ee=O.clipsegments.length-1;ee>=0;ee--)te=O.clipsegments[ee],J=k([],te.x,x.c2p),X=k([],te.y,T.c2p),J.reverse(),X.reverse(),oe.push(i(J,X,te.bicubic));var ue="M"+oe.join("L")+"Z";(function(de,me,_e,Se,we,xe){var De,Ee,Me,he,fe=y.ensureSingle(de,"g","contourbg").selectAll("path").data(xe!=="fill"||we?[]:[0]);fe.enter().append("path"),fe.exit().remove();var ae=[];for(he=0;he<me.length;he++)De=me[he],Ee=k([],De.x,_e.c2p),Me=k([],De.y,Se.c2p),ae.push(i(Ee,Me,De.bicubic));fe.attr("d","M"+ae.join("L")+"Z").style("stroke","none")})(M,O.clipsegments,x,T,G,j),function(de,me,_e,Se,we,xe,De,Ee,Me,he,fe){var ae=he==="fill";ae&&a(we,de.contours);var be=y.ensureSingle(me,"g","contourfill").selectAll("path").data(ae?we:[]);be.enter().append("path"),be.exit().remove(),be.each(function(Ie){var Te=(Ie.prefixBoundary?fe:"")+function(Ne,qe,ve,Ce,Ae,ze,Ue,Ve){var Ye,$e,rt,ht,nt,bt,wt,ut="",lt=qe.edgepaths.map(function(ft,Be){return Be}),Tt=!0,Et=1e-4*Math.abs(ve[0][0]-ve[2][0]),St=1e-4*Math.abs(ve[0][1]-ve[2][1]);function Ft(ft){return Math.abs(ft[1]-ve[0][1])<St}function zt(ft){return Math.abs(ft[1]-ve[2][1])<St}function Je(ft){return Math.abs(ft[0]-ve[0][0])<Et}function et(ft){return Math.abs(ft[0]-ve[2][0])<Et}function Ze(ft,Be){var je,at,ot,xt,yt="";for(Ft(ft)&&!et(ft)||zt(ft)&&!Je(ft)?(xt=Ae.aaxis,ot=u(Ae,ze,[ft[0],Be[0]],.5*(ft[1]+Be[1]))):(xt=Ae.baxis,ot=u(Ae,ze,.5*(ft[0]+Be[0]),[ft[1],Be[1]])),je=1;je<ot.length;je++)for(yt+=xt.smoothing?"C":"L",at=0;at<ot[je].length;at++){var _t=ot[je][at];yt+=[Ue.c2p(_t[0]),Ve.c2p(_t[1])]+" "}return yt}for(Ye=0,$e=null;lt.length;){var Qe=qe.edgepaths[Ye][0];for($e&&(ut+=Ze($e,Qe)),wt=_.smoothopen(qe.edgepaths[Ye].map(Ce),qe.smoothing),ut+=Tt?wt:wt.replace(/^M/,"L"),lt.splice(lt.indexOf(Ye),1),$e=qe.edgepaths[Ye][qe.edgepaths[Ye].length-1],nt=-1,ht=0;ht<4;ht++){if(!$e){y.log("Missing end?",Ye,qe);break}for(Ft($e)&&!et($e)?rt=ve[1]:Je($e)?rt=ve[0]:zt($e)?rt=ve[3]:et($e)&&(rt=ve[2]),bt=0;bt<qe.edgepaths.length;bt++){var st=qe.edgepaths[bt][0];Math.abs($e[0]-rt[0])<Et?Math.abs($e[0]-st[0])<Et&&(st[1]-$e[1])*(rt[1]-st[1])>=0&&(rt=st,nt=bt):Math.abs($e[1]-rt[1])<St?Math.abs($e[1]-st[1])<St&&(st[0]-$e[0])*(rt[0]-st[0])>=0&&(rt=st,nt=bt):y.log("endpt to newendpt is not vert. or horz.",$e,rt,st)}if(nt>=0)break;ut+=Ze($e,rt),$e=rt}if(nt===qe.edgepaths.length){y.log("unclosed perimeter path");break}Ye=nt,(Tt=lt.indexOf(Ye)===-1)&&(Ye=lt[0],ut+=Ze($e,rt)+"Z",$e=null)}for(Ye=0;Ye<qe.paths.length;Ye++)ut+=_.smoothclosed(qe.paths[Ye].map(Ce),qe.smoothing);return ut}(0,Ie,xe,De,Ee,Me,_e,Se);Te?w.select(this).attr("d",Te).style("stroke","none"):w.select(this).remove()})}(C,M,x,T,re,W,ce,P,O,j,ue),function(de,me,_e,Se,we,xe,De){var Ee=_e._context.staticPlot,Me=y.ensureSingle(de,"g","contourlines"),he=we.showlines!==!1,fe=we.showlabels,ae=he&&fe,be=t.createLines(Me,he||fe,me,Ee),Ie=t.createLineClip(Me,ae,_e,Se.trace.uid),Te=de.selectAll("g.contourlabels").data(fe?[0]:[]);if(Te.exit().remove(),Te.enter().append("g").classed("contourlabels",!0),fe){var Ne=xe.xaxis,qe=xe.yaxis,ve=Ne._length,Ce=qe._length,Ae=[[[0,0],[ve,0],[ve,Ce],[0,Ce]]],ze=[];y.clearLocationCache();var Ue=t.labelFormatter(_e,Se),Ve=_.tester.append("text").attr("data-notex",1).call(_.font,we.labelfont),Ye={left:0,right:ve,center:ve/2,top:0,bottom:Ce,middle:Ce/2},$e=Math.sqrt(ve*ve+Ce*Ce),rt=o.LABELDISTANCE*$e/Math.max(1,me.length/o.LABELINCREASE);be.each(function(ht){var nt=t.calcTextOpts(ht.level,Ue,Ve,_e);w.select(this).selectAll("path").each(function(bt){var wt=this,ut=y.getVisibleSegment(wt,Ye,nt.height/2);if(ut&&(function(St,Ft,zt,Je,et,Ze){for(var Qe,st=0;st<zt.pedgepaths.length;st++)Ft===zt.pedgepaths[st]&&(Qe=zt.edgepaths[st]);if(Qe){var ft=et.a[0],Be=et.a[et.a.length-1],je=et.b[0],at=et.b[et.b.length-1],ot=p(St,0,1),xt=p(St,Je.total,Je.total-1),yt=gt(Qe[0],ot),_t=Je.total-gt(Qe[Qe.length-1],xt);Je.min<yt&&(Je.min=yt),Je.max>_t&&(Je.max=_t),Je.len=Je.max-Je.min}function gt(Ct,dt){var vt,At=0,Bt=.1;return(Math.abs(Ct[0]-ft)<Bt||Math.abs(Ct[0]-Be)<Bt)&&(vt=c(et.dxydb_rough(Ct[0],Ct[1],Bt)),At=Math.max(At,Ze*b(dt,vt)/2)),(Math.abs(Ct[1]-je)<Bt||Math.abs(Ct[1]-at)<Bt)&&(vt=c(et.dxyda_rough(Ct[0],Ct[1],Bt)),At=Math.max(At,Ze*b(dt,vt)/2)),At}}(wt,bt,ht,ut,De,nt.height),!(ut.len<(nt.width+nt.height)*o.LABELMIN)))for(var lt=Math.min(Math.ceil(ut.len/rt),o.LABELMAX),Tt=0;Tt<lt;Tt++){var Et=t.findBestTextLocation(wt,ut,nt,ze,Ye);if(!Et)break;t.addLabelData(Et,nt,ze,Ae)}})}),Ve.remove(),t.drawLabels(Te,ze,_e,Ie,ae?Ae:null)}fe&&!he&&be.remove()}(M,D,g,A,Y,f,P),_.setClipUrl(M,P._clipPathId,g)}function ce(de){var me=P.ab2xy(de[0],de[1],!0);return[x.c2p(me[0]),T.c2p(me[1])]}})}},64096:function(R,E,e){var w=e(50693),k=e(5386).fF,i=e(9012),_=e(99181),y=e(1426).extendFlat;R.exports=y({lon:_.lon,lat:_.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:_.text,hovertext:_.hovertext,hoverinfo:y({},i.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:k(),showlegend:y({},i.showlegend,{dflt:!1})},w("",{cLetter:"z",editTypeOverride:"calc"}))},85070:function(R,E,e){var w=e(92770),k=e(71828).isArrayOrTypedArray,i=e(50606).BADNUM,_=e(78803),y=e(71828)._;R.exports=function(h,l){for(var t=l._length,o=new Array(t),r=l.z,n=k(r)&&r.length,a=0;a<t;a++){var s=o[a]={},u=l.lon[a],p=l.lat[a];if(s.lonlat=w(u)&&w(p)?[+u,+p]:[i,i],n){var c=r[a];s.z=w(c)?c:i}}return _(h,l,{vals:n?r:[0,1],containerStr:"",cLetter:"z"}),t&&(o[0].t={labels:{lat:y(h,"lat:")+" ",lon:y(h,"lon:")+" "}}),o}},52414:function(R,E,e){var w=e(92770),k=e(71828),i=e(7901),_=e(21081),y=e(50606).BADNUM,h=e(18214).makeBlank;R.exports=function(l){var t=l[0].trace,o=t.visible===!0&&t._length!==0,r=t._opts={heatmap:{layout:{visibility:"none"},paint:{}},geojson:h()};if(!o)return r;var n,a=[],s=t.z,u=t.radius,p=k.isArrayOrTypedArray(s)&&s.length,c=k.isArrayOrTypedArray(u);for(n=0;n<l.length;n++){var b=l[n],g=b.lonlat;if(g[0]!==y){var f={};if(p){var v=b.z;f.z=v!==y?v:0}c&&(f.r=w(u[n])&&u[n]>0?+u[n]:0),a.push({type:"Feature",geometry:{type:"Point",coordinates:g},properties:f})}}var m=_.extractOpts(t),x=m.reversescale?_.flipScale(m.colorscale):m.colorscale,T=x[0][1],d=["interpolate",["linear"],["heatmap-density"],0,i.opacity(T)<1?T:i.addOpacity(T,0)];for(n=1;n<x.length;n++)d.push(x[n][0],x[n][1]);var M=["interpolate",["linear"],["get","z"],m.min,0,m.max,1];return k.extendFlat(r.heatmap.paint,{"heatmap-weight":p?M:1/(m.max-m.min),"heatmap-color":d,"heatmap-radius":c?{type:"identity",property:"r"}:t.radius,"heatmap-opacity":t.opacity}),r.geojson={type:"FeatureCollection",features:a},r.heatmap.layout.visibility="visible",r}},79429:function(R,E,e){var w=e(71828),k=e(1586),i=e(64096);R.exports=function(_,y,h,l){function t(a,s){return w.coerce(_,y,i,a,s)}var o=t("lon")||[],r=t("lat")||[],n=Math.min(o.length,r.length);n?(y._length=n,t("z"),t("radius"),t("below"),t("text"),t("hovertext"),t("hovertemplate"),k(_,y,l,t,{prefix:"",cLetter:"z"})):y.visible=!1}},62474:function(R){R.exports=function(E,e){return E.lon=e.lon,E.lat=e.lat,E.z=e.z,E}},84684:function(R,E,e){var w=e(89298),k=e(28178).hoverPoints,i=e(28178).getExtraText;R.exports=function(_,y,h){var l=k(_,y,h);if(l){var t=l[0],o=t.cd,r=o[0].trace,n=o[t.index];if(delete t.color,"z"in n){var a=t.subplot.mockAxis;t.z=n.z,t.zLabel=w.tickText(a,a.c2l(n.z),"hover").text}return t.extraText=i(r,n,o[0].t.labels),[t]}}},93814:function(R,E,e){R.exports={attributes:e(64096),supplyDefaults:e(79429),colorbar:e(61243),formatLabels:e(15636),calc:e(85070),plot:e(7336),hoverPoints:e(84684),eventData:e(62474),getBelow:function(w,k){for(var i=k.getMapLayers(),_=0;_<i.length;_++){var y=i[_],h=y.id;if(y.type==="symbol"&&typeof h=="string"&&h.indexOf("plotly-")===-1)return h}},moduleType:"trace",name:"densitymapbox",basePlotModule:e(50101),categories:["mapbox","gl","showLegend"],meta:{hr_name:"density_mapbox"}}},7336:function(R,E,e){var w=e(52414),k=e(77734).traceLayerPrefix;function i(y,h){this.type="densitymapbox",this.subplot=y,this.uid=h,this.sourceId="source-"+h,this.layerList=[["heatmap",k+h+"-heatmap"]],this.below=null}var _=i.prototype;_.update=function(y){var h=this.subplot,l=this.layerList,t=w(y),o=h.belowLookup["trace-"+this.uid];h.map.getSource(this.sourceId).setData(t.geojson),o!==this.below&&(this._removeLayers(),this._addLayers(t,o),this.below=o);for(var r=0;r<l.length;r++){var n=l[r],a=n[0],s=n[1],u=t[a];h.setOptions(s,"setLayoutProperty",u.layout),u.layout.visibility==="visible"&&h.setOptions(s,"setPaintProperty",u.paint)}},_._addLayers=function(y,h){for(var l=this.subplot,t=this.layerList,o=this.sourceId,r=0;r<t.length;r++){var n=t[r],a=n[0],s=y[a];l.addLayer({type:a,id:n[1],source:o,layout:s.layout,paint:s.paint},h)}},_._removeLayers=function(){for(var y=this.subplot.map,h=this.layerList,l=h.length-1;l>=0;l--)y.removeLayer(h[l][1])},_.dispose=function(){var y=this.subplot.map;this._removeLayers(),y.removeSource(this.sourceId)},R.exports=function(y,h){var l=h[0].trace,t=new i(y,l.uid),o=t.sourceId,r=w(h),n=t.below=y.belowLookup["trace-"+l.uid];return y.map.addSource(o,{type:"geojson",data:r.geojson}),t._addLayers(r,n),t}},49789:function(R,E,e){var w=e(71828);R.exports=function(k,i){for(var _=0;_<k.length;_++)k[_].i=_;w.mergeArray(i.text,k,"tx"),w.mergeArray(i.hovertext,k,"htx");var y=i.marker;if(y){w.mergeArray(y.opacity,k,"mo"),w.mergeArray(y.color,k,"mc");var h=y.line;h&&(w.mergeArray(h.color,k,"mlc"),w.mergeArrayCastPositive(h.width,k,"mlw"))}}},1285:function(R,E,e){var w,k=e(1486),i=e(82196).line,_=e(9012),y=e(12663).axisHoverFormat,h=e(5386).fF,l=e(5386).si,t=e(18517),o=e(1426).extendFlat,r=e(7901);R.exports={x:k.x,x0:k.x0,dx:k.dx,y:k.y,y0:k.y0,dy:k.dy,xperiod:k.xperiod,yperiod:k.yperiod,xperiod0:k.xperiod0,yperiod0:k.yperiod0,xperiodalignment:k.xperiodalignment,yperiodalignment:k.yperiodalignment,xhoverformat:y("x"),yhoverformat:y("y"),hovertext:k.hovertext,hovertemplate:h({},{keys:t.eventDataKeys}),hoverinfo:o({},_.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},texttemplate:l({editType:"plot"},{keys:t.eventDataKeys.concat(["label","value"])}),text:k.text,textposition:k.textposition,insidetextanchor:o({},k.insidetextanchor,{dflt:"middle"}),textangle:o({},k.textangle,{dflt:0}),textfont:k.textfont,insidetextfont:k.insidetextfont,outsidetextfont:k.outsidetextfont,constraintext:k.constraintext,cliponaxis:k.cliponaxis,orientation:o({},k.orientation,{}),offset:o({},k.offset,{arrayOk:!1}),width:o({},k.width,{arrayOk:!1}),marker:(w=o({},k.marker),delete w.pattern,w),connector:{fillcolor:{valType:"color",editType:"style"},line:{color:o({},i.color,{dflt:r.defaultLine}),width:o({},i.width,{dflt:0,editType:"plot"}),dash:i.dash,editType:"style"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:k.offsetgroup,alignmentgroup:k.alignmentgroup}},9532:function(R,E,e){var w=e(89298),k=e(42973),i=e(49789),_=e(66279),y=e(50606).BADNUM;function h(l){return l===y?0:l}R.exports=function(l,t){var o,r,n,a,s,u,p,c,b=w.getFromId(l,t.xaxis||"x"),g=w.getFromId(l,t.yaxis||"y");t.orientation==="h"?(o=b.makeCalcdata(t,"x"),n=g.makeCalcdata(t,"y"),a=k(t,g,"y",n),s=!!t.yperiodalignment,u="y"):(o=g.makeCalcdata(t,"y"),n=b.makeCalcdata(t,"x"),a=k(t,b,"x",n),s=!!t.xperiodalignment,u="x"),r=a.vals;var f,v=Math.min(r.length,o.length),m=new Array(v);for(t._base=[],p=0;p<v;p++){o[p]<0&&(o[p]=y);var x=!1;o[p]!==y&&p+1<v&&o[p+1]!==y&&(x=!0),c=m[p]={p:r[p],s:o[p],cNext:x},t._base[p]=-.5*c.s,s&&(m[p].orig_p=n[p],m[p][u+"End"]=a.ends[p],m[p][u+"Start"]=a.starts[p]),t.ids&&(c.id=String(t.ids[p])),p===0&&(m[0].vTotal=0),m[0].vTotal+=h(c.s),c.begR=h(c.s)/h(m[0].s)}for(p=0;p<v;p++)(c=m[p]).s!==y&&(c.sumR=c.s/m[0].vTotal,c.difR=f!==void 0?c.s/f:1,f=c.s);return i(m,t),_(m,t),m}},18517:function(R){R.exports={eventDataKeys:["percentInitial","percentPrevious","percentTotal"]}},8984:function(R,E,e){var w=e(11661).setGroupPositions;R.exports=function(k,i){var _,y,h=k._fullLayout,l=k._fullData,t=k.calcdata,o=i.xaxis,r=i.yaxis,n=[],a=[],s=[];for(y=0;y<l.length;y++){var u=l[y],p=u.orientation==="h";u.visible===!0&&u.xaxis===o._id&&u.yaxis===r._id&&u.type==="funnel"&&(_=t[y],p?s.push(_):a.push(_),n.push(_))}var c={mode:h.funnelmode,norm:h.funnelnorm,gap:h.funnelgap,groupgap:h.funnelgroupgap};for(w(k,o,r,a,c),w(k,r,o,s,c),y=0;y<n.length;y++){_=n[y];for(var b=0;b<_.length;b++)b+1<_.length&&(_[b].nextP0=_[b+1].p0,_[b].nextS0=_[b+1].s0,_[b].nextP1=_[b+1].p1,_[b].nextS1=_[b+1].s1)}}},26199:function(R,E,e){var w=e(71828),k=e(26125),i=e(90769).handleText,_=e(67513),y=e(73927),h=e(1285),l=e(7901);R.exports={supplyDefaults:function(t,o,r,n){function a(c,b){return w.coerce(t,o,h,c,b)}if(_(t,o,n,a)){y(t,o,n,a),a("xhoverformat"),a("yhoverformat"),a("orientation",o.y&&!o.x?"v":"h"),a("offset"),a("width");var s=a("text");a("hovertext"),a("hovertemplate");var u=a("textposition");i(t,o,n,a,u,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),o.textposition==="none"||o.texttemplate||a("textinfo",Array.isArray(s)?"text+value":"value");var p=a("marker.color",r);a("marker.line.color",l.defaultLine),a("marker.line.width"),a("connector.visible")&&(a("connector.fillcolor",function(c){var b=w.isArrayOrTypedArray(c)?"#000":c;return l.addOpacity(b,.5*l.opacity(b))}(p)),a("connector.line.width")&&(a("connector.line.color"),a("connector.line.dash")))}else o.visible=!1},crossTraceDefaults:function(t,o){var r,n;function a(u){return w.coerce(n._input,n,h,u)}if(o.funnelmode==="group")for(var s=0;s<t.length;s++)r=(n=t[s])._input,k(r,n,o,a)}}},34598:function(R){R.exports=function(E,e){return E.x="xVal"in e?e.xVal:e.x,E.y="yVal"in e?e.yVal:e.y,"percentInitial"in e&&(E.percentInitial=e.percentInitial),"percentPrevious"in e&&(E.percentPrevious=e.percentPrevious),"percentTotal"in e&&(E.percentTotal=e.percentTotal),e.xa&&(E.xaxis=e.xa),e.ya&&(E.yaxis=e.ya),E}},63341:function(R,E,e){var w=e(7901).opacity,k=e(95423).hoverOnBars,i=e(71828).formatPercent;R.exports=function(_,y,h,l,t){var o=k(_,y,h,l,t);if(o){var r=o.cd,n=r[0].trace,a=n.orientation==="h",s=r[o.index];o[(a?"x":"y")+"LabelVal"]=s.s,o.percentInitial=s.begR,o.percentInitialLabel=i(s.begR,1),o.percentPrevious=s.difR,o.percentPreviousLabel=i(s.difR,1),o.percentTotal=s.sumR,o.percentTotalLabel=i(s.sumR,1);var u=s.hi||n.hoverinfo,p=[];if(u&&u!=="none"&&u!=="skip"){var c=u==="all",b=u.split("+"),g=function(f){return c||b.indexOf(f)!==-1};g("percent initial")&&p.push(o.percentInitialLabel+" of initial"),g("percent previous")&&p.push(o.percentPreviousLabel+" of previous"),g("percent total")&&p.push(o.percentTotalLabel+" of total")}return o.extraText=p.join("<br>"),o.color=function(f,v){var m=f.marker,x=v.mc||m.color,T=v.mlc||m.line.color,d=v.mlw||m.line.width;return w(x)?x:w(T)&&d?T:void 0}(n,s),[o]}}},51759:function(R,E,e){R.exports={attributes:e(1285),layoutAttributes:e(10440),supplyDefaults:e(26199).supplyDefaults,crossTraceDefaults:e(26199).crossTraceDefaults,supplyLayoutDefaults:e(93138),calc:e(9532),crossTraceCalc:e(8984),plot:e(80461),style:e(68266).style,hoverPoints:e(63341),eventData:e(34598),selectPoints:e(81974),moduleType:"trace",name:"funnel",basePlotModule:e(93612),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}},10440:function(R){R.exports={funnelmode:{valType:"enumerated",values:["stack","group","overlay"],dflt:"stack",editType:"calc"},funnelgap:{valType:"number",min:0,max:1,editType:"calc"},funnelgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}},93138:function(R,E,e){var w=e(71828),k=e(10440);R.exports=function(i,_,y){var h=!1;function l(r,n){return w.coerce(i,_,k,r,n)}for(var t=0;t<y.length;t++){var o=y[t];if(o.visible&&o.type==="funnel"){h=!0;break}}h&&(l("funnelmode"),l("funnelgap",.2),l("funnelgroupgap"))}},80461:function(R,E,e){var w=e(39898),k=e(71828),i=e(91424),_=e(50606).BADNUM,y=e(17295),h=e(72597).clearMinTextSize;function l(t,o,r,n){var a=[],s=[],u=n?o:r,p=n?r:o;return a[0]=u.c2p(t.s0,!0),s[0]=p.c2p(t.p0,!0),a[1]=u.c2p(t.s1,!0),s[1]=p.c2p(t.p1,!0),a[2]=u.c2p(t.nextS0,!0),s[2]=p.c2p(t.nextP0,!0),a[3]=u.c2p(t.nextS1,!0),s[3]=p.c2p(t.nextP1,!0),n?[a,s]:[s,a]}R.exports=function(t,o,r,n){var a=t._fullLayout;h("funnel",a),function(s,u,p,c){var b=u.xaxis,g=u.yaxis;k.makeTraceGroups(c,p,"trace bars").each(function(f){var v=w.select(this),m=f[0].trace,x=k.ensureSingle(v,"g","regions");if(m.connector&&m.connector.visible){var T=m.orientation==="h",d=x.selectAll("g.region").data(k.identity);d.enter().append("g").classed("region",!0),d.exit().remove();var M=d.size();d.each(function(A,C){if(C===M-1||A.cNext){var P=l(A,b,g,T),O=P[0],z=P[1],B="";O[0]!==_&&z[0]!==_&&O[1]!==_&&z[1]!==_&&O[2]!==_&&z[2]!==_&&O[3]!==_&&z[3]!==_&&(B+=T?"M"+O[0]+","+z[1]+"L"+O[2]+","+z[2]+"H"+O[3]+"L"+O[1]+","+z[1]+"Z":"M"+O[1]+","+z[1]+"L"+O[2]+","+z[3]+"V"+z[2]+"L"+O[1]+","+z[0]+"Z"),B===""&&(B="M0,0Z"),k.ensureSingle(w.select(this),"path").attr("d",B).call(i.setClipUrl,u.layerClipId,s)}})}else x.remove()})}(t,o,r,n),function(s,u,p,c){var b=u.xaxis,g=u.yaxis;k.makeTraceGroups(c,p,"trace bars").each(function(f){var v=w.select(this),m=f[0].trace,x=k.ensureSingle(v,"g","lines");if(m.connector&&m.connector.visible&&m.connector.line.width){var T=m.orientation==="h",d=x.selectAll("g.line").data(k.identity);d.enter().append("g").classed("line",!0),d.exit().remove();var M=d.size();d.each(function(A,C){if(C===M-1||A.cNext){var P=l(A,b,g,T),O=P[0],z=P[1],B="";O[3]!==void 0&&z[3]!==void 0&&(T?(B+="M"+O[0]+","+z[1]+"L"+O[2]+","+z[2],B+="M"+O[1]+","+z[1]+"L"+O[3]+","+z[2]):(B+="M"+O[1]+","+z[1]+"L"+O[2]+","+z[3],B+="M"+O[1]+","+z[0]+"L"+O[2]+","+z[2])),B===""&&(B="M0,0Z"),k.ensureSingle(w.select(this),"path").attr("d",B).call(i.setClipUrl,u.layerClipId,s)}})}else x.remove()})}(t,o,r,n),y.plot(t,o,r,n,{mode:a.funnelmode,norm:a.funnelmode,gap:a.funnelgap,groupgap:a.funnelgroupgap})}},68266:function(R,E,e){var w=e(39898),k=e(91424),i=e(7901),_=e(37822).DESELECTDIM,y=e(16688),h=e(72597).resizeText,l=y.styleTextPoints;R.exports={style:function(t,o,r){var n=r||w.select(t).selectAll("g.funnellayer").selectAll("g.trace");h(t,n,"funnel"),n.style("opacity",function(a){return a[0].trace.opacity}),n.each(function(a){var s=w.select(this),u=a[0].trace;s.selectAll(".point > path").each(function(p){if(!p.isBlank){var c=u.marker;w.select(this).call(i.fill,p.mc||c.color).call(i.stroke,p.mlc||c.line.color).call(k.dashLine,c.line.dash,p.mlw||c.line.width).style("opacity",u.selectedpoints&&!p.selected?_:1)}}),l(s,u,t),s.selectAll(".regions").each(function(){w.select(this).selectAll("path").style("stroke-width",0).call(i.fill,u.connector.fillcolor)}),s.selectAll(".lines").each(function(){var p=u.connector.line;k.lineGroupStyle(w.select(this).selectAll("path"),p.width,p.color,p.dash)})})}}},86807:function(R,E,e){var w=e(34e3),k=e(9012),i=e(27670).Y,_=e(5386).fF,y=e(5386).si,h=e(1426).extendFlat;R.exports={labels:w.labels,label0:w.label0,dlabel:w.dlabel,values:w.values,marker:{colors:w.marker.colors,line:{color:h({},w.marker.line.color,{dflt:null}),width:h({},w.marker.line.width,{dflt:1}),editType:"calc"},pattern:w.marker.pattern,editType:"calc"},text:w.text,hovertext:w.hovertext,scalegroup:h({},w.scalegroup,{}),textinfo:h({},w.textinfo,{flags:["label","text","value","percent"]}),texttemplate:y({editType:"plot"},{keys:["label","color","value","text","percent"]}),hoverinfo:h({},k.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:_({},{keys:["label","color","value","text","percent"]}),textposition:h({},w.textposition,{values:["inside","none"],dflt:"inside"}),textfont:w.textfont,insidetextfont:w.insidetextfont,title:{text:w.title.text,font:w.title.font,position:h({},w.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:i({name:"funnelarea",trace:!0,editType:"calc"}),aspectratio:{valType:"number",min:0,dflt:1,editType:"plot"},baseratio:{valType:"number",min:0,max:1,dflt:.333,editType:"plot"}}},6452:function(R,E,e){var w=e(74875);E.name="funnelarea",E.plot=function(k,i,_,y){w.plotBasePlot(E.name,k,i,_,y)},E.clean=function(k,i,_,y){w.cleanBasePlot(E.name,k,i,_,y)}},89574:function(R,E,e){var w=e(32354);R.exports={calc:function(k,i){return w.calc(k,i)},crossTraceCalc:function(k){w.crossTraceCalc(k,{type:"funnelarea"})}}},86282:function(R,E,e){var w=e(71828),k=e(86807),i=e(27670).c,_=e(90769).handleText,y=e(37434).handleLabelsAndValues,h=e(37434).handleMarkerDefaults;R.exports=function(l,t,o,r){function n(v,m){return w.coerce(l,t,k,v,m)}var a=n("labels"),s=n("values"),u=y(a,s),p=u.len;if(t._hasLabels=u.hasLabels,t._hasValues=u.hasValues,!t._hasLabels&&t._hasValues&&(n("label0"),n("dlabel")),p){t._length=p,h(l,t,r,n),n("scalegroup");var c,b=n("text"),g=n("texttemplate");if(g||(c=n("textinfo",Array.isArray(b)?"text+percent":"percent")),n("hovertext"),n("hovertemplate"),g||c&&c!=="none"){var f=n("textposition");_(l,t,r,n,f,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}i(t,r,n),n("title.text")&&(n("title.position"),w.coerceFont(n,"title.font",r.font)),n("aspectratio"),n("baseratio")}else t.visible=!1}},10421:function(R,E,e){R.exports={moduleType:"trace",name:"funnelarea",basePlotModule:e(6452),categories:["pie-like","funnelarea","showLegend"],attributes:e(86807),layoutAttributes:e(80097),supplyDefaults:e(86282),supplyLayoutDefaults:e(57402),calc:e(89574).calc,crossTraceCalc:e(89574).crossTraceCalc,plot:e(79187),style:e(71858),styleOne:e(63463),meta:{}}},80097:function(R,E,e){var w=e(92774).hiddenlabels;R.exports={hiddenlabels:w,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}},57402:function(R,E,e){var w=e(71828),k=e(80097);R.exports=function(i,_){function y(h,l){return w.coerce(i,_,k,h,l)}y("hiddenlabels"),y("funnelareacolorway",_.colorway),y("extendfunnelareacolors")}},79187:function(R,E,e){var w=e(39898),k=e(91424),i=e(71828),_=i.strScale,y=i.strTranslate,h=e(63893),l=e(17295).toMoveInsideBar,t=e(72597),o=t.recordMinTextSize,r=t.clearMinTextSize,n=e(53581),a=e(14575),s=a.attachFxHandlers,u=a.determineInsideTextFont,p=a.layoutAreas,c=a.prerenderTitles,b=a.positionTitleOutside,g=a.formatSliceLabel;function f(v,m){return"l"+(m[0]-v[0])+","+(m[1]-v[1])}R.exports=function(v,m){var x=v._context.staticPlot,T=v._fullLayout;r("funnelarea",T),c(m,v),p(m,T._size),i.makeTraceGroups(T._funnelarealayer,m,"trace").each(function(d){var M=w.select(this),A=d[0],C=A.trace;(function(P){if(P.length){var O=P[0],z=O.trace,B=z.aspectratio,Y=z.baseratio;Y>.999&&(Y=.999);var D,G,V,j=Math.pow(Y,2),W=O.vTotal,Z=W,ie=W*j/(1-j)/W,te=[];for(te.push(Me()),G=P.length-1;G>-1;G--)if(!(V=P[G]).hidden){var J=V.v/Z;ie+=J,te.push(Me())}var X=1/0,ee=-1/0;for(G=0;G<te.length;G++)D=te[G],X=Math.min(X,D[1]),ee=Math.max(ee,D[1]);for(G=0;G<te.length;G++)te[G][1]-=(ee+X)/2;var re=te[te.length-1][0],oe=O.r,ue=(ee-X)/2,ce=oe/re,de=oe/ue*B;for(O.r=de*ue,G=0;G<te.length;G++)te[G][0]*=ce,te[G][1]*=de;var me,_e,Se=[-(D=te[0])[0],D[1]],we=[D[0],D[1]],xe=0;for(G=P.length-1;G>-1;G--)if(!(V=P[G]).hidden){var De=te[xe+=1][0],Ee=te[xe][1];V.TL=[-De,Ee],V.TR=[De,Ee],V.BL=Se,V.BR=we,V.pxmid=(me=V.TR,_e=V.BR,[.5*(me[0]+_e[0]),.5*(me[1]+_e[1])]),Se=V.TL,we=V.TR}}function Me(){var he,fe={x:he=Math.sqrt(ie),y:-he};return[fe.x,fe.y]}})(d),M.each(function(){var P=w.select(this).selectAll("g.slice").data(d);P.enter().append("g").classed("slice",!0),P.exit().remove(),P.each(function(z,B){if(z.hidden)w.select(this).selectAll("path,g").remove();else{z.pointNumber=z.i,z.curveNumber=C.index;var Y=A.cx,D=A.cy,G=w.select(this),V=G.selectAll("path.surface").data([z]);V.enter().append("path").classed("surface",!0).style({"pointer-events":x?"none":"all"}),G.call(s,v,d);var j="M"+(Y+z.TR[0])+","+(D+z.TR[1])+f(z.TR,z.BR)+f(z.BR,z.BL)+f(z.BL,z.TL)+"Z";V.attr("d",j),g(v,z,A);var W=n.castOption(C.textposition,z.pts),Z=G.selectAll("g.slicetext").data(z.text&&W!=="none"?[0]:[]);Z.enter().append("g").classed("slicetext",!0),Z.exit().remove(),Z.each(function(){var ie=i.ensureSingle(w.select(this),"text","",function(ce){ce.attr("data-notex",1)}),te=i.ensureUniformFontSize(v,u(C,z,T.font));ie.text(z.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(k.font,te).call(h.convertToTspans,v);var J,X,ee,re=k.bBox(ie.node()),oe=Math.min(z.BL[1],z.BR[1])+D,ue=Math.max(z.TL[1],z.TR[1])+D;X=Math.max(z.TL[0],z.BL[0])+Y,ee=Math.min(z.TR[0],z.BR[0])+Y,(J=l(X,ee,oe,ue,re,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"})).fontSize=te.size,o(C.type,J,T),d[B].transform=J,i.setTransormAndDisplay(ie,J)})}});var O=w.select(this).selectAll("g.titletext").data(C.title.text?[0]:[]);O.enter().append("g").classed("titletext",!0),O.exit().remove(),O.each(function(){var z=i.ensureSingle(w.select(this),"text","",function(D){D.attr("data-notex",1)}),B=C.title.text;C._meta&&(B=i.templateString(B,C._meta)),z.text(B).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(k.font,C.title.font).call(h.convertToTspans,v);var Y=b(A,T._size);z.attr("transform",y(Y.x,Y.y)+_(Math.min(1,Y.scale))+y(Y.tx,Y.ty))})})})}},71858:function(R,E,e){var w=e(39898),k=e(63463),i=e(72597).resizeText;R.exports=function(_){var y=_._fullLayout._funnelarealayer.selectAll(".trace");i(_,y,"funnelarea"),y.each(function(h){var l=h[0].trace,t=w.select(this);t.style({opacity:l.opacity}),t.selectAll("path.surface").each(function(o){w.select(this).call(k,o,l,_)})})}},21606:function(R,E,e){var w=e(82196),k=e(9012),i=e(41940),_=e(12663).axisHoverFormat,y=e(5386).fF,h=e(5386).si,l=e(50693),t=e(1426).extendFlat;R.exports=t({z:{valType:"data_array",editType:"calc"},x:t({},w.x,{impliedEdits:{xtype:"array"}}),x0:t({},w.x0,{impliedEdits:{xtype:"scaled"}}),dx:t({},w.dx,{impliedEdits:{xtype:"scaled"}}),y:t({},w.y,{impliedEdits:{ytype:"array"}}),y0:t({},w.y0,{impliedEdits:{ytype:"scaled"}}),dy:t({},w.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:t({},w.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:t({},w.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:t({},w.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:t({},w.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:t({},w.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:t({},w.yperiodalignment,{impliedEdits:{ytype:"scaled"}}),text:{valType:"data_array",editType:"calc"},hovertext:{valType:"data_array",editType:"calc"},transpose:{valType:"boolean",dflt:!1,editType:"calc"},xtype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},ytype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},zsmooth:{valType:"enumerated",values:["fast","best",!1],dflt:!1,editType:"calc"},hoverongaps:{valType:"boolean",dflt:!0,editType:"none"},connectgaps:{valType:"boolean",editType:"calc"},xgap:{valType:"number",dflt:0,min:0,editType:"plot"},ygap:{valType:"number",dflt:0,min:0,editType:"plot"},xhoverformat:_("x"),yhoverformat:_("y"),zhoverformat:_("z",1),hovertemplate:y(),texttemplate:h({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),textfont:i({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style"}),showlegend:t({},k.showlegend,{dflt:!1})},{transforms:void 0},l("",{cLetter:"z",autoColorDflt:!1}))},90757:function(R,E,e){var w=e(73972),k=e(71828),i=e(89298),_=e(42973),y=e(17562),h=e(78803),l=e(68296),t=e(4742),o=e(824),r=e(43907),n=e(70769),a=e(50606).BADNUM;function s(u){for(var p=[],c=u.length,b=0;b<c;b++){var g=u[b];g!==a&&p.push(g)}return p}R.exports=function(u,p){var c,b,g,f,v,m,x,T,d,M,A,C=i.getFromId(u,p.xaxis||"x"),P=i.getFromId(u,p.yaxis||"y"),O=w.traceIs(p,"contour"),z=w.traceIs(p,"histogram"),B=w.traceIs(p,"gl2d"),Y=O?"best":p.zsmooth;if(C._minDtick=0,P._minDtick=0,z)f=(A=y(u,p)).orig_x,c=A.x,b=A.x0,g=A.dx,T=A.orig_y,v=A.y,m=A.y0,x=A.dy,d=A.z;else{var D=p.z;k.isArray1D(D)?(l(p,C,P,"x","y",["z"]),c=p._x,v=p._y,D=p._z):(f=p.x?C.makeCalcdata(p,"x"):[],T=p.y?P.makeCalcdata(p,"y"):[],c=_(p,C,"x",f).vals,v=_(p,P,"y",T).vals,p._x=c,p._y=v),b=p.x0,g=p.dx,m=p.y0,x=p.dy,d=t(D,p,C,P)}function G(ee){Y=p._input.zsmooth=p.zsmooth=!1,k.warn('cannot use zsmooth: "fast": '+ee)}function V(ee){if(ee.length>1){var re=(ee[ee.length-1]-ee[0])/(ee.length-1),oe=Math.abs(re/100);for(M=0;M<ee.length-1;M++)if(Math.abs(ee[M+1]-ee[M]-re)>oe)return!1}return!0}(C.rangebreaks||P.rangebreaks)&&(d=function(ee,re,oe){for(var ue=[],ce=-1,de=0;de<oe.length;de++)if(re[de]!==a){ue[++ce]=[];for(var me=0;me<oe[de].length;me++)ee[me]!==a&&ue[ce].push(oe[de][me])}return ue}(c,v,d),z||(c=s(c),v=s(v),p._x=c,p._y=v)),z||!O&&!p.connectgaps||(p._emptypoints=r(d),o(d,p._emptypoints)),p._islinear=!1,C.type==="log"||P.type==="log"?Y==="fast"&&G("log axis found"):V(c)?V(v)?p._islinear=!0:Y==="fast"&&G("y scale is not linear"):Y==="fast"&&G("x scale is not linear");var j=k.maxRowLength(d),W=p.xtype==="scaled"?"":c,Z=n(p,W,b,g,j,C),ie=p.ytype==="scaled"?"":v,te=n(p,ie,m,x,d.length,P);B||(p._extremes[C._id]=i.findExtremes(C,Z),p._extremes[P._id]=i.findExtremes(P,te));var J={x:Z,y:te,z:d,text:p._text||p.text,hovertext:p._hovertext||p.hovertext};if(p.xperiodalignment&&f&&(J.orig_x=f),p.yperiodalignment&&T&&(J.orig_y=T),W&&W.length===Z.length-1&&(J.xCenter=W),ie&&ie.length===te.length-1&&(J.yCenter=ie),z&&(J.xRanges=A.xRanges,J.yRanges=A.yRanges,J.pts=A.pts),O||h(u,p,{vals:d,cLetter:"z"}),O&&p.contours&&p.contours.coloring==="heatmap"){var X={type:p.type==="contour"?"heatmap":"histogram2d",xcalendar:p.xcalendar,ycalendar:p.ycalendar};J.xfill=n(X,W,b,g,j,C),J.yfill=n(X,ie,m,x,d.length,P)}return[J]}},4742:function(R,E,e){var w=e(92770),k=e(71828),i=e(50606).BADNUM;R.exports=function(_,y,h,l){var t,o,r,n,a,s;function u(v){if(w(v))return+v}if(y&&y.transpose){for(t=0,a=0;a<_.length;a++)t=Math.max(t,_[a].length);if(t===0)return!1;r=function(v){return v.length},n=function(v,m,x){return(v[x]||[])[m]}}else t=_.length,r=function(v,m){return v[m].length},n=function(v,m,x){return(v[m]||[])[x]};var p=function(v,m,x){return m===i||x===i?i:n(v,m,x)};function c(v){if(y&&y.type!=="carpet"&&y.type!=="contourcarpet"&&v&&v.type==="category"&&y["_"+v._id.charAt(0)].length){var m=v._id.charAt(0),x={},T=y["_"+m+"CategoryMap"]||y[m];for(a=0;a<T.length;a++)x[T[a]]=a;return function(d){var M=x[v._categories[d]];return M+1?M:i}}return k.identity}var b=c(h),g=c(l);l&&l.type==="category"&&(t=l._categories.length);var f=new Array(t);for(a=0;a<t;a++)for(o=h&&h.type==="category"?h._categories.length:r(_,a),f[a]=new Array(o),s=0;s<o;s++)f[a][s]=u(p(_,g(a),b(s)));return f}},61243:function(R){R.exports={min:"zmin",max:"zmax"}},68296:function(R,E,e){var w=e(71828),k=e(50606).BADNUM,i=e(42973);R.exports=function(_,y,h,l,t,o){var r=_._length,n=y.makeCalcdata(_,l),a=h.makeCalcdata(_,t);n=i(_,y,l,n).vals,a=i(_,h,t,a).vals;var s,u,p,c,b=_.text,g=b!==void 0&&w.isArray1D(b),f=_.hovertext,v=f!==void 0&&w.isArray1D(f),m=w.distinctVals(n),x=m.vals,T=w.distinctVals(a),d=T.vals,M=[],A=d.length,C=x.length;for(s=0;s<o.length;s++)M[s]=w.init2dArray(A,C);g&&(p=w.init2dArray(A,C)),v&&(c=w.init2dArray(A,C));var P=w.init2dArray(A,C);for(s=0;s<r;s++)if(n[s]!==k&&a[s]!==k){var O=w.findBin(n[s]+m.minDiff/2,x),z=w.findBin(a[s]+T.minDiff/2,d);for(u=0;u<o.length;u++){var B=_[o[u]];M[u][z][O]=B[s],P[z][O]=s}g&&(p[z][O]=b[s]),v&&(c[z][O]=f[s])}for(_["_"+l]=x,_["_"+t]=d,u=0;u<o.length;u++)_["_"+o[u]]=M[u];g&&(_._text=p),v&&(_._hovertext=c),y&&y.type==="category"&&(_["_"+l+"CategoryMap"]=x.map(function(Y){return y._categories[Y]})),h&&h.type==="category"&&(_["_"+t+"CategoryMap"]=d.map(function(Y){return h._categories[Y]})),_._after2before=P}},76382:function(R,E,e){var w=e(71828),k=e(67684),i=e(58623),_=e(73927),y=e(49901),h=e(1586),l=e(21606);R.exports=function(t,o,r,n){function a(s,u){return w.coerce(t,o,l,s,u)}k(t,o,a,n)?(_(t,o,n,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hovertemplate"),i(a,n),y(t,o,a,n),a("hoverongaps"),a("connectgaps",w.isArray1D(o.z)&&o.zsmooth!==!1),h(t,o,n,a,{prefix:"",cLetter:"z"})):o.visible=!1}},43907:function(R,E,e){var w=e(71828).maxRowLength;R.exports=function(k){var i,_,y,h,l,t,o,r,n=[],a={},s=[],u=k[0],p=[],c=[0,0,0],b=w(k);for(_=0;_<k.length;_++)for(i=p,p=u,u=k[_+1]||[],y=0;y<b;y++)p[y]===void 0&&((t=(p[y-1]!==void 0?1:0)+(p[y+1]!==void 0?1:0)+(i[y]!==void 0?1:0)+(u[y]!==void 0?1:0))?(_===0&&t++,y===0&&t++,_===k.length-1&&t++,y===p.length-1&&t++,t<4&&(a[[_,y]]=[_,y,t]),n.push([_,y,t])):s.push([_,y]));for(;s.length;){for(o={},r=!1,l=s.length-1;l>=0;l--)(t=((a[[(_=(h=s[l])[0])-1,y=h[1]]]||c)[2]+(a[[_+1,y]]||c)[2]+(a[[_,y-1]]||c)[2]+(a[[_,y+1]]||c)[2])/20)&&(o[h]=[_,y,t],s.splice(l,1),r=!0);if(!r)throw"findEmpties iterated with no new neighbors";for(h in o)a[h]=o[h],n.push(o[h])}return n.sort(function(g,f){return f[2]-g[2]})}},46248:function(R,E,e){var w=e(30211),k=e(71828),i=e(89298),_=e(21081).extractOpts;R.exports=function(y,h,l,t,o){o||(o={});var r,n,a,s,u=o.isContour,p=y.cd[0],c=p.trace,b=y.xa,g=y.ya,f=p.x,v=p.y,m=p.z,x=p.xCenter,T=p.yCenter,d=p.zmask,M=c.zhoverformat,A=f,C=v;if(y.index!==!1){try{a=Math.round(y.index[1]),s=Math.round(y.index[0])}catch{return void k.error("Error hovering on heatmap, pointNumber must be [row,col], found:",y.index)}if(a<0||a>=m[0].length||s<0||s>m.length)return}else{if(w.inbox(h-f[0],h-f[f.length-1],0)>0||w.inbox(l-v[0],l-v[v.length-1],0)>0)return;if(u){var P;for(A=[2*f[0]-f[1]],P=1;P<f.length;P++)A.push((f[P]+f[P-1])/2);for(A.push([2*f[f.length-1]-f[f.length-2]]),C=[2*v[0]-v[1]],P=1;P<v.length;P++)C.push((v[P]+v[P-1])/2);C.push([2*v[v.length-1]-v[v.length-2]])}a=Math.max(0,Math.min(A.length-2,k.findBin(h,A))),s=Math.max(0,Math.min(C.length-2,k.findBin(l,C)))}var O,z,B=b.c2p(f[a]),Y=b.c2p(f[a+1]),D=g.c2p(v[s]),G=g.c2p(v[s+1]);u?(O=p.orig_x||f,z=p.orig_y||v,Y=B,r=O[a],G=D,n=z[s]):(O=p.orig_x||x||f,z=p.orig_y||T||v,r=x?O[a]:(O[a]+O[a+1])/2,n=T?z[s]:(z[s]+z[s+1])/2,b&&b.type==="category"&&(r=f[a]),g&&g.type==="category"&&(n=v[s]),c.zsmooth&&(B=Y=b.c2p(r),D=G=g.c2p(n)));var V=m[s][a];if(d&&!d[s][a]&&(V=void 0),V!==void 0||c.hoverongaps){var j;Array.isArray(p.hovertext)&&Array.isArray(p.hovertext[s])?j=p.hovertext[s][a]:Array.isArray(p.text)&&Array.isArray(p.text[s])&&(j=p.text[s][a]);var W=_(c),Z={type:"linear",range:[W.min,W.max],hoverformat:M,_separators:b._separators,_numFormat:b._numFormat},ie=i.tickText(Z,V,"hover").text;return[k.extendFlat(y,{index:c._after2before?c._after2before[s][a]:[s,a],distance:y.maxHoverDistance,spikeDistance:y.maxSpikeDistance,x0:B,x1:Y,y0:D,y1:G,xLabelVal:r,yLabelVal:n,zLabelVal:V,zLabel:ie,text:j})]}}},92165:function(R,E,e){R.exports={attributes:e(21606),supplyDefaults:e(76382),calc:e(90757),plot:e(50347),colorbar:e(61243),style:e(70035),hoverPoints:e(46248),moduleType:"trace",name:"heatmap",basePlotModule:e(93612),categories:["cartesian","svg","2dMap","showLegend"],meta:{}}},824:function(R,E,e){var w=e(71828),k=[[-1,0],[1,0],[0,-1],[0,1]];function i(y){return .5-.25*Math.min(1,.5*y)}function _(y,h,l){var t,o,r,n,a,s,u,p,c,b,g,f,v,m=0;for(n=0;n<h.length;n++){for(o=(t=h[n])[0],r=t[1],g=y[o][r],b=0,c=0,a=0;a<4;a++)(u=y[o+(s=k[a])[0]])&&(p=u[r+s[1]])!==void 0&&(b===0?f=v=p:(f=Math.min(f,p),v=Math.max(v,p)),c++,b+=p);if(c===0)throw"iterateInterp2d order is wrong: no defined neighbors";y[o][r]=b/c,g===void 0?c<4&&(m=1):(y[o][r]=(1+l)*y[o][r]-l*g,v>f&&(m=Math.max(m,Math.abs(y[o][r]-g)/(v-f))))}return m}R.exports=function(y,h){var l,t=1;for(_(y,h),l=0;l<h.length&&!(h[l][2]<4);l++);for(h=h.slice(l),l=0;l<100&&t>.01;l++)t=_(y,h,i(t));return t>.01&&w.log("interp2d didn't converge quickly",t),y}},58623:function(R,E,e){var w=e(71828);R.exports=function(k,i){k("texttemplate");var _=w.extendFlat({},i.font,{color:"auto",size:"auto"});w.coerceFont(k,"textfont",_)}},70769:function(R,E,e){var w=e(73972),k=e(71828).isArrayOrTypedArray;R.exports=function(i,_,y,h,l,t){var o,r,n,a=[],s=w.traceIs(i,"contour"),u=w.traceIs(i,"histogram"),p=w.traceIs(i,"gl2d");if(k(_)&&_.length>1&&!u&&t.type!=="category"){var c=_.length;if(!(c<=l))return s?_.slice(0,l):_.slice(0,l+1);if(s||p)a=_.slice(0,l);else if(l===1)a=[_[0]-.5,_[0]+.5];else{for(a=[1.5*_[0]-.5*_[1]],n=1;n<c;n++)a.push(.5*(_[n-1]+_[n]));a.push(1.5*_[c-1]-.5*_[c-2])}if(c<l){var b=a[a.length-1],g=b-a[a.length-2];for(n=c;n<l;n++)b+=g,a.push(b)}}else{var f=i[t._id.charAt(0)+"calendar"];for(o=u?t.r2c(y,0,f):k(_)&&_.length===1?_[0]:y===void 0?0:(t.type==="log"?t.d2c:t.r2c)(y,0,f),r=h||1,n=s||p?0:-.5;n<l;n++)a.push(o+r*n)}return a}},50347:function(R,E,e){var w=e(39898),k=e(84267),i=e(73972),_=e(91424),y=e(89298),h=e(71828),l=e(63893),t=e(8225),o=e(7901),r=e(21081).extractOpts,n=e(21081).makeColorScaleFuncFromTrace,a=e(77922),s=e(18783).LINE_SPACING,u=e(3883),p=e(32396).STYLE,c="heatmap-label";function b(x){return x.selectAll("g."+c)}function g(x){b(x).remove()}function f(x,T){var d=T.length-2,M=h.constrain(h.findBin(x,T),0,d),A=T[M],C=T[M+1],P=h.constrain(M+(x-A)/(C-A)-.5,0,d),O=Math.round(P),z=Math.abs(P-O);return P&&P!==d&&z?{bin0:O,frac:z,bin1:Math.round(O+z/(P-O))}:{bin0:O,bin1:O,frac:0}}function v(x,T){var d=T.length-1,M=h.constrain(h.findBin(x,T),0,d),A=T[M],C=(x-A)/(T[M+1]-A)||0;return C<=0?{bin0:M,bin1:M,frac:0}:C<.5?{bin0:M,bin1:M+1,frac:C}:{bin0:M+1,bin1:M,frac:1-C}}function m(x,T,d){x[T]=d[0],x[T+1]=d[1],x[T+2]=d[2],x[T+3]=Math.round(255*d[3])}R.exports=function(x,T,d,M){var A=T.xaxis,C=T.yaxis;h.makeTraceGroups(M,d,"hm").each(function(P){var O,z,B,Y,D,G,V,j,W=w.select(this),Z=P[0],ie=Z.trace,te=ie.xgap||0,J=ie.ygap||0,X=Z.z,ee=Z.x,re=Z.y,oe=Z.xCenter,ue=Z.yCenter,ce=i.traceIs(ie,"contour"),de=ce?"best":ie.zsmooth,me=X.length,_e=h.maxRowLength(X),Se=!1,we=!1;for(G=0;O===void 0&&G<ee.length-1;)O=A.c2p(ee[G]),G++;for(G=ee.length-1;z===void 0&&G>0;)z=A.c2p(ee[G]),G--;for(z<O&&(B=z,z=O,O=B,Se=!0),G=0;Y===void 0&&G<re.length-1;)Y=C.c2p(re[G]),G++;for(G=re.length-1;D===void 0&&G>0;)D=C.c2p(re[G]),G--;D<Y&&(B=Y,Y=D,D=B,we=!0),ce&&(oe=ee,ue=re,ee=Z.xfill,re=Z.yfill);var xe="default";if(de?xe=de==="best"?"smooth":"fast":ie._islinear&&te===0&&J===0&&u()&&(xe="fast"),xe!=="fast"){var De=de==="best"?0:.5;O=Math.max(-De*A._length,O),z=Math.min((1+De)*A._length,z),Y=Math.max(-De*C._length,Y),D=Math.min((1+De)*C._length,D)}var Ee,Me,he=Math.round(z-O),fe=Math.round(D-Y);if(O>=A._length||z<=0||Y>=C._length||D<=0)return W.selectAll("image").data([]).exit().remove(),void g(W);xe==="fast"?(Ee=_e,Me=me):(Ee=he,Me=fe);var ae=document.createElement("canvas");ae.width=Ee,ae.height=Me;var be,Ie,Te=ae.getContext("2d"),Ne=n(ie,{noNumericCheck:!0,returnArray:!0});xe==="fast"?(be=Se?function(Ht){return _e-1-Ht}:h.identity,Ie=we?function(Ht){return me-1-Ht}:h.identity):(be=function(Ht){return h.constrain(Math.round(A.c2p(ee[Ht])-O),0,he)},Ie=function(Ht){return h.constrain(Math.round(C.c2p(re[Ht])-Y),0,fe)});var qe,ve,Ce,Ae,ze=Ie(0),Ue=[ze,ze],Ve=Se?0:1,Ye=we?0:1,$e=0,rt=0,ht=0,nt=0;function bt(Ht,sn){if(Ht!==void 0){var gn=Ne(Ht);return gn[0]=Math.round(gn[0]),gn[1]=Math.round(gn[1]),gn[2]=Math.round(gn[2]),$e+=sn,rt+=gn[0]*sn,ht+=gn[1]*sn,nt+=gn[2]*sn,gn}return[0,0,0,0]}function wt(Ht,sn,gn,bn){var Cn=Ht[gn.bin0];if(Cn===void 0)return bt(void 0,1);var Yn,Nn=Ht[gn.bin1],jn=sn[gn.bin0],rr=sn[gn.bin1],Wt=Nn-Cn||0,An=jn-Cn||0;return Yn=Nn===void 0?rr===void 0?0:jn===void 0?2*(rr-Cn):2*(2*rr-jn-Cn)/3:rr===void 0?jn===void 0?0:2*(2*Cn-Nn-jn)/3:jn===void 0?2*(2*rr-Nn-Cn)/3:rr+Cn-Nn-jn,bt(Cn+gn.frac*Wt+bn.frac*(An+gn.frac*Yn))}if(xe!=="default"){var ut,lt=0;try{ut=new Uint8Array(Ee*Me*4)}catch{ut=new Array(Ee*Me*4)}if(xe==="smooth"){var Tt,Et,St,Ft=oe||ee,zt=ue||re,Je=new Array(Ft.length),et=new Array(zt.length),Ze=new Array(he),Qe=oe?v:f,st=ue?v:f;for(G=0;G<Ft.length;G++)Je[G]=Math.round(A.c2p(Ft[G])-O);for(G=0;G<zt.length;G++)et[G]=Math.round(C.c2p(zt[G])-Y);for(G=0;G<he;G++)Ze[G]=Qe(G,Je);for(V=0;V<fe;V++)for(Et=X[(Tt=st(V,et)).bin0],St=X[Tt.bin1],G=0;G<he;G++,lt+=4)m(ut,lt,Ae=wt(Et,St,Ze[G],Tt))}else for(V=0;V<me;V++)for(Ce=X[V],Ue=Ie(V),G=0;G<_e;G++)Ae=bt(Ce[G],1),m(ut,lt=4*(Ue*_e+be(G)),Ae);var ft=Te.createImageData(Ee,Me);try{ft.data.set(ut)}catch{var Be=ft.data,je=Be.length;for(V=0;V<je;V++)Be[V]=ut[V]}Te.putImageData(ft,0,0)}else{var at=Math.floor(te/2),ot=Math.floor(J/2);for(V=0;V<me;V++)if(Ce=X[V],Ue.reverse(),Ue[Ye]=Ie(V+1),Ue[0]!==Ue[1]&&Ue[0]!==void 0&&Ue[1]!==void 0)for(qe=[ve=be(0),ve],G=0;G<_e;G++)qe.reverse(),qe[Ve]=be(G+1),qe[0]!==qe[1]&&qe[0]!==void 0&&qe[1]!==void 0&&(Ae=bt(Ce[G],(qe[1]-qe[0])*(Ue[1]-Ue[0])),Te.fillStyle="rgba("+Ae.join(",")+")",Te.fillRect(qe[0]+at,Ue[0]+ot,qe[1]-qe[0]-te,Ue[1]-Ue[0]-J))}rt=Math.round(rt/$e),ht=Math.round(ht/$e),nt=Math.round(nt/$e);var xt=k("rgb("+rt+","+ht+","+nt+")");x._hmpixcount=(x._hmpixcount||0)+$e,x._hmlumcount=(x._hmlumcount||0)+$e*xt.getLuminance();var yt=W.selectAll("image").data(P);yt.enter().append("svg:image").attr({xmlns:a.svg,preserveAspectRatio:"none"}),yt.attr({height:fe,width:he,x:O,y:Y,"xlink:href":ae.toDataURL("image/png")}),xe!=="fast"||de||yt.attr("style",p),g(W);var _t=ie.texttemplate;if(_t){var gt=r(ie),Ct={type:"linear",range:[gt.min,gt.max],_separators:A._separators,_numFormat:A._numFormat},dt=ie.type==="histogram2dcontour",vt=ie.type==="contour",At=vt?me-1:me,Bt=vt?1:0,jt=vt?_e-1:_e,Ut=[];for(G=vt?1:0;G<At;G++){var tn;if(vt)tn=Z.y[G];else if(dt){if(G===0||G===me-1)continue;tn=Z.y[G]}else if(Z.yCenter)tn=Z.yCenter[G];else{if(G+1===me&&Z.y[G+1]===void 0)continue;tn=(Z.y[G]+Z.y[G+1])/2}var Xt=Math.round(C.c2p(tn));if(!(0>Xt||Xt>C._length))for(V=Bt;V<jt;V++){var Qt;if(vt)Qt=Z.x[V];else if(dt){if(V===0||V===_e-1)continue;Qt=Z.x[V]}else if(Z.xCenter)Qt=Z.xCenter[V];else{if(V+1===_e&&Z.x[V+1]===void 0)continue;Qt=(Z.x[V]+Z.x[V+1])/2}var Gt=Math.round(A.c2p(Qt));if(!(0>Gt||Gt>A._length)){var vn=t({x:Qt,y:tn},ie,x._fullLayout);vn.x=Qt,vn.y=tn;var Tn=Z.z[G][V];Tn===void 0?(vn.z="",vn.zLabel=""):(vn.z=Tn,vn.zLabel=y.tickText(Ct,Tn,"hover").text);var dn=Z.text&&Z.text[G]&&Z.text[G][V];dn!==void 0&&dn!==!1||(dn=""),vn.text=dn;var Yt=h.texttemplateString(_t,vn,x._fullLayout._d3locale,vn,ie._meta||{});if(Yt){var ln=Yt.split("<br>"),nn=ln.length,fn=0;for(j=0;j<nn;j++)fn=Math.max(fn,ln[j].length);Ut.push({l:nn,c:fn,t:Yt,x:Gt,y:Xt,z:Tn})}}}}var mn=ie.textfont,xn=mn.family,Pn=mn.size,Dn=x._fullLayout.font.size;if(!Pn||Pn==="auto"){var En=1/0,Fn=1/0,er=0,ir=0;for(j=0;j<Ut.length;j++){var fr=Ut[j];if(er=Math.max(er,fr.l),ir=Math.max(ir,fr.c),j<Ut.length-1){var ar=Ut[j+1],Kn=Math.abs(ar.x-fr.x),wr=Math.abs(ar.y-fr.y);Kn&&(En=Math.min(En,Kn)),wr&&(Fn=Math.min(Fn,wr))}}isFinite(En)&&isFinite(Fn)?(En-=te,Fn-=J,En/=ir,Fn/=er,En/=s/2,Fn/=s,Pn=Math.min(Math.floor(En),Math.floor(Fn),Dn)):Pn=Dn}if(Pn<=0||!isFinite(Pn))return;b(W).data(Ut).enter().append("g").classed(c,1).append("text").attr("text-anchor","middle").each(function(Ht){var sn=w.select(this),gn=mn.color;gn&&gn!=="auto"||(gn=o.contrast("rgba("+Ne(Ht.z).join()+")")),sn.attr("data-notex",1).call(l.positionText,function(bn){return bn.x}(Ht),function(bn){return bn.y-Pn*(bn.l*s/2-1)}(Ht)).call(_.font,xn,Pn,gn).text(Ht.t).call(l.convertToTspans,x)})}})}},70035:function(R,E,e){var w=e(39898);R.exports=function(k){w.select(k).selectAll(".hm image").style("opacity",function(i){return i.trace.opacity})}},49901:function(R){R.exports=function(E,e,w){w("zsmooth")===!1&&(w("xgap"),w("ygap")),w("zhoverformat")}},67684:function(R,E,e){var w=e(92770),k=e(71828),i=e(73972);function _(y,h){var l=h(y);return(l?h(y+"type","array"):"scaled")==="scaled"&&(h(y+"0"),h("d"+y)),l}R.exports=function(y,h,l,t,o,r){var n,a,s=l("z");if(o=o||"x",r=r||"y",s===void 0||!s.length)return 0;if(k.isArray1D(y.z)){n=l(o),a=l(r);var u=k.minRowLength(n),p=k.minRowLength(a);if(u===0||p===0)return 0;h._length=Math.min(u,p,s.length)}else{if(n=_(o,l),a=_(r,l),!function(c){for(var b,g=!0,f=!1,v=!1,m=0;m<c.length;m++){if(b=c[m],!k.isArrayOrTypedArray(b)){g=!1;break}b.length>0&&(f=!0);for(var x=0;x<b.length;x++)if(w(b[x])){v=!0;break}}return g&&f&&v}(s))return 0;l("transpose"),h._length=null}return y.type==="heatmapgl"||i.getComponentMethod("calendars","handleTraceDefaults")(y,h,[o,r],t),!0}},16063:function(R,E,e){for(var w=e(21606),k=e(50693),i=e(1426).extendFlat,_=e(30962).overrideAll,y=["z","x","x0","dx","y","y0","dy","text","transpose","xtype","ytype"],h={},l=0;l<y.length;l++){var t=y[l];h[t]=w[t]}h.zsmooth={valType:"enumerated",values:["fast",!1],dflt:"fast",editType:"calc"},i(h,k("",{cLetter:"z",autoColorDflt:!1})),R.exports=_(h,"calc","nested")},59560:function(R,E,e){var w=e(9330).gl_heatmap2d,k=e(89298),i=e(78614);function _(h,l){this.scene=h,this.uid=l,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=w(h.glplot,this.options),this.heatmap._trace=this}var y=_.prototype;y.handlePick=function(h){var l=this.options,t=l.shape,o=h.pointId,r=o%t[0],n=Math.floor(o/t[0]),a=o;return{trace:this,dataCoord:h.dataCoord,traceCoord:[l.x[r],l.y[n],l.z[a]],textLabel:this.textLabels[o],name:this.name,pointIndex:[n,r],hoverinfo:this.hoverinfo}},y.update=function(h,l){var t=l[0];this.index=h.index,this.name=h.name,this.hoverinfo=h.hoverinfo;var o=t.z;this.options.z=[].concat.apply([],o);var r=o[0].length,n=o.length;this.options.shape=[r,n],this.options.x=t.x,this.options.y=t.y,this.options.zsmooth=h.zsmooth;var a=function(b){for(var g=b.colorscale,f=b.zmin,v=b.zmax,m=g.length,x=new Array(m),T=new Array(4*m),d=0;d<m;d++){var M=g[d],A=i(M[1]);x[d]=f+M[0]*(v-f);for(var C=0;C<4;C++)T[4*d+C]=A[C]}return{colorLevels:x,colorValues:T}}(h);this.options.colorLevels=a.colorLevels,this.options.colorValues=a.colorValues,this.textLabels=[].concat.apply([],h.text),this.heatmap.update(this.options);var s,u,p=this.scene.xaxis,c=this.scene.yaxis;h.zsmooth===!1&&(s={ppad:t.x[1]-t.x[0]},u={ppad:t.y[1]-t.y[0]}),h._extremes[p._id]=k.findExtremes(p,t.x,s),h._extremes[c._id]=k.findExtremes(c,t.y,u)},y.dispose=function(){this.heatmap.dispose()},R.exports=function(h,l,t){var o=new _(h,l.uid);return o.update(l,t),o}},19600:function(R,E,e){var w=e(71828),k=e(67684),i=e(1586),_=e(16063);R.exports=function(y,h,l,t){function o(r,n){return w.coerce(y,h,_,r,n)}k(y,h,o,t)?(o("text"),o("zsmooth"),i(y,h,t,o,{prefix:"",cLetter:"z"})):h.visible=!1}},3325:function(R,E,e){R.exports={attributes:e(16063),supplyDefaults:e(19600),colorbar:e(61243),calc:e(90757),plot:e(59560),moduleType:"trace",name:"heatmapgl",basePlotModule:e(4796),categories:["gl","gl2d","2dMap"],meta:{}}},7745:function(R,E,e){var w=e(1486),k=e(12663).axisHoverFormat,i=e(5386).fF,_=e(5386).si,y=e(41940),h=e(17656),l=e(72406),t=e(1426).extendFlat;R.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},xhoverformat:k("x"),yhoverformat:k("y"),text:t({},w.text,{}),hovertext:t({},w.hovertext,{}),orientation:w.orientation,histfunc:{valType:"enumerated",values:["count","sum","avg","min","max"],dflt:"count",editType:"calc"},histnorm:{valType:"enumerated",values:["","percent","probability","density","probability density"],dflt:"",editType:"calc"},cumulative:{enabled:{valType:"boolean",dflt:!1,editType:"calc"},direction:{valType:"enumerated",values:["increasing","decreasing"],dflt:"increasing",editType:"calc"},currentbin:{valType:"enumerated",values:["include","exclude","half"],dflt:"include",editType:"calc"},editType:"calc"},nbinsx:{valType:"integer",min:0,dflt:0,editType:"calc"},xbins:h("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:h("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc"},autobiny:{valType:"boolean",dflt:null,editType:"calc"},bingroup:{valType:"string",dflt:"",editType:"calc"},hovertemplate:i({},{keys:l.eventDataKeys}),texttemplate:_({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),textposition:t({},w.textposition,{arrayOk:!1}),textfont:y({arrayOk:!1,editType:"plot",colorEditType:"style"}),outsidetextfont:y({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextfont:y({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextanchor:w.insidetextanchor,textangle:w.textangle,cliponaxis:w.cliponaxis,constraintext:w.constraintext,marker:w.marker,offsetgroup:w.offsetgroup,alignmentgroup:w.alignmentgroup,selected:w.selected,unselected:w.unselected,_deprecated:{bardir:w._deprecated.bardir}}},42174:function(R){R.exports=function(E,e){for(var w=E.length,k=0,i=0;i<w;i++)e[i]?(E[i]/=e[i],k+=E[i]):E[i]=null;return k}},17656:function(R){R.exports=function(E,e){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}},59575:function(R,E,e){var w=e(92770);R.exports={count:function(k,i,_){return _[k]++,1},sum:function(k,i,_,y){var h=y[i];return w(h)?(h=Number(h),_[k]+=h,h):0},avg:function(k,i,_,y,h){var l=y[i];return w(l)&&(l=Number(l),_[k]+=l,h[k]++),0},min:function(k,i,_,y){var h=y[i];if(w(h)){if(h=Number(h),!w(_[k]))return _[k]=h,h;if(_[k]>h){var l=h-_[k];return _[k]=h,l}}return 0},max:function(k,i,_,y){var h=y[i];if(w(h)){if(h=Number(h),!w(_[k]))return _[k]=h,h;if(_[k]<h){var l=h-_[k];return _[k]=h,l}}return 0}}},40965:function(R,E,e){var w=e(50606),k=w.ONEAVGYEAR,i=w.ONEAVGMONTH,_=w.ONEDAY,y=w.ONEHOUR,h=w.ONEMIN,l=w.ONESEC,t=e(89298).tickIncrement;function o(s,u,p,c){if(s*u<=0)return 1/0;for(var b=Math.abs(u-s),g=p.type==="date",f=r(b,g),v=0;v<10;v++){var m=r(80*f,g);if(f===m||!n(m,s,u,g,p,c))break;f=m}return f}function r(s,u){return u&&s>l?s>_?s>1.1*k?k:s>1.1*i?i:_:s>y?y:s>h?h:l:Math.pow(10,Math.floor(Math.log(s)/Math.LN10))}function n(s,u,p,c,b,g){if(c&&s>_){var f=a(u,b,g),v=a(p,b,g),m=s===k?0:1;return f[m]!==v[m]}return Math.floor(p/s)-Math.floor(u/s)>.1}function a(s,u,p){var c=u.c2d(s,k,p).split("-");return c[0]===""&&(c.unshift(),c[0]="-"+c[0]),c}R.exports=function(s,u,p,c,b){var g,f,v=-1.1*u,m=-.1*u,x=s-m,T=p[0],d=p[1],M=Math.min(o(T+m,T+x,c,b),o(d+m,d+x,c,b)),A=Math.min(o(T+v,T+m,c,b),o(d+v,d+m,c,b));if(M>A&&A<Math.abs(d-T)/4e3?(g=M,f=!1):(g=Math.min(M,A),f=!0),c.type==="date"&&g>_){var C=g===k?1:6,P=g===k?"M12":"M1";return function(O,z){var B=c.c2d(O,k,b),Y=B.indexOf("-",C);Y>0&&(B=B.substr(0,Y));var D=c.d2c(B,0,b);if(D<O){var G=t(D,P,!1,b);(D+G)/2<O+s&&(D=G)}return z&&f?t(D,P,!0,b):D}}return function(O,z){var B=g*Math.round(O/g);return B+g/10<O&&B+.9*g<O+s&&(B+=g),z&&f&&(B-=g),B}}},72138:function(R,E,e){var w=e(92770),k=e(71828),i=e(73972),_=e(89298),y=e(75341),h=e(59575),l=e(36362),t=e(42174),o=e(40965);function r(n,a,s,u,p){var c,b,g,f,v,m,x,T=u+"bins",d=n._fullLayout,M=a["_"+u+"bingroup"],A=d._histogramBinOpts[M],C=d.barmode==="overlay",P=function(we){return s.r2c(we,0,f)},O=function(we){return s.c2r(we,0,f)},z=s.type==="date"?function(we){return we||we===0?k.cleanDate(we,null,f):null}:function(we){return w(we)?Number(we):null};function B(we,xe,De){xe[we+"Found"]?(xe[we]=z(xe[we]),xe[we]===null&&(xe[we]=De[we])):(m[we]=xe[we]=De[we],k.nestedProperty(b[0],T+"."+we).set(De[we]))}if(a["_"+u+"autoBinFinished"])delete a["_"+u+"autoBinFinished"];else{b=A.traces;var Y=[],D=!0,G=!1,V=!1;for(c=0;c<b.length;c++)if((g=b[c]).visible){var j=A.dirs[c];v=g["_"+j+"pos0"]=s.makeCalcdata(g,j),Y=k.concat(Y,v),delete g["_"+u+"autoBinFinished"],a.visible===!0&&(D?D=!1:(delete g._autoBin,g["_"+u+"autoBinFinished"]=1),i.traceIs(g,"2dMap")&&(G=!0),g.type==="histogram2dcontour"&&(V=!0))}f=b[0][u+"calendar"];var W=_.autoBin(Y,s,A.nbins,G,f,A.sizeFound&&A.size),Z=b[0]._autoBin={};if(m=Z[A.dirs[0]]={},V&&(A.size||(W.start=O(_.tickIncrement(P(W.start),W.size,!0,f))),A.end===void 0&&(W.end=O(_.tickIncrement(P(W.end),W.size,!1,f)))),C&&!i.traceIs(a,"2dMap")&&W._dataSpan===0&&s.type!=="category"&&s.type!=="multicategory"){if(p)return[W,v,!0];W=function(we,xe,De,Ee,Me){var he,fe,ae,be=we._fullLayout,Ie=function(rt,ht){for(var nt=ht.xaxis,bt=ht.yaxis,wt=ht.orientation,ut=[],lt=rt._fullData,Tt=0;Tt<lt.length;Tt++){var Et=lt[Tt];Et.type==="histogram"&&Et.visible===!0&&Et.orientation===wt&&Et.xaxis===nt&&Et.yaxis===bt&&ut.push(Et)}return ut}(we,xe),Te=!1,Ne=1/0,qe=[xe];for(he=0;he<Ie.length;he++)if((fe=Ie[he])===xe)Te=!0;else if(Te){var ve=r(we,fe,De,Ee,!0),Ce=ve[0],Ae=ve[2];fe["_"+Ee+"autoBinFinished"]=1,fe["_"+Ee+"pos0"]=ve[1],Ae?qe.push(fe):Ne=Math.min(Ne,Ce.size)}else ae=be._histogramBinOpts[fe["_"+Ee+"bingroup"]],Ne=Math.min(Ne,ae.size||fe[Me].size);var ze=new Array(qe.length);for(he=0;he<qe.length;he++)for(var Ue=qe[he]["_"+Ee+"pos0"],Ve=0;Ve<Ue.length;Ve++)if(Ue[Ve]!==void 0){ze[he]=Ue[Ve];break}for(isFinite(Ne)||(Ne=k.distinctVals(ze).minDiff),he=0;he<qe.length;he++){var Ye=(fe=qe[he])[Ee+"calendar"],$e={start:De.c2r(ze[he]-Ne/2,0,Ye),end:De.c2r(ze[he]+Ne/2,0,Ye),size:Ne};fe._input[Me]=fe[Me]=$e,(ae=be._histogramBinOpts[fe["_"+Ee+"bingroup"]])&&k.extendFlat(ae,$e)}return xe[Me]}(n,a,s,u,T)}(x=g.cumulative||{}).enabled&&x.currentbin!=="include"&&(x.direction==="decreasing"?W.start=O(_.tickIncrement(P(W.start),W.size,!0,f)):W.end=O(_.tickIncrement(P(W.end),W.size,!1,f))),A.size=W.size,A.sizeFound||(m.size=W.size,k.nestedProperty(b[0],T+".size").set(W.size)),B("start",A,W),B("end",A,W)}v=a["_"+u+"pos0"],delete a["_"+u+"pos0"];var ie=a._input[T]||{},te=k.extendFlat({},A),J=A.start,X=s.r2l(ie.start),ee=X!==void 0;if((A.startFound||ee)&&X!==s.r2l(J)){var re=ee?X:k.aggNums(Math.min,null,v),oe={type:s.type==="category"||s.type==="multicategory"?"linear":s.type,r2l:s.r2l,dtick:A.size,tick0:J,calendar:f,range:[re,_.tickIncrement(re,A.size,!1,f)].map(s.l2r)},ue=_.tickFirst(oe);ue>s.r2l(re)&&(ue=_.tickIncrement(ue,A.size,!0,f)),te.start=s.l2r(ue),ee||k.nestedProperty(a,T+".start").set(te.start)}var ce=A.end,de=s.r2l(ie.end),me=de!==void 0;if((A.endFound||me)&&de!==s.r2l(ce)){var _e=me?de:k.aggNums(Math.max,null,v);te.end=s.l2r(_e),me||k.nestedProperty(a,T+".start").set(te.end)}var Se="autobin"+u;return a._input[Se]===!1&&(a._input[T]=k.extendFlat({},a[T]||{}),delete a._input[Se],delete a[Se]),[te,v]}R.exports={calc:function(n,a){var s,u,p,c,b=[],g=[],f=a.orientation==="h",v=_.getFromId(n,f?a.yaxis:a.xaxis),m=f?"y":"x",x={x:"y",y:"x"}[m],T=a[m+"calendar"],d=a.cumulative,M=r(n,a,v,m),A=M[0],C=M[1],P=typeof A.size=="string",O=[],z=P?O:A,B=[],Y=[],D=[],G=0,V=a.histnorm,j=a.histfunc,W=V.indexOf("density")!==-1;d.enabled&&W&&(V=V.replace(/ ?density$/,""),W=!1);var Z,ie=j==="max"||j==="min"?null:0,te=h.count,J=l[V],X=!1,ee=function(fe){return v.r2c(fe,0,T)};for(k.isArrayOrTypedArray(a[x])&&j!=="count"&&(Z=a[x],X=j==="avg",te=h[j]),s=ee(A.start),p=ee(A.end)+(s-_.tickIncrement(s,A.size,!1,T))/1e6;s<p&&b.length<1e6&&(u=_.tickIncrement(s,A.size,!1,T),b.push((s+u)/2),g.push(ie),D.push([]),O.push(s),W&&B.push(1/(u-s)),X&&Y.push(0),!(u<=s));)s=u;O.push(s),P||v.type!=="date"||(z={start:ee(z.start),end:ee(z.end),size:z.size}),n._fullLayout._roundFnOpts||(n._fullLayout._roundFnOpts={});var re=a["_"+m+"bingroup"],oe={leftGap:1/0,rightGap:1/0};re&&(n._fullLayout._roundFnOpts[re]||(n._fullLayout._roundFnOpts[re]=oe),oe=n._fullLayout._roundFnOpts[re]);var ue,ce=g.length,de=!0,me=oe.leftGap,_e=oe.rightGap,Se={};for(s=0;s<C.length;s++){var we=C[s];(c=k.findBin(we,z))>=0&&c<ce&&(G+=te(c,s,g,Z,Y),de&&D[c].length&&we!==C[D[c][0]]&&(de=!1),D[c].push(s),Se[s]=c,me=Math.min(me,we-O[c]),_e=Math.min(_e,O[c+1]-we))}oe.leftGap=me,oe.rightGap=_e,de||(ue=function(fe,ae){return function(){var be=n._fullLayout._roundFnOpts[re];return o(be.leftGap,be.rightGap,O,v,T)(fe,ae)}}),X&&(G=t(g,Y)),J&&J(g,G,B),d.enabled&&function(fe,ae,be){var Ie,Te,Ne;function qe(Ce){Ne=fe[Ce],fe[Ce]/=2}function ve(Ce){Te=fe[Ce],fe[Ce]=Ne+Te/2,Ne+=Te}if(be==="half")if(ae==="increasing")for(qe(0),Ie=1;Ie<fe.length;Ie++)ve(Ie);else for(qe(fe.length-1),Ie=fe.length-2;Ie>=0;Ie--)ve(Ie);else if(ae==="increasing"){for(Ie=1;Ie<fe.length;Ie++)fe[Ie]+=fe[Ie-1];be==="exclude"&&(fe.unshift(0),fe.pop())}else{for(Ie=fe.length-2;Ie>=0;Ie--)fe[Ie]+=fe[Ie+1];be==="exclude"&&(fe.push(0),fe.shift())}}(g,d.direction,d.currentbin);var xe=Math.min(b.length,g.length),De=[],Ee=0,Me=xe-1;for(s=0;s<xe;s++)if(g[s]){Ee=s;break}for(s=xe-1;s>=Ee;s--)if(g[s]){Me=s;break}for(s=Ee;s<=Me;s++)if(w(b[s])&&w(g[s])){var he={p:b[s],s:g[s],b:0};d.enabled||(he.pts=D[s],de?he.ph0=he.ph1=D[s].length?C[D[s][0]]:b[s]:(a._computePh=!0,he.ph0=ue(O[s]),he.ph1=ue(O[s+1],!0))),De.push(he)}return De.length===1&&(De[0].width1=_.tickIncrement(De[0].p,A.size,!1,T)-De[0].p),y(De,a),k.isArrayOrTypedArray(a.selectedpoints)&&k.tagSelected(De,a,Se),De},calcAllAutoBins:r}},72406:function(R){R.exports={eventDataKeys:["binNumber"]}},82222:function(R,E,e){var w=e(71828),k=e(41675),i=e(73972).traceIs,_=e(26125),y=w.nestedProperty,h=e(99082).getAxisGroup,l=[{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"}],t=["x","y"];R.exports=function(o,r){var n,a,s,u,p,c,b,g=r._histogramBinOpts={},f=[],v={},m=[];function x(W,Z){return w.coerce(n._input,n,n._module.attributes,W,Z)}function T(W){return W.orientation==="v"?"x":"y"}function d(W,Z,ie){var te=W.uid+"__"+ie;Z||(Z=te);var J=function(oe,ue){return k.getFromTrace({_fullLayout:r},oe,ue).type}(W,ie),X=W[ie+"calendar"]||"",ee=g[Z],re=!0;ee&&(J===ee.axType&&X===ee.calendar?(re=!1,ee.traces.push(W),ee.dirs.push(ie)):(Z=te,J!==ee.axType&&w.warn(["Attempted to group the bins of trace",W.index,"set on a","type:"+J,"axis","with bins on","type:"+ee.axType,"axis."].join(" ")),X!==ee.calendar&&w.warn(["Attempted to group the bins of trace",W.index,"set with a",X,"calendar","with bins",ee.calendar?"on a "+ee.calendar+" calendar":"w/o a set calendar"].join(" ")))),re&&(g[Z]={traces:[W],dirs:[ie],axType:J,calendar:W[ie+"calendar"]||""}),W["_"+ie+"bingroup"]=Z}for(p=0;p<o.length;p++)n=o[p],i(n,"histogram")&&(f.push(n),delete n._xautoBinFinished,delete n._yautoBinFinished,i(n,"2dMap")||_(n._input,n,r,x));var M=r._alignmentOpts||{};for(p=0;p<f.length;p++){if(n=f[p],s="",!i(n,"2dMap")){if(u=T(n),r.barmode==="group"&&n.alignmentgroup){var A=n[u+"axis"],C=h(r,A)+n.orientation;(M[C]||{})[n.alignmentgroup]&&(s=C)}s||r.barmode==="overlay"||(s=h(r,n.xaxis)+h(r,n.yaxis)+T(n))}s?(v[s]||(v[s]=[]),v[s].push(n)):m.push(n)}for(s in v)if((a=v[s]).length!==1){var P=!1;for(a.length&&(n=a[0],P=x("bingroup")),s=P||s,p=0;p<a.length;p++){var O=(n=a[p])._input.bingroup;O&&O!==s&&w.warn(["Trace",n.index,"must match","within bingroup",s+".","Ignoring its bingroup:",O,"setting."].join(" ")),n.bingroup=s,d(n,s,T(n))}}else m.push(a[0]);for(p=0;p<m.length;p++){n=m[p];var z=x("bingroup");if(i(n,"2dMap"))for(b=0;b<2;b++){var B=x((u=t[b])+"bingroup",z?z+"__"+u:null);d(n,B,u)}else d(n,z,T(n))}for(s in g){var Y=g[s];for(a=Y.traces,c=0;c<l.length;c++){var D,G,V=l[c],j=V.name;if(j!=="nbins"||!Y.sizeFound){for(p=0;p<a.length;p++){if(n=a[p],u=Y.dirs[p],D=V.aStr[u],y(n._input,D).get()!==void 0){Y[j]=x(D),Y[j+"Found"]=!0;break}(G=(n._autoBin||{})[u]||{})[j]&&y(n,D).set(G[j])}if(j==="start"||j==="end")for(;p<a.length;p++)(n=a[p])["_"+u+"bingroup"]&&x(D,(G=(n._autoBin||{})[u]||{})[j]);j!=="nbins"||Y.sizeFound||Y.nbinsFound||(n=a[0],Y[j]=x(D))}}}}},11385:function(R,E,e){var w=e(73972),k=e(71828),i=e(7901),_=e(90769).handleText,y=e(98340),h=e(7745);R.exports=function(l,t,o,r){function n(m,x){return k.coerce(l,t,h,m,x)}var a=n("x"),s=n("y");n("cumulative.enabled")&&(n("cumulative.direction"),n("cumulative.currentbin")),n("text");var u=n("textposition");_(l,t,r,n,u,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),n("hovertext"),n("hovertemplate"),n("xhoverformat"),n("yhoverformat");var p=n("orientation",s&&!a?"h":"v"),c=p==="v"?"x":"y",b=p==="v"?"y":"x",g=a&&s?Math.min(k.minRowLength(a)&&k.minRowLength(s)):k.minRowLength(t[c]||[]);if(g){t._length=g,w.getComponentMethod("calendars","handleTraceDefaults")(l,t,["x","y"],r),t[b]&&n("histfunc"),n("histnorm"),n("autobin"+c),y(l,t,n,o,r),k.coerceSelectionMarkerOpacity(t,n);var f=(t.marker.line||{}).color,v=w.getComponentMethod("errorbars","supplyDefaults");v(l,t,f||i.defaultLine,{axis:"y"}),v(l,t,f||i.defaultLine,{axis:"x",inherit:"y"})}else t.visible=!1}},84402:function(R){R.exports=function(E,e,w,k,i){if(E.x="xVal"in e?e.xVal:e.x,E.y="yVal"in e?e.yVal:e.y,"zLabelVal"in e&&(E.z=e.zLabelVal),e.xa&&(E.xaxis=e.xa),e.ya&&(E.yaxis=e.ya),!(w.cumulative||{}).enabled){var _,y=Array.isArray(i)?k[0].pts[i[0]][i[1]]:k[i].pts;if(E.pointNumbers=y,E.binNumber=E.pointNumber,delete E.pointNumber,delete E.pointIndex,w._indexToPoints){_=[];for(var h=0;h<y.length;h++)_=_.concat(w._indexToPoints[y[h]])}else _=y;E.pointIndices=_}return E}},76440:function(R,E,e){var w=e(95423).hoverPoints,k=e(89298).hoverLabelText;R.exports=function(i,_,y,h,l){var t=w(i,_,y,h,l);if(t){var o=(i=t[0]).cd[i.index],r=i.cd[0].trace;if(!r.cumulative.enabled){var n=r.orientation==="h"?"y":"x";i[n+"Label"]=k(i[n+"a"],[o.ph0,o.ph1],r[n+"hoverformat"])}return t}}},36071:function(R,E,e){R.exports={attributes:e(7745),layoutAttributes:e(43641),supplyDefaults:e(11385),crossTraceDefaults:e(82222),supplyLayoutDefaults:e(13957),calc:e(72138).calc,crossTraceCalc:e(11661).crossTraceCalc,plot:e(17295).plot,layerName:"barlayer",style:e(16688).style,styleOnSelect:e(16688).styleOnSelect,colorbar:e(4898),hoverPoints:e(76440),selectPoints:e(81974),eventData:e(84402),moduleType:"trace",name:"histogram",basePlotModule:e(93612),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}},36362:function(R){R.exports={percent:function(E,e){for(var w=E.length,k=100/e,i=0;i<w;i++)E[i]*=k},probability:function(E,e){for(var w=E.length,k=0;k<w;k++)E[k]/=e},density:function(E,e,w,k){var i=E.length;k=k||1;for(var _=0;_<i;_++)E[_]*=w[_]*k},"probability density":function(E,e,w,k){var i=E.length;k&&(e/=k);for(var _=0;_<i;_++)E[_]*=w[_]/e}}},35361:function(R,E,e){var w=e(7745),k=e(17656),i=e(21606),_=e(9012),y=e(12663).axisHoverFormat,h=e(5386).fF,l=e(5386).si,t=e(50693),o=e(1426).extendFlat;R.exports=o({x:w.x,y:w.y,z:{valType:"data_array",editType:"calc"},marker:{color:{valType:"data_array",editType:"calc"},editType:"calc"},histnorm:w.histnorm,histfunc:w.histfunc,nbinsx:w.nbinsx,xbins:k("x"),nbinsy:w.nbinsy,ybins:k("y"),autobinx:w.autobinx,autobiny:w.autobiny,bingroup:o({},w.bingroup,{}),xbingroup:o({},w.bingroup,{}),ybingroup:o({},w.bingroup,{}),xgap:i.xgap,ygap:i.ygap,zsmooth:i.zsmooth,xhoverformat:y("x"),yhoverformat:y("y"),zhoverformat:y("z",1),hovertemplate:h({},{keys:"z"}),texttemplate:l({arrayOk:!1,editType:"plot"},{keys:"z"}),textfont:i.textfont,showlegend:o({},_.showlegend,{dflt:!1})},t("",{cLetter:"z",autoColorDflt:!1}))},17562:function(R,E,e){var w=e(71828),k=e(89298),i=e(59575),_=e(36362),y=e(42174),h=e(40965),l=e(72138).calcAllAutoBins;function t(n,a,s,u){var p,c=new Array(n);if(u)for(p=0;p<n;p++)c[p]=1/(a[p+1]-a[p]);else{var b=1/s;for(p=0;p<n;p++)c[p]=b}return c}function o(n,a){return{start:n(a.start),end:n(a.end),size:a.size}}function r(n,a,s,u,p,c){var b,g=n.length-1,f=new Array(g),v=h(s,u,n,p,c);for(b=0;b<g;b++){var m=(a||[])[b];f[b]=m===void 0?[v(n[b]),v(n[b+1],!0)]:[m,m]}return f}R.exports=function(n,a){var s,u,p,c,b=k.getFromId(n,a.xaxis),g=k.getFromId(n,a.yaxis),f=a.xcalendar,v=a.ycalendar,m=function(bt){return b.r2c(bt,0,f)},x=function(bt){return g.r2c(bt,0,v)},T=l(n,a,b,"x"),d=T[0],M=T[1],A=l(n,a,g,"y"),C=A[0],P=A[1],O=a._length;M.length>O&&M.splice(O,M.length-O),P.length>O&&P.splice(O,P.length-O);var z=[],B=[],Y=[],D=typeof d.size=="string",G=typeof C.size=="string",V=[],j=[],W=D?V:d,Z=G?j:C,ie=0,te=[],J=[],X=a.histnorm,ee=a.histfunc,re=X.indexOf("density")!==-1,oe=ee==="max"||ee==="min"?null:0,ue=i.count,ce=_[X],de=!1,me=[],_e=[],Se="z"in a?a.z:"marker"in a&&Array.isArray(a.marker.color)?a.marker.color:"";Se&&ee!=="count"&&(de=ee==="avg",ue=i[ee]);var we=d.size,xe=m(d.start),De=m(d.end)+(xe-k.tickIncrement(xe,we,!1,f))/1e6;for(s=xe;s<De;s=k.tickIncrement(s,we,!1,f))B.push(oe),V.push(s),de&&Y.push(0);V.push(s);var Ee,Me=B.length,he=(s-xe)/Me,fe=(Ee=xe+he/2,b.c2r(Ee,0,f)),ae=C.size,be=x(C.start),Ie=x(C.end)+(be-k.tickIncrement(be,ae,!1,v))/1e6;for(s=be;s<Ie;s=k.tickIncrement(s,ae,!1,v)){z.push(B.slice()),j.push(s);var Te=new Array(Me);for(u=0;u<Me;u++)Te[u]=[];J.push(Te),de&&te.push(Y.slice())}j.push(s);var Ne=z.length,qe=(s-be)/Ne,ve=function(bt){return g.c2r(bt,0,v)}(be+qe/2);re&&(me=t(B.length,W,he,D),_e=t(z.length,Z,qe,G)),D||b.type!=="date"||(W=o(m,W)),G||g.type!=="date"||(Z=o(x,Z));var Ce=!0,Ae=!0,ze=new Array(Me),Ue=new Array(Ne),Ve=1/0,Ye=1/0,$e=1/0,rt=1/0;for(s=0;s<O;s++){var ht=M[s],nt=P[s];p=w.findBin(ht,W),c=w.findBin(nt,Z),p>=0&&p<Me&&c>=0&&c<Ne&&(ie+=ue(p,s,z[c],Se,te[c]),J[c][p].push(s),Ce&&(ze[p]===void 0?ze[p]=ht:ze[p]!==ht&&(Ce=!1)),Ae&&(Ue[c]===void 0?Ue[c]=nt:Ue[c]!==nt&&(Ae=!1)),Ve=Math.min(Ve,ht-V[p]),Ye=Math.min(Ye,V[p+1]-ht),$e=Math.min($e,nt-j[c]),rt=Math.min(rt,j[c+1]-nt))}if(de)for(c=0;c<Ne;c++)ie+=y(z[c],te[c]);if(ce)for(c=0;c<Ne;c++)ce(z[c],ie,me,_e[c]);return{x:M,xRanges:r(V,Ce&&ze,Ve,Ye,b,f),x0:fe,dx:he,y:P,yRanges:r(j,Ae&&Ue,$e,rt,g,v),y0:ve,dy:qe,z,pts:J}}},93888:function(R,E,e){var w=e(71828),k=e(75238),i=e(49901),_=e(1586),y=e(58623),h=e(35361);R.exports=function(l,t,o,r){function n(a,s){return w.coerce(l,t,h,a,s)}k(l,t,n,r),t.visible!==!1&&(i(l,t,n,r),_(l,t,r,n,{prefix:"",cLetter:"z"}),n("hovertemplate"),y(n,r),n("xhoverformat"),n("yhoverformat"))}},76128:function(R,E,e){var w=e(46248),k=e(89298).hoverLabelText;R.exports=function(i,_,y,h,l){var t=w(i,_,y,h,l);if(t){var o=(i=t[0]).index,r=o[0],n=o[1],a=i.cd[0],s=a.trace,u=a.xRanges[n],p=a.yRanges[r];return i.xLabel=k(i.xa,[u[0],u[1]],s.xhoverformat),i.yLabel=k(i.ya,[p[0],p[1]],s.yhoverformat),t}}},43905:function(R,E,e){R.exports={attributes:e(35361),supplyDefaults:e(93888),crossTraceDefaults:e(82222),calc:e(90757),plot:e(50347),layerName:"heatmaplayer",colorbar:e(61243),style:e(70035),hoverPoints:e(76128),eventData:e(84402),moduleType:"trace",name:"histogram2d",basePlotModule:e(93612),categories:["cartesian","svg","2dMap","histogram","showLegend"],meta:{}}},75238:function(R,E,e){var w=e(73972),k=e(71828);R.exports=function(i,_,y,h){var l=y("x"),t=y("y"),o=k.minRowLength(l),r=k.minRowLength(t);o&&r?(_._length=Math.min(o,r),w.getComponentMethod("calendars","handleTraceDefaults")(i,_,["x","y"],h),(y("z")||y("marker.color"))&&y("histfunc"),y("histnorm"),y("autobinx"),y("autobiny")):_.visible=!1}},99066:function(R,E,e){var w=e(35361),k=e(70600),i=e(50693),_=e(12663).axisHoverFormat,y=e(1426).extendFlat;R.exports=y({x:w.x,y:w.y,z:w.z,marker:w.marker,histnorm:w.histnorm,histfunc:w.histfunc,nbinsx:w.nbinsx,xbins:w.xbins,nbinsy:w.nbinsy,ybins:w.ybins,autobinx:w.autobinx,autobiny:w.autobiny,bingroup:w.bingroup,xbingroup:w.xbingroup,ybingroup:w.ybingroup,autocontour:k.autocontour,ncontours:k.ncontours,contours:k.contours,line:{color:k.line.color,width:y({},k.line.width,{dflt:.5}),dash:k.line.dash,smoothing:k.line.smoothing,editType:"plot"},xhoverformat:_("x"),yhoverformat:_("y"),zhoverformat:_("z",1),hovertemplate:w.hovertemplate,texttemplate:k.texttemplate,textfont:k.textfont},i("",{cLetter:"z",editTypeOverride:"calc"}))},62654:function(R,E,e){var w=e(71828),k=e(75238),i=e(67217),_=e(8724),y=e(58623),h=e(99066);R.exports=function(l,t,o,r){function n(a,s){return w.coerce(l,t,h,a,s)}k(l,t,n,r),t.visible!==!1&&(i(l,t,n,function(a){return w.coerce2(l,t,h,a)}),_(l,t,n,r),n("xhoverformat"),n("yhoverformat"),n("hovertemplate"),t.contours&&t.contours.coloring==="heatmap"&&y(n,r))}},35902:function(R,E,e){R.exports={attributes:e(99066),supplyDefaults:e(62654),crossTraceDefaults:e(82222),calc:e(27529),plot:e(29854).plot,layerName:"contourlayer",style:e(84426),colorbar:e(90654),hoverPoints:e(52421),moduleType:"trace",name:"histogram2dcontour",basePlotModule:e(93612),categories:["cartesian","svg","2dMap","contour","histogram","showLegend"],meta:{}}},46291:function(R,E,e){var w=e(5386).fF,k=e(5386).si,i=e(50693),_=e(27670).Y,y=e(34e3),h=e(57564),l=e(45802),t=e(43473),o=e(1426).extendFlat,r=e(79952).u;R.exports={labels:h.labels,parents:h.parents,values:h.values,branchvalues:h.branchvalues,count:h.count,level:h.level,maxdepth:h.maxdepth,tiling:{orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"plot"},flip:l.tiling.flip,pad:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},marker:o({colors:h.marker.colors,line:h.marker.line,pattern:r,editType:"calc"},i("marker",{colorAttr:"colors",anim:!1})),leaf:h.leaf,pathbar:l.pathbar,text:y.text,textinfo:h.textinfo,texttemplate:k({editType:"plot"},{keys:t.eventDataKeys.concat(["label","value"])}),hovertext:y.hovertext,hoverinfo:h.hoverinfo,hovertemplate:w({},{keys:t.eventDataKeys}),textfont:y.textfont,insidetextfont:y.insidetextfont,outsidetextfont:l.outsidetextfont,textposition:l.textposition,sort:y.sort,root:h.root,domain:_({name:"icicle",trace:!0,editType:"calc"})}},96346:function(R,E,e){var w=e(74875);E.name="icicle",E.plot=function(k,i,_,y){w.plotBasePlot(E.name,k,i,_,y)},E.clean=function(k,i,_,y){w.cleanBasePlot(E.name,k,i,_,y)}},46584:function(R,E,e){var w=e(52147);E.y=function(k,i){return w.calc(k,i)},E.T=function(k){return w._runCrossTraceCalc("icicle",k)}},56524:function(R,E,e){var w=e(71828),k=e(46291),i=e(7901),_=e(27670).c,y=e(90769).handleText,h=e(97313).TEXTPAD,l=e(37434).handleMarkerDefaults,t=e(21081),o=t.hasColorscale,r=t.handleDefaults;R.exports=function(n,a,s,u){function p(x,T){return w.coerce(n,a,k,x,T)}var c=p("labels"),b=p("parents");if(c&&c.length&&b&&b.length){var g=p("values");g&&g.length?p("branchvalues"):p("count"),p("level"),p("maxdepth"),p("tiling.orientation"),p("tiling.flip"),p("tiling.pad");var f=p("text");p("texttemplate"),a.texttemplate||p("textinfo",Array.isArray(f)?"text+label":"label"),p("hovertext"),p("hovertemplate");var v=p("pathbar.visible");y(n,a,u,p,"auto",{hasPathbar:v,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),p("textposition"),l(n,a,u,p);var m=a._hasColorscale=o(n,"marker","colors")||(n.marker||{}).coloraxis;m&&r(n,a,u,p,{prefix:"marker.",cLetter:"c"}),p("leaf.opacity",m?1:.7),a._hovered={marker:{line:{width:2,color:i.contrast(u.paper_bgcolor)}}},v&&(p("pathbar.thickness",a.pathbar.textfont.size+2*h),p("pathbar.side"),p("pathbar.edgeshape")),p("sort"),p("root.color"),_(a,u,p),a._length=null}else a.visible=!1}},90666:function(R,E,e){var w=e(39898),k=e(71828),i=e(91424),_=e(63893),y=e(21538),h=e(82454).styleOne,l=e(43473),t=e(2791),o=e(83523),r=e(24714).formatSliceLabel,n=!1;R.exports=function(a,s,u,p,c){var b=c.width,g=c.height,f=c.viewX,v=c.viewY,m=c.pathSlice,x=c.toMoveInsideSlice,T=c.strTransform,d=c.hasTransition,M=c.handleSlicesExit,A=c.makeUpdateSliceInterpolator,C=c.makeUpdateTextInterpolator,P=c.prevEntry,O=a._context.staticPlot,z=a._fullLayout,B=s[0].trace,Y=B.textposition.indexOf("left")!==-1,D=B.textposition.indexOf("right")!==-1,G=B.textposition.indexOf("bottom")!==-1,V=y(u,[b,g],{flipX:B.tiling.flip.indexOf("x")>-1,flipY:B.tiling.flip.indexOf("y")>-1,orientation:B.tiling.orientation,pad:{inner:B.tiling.pad},maxDepth:B._maxDepth}).descendants(),j=1/0,W=-1/0;V.forEach(function(X){var ee=X.depth;ee>=B._maxDepth?(X.x0=X.x1=(X.x0+X.x1)/2,X.y0=X.y1=(X.y0+X.y1)/2):(j=Math.min(j,ee),W=Math.max(W,ee))}),p=p.data(V,t.getPtId),B._maxVisibleLayers=isFinite(W)?W-j+1:0,p.enter().append("g").classed("slice",!0),M(p,n,{},[b,g],m),p.order();var Z=null;if(d&&P){var ie=t.getPtId(P);p.each(function(X){Z===null&&t.getPtId(X)===ie&&(Z={x0:X.x0,x1:X.x1,y0:X.y0,y1:X.y1})})}var te=function(){return Z||{x0:0,x1:b,y0:0,y1:g}},J=p;return d&&(J=J.transition().each("end",function(){var X=w.select(this);t.setSliceCursor(X,a,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),J.each(function(X){X._x0=f(X.x0),X._x1=f(X.x1),X._y0=v(X.y0),X._y1=v(X.y1),X._hoverX=f(X.x1-B.tiling.pad),X._hoverY=v(G?X.y1-B.tiling.pad/2:X.y0+B.tiling.pad/2);var ee=w.select(this),re=k.ensureSingle(ee,"path","surface",function(de){de.style("pointer-events",O?"none":"all")});d?re.transition().attrTween("d",function(de){var me=A(de,n,te(),[b,g],{orientation:B.tiling.orientation,flipX:B.tiling.flip.indexOf("x")>-1,flipY:B.tiling.flip.indexOf("y")>-1});return function(_e){return m(me(_e))}}):re.attr("d",m),ee.call(o,u,a,s,{styleOne:h,eventDataKeys:l.eventDataKeys,transitionTime:l.CLICK_TRANSITION_TIME,transitionEasing:l.CLICK_TRANSITION_EASING}).call(t.setSliceCursor,a,{isTransitioning:a._transitioning}),re.call(h,X,B,a,{hovered:!1}),X.x0===X.x1||X.y0===X.y1?X._text="":X._text=r(X,u,B,s,z)||"";var oe=k.ensureSingle(ee,"g","slicetext"),ue=k.ensureSingle(oe,"text","",function(de){de.attr("data-notex",1)}),ce=k.ensureUniformFontSize(a,t.determineTextFont(B,X,z.font));ue.text(X._text||" ").classed("slicetext",!0).attr("text-anchor",D?"end":Y?"start":"middle").call(i.font,ce).call(_.convertToTspans,a),X.textBB=i.bBox(ue.node()),X.transform=x(X,{fontSize:ce.size}),X.transform.fontSize=ce.size,d?ue.transition().attrTween("transform",function(de){var me=C(de,n,te(),[b,g]);return function(_e){return T(me(_e))}}):ue.attr("transform",T(X))}),Z}},69816:function(R,E,e){R.exports={moduleType:"trace",name:"icicle",basePlotModule:e(96346),categories:[],animatable:!0,attributes:e(46291),layoutAttributes:e(92894),supplyDefaults:e(56524),supplyLayoutDefaults:e(21070),calc:e(46584).y,crossTraceCalc:e(46584).T,plot:e(85596),style:e(82454).style,colorbar:e(4898),meta:{}}},92894:function(R){R.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}},21070:function(R,E,e){var w=e(71828),k=e(92894);R.exports=function(i,_){function y(h,l){return w.coerce(i,_,k,h,l)}y("iciclecolorway",_.colorway),y("extendiciclecolors")}},21538:function(R,E,e){var w=e(674),k=e(14102);R.exports=function(i,_,y){var h=y.flipX,l=y.flipY,t=y.orientation==="h",o=y.maxDepth,r=_[0],n=_[1];o&&(r=(i.height+1)*_[0]/Math.min(i.height+1,o),n=(i.height+1)*_[1]/Math.min(i.height+1,o));var a=w.partition().padding(y.pad.inner).size(t?[_[1],r]:[_[0],n])(i);return(t||h||l)&&k(a,_,{swapXY:t,flipX:h,flipY:l}),a}},85596:function(R,E,e){var w=e(80694),k=e(90666);R.exports=function(i,_,y,h){return w(i,_,y,h,{type:"icicle",drawDescendants:k})}},82454:function(R,E,e){var w=e(39898),k=e(7901),i=e(71828),_=e(72597).resizeText,y=e(43467);function h(l,t,o,r){var n=t.data.data,a=!t.children,s=n.i,u=i.castOption(o,s,"marker.line.color")||k.defaultLine,p=i.castOption(o,s,"marker.line.width")||0;l.call(y,t,o,r).style("stroke-width",p).call(k.stroke,u).style("opacity",a?o.leaf.opacity:null)}R.exports={style:function(l){var t=l._fullLayout._iciclelayer.selectAll(".trace");_(l,t,"icicle"),t.each(function(o){var r=w.select(this),n=o[0].trace;r.style("opacity",n.opacity),r.selectAll("path.surface").each(function(a){w.select(this).call(h,a,n,l)})})},styleOne:h}},17230:function(R,E,e){for(var w=e(9012),k=e(5386).fF,i=e(1426).extendFlat,_=e(51877).colormodel,y=["rgb","rgba","rgba256","hsl","hsla"],h=[],l=[],t=0;t<y.length;t++){var o=_[y[t]];h.push("For the `"+y[t]+"` colormodel, it is ["+(o.zminDflt||o.min).join(", ")+"]."),l.push("For the `"+y[t]+"` colormodel, it is ["+(o.zmaxDflt||o.max).join(", ")+"].")}R.exports=i({source:{valType:"string",editType:"calc"},z:{valType:"data_array",editType:"calc"},colormodel:{valType:"enumerated",values:y,editType:"calc"},zsmooth:{valType:"enumerated",values:["fast",!1],dflt:!1,editType:"plot"},zmin:{valType:"info_array",items:[{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"}],editType:"calc"},zmax:{valType:"info_array",items:[{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"},{valType:"number",editType:"calc"}],editType:"calc"},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dx:{valType:"number",dflt:1,editType:"calc"},dy:{valType:"number",dflt:1,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"data_array",editType:"plot"},hoverinfo:i({},w.hoverinfo,{flags:["x","y","z","color","name","text"],dflt:"x+y+z+text+name"}),hovertemplate:k({},{keys:["z","color","colormodel"]}),transforms:void 0})},71113:function(R,E,e){var w=e(71828),k=e(51877),i=e(92770),_=e(89298),y=e(71828).maxRowLength,h=e(67395).A;function l(o,r,n,a){return function(s){return w.constrain((s-o)*r,n,a)}}function t(o,r){return function(n){return w.constrain(n,o,r)}}R.exports=function(o,r){var n,a;if(r._hasZ)n=r.z.length,a=y(r.z);else if(r._hasSource){var s=h(r.source);n=s.height,a=s.width}var u,p=_.getFromId(o,r.xaxis||"x"),c=_.getFromId(o,r.yaxis||"y"),b=p.d2c(r.x0)-r.dx/2,g=c.d2c(r.y0)-r.dy/2,f=[b,b+a*r.dx],v=[g,g+n*r.dy];if(p&&p.type==="log")for(u=0;u<a;u++)f.push(b+u*r.dx);if(c&&c.type==="log")for(u=0;u<n;u++)v.push(g+u*r.dy);return r._extremes[p._id]=_.findExtremes(p,f),r._extremes[c._id]=_.findExtremes(c,v),r._scaler=function(m){var x=k.colormodel[m.colormodel],T=(x.colormodel||m.colormodel).length;m._sArray=[];for(var d=0;d<T;d++)x.min[d]!==m.zmin[d]||x.max[d]!==m.zmax[d]?m._sArray.push(l(m.zmin[d],(x.max[d]-x.min[d])/(m.zmax[d]-m.zmin[d]),x.min[d],x.max[d])):m._sArray.push(t(x.min[d],x.max[d]));return function(M){for(var A=M.slice(0,T),C=0;C<T;C++){var P=A[C];if(!i(P))return!1;A[C]=m._sArray[C](P)}return A}}(r),[{x0:b,y0:g,z:r.z,w:a,h:n}]}},51877:function(R){R.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(E){return E.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(E){return E.slice(0,4)},suffix:["","","",""]},rgba256:{colormodel:"rgba",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(E){return E.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(E){var e=E.slice(0,3);return e[1]=e[1]+"%",e[2]=e[2]+"%",e},suffix:["°","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(E){var e=E.slice(0,4);return e[1]=e[1]+"%",e[2]=e[2]+"%",e},suffix:["°","%","%",""]}}}},13245:function(R,E,e){var w=e(71828),k=e(17230),i=e(51877),_=e(25095).IMAGE_URL_PREFIX;R.exports=function(y,h){function l(r,n){return w.coerce(y,h,k,r,n)}l("source"),h.source&&!h.source.match(_)&&delete h.source,h._hasSource=!!h.source;var t,o=l("z");h._hasZ=!(o===void 0||!o.length||!o[0]||!o[0].length),h._hasZ||h._hasSource?(l("x0"),l("y0"),l("dx"),l("dy"),h._hasZ?(l("colormodel","rgb"),l("zmin",(t=i.colormodel[h.colormodel]).zminDflt||t.min),l("zmax",t.zmaxDflt||t.max)):h._hasSource&&(h.colormodel="rgba256",t=i.colormodel[h.colormodel],h.zmin=t.zminDflt,h.zmax=t.zmaxDflt),l("zsmooth"),l("text"),l("hovertext"),l("hovertemplate"),h._length=null):h.visible=!1}},30835:function(R){R.exports=function(E,e){return"xVal"in e&&(E.x=e.xVal),"yVal"in e&&(E.y=e.yVal),e.xa&&(E.xaxis=e.xa),e.ya&&(E.yaxis=e.ya),E.color=e.color,E.colormodel=e.trace.colormodel,E.z||(E.z=e.color),E}},67395:function(R,E,e){var w=e(33575),k=e(25095).IMAGE_URL_PREFIX,i=e(12856).Buffer;E.A=function(_){var y=_.replace(k,""),h=new i(y,"base64");return w(h)}},28749:function(R,E,e){var w=e(30211),k=e(71828),i=e(51877);R.exports=function(_,y,h){var l=_.cd[0],t=l.trace,o=_.xa,r=_.ya;if(!(w.inbox(y-l.x0,y-(l.x0+l.w*t.dx),0)>0||w.inbox(h-l.y0,h-(l.y0+l.h*t.dy),0)>0)){var n,a=Math.floor((y-l.x0)/t.dx),s=Math.floor(Math.abs(h-l.y0)/t.dy);if(t._hasZ?n=l.z[s][a]:t._hasSource&&(n=t._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(a,s,1,1).data),n){var u,p=l.hi||t.hoverinfo;if(p){var c=p.split("+");c.indexOf("all")!==-1&&(c=["color"]),c.indexOf("color")!==-1&&(u=!0)}var b,g=i.colormodel[t.colormodel],f=g.colormodel||t.colormodel,v=f.length,m=t._scaler(n),x=g.suffix,T=[];(t.hovertemplate||u)&&(T.push("["+[m[0]+x[0],m[1]+x[1],m[2]+x[2]].join(", ")),v===4&&T.push(", "+m[3]+x[3]),T.push("]"),T=T.join(""),_.extraText=f.toUpperCase()+": "+T),Array.isArray(t.hovertext)&&Array.isArray(t.hovertext[s])?b=t.hovertext[s][a]:Array.isArray(t.text)&&Array.isArray(t.text[s])&&(b=t.text[s][a]);var d=r.c2p(l.y0+(s+.5)*t.dy),M=l.x0+(a+.5)*t.dx,A=l.y0+(s+.5)*t.dy,C="["+n.slice(0,t.colormodel.length).join(", ")+"]";return[k.extendFlat(_,{index:[s,a],x0:o.c2p(l.x0+a*t.dx),x1:o.c2p(l.x0+(a+1)*t.dx),y0:d,y1:d,color:m,xVal:M,xLabelVal:M,yVal:A,yLabelVal:A,zLabelVal:C,text:b,hovertemplateLabels:{zLabel:C,colorLabel:T,"color[0]Label":m[0]+x[0],"color[1]Label":m[1]+x[1],"color[2]Label":m[2]+x[2],"color[3]Label":m[3]+x[3]}})]}}}},94507:function(R,E,e){R.exports={attributes:e(17230),supplyDefaults:e(13245),calc:e(71113),plot:e(60775),style:e(12826),hoverPoints:e(28749),eventData:e(30835),moduleType:"trace",name:"image",basePlotModule:e(93612),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}},60775:function(R,E,e){var w=e(39898),k=e(71828),i=k.strTranslate,_=e(77922),y=e(51877),h=e(3883),l=e(32396).STYLE;R.exports=function(t,o,r,n){var a=o.xaxis,s=o.yaxis,u=!t._context._exportedPlot&&h();k.makeTraceGroups(n,r,"im").each(function(p){var c=w.select(this),b=p[0],g=b.trace,f=(g.zsmooth==="fast"||g.zsmooth===!1&&u)&&!g._hasZ&&g._hasSource&&a.type==="linear"&&s.type==="linear";g._realImage=f;var v,m,x,T,d,M,A=b.z,C=b.x0,P=b.y0,O=b.w,z=b.h,B=g.dx,Y=g.dy;for(M=0;v===void 0&&M<O;)v=a.c2p(C+M*B),M++;for(M=O;m===void 0&&M>0;)m=a.c2p(C+M*B),M--;for(M=0;T===void 0&&M<z;)T=s.c2p(P+M*Y),M++;for(M=z;d===void 0&&M>0;)d=s.c2p(P+M*Y),M--;m<v&&(x=m,m=v,v=x),d<T&&(x=T,T=d,d=x),f||(v=Math.max(-.5*a._length,v),m=Math.min(1.5*a._length,m),T=Math.max(-.5*s._length,T),d=Math.min(1.5*s._length,d));var D=Math.round(m-v),G=Math.round(d-T);if(D<=0||G<=0)c.selectAll("image").data([]).exit().remove();else{var V=c.selectAll("image").data([p]);V.enter().append("svg:image").attr({xmlns:_.svg,preserveAspectRatio:"none"}),V.exit().remove();var j=g.zsmooth===!1?l:"";if(f){var W=k.simpleMap(a.range,a.r2l),Z=k.simpleMap(s.range,s.r2l),ie=W[1]<W[0],te=Z[1]>Z[0];if(ie||te){var J=v+D/2,X=T+G/2;j+="transform:"+i(J+"px",X+"px")+"scale("+(ie?-1:1)+","+(te?-1:1)+")"+i(-J+"px",-X+"px")+";"}}V.attr("style",j);var ee=new Promise(function(oe){if(g._hasZ)oe();else if(g._hasSource)if(g._canvas&&g._canvas.el.width===O&&g._canvas.el.height===z&&g._canvas.source===g.source)oe();else{var ue=document.createElement("canvas");ue.width=O,ue.height=z;var ce=ue.getContext("2d",{willReadFrequently:!0});g._image=g._image||new Image;var de=g._image;de.onload=function(){ce.drawImage(de,0,0),g._canvas={el:ue,source:g.source},oe()},de.setAttribute("src",g.source)}}).then(function(){var oe,ue;if(g._hasZ)ue=re(function(de,me){return A[me][de]}),oe=ue.toDataURL("image/png");else if(g._hasSource)if(f)oe=g.source;else{var ce=g._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(0,0,O,z).data;ue=re(function(de,me){var _e=4*(me*O+de);return[ce[_e],ce[_e+1],ce[_e+2],ce[_e+3]]}),oe=ue.toDataURL("image/png")}V.attr({"xlink:href":oe,height:G,width:D,x:v,y:T})});t._promises.push(ee)}function re(oe){var ue=document.createElement("canvas");ue.width=D,ue.height=G;var ce,de=ue.getContext("2d",{willReadFrequently:!0}),me=function(ae){return k.constrain(Math.round(a.c2p(C+ae*B)-v),0,D)},_e=function(ae){return k.constrain(Math.round(s.c2p(P+ae*Y)-T),0,G)},Se=y.colormodel[g.colormodel],we=Se.colormodel||g.colormodel,xe=Se.fmt;for(M=0;M<b.w;M++){var De=me(M),Ee=me(M+1);if(Ee!==De&&!isNaN(Ee)&&!isNaN(De))for(var Me=0;Me<b.h;Me++){var he=_e(Me),fe=_e(Me+1);fe===he||isNaN(fe)||isNaN(he)||!oe(M,Me)||(ce=g._scaler(oe(M,Me)),de.fillStyle=ce?we+"("+xe(ce).join(",")+")":"rgba(0,0,0,0)",de.fillRect(De,he,Ee-De,fe-he))}}return ue}})}},12826:function(R,E,e){var w=e(39898);R.exports=function(k){w.select(k).selectAll(".im image").style("opacity",function(i){return i[0].trace.opacity})}},54846:function(R,E,e){var w=e(1426).extendFlat,k=e(1426).extendDeep,i=e(30962).overrideAll,_=e(41940),y=e(22399),h=e(27670).Y,l=e(13838),t=e(44467).templatedArray,o=e(22372),r=e(12663).descriptionOnlyNumbers,n=_({editType:"plot",colorEditType:"plot"}),a={color:{valType:"color",editType:"plot"},line:{color:{valType:"color",dflt:y.defaultLine,editType:"plot"},width:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},thickness:{valType:"number",min:0,max:1,dflt:1,editType:"plot"},editType:"calc"},s={valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},u=t("step",k({},a,{range:s}));R.exports={mode:{valType:"flaglist",editType:"calc",flags:["number","delta","gauge"],dflt:"number"},value:{valType:"number",editType:"calc",anim:!0},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},domain:h({name:"indicator",trace:!0,editType:"calc"}),title:{text:{valType:"string",editType:"plot"},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},font:w({},n,{}),editType:"plot"},number:{valueformat:{valType:"string",dflt:"",editType:"plot",description:r("value")},font:w({},n,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"plot"},delta:{reference:{valType:"number",editType:"calc"},position:{valType:"enumerated",values:["top","bottom","left","right"],dflt:"bottom",editType:"plot"},relative:{valType:"boolean",editType:"plot",dflt:!1},valueformat:{valType:"string",editType:"plot",description:r("value")},increasing:{symbol:{valType:"string",dflt:o.INCREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:o.INCREASING.COLOR,editType:"plot"},editType:"plot"},decreasing:{symbol:{valType:"string",dflt:o.DECREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:o.DECREASING.COLOR,editType:"plot"},editType:"plot"},font:w({},n,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"calc"},gauge:{shape:{valType:"enumerated",editType:"plot",dflt:"angular",values:["angular","bullet"]},bar:k({},a,{color:{dflt:"green"}}),bgcolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:y.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:1,editType:"plot"},axis:i({range:s,visible:w({},l.visible,{dflt:!0}),tickmode:l.minor.tickmode,nticks:l.nticks,tick0:l.tick0,dtick:l.dtick,tickvals:l.tickvals,ticktext:l.ticktext,ticks:w({},l.ticks,{dflt:"outside"}),ticklen:l.ticklen,tickwidth:l.tickwidth,tickcolor:l.tickcolor,ticklabelstep:l.ticklabelstep,showticklabels:l.showticklabels,labelalias:l.labelalias,tickfont:_({}),tickangle:l.tickangle,tickformat:l.tickformat,tickformatstops:l.tickformatstops,tickprefix:l.tickprefix,showtickprefix:l.showtickprefix,ticksuffix:l.ticksuffix,showticksuffix:l.showticksuffix,separatethousands:l.separatethousands,exponentformat:l.exponentformat,minexponent:l.minexponent,showexponent:l.showexponent,editType:"plot"},"plot"),steps:u,threshold:{line:{color:w({},a.line.color,{}),width:w({},a.line.width,{dflt:1}),editType:"plot"},thickness:w({},a.thickness,{dflt:.85}),value:{valType:"number",editType:"calc",dflt:!1},editType:"plot"},editType:"plot"}}},15970:function(R,E,e){var w=e(74875);E.name="indicator",E.plot=function(k,i,_,y){w.plotBasePlot(E.name,k,i,_,y)},E.clean=function(k,i,_,y){w.cleanBasePlot(E.name,k,i,_,y)}},24667:function(R){R.exports={calc:function(E,e){var w=[],k=e.value;typeof e._lastValue!="number"&&(e._lastValue=e.value);var i=e._lastValue,_=i;return e._hasDelta&&typeof e.delta.reference=="number"&&(_=e.delta.reference),w[0]={y:k,lastY:i,delta:k-_,relativeDelta:(k-_)/_},w}}},84577:function(R){R.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}},94425:function(R,E,e){var w=e(71828),k=e(54846),i=e(27670).c,_=e(44467),y=e(85501),h=e(84577),l=e(26218),t=e(38701),o=e(96115),r=e(89426);function n(a,s){function u(p,c){return w.coerce(a,s,k.gauge.steps,p,c)}u("color"),u("line.color"),u("line.width"),u("range"),u("thickness")}R.exports={supplyDefaults:function(a,s,u,p){function c(P,O){return w.coerce(a,s,k,P,O)}i(s,p,c),c("mode"),s._hasNumber=s.mode.indexOf("number")!==-1,s._hasDelta=s.mode.indexOf("delta")!==-1,s._hasGauge=s.mode.indexOf("gauge")!==-1;var b=c("value");s._range=[0,typeof b=="number"?1.5*b:1];var g,f,v,m,x,T,d=new Array(2);function M(P,O){return w.coerce(v,m,k.gauge,P,O)}function A(P,O){return w.coerce(x,T,k.gauge.axis,P,O)}if(s._hasNumber&&(c("number.valueformat"),c("number.font.color",p.font.color),c("number.font.family",p.font.family),c("number.font.size"),s.number.font.size===void 0&&(s.number.font.size=h.defaultNumberFontSize,d[0]=!0),c("number.prefix"),c("number.suffix"),g=s.number.font.size),s._hasDelta&&(c("delta.font.color",p.font.color),c("delta.font.family",p.font.family),c("delta.font.size"),s.delta.font.size===void 0&&(s.delta.font.size=(s._hasNumber?.5:1)*(g||h.defaultNumberFontSize),d[1]=!0),c("delta.reference",s.value),c("delta.relative"),c("delta.valueformat",s.delta.relative?"2%":""),c("delta.increasing.symbol"),c("delta.increasing.color"),c("delta.decreasing.symbol"),c("delta.decreasing.color"),c("delta.position"),c("delta.prefix"),c("delta.suffix"),f=s.delta.font.size),s._scaleNumbers=(!s._hasNumber||d[0])&&(!s._hasDelta||d[1])||!1,c("title.font.color",p.font.color),c("title.font.family",p.font.family),c("title.font.size",.25*(g||f||h.defaultNumberFontSize)),c("title.text"),s._hasGauge){(v=a.gauge)||(v={}),m=_.newContainer(s,"gauge"),M("shape"),(s._isBullet=s.gauge.shape==="bullet")||c("title.align","center"),(s._isAngular=s.gauge.shape==="angular")||c("align","center"),M("bgcolor",p.paper_bgcolor),M("borderwidth"),M("bordercolor"),M("bar.color"),M("bar.line.color"),M("bar.line.width"),M("bar.thickness",h.valueThickness*(s.gauge.shape==="bullet"?.5:1)),y(v,m,{name:"steps",handleItemDefaults:n}),M("threshold.value"),M("threshold.thickness"),M("threshold.line.width"),M("threshold.line.color"),x={},v&&(x=v.axis||{}),T=_.newContainer(m,"axis"),A("visible"),s._range=A("range",s._range);var C={outerTicks:!0};l(x,T,A,"linear"),r(x,T,A,"linear",C),o(x,T,A,"linear",C),t(x,T,A,C)}else c("title.align","center"),c("align","center"),s._isAngular=s._isBullet=!1;s._length=null}}},15154:function(R,E,e){R.exports={moduleType:"trace",name:"indicator",basePlotModule:e(15970),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:e(54846),supplyDefaults:e(94425).supplyDefaults,calc:e(24667).calc,plot:e(75634),meta:{}}},75634:function(R,E,e){var w=e(39898),k=e(81684).sX,i=e(81684).k4,_=e(71828),y=_.strScale,h=_.strTranslate,l=_.rad2deg,t=e(18783).MID_SHIFT,o=e(91424),r=e(84577),n=e(63893),a=e(89298),s=e(71453),u=e(52830),p=e(13838),c=e(7901),b={left:"start",center:"middle",right:"end"},g={left:0,center:.5,right:1},f=/[yzafpnµmkMGTPEZY]/;function v(A){return A&&A.duration>0}function m(A){A.each(function(C){c.stroke(w.select(this),C.line.color)}).each(function(C){c.fill(w.select(this),C.color)}).style("stroke-width",function(C){return C.line.width})}function x(A,C,P){var O=A._fullLayout,z=_.extendFlat({type:"linear",ticks:"outside",range:P,showline:!0},C),B={type:"linear",_id:"x"+C._id},Y={letter:"x",font:O.font,noHover:!0,noTickson:!0};function D(G,V){return _.coerce(z,B,p,G,V)}return s(z,B,D,Y,O),u(z,B,D,Y),B}function T(A,C,P){return[Math.min(C/A.width,P/A.height),A,C+"x"+P]}function d(A,C,P,O){var z=document.createElementNS("http://www.w3.org/2000/svg","text"),B=w.select(z);return B.text(A).attr("x",0).attr("y",0).attr("text-anchor",P).attr("data-unformatted",A).call(n.convertToTspans,O).call(o.font,C),o.bBox(B.node())}function M(A,C,P,O,z,B){var Y="_cache"+C;A[Y]&&A[Y].key===z||(A[Y]={key:z,value:P});var D=_.aggNums(B,null,[A[Y].value,O],2);return A[Y].value=D,D}R.exports=function(A,C,P,O){var z,B=A._fullLayout;v(P)&&O&&(z=O()),_.makeTraceGroups(B._indicatorlayer,C,"trace").each(function(Y){var D,G,V,j,W,Z=Y[0].trace,ie=w.select(this),te=Z._hasGauge,J=Z._isAngular,X=Z._isBullet,ee=Z.domain,re={w:B._size.w*(ee.x[1]-ee.x[0]),h:B._size.h*(ee.y[1]-ee.y[0]),l:B._size.l+B._size.w*ee.x[0],r:B._size.r+B._size.w*(1-ee.x[1]),t:B._size.t+B._size.h*(1-ee.y[1]),b:B._size.b+B._size.h*ee.y[0]},oe=re.l+re.w/2,ue=re.t+re.h/2,ce=Math.min(re.w/2,re.h),de=r.innerRadius*ce,me=Z.align||"center";if(G=ue,te){if(J&&(D=oe,G=ue+ce/2,V=function(he){return function(fe,ae){return[ae/Math.sqrt(fe.width/2*(fe.width/2)+fe.height*fe.height),fe,ae]}(he,.9*de)}),X){var _e=r.bulletPadding,Se=1-r.bulletNumberDomainSize+_e;D=re.l+(Se+(1-Se)*g[me])*re.w,V=function(he){return T(he,(r.bulletNumberDomainSize-_e)*re.w,re.h)}}}else D=re.l+g[me]*re.w,V=function(he){return T(he,re.w,re.h)};(function(he,fe,ae,be){var Ie,Te,Ne,qe=ae[0].trace,ve=be.numbersX,Ce=be.numbersY,Ae=qe.align||"center",ze=b[Ae],Ue=be.transitionOpts,Ve=be.onComplete,Ye=_.ensureSingle(fe,"g","numbers"),$e=[];qe._hasNumber&&$e.push("number"),qe._hasDelta&&($e.push("delta"),qe.delta.position==="left"&&$e.reverse());var rt=Ye.selectAll("text").data($e);function ht(St,Ft,zt,Je){if(!St.match("s")||zt>=0==Je>=0||Ft(zt).slice(-1).match(f)||Ft(Je).slice(-1).match(f))return Ft;var et=St.slice().replace("s","f").replace(/\d+/,function(Qe){return parseInt(Qe)-1}),Ze=x(he,{tickformat:et});return function(Qe){return Math.abs(Qe)<1?a.tickText(Ze,Qe).text:Ft(Qe)}}rt.enter().append("text"),rt.attr("text-anchor",function(){return ze}).attr("class",function(St){return St}).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),rt.exit().remove();var nt,bt=qe.mode+qe.align;if(qe._hasDelta&&(nt=function(){var St=x(he,{tickformat:qe.delta.valueformat},qe._range);St.setScale(),a.prepTicks(St);var Ft=function(Be){return a.tickText(St,Be).text},zt=qe.delta.suffix,Je=qe.delta.prefix,et=function(Be){return qe.delta.relative?Be.relativeDelta:Be.delta},Ze=function(Be,je){return Be===0||typeof Be!="number"||isNaN(Be)?"-":(Be>0?qe.delta.increasing.symbol:qe.delta.decreasing.symbol)+Je+je(Be)+zt},Qe=function(Be){return Be.delta>=0?qe.delta.increasing.color:qe.delta.decreasing.color};qe._deltaLastValue===void 0&&(qe._deltaLastValue=et(ae[0]));var st=Ye.select("text.delta");function ft(){st.text(Ze(et(ae[0]),Ft)).call(c.fill,Qe(ae[0])).call(n.convertToTspans,he)}return st.call(o.font,qe.delta.font).call(c.fill,Qe({delta:qe._deltaLastValue})),v(Ue)?st.transition().duration(Ue.duration).ease(Ue.easing).tween("text",function(){var Be=w.select(this),je=et(ae[0]),at=qe._deltaLastValue,ot=ht(qe.delta.valueformat,Ft,at,je),xt=i(at,je);return qe._deltaLastValue=je,function(yt){Be.text(Ze(xt(yt),ot)),Be.call(c.fill,Qe({delta:xt(yt)}))}}).each("end",function(){ft(),Ve&&Ve()}).each("interrupt",function(){ft(),Ve&&Ve()}):ft(),Te=d(Ze(et(ae[0]),Ft),qe.delta.font,ze,he),st}(),bt+=qe.delta.position+qe.delta.font.size+qe.delta.font.family+qe.delta.valueformat,bt+=qe.delta.increasing.symbol+qe.delta.decreasing.symbol,Ne=Te),qe._hasNumber&&(function(){var St=x(he,{tickformat:qe.number.valueformat},qe._range);St.setScale(),a.prepTicks(St);var Ft=function(Qe){return a.tickText(St,Qe).text},zt=qe.number.suffix,Je=qe.number.prefix,et=Ye.select("text.number");function Ze(){var Qe=typeof ae[0].y=="number"?Je+Ft(ae[0].y)+zt:"-";et.text(Qe).call(o.font,qe.number.font).call(n.convertToTspans,he)}v(Ue)?et.transition().duration(Ue.duration).ease(Ue.easing).each("end",function(){Ze(),Ve&&Ve()}).each("interrupt",function(){Ze(),Ve&&Ve()}).attrTween("text",function(){var Qe=w.select(this),st=i(ae[0].lastY,ae[0].y);qe._lastValue=ae[0].y;var ft=ht(qe.number.valueformat,Ft,ae[0].lastY,ae[0].y);return function(Be){Qe.text(Je+ft(st(Be))+zt)}}):Ze(),Ie=d(Je+Ft(ae[0].y)+zt,qe.number.font,ze,he)}(),bt+=qe.number.font.size+qe.number.font.family+qe.number.valueformat+qe.number.suffix+qe.number.prefix,Ne=Ie),qe._hasDelta&&qe._hasNumber){var wt,ut,lt=[(Ie.left+Ie.right)/2,(Ie.top+Ie.bottom)/2],Tt=[(Te.left+Te.right)/2,(Te.top+Te.bottom)/2],Et=.75*qe.delta.font.size;qe.delta.position==="left"&&(wt=M(qe,"deltaPos",0,-1*(Ie.width*g[qe.align]+Te.width*(1-g[qe.align])+Et),bt,Math.min),ut=lt[1]-Tt[1],Ne={width:Ie.width+Te.width+Et,height:Math.max(Ie.height,Te.height),left:Te.left+wt,right:Ie.right,top:Math.min(Ie.top,Te.top+ut),bottom:Math.max(Ie.bottom,Te.bottom+ut)}),qe.delta.position==="right"&&(wt=M(qe,"deltaPos",0,Ie.width*(1-g[qe.align])+Te.width*g[qe.align]+Et,bt,Math.max),ut=lt[1]-Tt[1],Ne={width:Ie.width+Te.width+Et,height:Math.max(Ie.height,Te.height),left:Ie.left,right:Te.right+wt,top:Math.min(Ie.top,Te.top+ut),bottom:Math.max(Ie.bottom,Te.bottom+ut)}),qe.delta.position==="bottom"&&(wt=null,ut=Te.height,Ne={width:Math.max(Ie.width,Te.width),height:Ie.height+Te.height,left:Math.min(Ie.left,Te.left),right:Math.max(Ie.right,Te.right),top:Ie.bottom-Ie.height,bottom:Ie.bottom+Te.height}),qe.delta.position==="top"&&(wt=null,ut=Ie.top,Ne={width:Math.max(Ie.width,Te.width),height:Ie.height+Te.height,left:Math.min(Ie.left,Te.left),right:Math.max(Ie.right,Te.right),top:Ie.bottom-Ie.height-Te.height,bottom:Ie.bottom}),nt.attr({dx:wt,dy:ut})}(qe._hasNumber||qe._hasDelta)&&Ye.attr("transform",function(){var St=be.numbersScaler(Ne);bt+=St[2];var Ft,zt=M(qe,"numbersScale",1,St[0],bt,Math.min);qe._scaleNumbers||(zt=1),Ft=qe._isAngular?Ce-zt*Ne.bottom:Ce-zt*(Ne.top+Ne.bottom)/2,qe._numbersTop=zt*Ne.top+Ft;var Je=Ne[Ae];Ae==="center"&&(Je=(Ne.left+Ne.right)/2);var et=ve-zt*Je;return et=M(qe,"numbersTranslate",0,et,bt,Math.max),h(et,Ft)+y(zt)})})(A,ie,Y,{numbersX:D,numbersY:G,numbersScaler:V,transitionOpts:P,onComplete:z}),te&&(j={range:Z.gauge.axis.range,color:Z.gauge.bgcolor,line:{color:Z.gauge.bordercolor,width:0},thickness:1},W={range:Z.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:Z.gauge.bordercolor,width:Z.gauge.borderwidth},thickness:1});var we=ie.selectAll("g.angular").data(J?Y:[]);we.exit().remove();var xe=ie.selectAll("g.angularaxis").data(J?Y:[]);xe.exit().remove(),J&&function(he,fe,ae,be){var Ie,Te,Ne,qe,ve=ae[0].trace,Ce=be.size,Ae=be.radius,ze=be.innerRadius,Ue=be.gaugeBg,Ve=be.gaugeOutline,Ye=[Ce.l+Ce.w/2,Ce.t+Ce.h/2+Ae/2],$e=be.gauge,rt=be.layer,ht=be.transitionOpts,nt=be.onComplete,bt=Math.PI/2;function wt(yt){var _t=ve.gauge.axis.range[0],gt=(yt-_t)/(ve.gauge.axis.range[1]-_t)*Math.PI-bt;return gt<-bt?-bt:gt>bt?bt:gt}function ut(yt){return w.svg.arc().innerRadius((ze+Ae)/2-yt/2*(Ae-ze)).outerRadius((ze+Ae)/2+yt/2*(Ae-ze)).startAngle(-bt)}function lt(yt){yt.attr("d",function(_t){return ut(_t.thickness).startAngle(wt(_t.range[0])).endAngle(wt(_t.range[1]))()})}$e.enter().append("g").classed("angular",!0),$e.attr("transform",h(Ye[0],Ye[1])),rt.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),rt.selectAll("g.xangularaxistick,path,text").remove(),(Ie=x(he,ve.gauge.axis)).type="linear",Ie.range=ve.gauge.axis.range,Ie._id="xangularaxis",Ie.ticklabeloverflow="allow",Ie.setScale();var Tt=function(yt){return(Ie.range[0]-yt.x)/(Ie.range[1]-Ie.range[0])*Math.PI+Math.PI},Et={},St=a.makeLabelFns(Ie,0).labelStandoff;Et.xFn=function(yt){var _t=Tt(yt);return Math.cos(_t)*St},Et.yFn=function(yt){var _t=Tt(yt),gt=Math.sin(_t)>0?.2:1;return-Math.sin(_t)*(St+yt.fontSize*gt)+Math.abs(Math.cos(_t))*(yt.fontSize*t)},Et.anchorFn=function(yt){var _t=Tt(yt),gt=Math.cos(_t);return Math.abs(gt)<.1?"middle":gt>0?"start":"end"},Et.heightFn=function(yt,_t,gt){var Ct=Tt(yt);return-.5*(1+Math.sin(Ct))*gt};var Ft=function(yt){return h(Ye[0]+Ae*Math.cos(yt),Ye[1]-Ae*Math.sin(yt))};if(Ne=function(yt){return Ft(Tt(yt))},Te=a.calcTicks(Ie),qe=a.getTickSigns(Ie)[2],Ie.visible){qe=Ie.ticks==="inside"?-1:1;var zt=(Ie.linewidth||1)/2;a.drawTicks(he,Ie,{vals:Te,layer:rt,path:"M"+qe*zt+",0h"+qe*Ie.ticklen,transFn:function(yt){var _t=Tt(yt);return Ft(_t)+"rotate("+-l(_t)+")"}}),a.drawLabels(he,Ie,{vals:Te,layer:rt,transFn:Ne,labelFns:Et})}var Je=[Ue].concat(ve.gauge.steps),et=$e.selectAll("g.bg-arc").data(Je);et.enter().append("g").classed("bg-arc",!0).append("path"),et.select("path").call(lt).call(m),et.exit().remove();var Ze=ut(ve.gauge.bar.thickness),Qe=$e.selectAll("g.value-arc").data([ve.gauge.bar]);Qe.enter().append("g").classed("value-arc",!0).append("path");var st,ft,Be,je=Qe.select("path");v(ht)?(je.transition().duration(ht.duration).ease(ht.easing).each("end",function(){nt&&nt()}).each("interrupt",function(){nt&&nt()}).attrTween("d",(st=Ze,ft=wt(ae[0].lastY),Be=wt(ae[0].y),function(){var yt=k(ft,Be);return function(_t){return st.endAngle(yt(_t))()}})),ve._lastValue=ae[0].y):je.attr("d",typeof ae[0].y=="number"?Ze.endAngle(wt(ae[0].y)):"M0,0Z"),je.call(m),Qe.exit().remove(),Je=[];var at=ve.gauge.threshold.value;(at||at===0)&&Je.push({range:[at,at],color:ve.gauge.threshold.color,line:{color:ve.gauge.threshold.line.color,width:ve.gauge.threshold.line.width},thickness:ve.gauge.threshold.thickness});var ot=$e.selectAll("g.threshold-arc").data(Je);ot.enter().append("g").classed("threshold-arc",!0).append("path"),ot.select("path").call(lt).call(m),ot.exit().remove();var xt=$e.selectAll("g.gauge-outline").data([Ve]);xt.enter().append("g").classed("gauge-outline",!0).append("path"),xt.select("path").call(lt).call(m),xt.exit().remove()}(A,0,Y,{radius:ce,innerRadius:de,gauge:we,layer:xe,size:re,gaugeBg:j,gaugeOutline:W,transitionOpts:P,onComplete:z});var De=ie.selectAll("g.bullet").data(X?Y:[]);De.exit().remove();var Ee=ie.selectAll("g.bulletaxis").data(X?Y:[]);Ee.exit().remove(),X&&function(he,fe,ae,be){var Ie,Te,Ne,qe,ve,Ce=ae[0].trace,Ae=be.gauge,ze=be.layer,Ue=be.gaugeBg,Ve=be.gaugeOutline,Ye=be.size,$e=Ce.domain,rt=be.transitionOpts,ht=be.onComplete;Ae.enter().append("g").classed("bullet",!0),Ae.attr("transform",h(Ye.l,Ye.t)),ze.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),ze.selectAll("g.xbulletaxistick,path,text").remove();var nt=Ye.h,bt=Ce.gauge.bar.thickness*nt,wt=$e.x[0],ut=$e.x[0]+($e.x[1]-$e.x[0])*(Ce._hasNumber||Ce._hasDelta?1-r.bulletNumberDomainSize:1);function lt(et){et.attr("width",function(Ze){return Math.max(0,Ie.c2p(Ze.range[1])-Ie.c2p(Ze.range[0]))}).attr("x",function(Ze){return Ie.c2p(Ze.range[0])}).attr("y",function(Ze){return .5*(1-Ze.thickness)*nt}).attr("height",function(Ze){return Ze.thickness*nt})}(Ie=x(he,Ce.gauge.axis))._id="xbulletaxis",Ie.domain=[wt,ut],Ie.setScale(),Te=a.calcTicks(Ie),Ne=a.makeTransTickFn(Ie),qe=a.getTickSigns(Ie)[2],ve=Ye.t+Ye.h,Ie.visible&&(a.drawTicks(he,Ie,{vals:Ie.ticks==="inside"?a.clipEnds(Ie,Te):Te,layer:ze,path:a.makeTickPath(Ie,ve,qe),transFn:Ne}),a.drawLabels(he,Ie,{vals:Te,layer:ze,transFn:Ne,labelFns:a.makeLabelFns(Ie,ve)}));var Tt=[Ue].concat(Ce.gauge.steps),Et=Ae.selectAll("g.bg-bullet").data(Tt);Et.enter().append("g").classed("bg-bullet",!0).append("rect"),Et.select("rect").call(lt).call(m),Et.exit().remove();var St=Ae.selectAll("g.value-bullet").data([Ce.gauge.bar]);St.enter().append("g").classed("value-bullet",!0).append("rect"),St.select("rect").attr("height",bt).attr("y",(nt-bt)/2).call(m),v(rt)?St.select("rect").transition().duration(rt.duration).ease(rt.easing).each("end",function(){ht&&ht()}).each("interrupt",function(){ht&&ht()}).attr("width",Math.max(0,Ie.c2p(Math.min(Ce.gauge.axis.range[1],ae[0].y)))):St.select("rect").attr("width",typeof ae[0].y=="number"?Math.max(0,Ie.c2p(Math.min(Ce.gauge.axis.range[1],ae[0].y))):0),St.exit().remove();var Ft=ae.filter(function(){return Ce.gauge.threshold.value||Ce.gauge.threshold.value===0}),zt=Ae.selectAll("g.threshold-bullet").data(Ft);zt.enter().append("g").classed("threshold-bullet",!0).append("line"),zt.select("line").attr("x1",Ie.c2p(Ce.gauge.threshold.value)).attr("x2",Ie.c2p(Ce.gauge.threshold.value)).attr("y1",(1-Ce.gauge.threshold.thickness)/2*nt).attr("y2",(1-(1-Ce.gauge.threshold.thickness)/2)*nt).call(c.stroke,Ce.gauge.threshold.line.color).style("stroke-width",Ce.gauge.threshold.line.width),zt.exit().remove();var Je=Ae.selectAll("g.gauge-outline").data([Ve]);Je.enter().append("g").classed("gauge-outline",!0).append("rect"),Je.select("rect").call(lt).call(m),Je.exit().remove()}(A,0,Y,{gauge:De,layer:Ee,size:re,gaugeBg:j,gaugeOutline:W,transitionOpts:P,onComplete:z});var Me=ie.selectAll("text.title").data(Y);Me.exit().remove(),Me.enter().append("text").classed("title",!0),Me.attr("text-anchor",function(){return X?b.right:b[Z.title.align]}).text(Z.title.text).call(o.font,Z.title.font).call(n.convertToTspans,A),Me.attr("transform",function(){var he,fe=re.l+re.w*g[Z.title.align],ae=r.titlePadding,be=o.bBox(Me.node());return te?(J&&(he=Z.gauge.axis.visible?o.bBox(xe.node()).top-ae-be.bottom:re.t+re.h/2-ce/2-be.bottom-ae),X&&(he=G-(be.top+be.bottom)/2,fe=re.l-r.bulletPadding*re.w)):he=Z._numbersTop-ae-be.bottom,h(fe,he)})})}},16249:function(R,E,e){var w=e(50693),k=e(12663).axisHoverFormat,i=e(5386).fF,_=e(2418),y=e(9012),h=e(1426).extendFlat,l=e(30962).overrideAll,t=R.exports=l(h({x:{valType:"data_array"},y:{valType:"data_array"},z:{valType:"data_array"},value:{valType:"data_array"},isomin:{valType:"number"},isomax:{valType:"number"},surface:{show:{valType:"boolean",dflt:!0},count:{valType:"integer",dflt:2,min:1},fill:{valType:"number",min:0,max:1,dflt:1},pattern:{valType:"flaglist",flags:["A","B","C","D","E"],extras:["all","odd","even"],dflt:"all"}},spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:.15}},slices:{x:{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}},y:{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}},z:{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}}},caps:{x:{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}},y:{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}},z:{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}}},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:i(),xhoverformat:k("x"),yhoverformat:k("y"),zhoverformat:k("z"),valuehoverformat:k("value",1),showlegend:h({},y.showlegend,{dflt:!1})},w("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:_.opacity,lightposition:_.lightposition,lighting:_.lighting,flatshading:_.flatshading,contour:_.contour,hoverinfo:h({},y.hoverinfo)}),"calc","nested");t.flatshading.dflt=!0,t.lighting.facenormalsepsilon.dflt=0,t.x.editType=t.y.editType=t.z.editType=t.value.editType="calc+clearAxisTypes",t.transforms=void 0},56959:function(R,E,e){var w=e(78803),k=e(88489).processGrid,i=e(88489).filter;R.exports=function(_,y){y._len=Math.min(y.x.length,y.y.length,y.z.length,y.value.length),y._x=i(y.x,y._len),y._y=i(y.y,y._len),y._z=i(y.z,y._len),y._value=i(y.value,y._len);var h=k(y);y._gridFill=h.fill,y._Xs=h.Xs,y._Ys=h.Ys,y._Zs=h.Zs,y._len=h.len;for(var l=1/0,t=-1/0,o=0;o<y._len;o++){var r=y._value[o];l=Math.min(l,r),t=Math.max(t,r)}y._minValues=l,y._maxValues=t,y._vMin=y.isomin===void 0||y.isomin===null?l:y.isomin,y._vMax=y.isomax===void 0||y.isomin===null?t:y.isomax,w(_,y,{vals:[y._vMin,y._vMax],containerStr:"",cLetter:"c"})}},22674:function(R,E,e){var w=e(9330).gl_mesh3d,k=e(81697).parseColorScale,i=e(78614),_=e(21081).extractOpts,y=e(90060),h=function(n,a){for(var s=a.length-1;s>0;s--){var u=Math.min(a[s],a[s-1]),p=Math.max(a[s],a[s-1]);if(p>u&&u<n&&n<=p)return{id:s,distRatio:(p-n)/(p-u)}}return{id:0,distRatio:0}};function l(n,a,s){this.scene=n,this.uid=s,this.mesh=a,this.name="",this.data=null,this.showContour=!1}var t=l.prototype;t.handlePick=function(n){if(n.object===this.mesh){var a=n.data.index,s=this.data._meshX[a],u=this.data._meshY[a],p=this.data._meshZ[a],c=this.data._Ys.length,b=this.data._Zs.length,g=h(s,this.data._Xs).id,f=h(u,this.data._Ys).id,v=h(p,this.data._Zs).id,m=n.index=v+b*f+b*c*g;n.traceCoordinate=[this.data._meshX[m],this.data._meshY[m],this.data._meshZ[m],this.data._value[m]];var x=this.data.hovertext||this.data.text;return Array.isArray(x)&&x[m]!==void 0?n.textLabel=x[m]:x&&(n.textLabel=x),!0}},t.update=function(n){var a=this.scene,s=a.fullSceneLayout;function u(b,g,f,v){return g.map(function(m){return b.d2l(m,0,v)*f})}this.data=r(n);var p={positions:y(u(s.xaxis,n._meshX,a.dataScale[0],n.xcalendar),u(s.yaxis,n._meshY,a.dataScale[1],n.ycalendar),u(s.zaxis,n._meshZ,a.dataScale[2],n.zcalendar)),cells:y(n._meshI,n._meshJ,n._meshK),lightPosition:[n.lightposition.x,n.lightposition.y,n.lightposition.z],ambient:n.lighting.ambient,diffuse:n.lighting.diffuse,specular:n.lighting.specular,roughness:n.lighting.roughness,fresnel:n.lighting.fresnel,vertexNormalsEpsilon:n.lighting.vertexnormalsepsilon,faceNormalsEpsilon:n.lighting.facenormalsepsilon,opacity:n.opacity,contourEnable:n.contour.show,contourColor:i(n.contour.color).slice(0,3),contourWidth:n.contour.width,useFacetNormals:n.flatshading},c=_(n);p.vertexIntensity=n._meshIntensity,p.vertexIntensityBounds=[c.min,c.max],p.colormap=k(n),this.mesh.update(p)},t.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};var o=["xyz","xzy","yxz","yzx","zxy","zyx"];function r(n){n._meshI=[],n._meshJ=[],n._meshK=[];var a,s,u,p,c,b,g,f=n.surface.show,v=n.spaceframe.show,m=n.surface.fill,x=n.spaceframe.fill,T=!1,d=!1,M=0,A=n._Xs,C=n._Ys,P=n._Zs,O=A.length,z=C.length,B=P.length,Y=o.indexOf(n._gridFill.replace(/-/g,"").replace(/\+/g,"")),D=function(Ae,ze,Ue){switch(Y){case 5:return Ue+B*ze+B*z*Ae;case 4:return Ue+B*Ae+B*O*ze;case 3:return ze+z*Ue+z*B*Ae;case 2:return ze+z*Ae+z*O*Ue;case 1:return Ae+O*Ue+O*B*ze;default:return Ae+O*ze+O*z*Ue}},G=n._minValues,V=n._maxValues,j=n._vMin,W=n._vMax;function Z(Ae,ze,Ue){for(var Ve=b.length,Ye=s;Ye<Ve;Ye++)if(Ae===u[Ye]&&ze===p[Ye]&&Ue===c[Ye])return Ye;return-1}function ie(){s=a}function te(){u=[],p=[],c=[],b=[],a=0,ie()}function J(Ae,ze,Ue,Ve){return u.push(Ae),p.push(ze),c.push(Ue),b.push(Ve),++a-1}function X(Ae,ze,Ue){for(var Ve=[],Ye=0;Ye<Ae.length;Ye++)Ve[Ye]=Ae[Ye]*(1-Ue)+Ue*ze[Ye];return Ve}function ee(Ae){g=Ae}function re(Ae,ze){return Ae==="all"||Ae===null||Ae.indexOf(ze)>-1}function oe(Ae,ze){return Ae===null?ze:Ae}function ue(Ae,ze,Ue){ie();var Ve,Ye,$e,rt=[ze],ht=[Ue];if(g>=1)rt=[ze],ht=[Ue];else if(g>0){var nt=function(zt,Je){var et=zt[0],Ze=zt[1],Qe=zt[2],st=function(_t,gt,Ct){for(var dt=[],vt=0;vt<_t.length;vt++)dt[vt]=(_t[vt]+gt[vt]+Ct[vt])/3;return dt}(et,Ze,Qe),ft=Math.sqrt(1-g),Be=X(st,et,ft),je=X(st,Ze,ft),at=X(st,Qe,ft),ot=Je[0],xt=Je[1],yt=Je[2];return{xyzv:[[et,Ze,je],[je,Be,et],[Ze,Qe,at],[at,je,Ze],[Qe,et,Be],[Be,at,Qe]],abc:[[ot,xt,-1],[-1,-1,ot],[xt,yt,-1],[-1,-1,xt],[yt,ot,-1],[-1,-1,yt]]}}(ze,Ue);rt=nt.xyzv,ht=nt.abc}for(var bt=0;bt<rt.length;bt++){ze=rt[bt],Ue=ht[bt];for(var wt=[],ut=0;ut<3;ut++){var lt=ze[ut][0],Tt=ze[ut][1],Et=ze[ut][2],St=ze[ut][3],Ft=Ue[ut]>-1?Ue[ut]:Z(lt,Tt,Et);wt[ut]=Ft>-1?Ft:J(lt,Tt,Et,oe(Ae,St))}Ve=wt[0],Ye=wt[1],$e=wt[2],n._meshI.push(Ve),n._meshJ.push(Ye),n._meshK.push($e),++M}}function ce(Ae,ze,Ue,Ve){var Ye=Ae[3];Ye<Ue&&(Ye=Ue),Ye>Ve&&(Ye=Ve);for(var $e=(Ae[3]-Ye)/(Ae[3]-ze[3]+1e-9),rt=[],ht=0;ht<4;ht++)rt[ht]=(1-$e)*Ae[ht]+$e*ze[ht];return rt}function de(Ae,ze,Ue){return Ae>=ze&&Ae<=Ue}function me(Ae){var ze=.001*(W-j);return Ae>=j-ze&&Ae<=W+ze}function _e(Ae){for(var ze=[],Ue=0;Ue<4;Ue++){var Ve=Ae[Ue];ze.push([n._x[Ve],n._y[Ve],n._z[Ve],n._value[Ve]])}return ze}var Se=3;function we(Ae,ze,Ue,Ve,Ye,$e){$e||($e=1),Ue=[-1,-1,-1];var rt=!1,ht=[de(ze[0][3],Ve,Ye),de(ze[1][3],Ve,Ye),de(ze[2][3],Ve,Ye)];if(!ht[0]&&!ht[1]&&!ht[2])return!1;var nt=function(wt,ut,lt){return me(ut[0][3])&&me(ut[1][3])&&me(ut[2][3])?(ue(wt,ut,lt),!0):$e<Se&&we(wt,ut,lt,j,W,++$e)};if(ht[0]&&ht[1]&&ht[2])return nt(Ae,ze,Ue)||rt;var bt=!1;return[[0,1,2],[2,0,1],[1,2,0]].forEach(function(wt){if(ht[wt[0]]&&ht[wt[1]]&&!ht[wt[2]]){var ut=ze[wt[0]],lt=ze[wt[1]],Tt=ze[wt[2]],Et=ce(Tt,ut,Ve,Ye),St=ce(Tt,lt,Ve,Ye);rt=nt(Ae,[St,Et,ut],[-1,-1,Ue[wt[0]]])||rt,rt=nt(Ae,[ut,lt,St],[Ue[wt[0]],Ue[wt[1]],-1])||rt,bt=!0}}),bt||[[0,1,2],[1,2,0],[2,0,1]].forEach(function(wt){if(ht[wt[0]]&&!ht[wt[1]]&&!ht[wt[2]]){var ut=ze[wt[0]],lt=ze[wt[1]],Tt=ze[wt[2]],Et=ce(lt,ut,Ve,Ye),St=ce(Tt,ut,Ve,Ye);rt=nt(Ae,[St,Et,ut],[-1,-1,Ue[wt[0]]])||rt,bt=!0}}),rt}function xe(Ae,ze,Ue,Ve){var Ye=!1,$e=_e(ze),rt=[de($e[0][3],Ue,Ve),de($e[1][3],Ue,Ve),de($e[2][3],Ue,Ve),de($e[3][3],Ue,Ve)];if(!(rt[0]||rt[1]||rt[2]||rt[3]))return Ye;if(rt[0]&&rt[1]&&rt[2]&&rt[3])return d&&(Ye=function(nt,bt,wt){var ut=function(lt,Tt,Et){ue(nt,[bt[lt],bt[Tt],bt[Et]],[wt[lt],wt[Tt],wt[Et]])};ut(0,1,2),ut(3,0,1),ut(2,3,0),ut(1,2,3)}(Ae,$e,ze)||Ye),Ye;var ht=!1;return[[0,1,2,3],[3,0,1,2],[2,3,0,1],[1,2,3,0]].forEach(function(nt){if(rt[nt[0]]&&rt[nt[1]]&&rt[nt[2]]&&!rt[nt[3]]){var bt=$e[nt[0]],wt=$e[nt[1]],ut=$e[nt[2]],lt=$e[nt[3]];if(d)Ye=ue(Ae,[bt,wt,ut],[ze[nt[0]],ze[nt[1]],ze[nt[2]]])||Ye;else{var Tt=ce(lt,bt,Ue,Ve),Et=ce(lt,wt,Ue,Ve),St=ce(lt,ut,Ue,Ve);Ye=ue(null,[Tt,Et,St],[-1,-1,-1])||Ye}ht=!0}}),ht||([[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(nt){if(rt[nt[0]]&&rt[nt[1]]&&!rt[nt[2]]&&!rt[nt[3]]){var bt=$e[nt[0]],wt=$e[nt[1]],ut=$e[nt[2]],lt=$e[nt[3]],Tt=ce(ut,bt,Ue,Ve),Et=ce(ut,wt,Ue,Ve),St=ce(lt,wt,Ue,Ve),Ft=ce(lt,bt,Ue,Ve);d?(Ye=ue(Ae,[bt,Ft,Tt],[ze[nt[0]],-1,-1])||Ye,Ye=ue(Ae,[wt,Et,St],[ze[nt[1]],-1,-1])||Ye):Ye=function(zt,Je,et){var Ze=function(Qe,st,ft){ue(null,[Je[Qe],Je[st],Je[ft]],[et[Qe],et[st],et[ft]])};Ze(0,1,2),Ze(2,3,0)}(0,[Tt,Et,St,Ft],[-1,-1,-1,-1])||Ye,ht=!0}}),ht||[[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2]].forEach(function(nt){if(rt[nt[0]]&&!rt[nt[1]]&&!rt[nt[2]]&&!rt[nt[3]]){var bt=$e[nt[0]],wt=$e[nt[1]],ut=$e[nt[2]],lt=$e[nt[3]],Tt=ce(wt,bt,Ue,Ve),Et=ce(ut,bt,Ue,Ve),St=ce(lt,bt,Ue,Ve);d?(Ye=ue(Ae,[bt,Tt,Et],[ze[nt[0]],-1,-1])||Ye,Ye=ue(Ae,[bt,Et,St],[ze[nt[0]],-1,-1])||Ye,Ye=ue(Ae,[bt,St,Tt],[ze[nt[0]],-1,-1])||Ye):Ye=ue(null,[Tt,Et,St],[-1,-1,-1])||Ye,ht=!0}})),Ye}function De(Ae,ze,Ue,Ve,Ye,$e,rt,ht,nt,bt,wt){var ut=!1;return T&&(re(Ae,"A")&&(ut=xe(null,[ze,Ue,Ve,$e],bt,wt)||ut),re(Ae,"B")&&(ut=xe(null,[Ue,Ve,Ye,nt],bt,wt)||ut),re(Ae,"C")&&(ut=xe(null,[Ue,$e,rt,nt],bt,wt)||ut),re(Ae,"D")&&(ut=xe(null,[Ve,$e,ht,nt],bt,wt)||ut),re(Ae,"E")&&(ut=xe(null,[Ue,Ve,$e,nt],bt,wt)||ut)),d&&(ut=xe(Ae,[Ue,Ve,$e,nt],bt,wt)||ut),ut}function Ee(Ae,ze,Ue,Ve,Ye,$e,rt,ht){return[ht[0]===!0||we(Ae,_e([ze,Ue,Ve]),[ze,Ue,Ve],$e,rt),ht[1]===!0||we(Ae,_e([Ve,Ye,ze]),[Ve,Ye,ze],$e,rt)]}function Me(Ae,ze,Ue,Ve,Ye,$e,rt,ht,nt){return ht?Ee(Ae,ze,Ue,Ye,Ve,$e,rt,nt):Ee(Ae,Ue,Ye,Ve,ze,$e,rt,nt)}function he(Ae,ze,Ue,Ve,Ye,$e,rt){var ht,nt,bt,wt,ut=!1,lt=function(){ut=we(Ae,[ht,nt,bt],[-1,-1,-1],Ye,$e)||ut,ut=we(Ae,[bt,wt,ht],[-1,-1,-1],Ye,$e)||ut},Tt=rt[0],Et=rt[1],St=rt[2];return Tt&&(ht=X(_e([D(ze,Ue-0,Ve-0)])[0],_e([D(ze-1,Ue-0,Ve-0)])[0],Tt),nt=X(_e([D(ze,Ue-0,Ve-1)])[0],_e([D(ze-1,Ue-0,Ve-1)])[0],Tt),bt=X(_e([D(ze,Ue-1,Ve-1)])[0],_e([D(ze-1,Ue-1,Ve-1)])[0],Tt),wt=X(_e([D(ze,Ue-1,Ve-0)])[0],_e([D(ze-1,Ue-1,Ve-0)])[0],Tt),lt()),Et&&(ht=X(_e([D(ze-0,Ue,Ve-0)])[0],_e([D(ze-0,Ue-1,Ve-0)])[0],Et),nt=X(_e([D(ze-0,Ue,Ve-1)])[0],_e([D(ze-0,Ue-1,Ve-1)])[0],Et),bt=X(_e([D(ze-1,Ue,Ve-1)])[0],_e([D(ze-1,Ue-1,Ve-1)])[0],Et),wt=X(_e([D(ze-1,Ue,Ve-0)])[0],_e([D(ze-1,Ue-1,Ve-0)])[0],Et),lt()),St&&(ht=X(_e([D(ze-0,Ue-0,Ve)])[0],_e([D(ze-0,Ue-0,Ve-1)])[0],St),nt=X(_e([D(ze-0,Ue-1,Ve)])[0],_e([D(ze-0,Ue-1,Ve-1)])[0],St),bt=X(_e([D(ze-1,Ue-1,Ve)])[0],_e([D(ze-1,Ue-1,Ve-1)])[0],St),wt=X(_e([D(ze-1,Ue-0,Ve)])[0],_e([D(ze-1,Ue-0,Ve-1)])[0],St),lt()),ut}function fe(Ae,ze,Ue,Ve,Ye,$e,rt,ht,nt,bt,wt,ut){var lt=Ae;return ut?(T&&Ae==="even"&&(lt=null),De(lt,ze,Ue,Ve,Ye,$e,rt,ht,nt,bt,wt)):(T&&Ae==="odd"&&(lt=null),De(lt,nt,ht,rt,$e,Ye,Ve,Ue,ze,bt,wt))}function ae(Ae,ze,Ue,Ve,Ye){for(var $e=[],rt=0,ht=0;ht<ze.length;ht++)for(var nt=ze[ht],bt=1;bt<B;bt++)for(var wt=1;wt<z;wt++)$e.push(Me(Ae,D(nt,wt-1,bt-1),D(nt,wt-1,bt),D(nt,wt,bt-1),D(nt,wt,bt),Ue,Ve,(nt+wt+bt)%2,Ye&&Ye[rt]?Ye[rt]:[])),rt++;return $e}function be(Ae,ze,Ue,Ve,Ye){for(var $e=[],rt=0,ht=0;ht<ze.length;ht++)for(var nt=ze[ht],bt=1;bt<O;bt++)for(var wt=1;wt<B;wt++)$e.push(Me(Ae,D(bt-1,nt,wt-1),D(bt,nt,wt-1),D(bt-1,nt,wt),D(bt,nt,wt),Ue,Ve,(bt+nt+wt)%2,Ye&&Ye[rt]?Ye[rt]:[])),rt++;return $e}function Ie(Ae,ze,Ue,Ve,Ye){for(var $e=[],rt=0,ht=0;ht<ze.length;ht++)for(var nt=ze[ht],bt=1;bt<z;bt++)for(var wt=1;wt<O;wt++)$e.push(Me(Ae,D(wt-1,bt-1,nt),D(wt-1,bt,nt),D(wt,bt-1,nt),D(wt,bt,nt),Ue,Ve,(wt+bt+nt)%2,Ye&&Ye[rt]?Ye[rt]:[])),rt++;return $e}function Te(Ae,ze,Ue){for(var Ve=1;Ve<B;Ve++)for(var Ye=1;Ye<z;Ye++)for(var $e=1;$e<O;$e++)fe(Ae,D($e-1,Ye-1,Ve-1),D($e-1,Ye-1,Ve),D($e-1,Ye,Ve-1),D($e-1,Ye,Ve),D($e,Ye-1,Ve-1),D($e,Ye-1,Ve),D($e,Ye,Ve-1),D($e,Ye,Ve),ze,Ue,($e+Ye+Ve)%2)}function Ne(Ae,ze,Ue,Ve,Ye,$e){for(var rt=[],ht=0,nt=0;nt<ze.length;nt++)for(var bt=ze[nt],wt=1;wt<B;wt++)for(var ut=1;ut<z;ut++)rt.push(he(Ae,bt,ut,wt,Ue,Ve,Ye[nt],$e&&$e[ht]&&$e[ht])),ht++;return rt}function qe(Ae,ze,Ue,Ve,Ye,$e){for(var rt=[],ht=0,nt=0;nt<ze.length;nt++)for(var bt=ze[nt],wt=1;wt<O;wt++)for(var ut=1;ut<B;ut++)rt.push(he(Ae,wt,bt,ut,Ue,Ve,Ye[nt],$e&&$e[ht]&&$e[ht])),ht++;return rt}function ve(Ae,ze,Ue,Ve,Ye,$e){for(var rt=[],ht=0,nt=0;nt<ze.length;nt++)for(var bt=ze[nt],wt=1;wt<z;wt++)for(var ut=1;ut<O;ut++)rt.push(he(Ae,ut,wt,bt,Ue,Ve,Ye[nt],$e&&$e[ht]&&$e[ht])),ht++;return rt}function Ce(Ae,ze){for(var Ue=[],Ve=Ae;Ve<ze;Ve++)Ue.push(Ve);return Ue}return function(){te(),function(){for(var nt=0;nt<O;nt++)for(var bt=0;bt<z;bt++)for(var wt=0;wt<B;wt++){var ut=D(nt,bt,wt);J(n._x[ut],n._y[ut],n._z[ut],n._value[ut])}}();var Ae=null;if(v&&x&&(ee(x),d=!0,Te(Ae,j,W),d=!1),f&&m){ee(m);for(var ze=n.surface.pattern,Ue=n.surface.count,Ve=0;Ve<Ue;Ve++){var Ye=Ue===1?.5:Ve/(Ue-1),$e=(1-Ye)*j+Ye*W,rt=Math.abs($e-G)>Math.abs($e-V)?[G,$e]:[$e,V];T=!0,Te(ze,rt[0],rt[1]),T=!1}}var ht=[[Math.min(j,V),Math.max(j,V)],[Math.min(G,W),Math.max(G,W)]];["x","y","z"].forEach(function(nt){for(var bt=[],wt=0;wt<ht.length;wt++){var ut=0,lt=ht[wt][0],Tt=ht[wt][1],Et=n.slices[nt];if(Et.show&&Et.fill){ee(Et.fill);var St=[],Ft=[],zt=[];if(Et.locations.length)for(var Je=0;Je<Et.locations.length;Je++){var et=h(Et.locations[Je],nt==="x"?A:nt==="y"?C:P);et.distRatio===0?St.push(et.id):et.id>0&&(Ft.push(et.id),nt==="x"?zt.push([et.distRatio,0,0]):nt==="y"?zt.push([0,et.distRatio,0]):zt.push([0,0,et.distRatio]))}else St=Ce(1,nt==="x"?O-1:nt==="y"?z-1:B-1);Ft.length>0&&(bt[ut]=nt==="x"?Ne(Ae,Ft,lt,Tt,zt,bt[ut]):nt==="y"?qe(Ae,Ft,lt,Tt,zt,bt[ut]):ve(Ae,Ft,lt,Tt,zt,bt[ut]),ut++),St.length>0&&(bt[ut]=nt==="x"?ae(Ae,St,lt,Tt,bt[ut]):nt==="y"?be(Ae,St,lt,Tt,bt[ut]):Ie(Ae,St,lt,Tt,bt[ut]),ut++)}var Ze=n.caps[nt];Ze.show&&Ze.fill&&(ee(Ze.fill),bt[ut]=nt==="x"?ae(Ae,[0,O-1],lt,Tt,bt[ut]):nt==="y"?be(Ae,[0,z-1],lt,Tt,bt[ut]):Ie(Ae,[0,B-1],lt,Tt,bt[ut]),ut++)}}),M===0&&te(),n._meshX=u,n._meshY=p,n._meshZ=c,n._meshIntensity=b,n._Xs=A,n._Ys=C,n._Zs=P}(),n}R.exports={findNearestOnAxis:h,generateIsoMeshes:r,createIsosurfaceTrace:function(n,a){var s=n.glplot.gl,u=w({gl:s}),p=new l(n,u,a.uid);return u._trace=p,p.update(a),n.glplot.add(u),p}}},82738:function(R,E,e){var w=e(71828),k=e(73972),i=e(16249),_=e(1586);function y(h,l,t,o,r){var n=r("isomin"),a=r("isomax");a!=null&&n!=null&&n>a&&(l.isomin=null,l.isomax=null);var s=r("x"),u=r("y"),p=r("z"),c=r("value");s&&s.length&&u&&u.length&&p&&p.length&&c&&c.length?(k.getComponentMethod("calendars","handleTraceDefaults")(h,l,["x","y","z"],o),r("valuehoverformat"),["x","y","z"].forEach(function(b){r(b+"hoverformat");var g="caps."+b;r(g+".show")&&r(g+".fill");var f="slices."+b;r(f+".show")&&(r(f+".fill"),r(f+".locations"))}),r("spaceframe.show")&&r("spaceframe.fill"),r("surface.show")&&(r("surface.count"),r("surface.fill"),r("surface.pattern")),r("contour.show")&&(r("contour.color"),r("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(b){r(b)}),_(h,l,o,r,{prefix:"",cLetter:"c"}),l._length=null):l.visible=!1}R.exports={supplyDefaults:function(h,l,t,o){y(h,l,0,o,function(r,n){return w.coerce(h,l,i,r,n)})},supplyIsoDefaults:y}},64943:function(R,E,e){R.exports={attributes:e(16249),supplyDefaults:e(82738).supplyDefaults,calc:e(56959),colorbar:{min:"cmin",max:"cmax"},plot:e(22674).createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:e(58547),categories:["gl3d","showLegend"],meta:{}}},2418:function(R,E,e){var w=e(50693),k=e(12663).axisHoverFormat,i=e(5386).fF,_=e(54532),y=e(9012),h=e(1426).extendFlat;R.exports=h({x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},i:{valType:"data_array",editType:"calc"},j:{valType:"data_array",editType:"calc"},k:{valType:"data_array",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:i({editType:"calc"}),xhoverformat:k("x"),yhoverformat:k("y"),zhoverformat:k("z"),delaunayaxis:{valType:"enumerated",values:["x","y","z"],dflt:"z",editType:"calc"},alphahull:{valType:"number",dflt:-1,editType:"calc"},intensity:{valType:"data_array",editType:"calc"},intensitymode:{valType:"enumerated",values:["vertex","cell"],dflt:"vertex",editType:"calc"},color:{valType:"color",editType:"calc"},vertexcolor:{valType:"data_array",editType:"calc"},facecolor:{valType:"data_array",editType:"calc"},transforms:void 0},w("",{colorAttr:"`intensity`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:_.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc"},contour:{show:h({},_.contours.x.show,{}),color:_.contours.x.color,width:_.contours.x.width,editType:"calc"},lightposition:{x:h({},_.lightposition.x,{dflt:1e5}),y:h({},_.lightposition.y,{dflt:1e5}),z:h({},_.lightposition.z,{dflt:0}),editType:"calc"},lighting:h({vertexnormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-12,editType:"calc"},facenormalsepsilon:{valType:"number",min:0,max:1,dflt:1e-6,editType:"calc"},editType:"calc"},_.lighting),hoverinfo:h({},y.hoverinfo,{editType:"calc"}),showlegend:h({},y.showlegend,{dflt:!1})})},82932:function(R,E,e){var w=e(78803);R.exports=function(k,i){i.intensity&&w(k,i,{vals:i.intensity,containerStr:"",cLetter:"c"})}},91134:function(R,E,e){var w=e(9330).gl_mesh3d,k=e(9330).delaunay_triangulate,i=e(9330).alpha_shape,_=e(9330).convex_hull,y=e(81697).parseColorScale,h=e(78614),l=e(21081).extractOpts,t=e(90060);function o(p,c,b){this.scene=p,this.uid=b,this.mesh=c,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var r=o.prototype;function n(p){for(var c=[],b=p.length,g=0;g<b;g++)c[g]=h(p[g]);return c}function a(p,c,b,g){for(var f=[],v=c.length,m=0;m<v;m++)f[m]=p.d2l(c[m],0,g)*b;return f}function s(p){for(var c=[],b=p.length,g=0;g<b;g++)c[g]=Math.round(p[g]);return c}function u(p,c){for(var b=p.length,g=0;g<b;g++)if(p[g]<=-.5||p[g]>=c-.5)return!1;return!0}r.handlePick=function(p){if(p.object===this.mesh){var c=p.index=p.data.index;p.data._cellCenter?p.traceCoordinate=p.data.dataCoordinate:p.traceCoordinate=[this.data.x[c],this.data.y[c],this.data.z[c]];var b=this.data.hovertext||this.data.text;return Array.isArray(b)&&b[c]!==void 0?p.textLabel=b[c]:b&&(p.textLabel=b),!0}},r.update=function(p){var c=this.scene,b=c.fullSceneLayout;this.data=p;var g,f=p.x.length,v=t(a(b.xaxis,p.x,c.dataScale[0],p.xcalendar),a(b.yaxis,p.y,c.dataScale[1],p.ycalendar),a(b.zaxis,p.z,c.dataScale[2],p.zcalendar));if(p.i&&p.j&&p.k){if(p.i.length!==p.j.length||p.j.length!==p.k.length||!u(p.i,f)||!u(p.j,f)||!u(p.k,f))return;g=t(s(p.i),s(p.j),s(p.k))}else g=p.alphahull===0?_(v):p.alphahull>0?i(p.alphahull,v):function(d,M){for(var A=["x","y","z"].indexOf(d),C=[],P=M.length,O=0;O<P;O++)C[O]=[M[O][(A+1)%3],M[O][(A+2)%3]];return k(C)}(p.delaunayaxis,v);var m={positions:v,cells:g,lightPosition:[p.lightposition.x,p.lightposition.y,p.lightposition.z],ambient:p.lighting.ambient,diffuse:p.lighting.diffuse,specular:p.lighting.specular,roughness:p.lighting.roughness,fresnel:p.lighting.fresnel,vertexNormalsEpsilon:p.lighting.vertexnormalsepsilon,faceNormalsEpsilon:p.lighting.facenormalsepsilon,opacity:p.opacity,contourEnable:p.contour.show,contourColor:h(p.contour.color).slice(0,3),contourWidth:p.contour.width,useFacetNormals:p.flatshading};if(p.intensity){var x=l(p);this.color="#fff";var T=p.intensitymode;m[T+"Intensity"]=p.intensity,m[T+"IntensityBounds"]=[x.min,x.max],m.colormap=y(p)}else p.vertexcolor?(this.color=p.vertexcolor[0],m.vertexColors=n(p.vertexcolor)):p.facecolor?(this.color=p.facecolor[0],m.cellColors=n(p.facecolor)):(this.color=p.color,m.meshColor=h(p.color));this.mesh.update(m)},r.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},R.exports=function(p,c){var b=p.glplot.gl,g=w({gl:b}),f=new o(p,g,c.uid);return g._trace=f,f.update(c),p.glplot.add(g),f}},58669:function(R,E,e){var w=e(73972),k=e(71828),i=e(1586),_=e(2418);R.exports=function(y,h,l,t){function o(n,a){return k.coerce(y,h,_,n,a)}function r(n){var a=n.map(function(s){var u=o(s);return u&&k.isArrayOrTypedArray(u)?u:null});return a.every(function(s){return s&&s.length===a[0].length})&&a}r(["x","y","z"])?(r(["i","j","k"]),(!h.i||h.j&&h.k)&&(!h.j||h.k&&h.i)&&(!h.k||h.i&&h.j)?(w.getComponentMethod("calendars","handleTraceDefaults")(y,h,["x","y","z"],t),["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(n){o(n)}),o("contour.show")&&(o("contour.color"),o("contour.width")),"intensity"in y?(o("intensity"),o("intensitymode"),i(y,h,t,o,{prefix:"",cLetter:"c"})):(h.showscale=!1,"facecolor"in y?o("facecolor"):"vertexcolor"in y?o("vertexcolor"):o("color",l)),o("text"),o("hovertext"),o("hovertemplate"),o("xhoverformat"),o("yhoverformat"),o("zhoverformat"),h._length=null):h.visible=!1):h.visible=!1}},21164:function(R,E,e){R.exports={attributes:e(2418),supplyDefaults:e(58669),calc:e(82932),colorbar:{min:"cmin",max:"cmax"},plot:e(91134),moduleType:"trace",name:"mesh3d",basePlotModule:e(58547),categories:["gl3d","showLegend"],meta:{}}},2522:function(R,E,e){var w=e(71828).extendFlat,k=e(82196),i=e(12663).axisHoverFormat,_=e(79952).P,y=e(77914),h=e(22372),l=h.INCREASING.COLOR,t=h.DECREASING.COLOR,o=k.line;function r(n){return{line:{color:w({},o.color,{dflt:n}),width:o.width,dash:_,editType:"style"},editType:"style"}}R.exports={xperiod:k.xperiod,xperiod0:k.xperiod0,xperiodalignment:k.xperiodalignment,xhoverformat:i("x"),yhoverformat:i("y"),x:{valType:"data_array",editType:"calc+clearAxisTypes"},open:{valType:"data_array",editType:"calc"},high:{valType:"data_array",editType:"calc"},low:{valType:"data_array",editType:"calc"},close:{valType:"data_array",editType:"calc"},line:{width:w({},o.width,{}),dash:w({},_,{}),editType:"style"},increasing:r(l),decreasing:r(t),text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},tickwidth:{valType:"number",min:0,max:.5,dflt:.3,editType:"calc"},hoverlabel:w({},y.hoverlabel,{split:{valType:"boolean",dflt:!1,editType:"style"}})}},3485:function(R,E,e){var w=e(71828),k=w._,i=e(89298),_=e(42973),y=e(50606).BADNUM;function h(t,o,r,n){return{o:t,h:o,l:r,c:n}}function l(t,o,r,n,a,s){for(var u=a.makeCalcdata(o,"open"),p=a.makeCalcdata(o,"high"),c=a.makeCalcdata(o,"low"),b=a.makeCalcdata(o,"close"),g=Array.isArray(o.text),f=Array.isArray(o.hovertext),v=!0,m=null,x=!!o.xperiodalignment,T=[],d=0;d<n.length;d++){var M=n[d],A=u[d],C=p[d],P=c[d],O=b[d];if(M!==y&&A!==y&&C!==y&&P!==y&&O!==y){O===A?m!==null&&O!==m&&(v=O>m):v=O>A,m=O;var z=s(A,C,P,O);z.pos=M,z.yc=(A+O)/2,z.i=d,z.dir=v?"increasing":"decreasing",z.x=z.pos,z.y=[P,C],x&&(z.orig_p=r[d]),g&&(z.tx=o.text[d]),f&&(z.htx=o.hovertext[d]),T.push(z)}else T.push({pos:M,empty:!0})}return o._extremes[a._id]=i.findExtremes(a,w.concat(c,p),{padded:!0}),T.length&&(T[0].t={labels:{open:k(t,"open:")+" ",high:k(t,"high:")+" ",low:k(t,"low:")+" ",close:k(t,"close:")+" "}}),T}R.exports={calc:function(t,o){var r=i.getFromId(t,o.xaxis),n=i.getFromId(t,o.yaxis),a=function(b,g,f){var v=f._minDiff;if(!v){var m,x=b._fullData,T=[];for(v=1/0,m=0;m<x.length;m++){var d=x[m];if(d.type==="ohlc"&&d.visible===!0&&d.xaxis===g._id){T.push(d);var M=g.makeCalcdata(d,"x");d._origX=M;var A=_(f,g,"x",M).vals;d._xcalc=A;var C=w.distinctVals(A).minDiff;C&&isFinite(C)&&(v=Math.min(v,C))}}for(v===1/0&&(v=1),m=0;m<T.length;m++)T[m]._minDiff=v}return v*f.tickwidth}(t,r,o),s=o._minDiff;o._minDiff=null;var u=o._origX;o._origX=null;var p=o._xcalc;o._xcalc=null;var c=l(t,o,u,p,n,h);return o._extremes[r._id]=i.findExtremes(r,p,{vpad:s/2}),c.length?(w.extendFlat(c[0].t,{wHover:s/2,tickLen:a}),c):[{t:{empty:!0}}]},calcCommon:l}},16169:function(R,E,e){var w=e(71828),k=e(14555),i=e(73927),_=e(2522);function y(h,l,t,o){t(o+".line.color"),t(o+".line.width",l.line.width),t(o+".line.dash",l.line.dash)}R.exports=function(h,l,t,o){function r(n,a){return w.coerce(h,l,_,n,a)}k(h,l,r,o)?(i(h,l,o,r,{x:!0}),r("xhoverformat"),r("yhoverformat"),r("line.width"),r("line.dash"),y(0,l,r,"increasing"),y(0,l,r,"decreasing"),r("text"),r("hovertext"),r("tickwidth"),o._requestRangeslider[l.xaxis]=!0):l.visible=!1}},66449:function(R,E,e){var w=e(89298),k=e(71828),i=e(30211),_=e(7901),y=e(71828).fillText,h=e(22372),l={increasing:h.INCREASING.SYMBOL,decreasing:h.DECREASING.SYMBOL};function t(n,a,s,u){var p,c,b=n.cd,g=n.xa,f=b[0].trace,v=b[0].t,m=f.type,x=m==="ohlc"?"l":"min",T=m==="ohlc"?"h":"max",d=v.bPos||0,M=function(j){return j.pos+d-a},A=v.bdPos||v.tickLen,C=v.wHover,P=Math.min(1,A/Math.abs(g.r2c(g.range[1])-g.r2c(g.range[0])));function O(j){var W=M(j);return i.inbox(W-C,W+C,p)}function z(j){var W=j[x],Z=j[T];return W===Z||i.inbox(W-s,Z-s,p)}function B(j){return(O(j)+z(j))/2}p=n.maxHoverDistance-P,c=n.maxSpikeDistance-P;var Y=i.getDistanceFunction(u,O,z,B);if(i.getClosest(b,Y,n),n.index===!1)return null;var D=b[n.index];if(D.empty)return null;var G=f[D.dir],V=G.line.color;return _.opacity(V)&&G.line.width?n.color=V:n.color=G.fillcolor,n.x0=g.c2p(D.pos+d-A,!0),n.x1=g.c2p(D.pos+d+A,!0),n.xLabelVal=D.orig_p!==void 0?D.orig_p:D.pos,n.spikeDistance=B(D)*c/p,n.xSpike=g.c2p(D.pos,!0),n}function o(n,a,s,u){var p=n.cd,c=n.ya,b=p[0].trace,g=p[0].t,f=[],v=t(n,a,s,u);if(!v)return[];var m=p[v.index].hi||b.hoverinfo,x=m.split("+");if(m!=="all"&&x.indexOf("y")===-1)return[];for(var T=["high","open","close","low"],d={},M=0;M<T.length;M++){var A,C=T[M],P=b[C][v.index],O=c.c2p(P,!0);P in d?(A=d[P]).yLabel+="<br>"+g.labels[C]+w.hoverLabelText(c,P,b.yhoverformat):((A=k.extendFlat({},v)).y0=A.y1=O,A.yLabelVal=P,A.yLabel=g.labels[C]+w.hoverLabelText(c,P,b.yhoverformat),A.name="",f.push(A),d[P]=A)}return f}function r(n,a,s,u){var p=n.cd,c=n.ya,b=p[0].trace,g=p[0].t,f=t(n,a,s,u);if(!f)return[];var v=p[f.index],m=f.index=v.i,x=v.dir;function T(z){return g.labels[z]+w.hoverLabelText(c,b[z][m],b.yhoverformat)}var d=v.hi||b.hoverinfo,M=d.split("+"),A=d==="all",C=A||M.indexOf("y")!==-1,P=A||M.indexOf("text")!==-1,O=C?[T("open"),T("high"),T("low"),T("close")+" "+l[x]]:[];return P&&y(v,b,O),f.extraText=O.join("<br>"),f.y0=f.y1=c.c2p(v.yc,!0),[f]}R.exports={hoverPoints:function(n,a,s,u){return n.cd[0].trace.hoverlabel.split?o(n,a,s,u):r(n,a,s,u)},hoverSplit:o,hoverOnPoints:r}},54186:function(R,E,e){R.exports={moduleType:"trace",name:"ohlc",basePlotModule:e(93612),categories:["cartesian","svg","showLegend"],meta:{},attributes:e(2522),supplyDefaults:e(16169),calc:e(3485).calc,plot:e(72314),style:e(53101),hoverPoints:e(66449).hoverPoints,selectPoints:e(67324)}},14555:function(R,E,e){var w=e(73972),k=e(71828);R.exports=function(i,_,y,h){var l=y("x"),t=y("open"),o=y("high"),r=y("low"),n=y("close");if(y("hoverlabel.split"),w.getComponentMethod("calendars","handleTraceDefaults")(i,_,["x"],h),t&&o&&r&&n){var a=Math.min(t.length,o.length,r.length,n.length);return l&&(a=Math.min(a,k.minRowLength(l))),_._length=a,a}}},72314:function(R,E,e){var w=e(39898),k=e(71828);R.exports=function(i,_,y,h){var l=_.yaxis,t=_.xaxis,o=!!t.rangebreaks;k.makeTraceGroups(h,y,"trace ohlc").each(function(r){var n=w.select(this),a=r[0],s=a.t;if(a.trace.visible!==!0||s.empty)n.remove();else{var u=s.tickLen,p=n.selectAll("path").data(k.identity);p.enter().append("path"),p.exit().remove(),p.attr("d",function(c){if(c.empty)return"M0,0Z";var b=t.c2p(c.pos-u,!0),g=t.c2p(c.pos+u,!0),f=o?(b+g)/2:t.c2p(c.pos,!0);return"M"+b+","+l.c2p(c.o,!0)+"H"+f+"M"+f+","+l.c2p(c.h,!0)+"V"+l.c2p(c.l,!0)+"M"+g+","+l.c2p(c.c,!0)+"H"+f})}})}},67324:function(R){R.exports=function(E,e){var w,k=E.cd,i=E.xaxis,_=E.yaxis,y=[],h=k[0].t.bPos||0;if(e===!1)for(w=0;w<k.length;w++)k[w].selected=0;else for(w=0;w<k.length;w++){var l=k[w];e.contains([i.c2p(l.pos+h),_.c2p(l.yc)],null,l.i,E)?(y.push({pointNumber:l.i,x:i.c2d(l.pos),y:_.c2d(l.yc)}),l.selected=1):l.selected=0}return y}},53101:function(R,E,e){var w=e(39898),k=e(91424),i=e(7901);R.exports=function(_,y,h){var l=h||w.select(_).selectAll("g.ohlclayer").selectAll("g.trace");l.style("opacity",function(t){return t[0].trace.opacity}),l.each(function(t){var o=t[0].trace;w.select(this).selectAll("path").each(function(r){if(!r.empty){var n=o[r.dir].line;w.select(this).style("fill","none").call(i.stroke,n.color).call(k.dashLine,n.dash,n.width).style("opacity",o.selectedpoints&&!r.selected?.3:1)}})})}},99506:function(R,E,e){var w=e(1426).extendFlat,k=e(9012),i=e(41940),_=e(50693),y=e(5386).fF,h=e(27670).Y,l=w({editType:"calc"},_("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot"},hovertemplate:y({editType:"plot",arrayOk:!1},{keys:["count","probability"]})});R.exports={domain:h({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:w({},k.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot"},hovertemplate:y({editType:"plot",arrayOk:!1},{keys:["count","probability","category","categorycount","colorcount","bandcolorcount"]}),arrangement:{valType:"enumerated",values:["perpendicular","freeform","fixed"],dflt:"perpendicular",editType:"plot"},bundlecolors:{valType:"boolean",dflt:!0,editType:"plot"},sortpaths:{valType:"enumerated",values:["forward","backward"],dflt:"forward",editType:"plot"},labelfont:i({editType:"calc"}),tickfont:i({editType:"calc"}),dimensions:{_isLinkedToArray:"dimension",label:{valType:"string",editType:"calc"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},values:{valType:"data_array",dflt:[],editType:"calc"},displayindex:{valType:"integer",editType:"calc"},editType:"calc",visible:{valType:"boolean",dflt:!0,editType:"calc"}},line:l,counts:{valType:"number",min:0,dflt:1,arrayOk:!0,editType:"calc"},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}},27677:function(R,E,e){var w=e(27659).a0,k=e(45784),i="parcats";E.name=i,E.plot=function(_,y,h,l){var t=w(_.calcdata,i);if(t.length){var o=t[0];k(_,o,h,l)}},E.clean=function(_,y,h,l){var t=l._has&&l._has("parcats"),o=y._has&&y._has("parcats");t&&!o&&l._paperdiv.selectAll(".parcats").remove()}},28699:function(R,E,e){var w=e(28984).wrap,k=e(52075).hasColorscale,i=e(78803),_=e(75744),y=e(91424),h=e(71828),l=e(92770);function t(n,a,s){n.valueInds.push(a),n.count+=s}function o(n,a,s){return{categoryInds:n,color:a,rawColor:s,valueInds:[],count:0}}function r(n,a,s){n.valueInds.push(a),n.count+=s}R.exports=function(n,a){var s=h.filterVisible(a.dimensions);if(s.length===0)return[];var u,p,c,b=s.map(function(Z){var ie;if(Z.categoryorder==="trace")ie=null;else if(Z.categoryorder==="array")ie=Z.categoryarray;else{ie=_(Z.values);for(var te=!0,J=0;J<ie.length;J++)if(!l(ie[J])){te=!1;break}ie.sort(te?h.sorterAsc:void 0),Z.categoryorder==="category descending"&&(ie=ie.reverse())}return function(X,ee){ee=ee==null?[]:ee.map(function(Se){return Se});var re={},oe={},ue=[];ee.forEach(function(Se,we){re[Se]=0,oe[Se]=we});for(var ce=0;ce<X.length;ce++){var de,me=X[ce];re[me]===void 0?(re[me]=1,de=ee.push(me)-1,oe[me]=de):(re[me]++,de=oe[me]),ue.push(de)}var _e=ee.map(function(Se){return re[Se]});return{uniqueValues:ee,uniqueCounts:_e,inds:ue}}(Z.values,ie)});u=h.isArrayOrTypedArray(a.counts)?a.counts:[a.counts],function(Z){var ie,te=Z.map(function(J){return J.displayindex});if(function(J){for(var X=new Array(J.length),ee=0;ee<J.length;ee++){if(J[ee]<0||J[ee]>=J.length||X[J[ee]]!==void 0)return!1;X[J[ee]]=!0}return!0}(te))for(ie=0;ie<Z.length;ie++)Z[ie]._displayindex=Z[ie].displayindex;else for(ie=0;ie<Z.length;ie++)Z[ie]._displayindex=ie}(s),s.forEach(function(Z,ie){(function(te,J){te._categoryarray=J.uniqueValues,te.ticktext===null||te.ticktext===void 0?te._ticktext=[]:te._ticktext=te.ticktext.slice();for(var X=te._ticktext.length;X<J.uniqueValues.length;X++)te._ticktext.push(J.uniqueValues[X])})(Z,b[ie])});var g,f=a.line;f?(k(a,"line")&&i(n,a,{vals:a.line.color,containerStr:"line",cLetter:"c"}),g=y.tryColorscale(f)):g=h.identity;var v,m,x,T,d,M=s[0].values.length,A={},C=b.map(function(Z){return Z.inds});for(c=0,v=0;v<M;v++){var P=[];for(m=0;m<C.length;m++)P.push(C[m][v]);p=u[v%u.length],c+=p;var O=(x=v,T=void 0,d=void 0,h.isArrayOrTypedArray(f.color)?d=T=f.color[x%f.color.length]:T=f.color,{color:g(T),rawColor:d}),z=P+"-"+O.rawColor;A[z]===void 0&&(A[z]=o(P,O.color,O.rawColor)),r(A[z],v,p)}var B,Y=s.map(function(Z,ie){return function(te,J,X,ee,re){return{dimensionInd:te,containerInd:J,displayInd:X,dimensionLabel:ee,count:re,categories:[],dragX:null}}(ie,Z._index,Z._displayindex,Z.label,c)});for(v=0;v<M;v++)for(p=u[v%u.length],m=0;m<Y.length;m++){var D=Y[m].containerInd,G=b[m].inds[v],V=Y[m].categories;if(V[G]===void 0){var j=a.dimensions[D]._categoryarray[G],W=a.dimensions[D]._ticktext[G];V[G]={dimensionInd:m,categoryInd:B=G,categoryValue:j,displayInd:B,categoryLabel:W,valueInds:[],count:0,dragY:null}}t(V[G],v,p)}return w(function(Z,ie,te){var J=Z.map(function(X){return X.categories.length}).reduce(function(X,ee){return Math.max(X,ee)});return{dimensions:Z,paths:ie,trace:void 0,maxCats:J,count:te}}(Y,A,c))}},14647:function(R,E,e){var w=e(71828),k=e(52075).hasColorscale,i=e(1586),_=e(27670).c,y=e(85501),h=e(99506),l=e(94397);function t(o,r){function n(g,f){return w.coerce(o,r,h.dimensions,g,f)}var a=n("values"),s=n("visible");if(a&&a.length||(s=r.visible=!1),s){n("label"),n("displayindex",r._index);var u,p=o.categoryarray,c=Array.isArray(p)&&p.length>0;c&&(u="array");var b=n("categoryorder",u);b==="array"?(n("categoryarray"),n("ticktext")):(delete o.categoryarray,delete o.ticktext),c||b!=="array"||(r.categoryorder="trace")}}R.exports=function(o,r,n,a){function s(g,f){return w.coerce(o,r,h,g,f)}var u=y(o,r,{name:"dimensions",handleItemDefaults:t}),p=function(g,f,v,m,x){x("line.shape"),x("line.hovertemplate");var T=x("line.color",m.colorway[0]);if(k(g,"line")&&w.isArrayOrTypedArray(T)){if(T.length)return x("line.colorscale"),i(g,f,m,x,{prefix:"line.",cLetter:"c"}),T.length;f.line.color=v}return 1/0}(o,r,n,a,s);_(r,a,s),Array.isArray(u)&&u.length||(r.visible=!1),l(r,u,"values",p),s("hoveron"),s("hovertemplate"),s("arrangement"),s("bundlecolors"),s("sortpaths"),s("counts");var c={family:a.font.family,size:Math.round(a.font.size),color:a.font.color};w.coerceFont(s,"labelfont",c);var b={family:a.font.family,size:Math.round(a.font.size/1.2),color:a.font.color};w.coerceFont(s,"tickfont",b)}},94873:function(R,E,e){R.exports={attributes:e(99506),supplyDefaults:e(14647),calc:e(28699),plot:e(45784),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:e(27677),categories:["noOpacity"],meta:{}}},45460:function(R,E,e){var w=e(39898),k=e(81684).k4,i=e(72391),_=e(30211),y=e(71828),h=y.strTranslate,l=e(91424),t=e(84267),o=e(63893);function r(te,J,X,ee){var re=J._context.staticPlot,oe=te.map(V.bind(0,J,X)),ue=ee.selectAll("g.parcatslayer").data([null]);ue.enter().append("g").attr("class","parcatslayer").style("pointer-events",re?"none":"all");var ce=ue.selectAll("g.trace.parcats").data(oe,n),de=ce.enter().append("g").attr("class","trace parcats");ce.attr("transform",function(he){return h(he.x,he.y)}),de.append("g").attr("class","paths");var me=ce.select("g.paths").selectAll("path.path").data(function(he){return he.paths},n);me.attr("fill",function(he){return he.model.color});var _e=me.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",function(he){return he.model.color}).attr("fill-opacity",0);f(_e),me.attr("d",function(he){return he.svgD}),_e.empty()||me.sort(s),me.exit().remove(),me.on("mouseover",u).on("mouseout",p).on("click",g),de.append("g").attr("class","dimensions");var Se=ce.select("g.dimensions").selectAll("g.dimension").data(function(he){return he.dimensions},n);Se.enter().append("g").attr("class","dimension"),Se.attr("transform",function(he){return h(he.x,0)}),Se.exit().remove();var we=Se.selectAll("g.category").data(function(he){return he.categories},n),xe=we.enter().append("g").attr("class","category");we.attr("transform",function(he){return h(0,he.y)}),xe.append("rect").attr("class","catrect").attr("pointer-events","none"),we.select("rect.catrect").attr("fill","none").attr("width",function(he){return he.width}).attr("height",function(he){return he.height}),m(xe);var De=we.selectAll("rect.bandrect").data(function(he){return he.bands},n);De.each(function(){y.raiseToTop(this)}),De.attr("fill",function(he){return he.color});var Ee=De.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",function(he){return he.color}).attr("fill-opacity",0);De.attr("fill",function(he){return he.color}).attr("width",function(he){return he.width}).attr("height",function(he){return he.height}).attr("y",function(he){return he.y}).attr("cursor",function(he){return he.parcatsViewModel.arrangement==="fixed"?"default":he.parcatsViewModel.arrangement==="perpendicular"?"ns-resize":"move"}),x(Ee),De.exit().remove(),xe.append("text").attr("class","catlabel").attr("pointer-events","none");var Me=J._fullLayout.paper_bgcolor;we.select("text.catlabel").attr("text-anchor",function(he){return a(he)?"start":"end"}).attr("alignment-baseline","middle").style("text-shadow",o.makeTextShadow(Me)).style("fill","rgb(0, 0, 0)").attr("x",function(he){return a(he)?he.width+5:-5}).attr("y",function(he){return he.height/2}).text(function(he){return he.model.categoryLabel}).each(function(he){l.font(w.select(this),he.parcatsViewModel.categorylabelfont),o.convertToTspans(w.select(this),J)}),xe.append("text").attr("class","dimlabel"),we.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",function(he){return he.parcatsViewModel.arrangement==="fixed"?"default":"ew-resize"}).attr("x",function(he){return he.width/2}).attr("y",-5).text(function(he,fe){return fe===0?he.parcatsViewModel.model.dimensions[he.model.dimensionInd].dimensionLabel:null}).each(function(he){l.font(w.select(this),he.parcatsViewModel.labelfont)}),we.selectAll("rect.bandrect").on("mouseover",C).on("mouseout",P),we.exit().remove(),Se.call(w.behavior.drag().origin(function(he){return{x:he.x,y:0}}).on("dragstart",O).on("drag",z).on("dragend",B)),ce.each(function(he){he.traceSelection=w.select(this),he.pathSelection=w.select(this).selectAll("g.paths").selectAll("path.path"),he.dimensionSelection=w.select(this).selectAll("g.dimensions").selectAll("g.dimension")}),ce.exit().remove()}function n(te){return te.key}function a(te){var J=te.parcatsViewModel.dimensions.length,X=te.parcatsViewModel.dimensions[J-1].model.dimensionInd;return te.model.dimensionInd===X}function s(te,J){return te.model.rawColor>J.model.rawColor?1:te.model.rawColor<J.model.rawColor?-1:0}function u(te){if(!te.parcatsViewModel.dragDimension&&te.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){y.raiseToTop(this),v(w.select(this));var J=c(te),X=b(te);if(te.parcatsViewModel.graphDiv.emit("plotly_hover",{points:J,event:w.event,constraints:X}),te.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var ee,re,oe,ue=w.mouse(this)[0],ce=te.parcatsViewModel.graphDiv,de=te.parcatsViewModel.trace,me=ce._fullLayout,_e=me._paperdiv.node().getBoundingClientRect(),Se=te.parcatsViewModel.graphDiv.getBoundingClientRect();for(oe=0;oe<te.leftXs.length-1;oe++)if(te.leftXs[oe]+te.dimWidths[oe]-2<=ue&&ue<=te.leftXs[oe+1]+2){var we=te.parcatsViewModel.dimensions[oe],xe=te.parcatsViewModel.dimensions[oe+1];ee=(we.x+we.width+xe.x)/2,re=(te.topYs[oe]+te.topYs[oe+1]+te.height)/2;break}var De=te.parcatsViewModel.x+ee,Ee=te.parcatsViewModel.y+re,Me=t.mostReadable(te.model.color,["black","white"]),he=te.model.count,fe=he/te.parcatsViewModel.model.count,ae={countLabel:he,probabilityLabel:fe.toFixed(3)},be=[];te.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&be.push(["Count:",ae.countLabel].join(" ")),te.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&be.push(["P:",ae.probabilityLabel].join(" "));var Ie=be.join("<br>"),Te=w.mouse(ce)[0];_.loneHover({trace:de,x:De-_e.left+Se.left,y:Ee-_e.top+Se.top,text:Ie,color:te.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:Me,idealAlign:Te<De?"right":"left",hovertemplate:(de.line||{}).hovertemplate,hovertemplateLabels:ae,eventData:[{data:de._input,fullData:de,count:he,probability:fe}]},{container:me._hoverlayer.node(),outerContainer:me._paper.node(),gd:ce})}}}function p(te){if(!te.parcatsViewModel.dragDimension&&(f(w.select(this)),_.loneUnhover(te.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()),te.parcatsViewModel.pathSelection.sort(s),te.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1)){var J=c(te),X=b(te);te.parcatsViewModel.graphDiv.emit("plotly_unhover",{points:J,event:w.event,constraints:X})}}function c(te){for(var J=[],X=Y(te.parcatsViewModel),ee=0;ee<te.model.valueInds.length;ee++){var re=te.model.valueInds[ee];J.push({curveNumber:X,pointNumber:re})}return J}function b(te){for(var J={},X=te.parcatsViewModel.model.dimensions,ee=0;ee<X.length;ee++){var re=X[ee],oe=re.categories[te.model.categoryInds[ee]];J[re.containerInd]=oe.categoryValue}return te.model.rawColor!==void 0&&(J.color=te.model.rawColor),J}function g(te){if(te.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var J=c(te),X=b(te);te.parcatsViewModel.graphDiv.emit("plotly_click",{points:J,event:w.event,constraints:X})}}function f(te){te.attr("fill",function(J){return J.model.color}).attr("fill-opacity",.6).attr("stroke","lightgray").attr("stroke-width",.2).attr("stroke-opacity",1)}function v(te){te.attr("fill-opacity",.8).attr("stroke",function(J){return t.mostReadable(J.model.color,["black","white"])}).attr("stroke-width",.3)}function m(te){te.select("rect.catrect").attr("stroke","black").attr("stroke-width",1).attr("stroke-opacity",1)}function x(te){te.attr("stroke","black").attr("stroke-width",.2).attr("stroke-opacity",1).attr("fill-opacity",1)}function T(te){var J=te.parcatsViewModel.pathSelection,X=te.categoryViewModel.model.dimensionInd,ee=te.categoryViewModel.model.categoryInd;return J.filter(function(re){return re.model.categoryInds[X]===ee&&re.model.color===te.color})}function d(te,J,X){var ee=w.select(te).datum(),re=ee.categoryViewModel.model,oe=ee.parcatsViewModel.graphDiv,ue=w.select(te.parentNode).selectAll("rect.bandrect"),ce=[];ue.each(function(me){T(me).each(function(_e){Array.prototype.push.apply(ce,c(_e))})});var de={};de[re.dimensionInd]=re.categoryValue,oe.emit(J,{points:ce,event:X,constraints:de})}function M(te,J,X){var ee=w.select(te).datum(),re=ee.categoryViewModel.model,oe=ee.parcatsViewModel.graphDiv,ue=T(ee),ce=[];ue.each(function(me){Array.prototype.push.apply(ce,c(me))});var de={};de[re.dimensionInd]=re.categoryValue,ee.rawColor!==void 0&&(de.color=ee.rawColor),oe.emit(J,{points:ce,event:X,constraints:de})}function A(te,J,X){te._fullLayout._calcInverseTransform(te);var ee,re,oe=te._fullLayout._invScaleX,ue=te._fullLayout._invScaleY,ce=w.select(X.parentNode).select("rect.catrect"),de=ce.node().getBoundingClientRect(),me=ce.datum(),_e=me.parcatsViewModel,Se=_e.model.dimensions[me.model.dimensionInd],we=_e.trace,xe=de.top+de.height/2;_e.dimensions.length>1&&Se.displayInd===_e.dimensions.length-1?(ee=de.left,re="left"):(ee=de.left+de.width,re="right");var De=me.model.count,Ee=me.model.categoryLabel,Me=De/me.parcatsViewModel.model.count,he={countLabel:De,categoryLabel:Ee,probabilityLabel:Me.toFixed(3)},fe=[];me.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&fe.push(["Count:",he.countLabel].join(" ")),me.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&fe.push(["P("+he.categoryLabel+"):",he.probabilityLabel].join(" "));var ae=fe.join("<br>");return{trace:we,x:oe*(ee-J.left),y:ue*(xe-J.top),text:ae,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:re,hovertemplate:we.hovertemplate,hovertemplateLabels:he,eventData:[{data:we._input,fullData:we,count:De,category:Ee,probability:Me}]}}function C(te){if(!te.parcatsViewModel.dragDimension&&te.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){if(w.mouse(this)[1]<-1)return;var J,X=te.parcatsViewModel.graphDiv,ee=X._fullLayout,re=ee._paperdiv.node().getBoundingClientRect(),oe=te.parcatsViewModel.hoveron,ue=this;oe==="color"?(function(ce){var de=w.select(ce).datum(),me=T(de);v(me),me.each(function(){y.raiseToTop(this)}),w.select(ce.parentNode).selectAll("rect.bandrect").filter(function(_e){return _e.color===de.color}).each(function(){y.raiseToTop(this),w.select(this).attr("stroke","black").attr("stroke-width",1.5)})}(ue),M(ue,"plotly_hover",w.event)):(function(ce){w.select(ce.parentNode).selectAll("rect.bandrect").each(function(de){var me=T(de);v(me),me.each(function(){y.raiseToTop(this)})}),w.select(ce.parentNode).select("rect.catrect").attr("stroke","black").attr("stroke-width",2.5)}(ue),d(ue,"plotly_hover",w.event)),te.parcatsViewModel.hoverinfoItems.indexOf("none")===-1&&(oe==="category"?J=A(X,re,ue):oe==="color"?J=function(ce,de,me){ce._fullLayout._calcInverseTransform(ce);var _e,Se,we=ce._fullLayout._invScaleX,xe=ce._fullLayout._invScaleY,De=me.getBoundingClientRect(),Ee=w.select(me).datum(),Me=Ee.categoryViewModel,he=Me.parcatsViewModel,fe=he.model.dimensions[Me.model.dimensionInd],ae=he.trace,be=De.y+De.height/2;he.dimensions.length>1&&fe.displayInd===he.dimensions.length-1?(_e=De.left,Se="left"):(_e=De.left+De.width,Se="right");var Ie=Me.model.categoryLabel,Te=Ee.parcatsViewModel.model.count,Ne=0;Ee.categoryViewModel.bands.forEach(function(rt){rt.color===Ee.color&&(Ne+=rt.count)});var qe=Me.model.count,ve=0;he.pathSelection.each(function(rt){rt.model.color===Ee.color&&(ve+=rt.model.count)});var Ce=Ne/Te,Ae=Ne/ve,ze=Ne/qe,Ue={countLabel:Te,categoryLabel:Ie,probabilityLabel:Ce.toFixed(3)},Ve=[];Me.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&Ve.push(["Count:",Ue.countLabel].join(" ")),Me.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&(Ve.push("P(color ∩ "+Ie+"): "+Ue.probabilityLabel),Ve.push("P("+Ie+" | color): "+Ae.toFixed(3)),Ve.push("P(color | "+Ie+"): "+ze.toFixed(3)));var Ye=Ve.join("<br>"),$e=t.mostReadable(Ee.color,["black","white"]);return{trace:ae,x:we*(_e-de.left),y:xe*(be-de.top),text:Ye,color:Ee.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:$e,fontSize:10,idealAlign:Se,hovertemplate:ae.hovertemplate,hovertemplateLabels:Ue,eventData:[{data:ae._input,fullData:ae,category:Ie,count:Te,probability:Ce,categorycount:qe,colorcount:ve,bandcolorcount:Ne}]}}(X,re,ue):oe==="dimension"&&(J=function(ce,de,me){var _e=[];return w.select(me.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each(function(){_e.push(A(ce,de,this))}),_e}(X,re,ue)),J&&_.loneHover(J,{container:ee._hoverlayer.node(),outerContainer:ee._paper.node(),gd:X}))}}function P(te){var J=te.parcatsViewModel;J.dragDimension||(f(J.pathSelection),m(J.dimensionSelection.selectAll("g.category")),x(J.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),_.loneUnhover(J.graphDiv._fullLayout._hoverlayer.node()),J.pathSelection.sort(s),J.hoverinfoItems.indexOf("skip")!==-1)||(te.parcatsViewModel.hoveron==="color"?M(this,"plotly_unhover",w.event):d(this,"plotly_unhover",w.event))}function O(te){te.parcatsViewModel.arrangement!=="fixed"&&(te.dragDimensionDisplayInd=te.model.displayInd,te.initialDragDimensionDisplayInds=te.parcatsViewModel.model.dimensions.map(function(J){return J.displayInd}),te.dragHasMoved=!1,te.dragCategoryDisplayInd=null,w.select(this).selectAll("g.category").select("rect.catrect").each(function(J){var X=w.mouse(this)[0],ee=w.mouse(this)[1];-2<=X&&X<=J.width+2&&-2<=ee&&ee<=J.height+2&&(te.dragCategoryDisplayInd=J.model.displayInd,te.initialDragCategoryDisplayInds=te.model.categories.map(function(re){return re.displayInd}),J.model.dragY=J.y,y.raiseToTop(this.parentNode),w.select(this.parentNode).selectAll("rect.bandrect").each(function(re){re.y<ee&&ee<=re.y+re.height&&(te.potentialClickBand=this)}))}),te.parcatsViewModel.dragDimension=te,_.loneUnhover(te.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()))}function z(te){if(te.parcatsViewModel.arrangement!=="fixed"&&(te.dragHasMoved=!0,te.dragDimensionDisplayInd!==null)){var J=te.dragDimensionDisplayInd,X=J-1,ee=J+1,re=te.parcatsViewModel.dimensions[J];if(te.dragCategoryDisplayInd!==null){var oe=re.categories[te.dragCategoryDisplayInd];oe.model.dragY+=w.event.dy;var ue=oe.model.dragY,ce=oe.model.displayInd,de=re.categories,me=de[ce-1],_e=de[ce+1];me!==void 0&&ue<me.y+me.height/2&&(oe.model.displayInd=me.model.displayInd,me.model.displayInd=ce),_e!==void 0&&ue+oe.height>_e.y+_e.height/2&&(oe.model.displayInd=_e.model.displayInd,_e.model.displayInd=ce),te.dragCategoryDisplayInd=oe.model.displayInd}if(te.dragCategoryDisplayInd===null||te.parcatsViewModel.arrangement==="freeform"){re.model.dragX=w.event.x;var Se=te.parcatsViewModel.dimensions[X],we=te.parcatsViewModel.dimensions[ee];Se!==void 0&&re.model.dragX<Se.x+Se.width&&(re.model.displayInd=Se.model.displayInd,Se.model.displayInd=J),we!==void 0&&re.model.dragX+re.width>we.x&&(re.model.displayInd=we.model.displayInd,we.model.displayInd=te.dragDimensionDisplayInd),te.dragDimensionDisplayInd=re.model.displayInd}Z(te.parcatsViewModel),W(te.parcatsViewModel),G(te.parcatsViewModel),D(te.parcatsViewModel)}}function B(te){if(te.parcatsViewModel.arrangement!=="fixed"&&te.dragDimensionDisplayInd!==null){w.select(this).selectAll("text").attr("font-weight","normal");var J={},X=Y(te.parcatsViewModel),ee=te.parcatsViewModel.model.dimensions.map(function(_e){return _e.displayInd}),re=te.initialDragDimensionDisplayInds.some(function(_e,Se){return _e!==ee[Se]});re&&ee.forEach(function(_e,Se){var we=te.parcatsViewModel.model.dimensions[Se].containerInd;J["dimensions["+we+"].displayindex"]=_e});var oe=!1;if(te.dragCategoryDisplayInd!==null){var ue=te.model.categories.map(function(_e){return _e.displayInd});if(oe=te.initialDragCategoryDisplayInds.some(function(_e,Se){return _e!==ue[Se]})){var ce=te.model.categories.slice().sort(function(_e,Se){return _e.displayInd-Se.displayInd}),de=ce.map(function(_e){return _e.categoryValue}),me=ce.map(function(_e){return _e.categoryLabel});J["dimensions["+te.model.containerInd+"].categoryarray"]=[de],J["dimensions["+te.model.containerInd+"].ticktext"]=[me],J["dimensions["+te.model.containerInd+"].categoryorder"]="array"}}te.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1&&!te.dragHasMoved&&te.potentialClickBand&&(te.parcatsViewModel.hoveron==="color"?M(te.potentialClickBand,"plotly_click",w.event.sourceEvent):d(te.potentialClickBand,"plotly_click",w.event.sourceEvent)),te.model.dragX=null,te.dragCategoryDisplayInd!==null&&(te.parcatsViewModel.dimensions[te.dragDimensionDisplayInd].categories[te.dragCategoryDisplayInd].model.dragY=null,te.dragCategoryDisplayInd=null),te.dragDimensionDisplayInd=null,te.parcatsViewModel.dragDimension=null,te.dragHasMoved=null,te.potentialClickBand=null,Z(te.parcatsViewModel),W(te.parcatsViewModel),w.transition().duration(300).ease("cubic-in-out").each(function(){G(te.parcatsViewModel,!0),D(te.parcatsViewModel,!0)}).each("end",function(){(re||oe)&&i.restyle(te.parcatsViewModel.graphDiv,J,[X])})}}function Y(te){for(var J,X=te.graphDiv._fullData,ee=0;ee<X.length;ee++)if(te.key===X[ee].uid){J=ee;break}return J}function D(te,J){var X;J===void 0&&(J=!1),te.pathSelection.data(function(ee){return ee.paths},n),(X=te.pathSelection,J?X.transition():X).attr("d",function(ee){return ee.svgD})}function G(te,J){function X(ue){return J?ue.transition():ue}J===void 0&&(J=!1),te.dimensionSelection.data(function(ue){return ue.dimensions},n);var ee=te.dimensionSelection.selectAll("g.category").data(function(ue){return ue.categories},n);X(te.dimensionSelection).attr("transform",function(ue){return h(ue.x,0)}),X(ee).attr("transform",function(ue){return h(0,ue.y)}),ee.select(".dimlabel").text(function(ue,ce){return ce===0?ue.parcatsViewModel.model.dimensions[ue.model.dimensionInd].dimensionLabel:null}),ee.select(".catlabel").attr("text-anchor",function(ue){return a(ue)?"start":"end"}).attr("x",function(ue){return a(ue)?ue.width+5:-5}).each(function(ue){var ce,de;a(ue)?(ce=ue.width+5,de="start"):(ce=-5,de="end"),w.select(this).selectAll("tspan").attr("x",ce).attr("text-anchor",de)});var re=ee.selectAll("rect.bandrect").data(function(ue){return ue.bands},n),oe=re.enter().append("rect").attr("class","bandrect").attr("cursor","move").attr("stroke-opacity",0).attr("fill",function(ue){return ue.color}).attr("fill-opacity",0);re.attr("fill",function(ue){return ue.color}).attr("width",function(ue){return ue.width}).attr("height",function(ue){return ue.height}).attr("y",function(ue){return ue.y}),x(oe),re.each(function(){y.raiseToTop(this)}),re.exit().remove()}function V(te,J,X){var ee,re=X[0],oe=J.margin||{l:80,r:80,t:100,b:80},ue=re.trace,ce=ue.domain,de=J.width,me=J.height,_e=Math.floor(de*(ce.x[1]-ce.x[0])),Se=Math.floor(me*(ce.y[1]-ce.y[0])),we=ce.x[0]*de+oe.l,xe=J.height-ce.y[1]*J.height+oe.t,De=ue.line.shape;ee=ue.hoverinfo==="all"?["count","probability"]:(ue.hoverinfo||"").split("+");var Ee={trace:ue,key:ue.uid,model:re,x:we,y:xe,width:_e,height:Se,hoveron:ue.hoveron,hoverinfoItems:ee,arrangement:ue.arrangement,bundlecolors:ue.bundlecolors,sortpaths:ue.sortpaths,labelfont:ue.labelfont,categorylabelfont:ue.tickfont,pathShape:De,dragDimension:null,margin:oe,paths:[],dimensions:[],graphDiv:te,traceSelection:null,pathSelection:null,dimensionSelection:null};return re.dimensions&&(Z(Ee),W(Ee)),Ee}function j(te,J,X,ee,re){var oe,ue,ce=[],de=[];for(ue=0;ue<X.length-1;ue++)oe=k(X[ue]+te[ue],te[ue+1]),ce.push(oe(re)),de.push(oe(1-re));var me="M "+te[0]+","+J[0];for(me+="l"+X[0]+",0 ",ue=1;ue<X.length;ue++)me+="C"+ce[ue-1]+","+J[ue-1]+" "+de[ue-1]+","+J[ue]+" "+te[ue]+","+J[ue],me+="l"+X[ue]+",0 ";for(me+="l0,"+ee+" ",me+="l -"+X[X.length-1]+",0 ",ue=X.length-2;ue>=0;ue--)me+="C"+de[ue]+","+(J[ue+1]+ee)+" "+ce[ue]+","+(J[ue]+ee)+" "+(te[ue]+X[ue])+","+(J[ue]+ee),me+="l-"+X[ue]+",0 ";return me+"Z"}function W(te){var J=te.dimensions,X=te.model,ee=J.map(function(Ue){return Ue.categories.map(function(Ve){return Ve.y})}),re=te.model.dimensions.map(function(Ue){return Ue.categories.map(function(Ve){return Ve.displayInd})}),oe=te.model.dimensions.map(function(Ue){return Ue.displayInd}),ue=te.dimensions.map(function(Ue){return Ue.model.dimensionInd}),ce=J.map(function(Ue){return Ue.x}),de=J.map(function(Ue){return Ue.width}),me=[];for(var _e in X.paths)X.paths.hasOwnProperty(_e)&&me.push(X.paths[_e]);function Se(Ue){var Ve=Ue.categoryInds.map(function(Ye,$e){return re[$e][Ye]});return ue.map(function(Ye){return Ve[Ye]})}me.sort(function(Ue,Ve){var Ye=Se(Ue),$e=Se(Ve);return te.sortpaths==="backward"&&(Ye.reverse(),$e.reverse()),Ye.push(Ue.valueInds[0]),$e.push(Ve.valueInds[0]),te.bundlecolors&&(Ye.unshift(Ue.rawColor),$e.unshift(Ve.rawColor)),Ye<$e?-1:Ye>$e?1:0});for(var we=new Array(me.length),xe=J[0].model.count,De=J[0].categories.map(function(Ue){return Ue.height}).reduce(function(Ue,Ve){return Ue+Ve}),Ee=0;Ee<me.length;Ee++){var Me,he=me[Ee];Me=xe>0?De*(he.count/xe):0;for(var fe,ae=new Array(ee.length),be=0;be<he.categoryInds.length;be++){var Ie=he.categoryInds[be],Te=re[be][Ie],Ne=oe[be];ae[Ne]=ee[Ne][Te],ee[Ne][Te]+=Me;var qe=te.dimensions[Ne].categories[Te],ve=qe.bands.length,Ce=qe.bands[ve-1];if(Ce===void 0||he.rawColor!==Ce.rawColor){var Ae=Ce===void 0?0:Ce.y+Ce.height;qe.bands.push({key:Ae,color:he.color,rawColor:he.rawColor,height:Me,width:qe.width,count:he.count,y:Ae,categoryViewModel:qe,parcatsViewModel:te})}else{var ze=qe.bands[ve-1];ze.height+=Me,ze.count+=he.count}}fe=te.pathShape==="hspline"?j(ce,ae,de,Me,.5):j(ce,ae,de,Me,0),we[Ee]={key:he.valueInds[0],model:he,height:Me,leftXs:ce,topYs:ae,dimWidths:de,svgD:fe,parcatsViewModel:te}}te.paths=we}function Z(te){var J=te.model.dimensions.map(function(ue){return{displayInd:ue.displayInd,dimensionInd:ue.dimensionInd}});J.sort(function(ue,ce){return ue.displayInd-ce.displayInd});var X=[];for(var ee in J){var re=J[ee].dimensionInd,oe=te.model.dimensions[re];X.push(ie(te,oe))}te.dimensions=X}function ie(te,J){var X,ee=te.model.dimensions.length,re=J.displayInd;X=40+(ee>1?(te.width-80-16)/(ee-1):0)*re;var oe,ue,ce,de,me,_e=[],Se=te.model.maxCats,we=J.categories.length,xe=J.count,De=te.height-8*(Se-1),Ee=8*(Se-we)/2,Me=J.categories.map(function(he){return{displayInd:he.displayInd,categoryInd:he.categoryInd}});for(Me.sort(function(he,fe){return he.displayInd-fe.displayInd}),me=0;me<we;me++)de=Me[me].categoryInd,ue=J.categories[de],oe=xe>0?ue.count/xe*De:0,ce={key:ue.valueInds[0],model:ue,width:16,height:oe,y:ue.dragY!==null?ue.dragY:Ee,bands:[],parcatsViewModel:te},Ee=Ee+oe+8,_e.push(ce);return{key:J.dimensionInd,x:J.dragX!==null?J.dragX:X,y:0,width:16,model:J,categories:_e,parcatsViewModel:te,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}R.exports=function(te,J,X,ee){r(X,te,ee,J)}},45784:function(R,E,e){var w=e(45460);R.exports=function(k,i,_,y){var h=k._fullLayout,l=h._paper,t=h._size;w(k,l,i,{width:t.w,height:t.h,margin:{t:t.t,r:t.r,b:t.b,l:t.l}},_,y)}},73362:function(R,E,e){var w=e(50693),k=e(13838),i=e(41940),_=e(27670).Y,y=e(1426).extendFlat,h=e(44467).templatedArray;R.exports={domain:_({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:i({editType:"plot"}),tickfont:i({editType:"plot"}),rangefont:i({editType:"plot"}),dimensions:h("dimension",{label:{valType:"string",editType:"plot"},tickvals:y({},k.tickvals,{editType:"plot"}),ticktext:y({},k.ticktext,{editType:"plot"}),tickformat:y({},k.tickformat,{editType:"plot"}),visible:{valType:"boolean",dflt:!0,editType:"plot"},range:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},constraintrange:{valType:"info_array",freeLength:!0,dimensions:"1-2",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},multiselect:{valType:"boolean",dflt:!0,editType:"plot"},values:{valType:"data_array",editType:"calc"},editType:"calc"}),line:y({editType:"calc"},w("line",{colorscaleDflt:"Viridis",autoColorDflt:!1,editTypeOverride:"calc"})),unselected:{line:{color:{valType:"color",dflt:"#7f7f7f",editType:"plot"},opacity:{valType:"number",min:0,max:1,dflt:"auto",editType:"plot"},editType:"plot"},editType:"plot"}}},57920:function(R,E,e){var w=e(25706),k=e(39898),i=e(28984).keyFun,_=e(28984).repeat,y=e(71828).sorterAsc,h=e(71828).strTranslate,l=w.bar.snapRatio;function t(A,C){return A*(1-l)+C*l}var o=w.bar.snapClose;function r(A,C){return A*(1-o)+C*o}function n(A,C,P,O){if(function(ie,te){for(var J=0;J<te.length;J++)if(ie>=te[J][0]&&ie<=te[J][1])return!0;return!1}(P,O))return P;var z=A?-1:1,B=0,Y=C.length-1;if(z<0){var D=B;B=Y,Y=D}for(var G=C[B],V=G,j=B;z*j<z*Y;j+=z){var W=j+z,Z=C[W];if(z*P<z*r(G,Z))return t(G,V);if(z*P<z*Z||W===Y)return t(Z,G);V=G,G=Z}}function a(A){A.attr("x",-w.bar.captureWidth/2).attr("width",w.bar.captureWidth)}function s(A){A.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function u(A){if(!A.brush.filterSpecified)return"0,"+A.height;for(var C,P,O,z=p(A.brush.filter.getConsolidated(),A.height),B=[0],Y=z.length?z[0][0]:null,D=0;D<z.length;D++)P=(C=z[D])[1]-C[0],B.push(Y),B.push(P),(O=D+1)<z.length&&(Y=z[O][0]-C[1]);return B.push(A.height),B}function p(A,C){return A.map(function(P){return P.map(function(O){return Math.max(0,O*C)}).sort(y)})}function c(){k.select(document.body).style("cursor",null)}function b(A){A.attr("stroke-dasharray",u)}function g(A,C){var P=k.select(A).selectAll(".highlight, .highlight-shadow");b(C?P.transition().duration(w.bar.snapDuration).each("end",C):P)}function f(A,C){var P,O=A.brush,z=NaN,B={};if(O.filterSpecified){var Y=A.height,D=O.filter.getConsolidated(),G=p(D,Y),V=NaN,j=NaN,W=NaN;for(P=0;P<=G.length;P++){var Z=G[P];if(Z&&Z[0]<=C&&C<=Z[1]){V=P;break}if(j=P?P-1:NaN,Z&&Z[0]>C){W=P;break}}if(z=V,isNaN(z)&&(z=isNaN(j)||isNaN(W)?isNaN(j)?W:j:C-G[j][1]<G[W][0]-C?j:W),!isNaN(z)){var ie=G[z],te=function(re,oe){var ue=w.bar.handleHeight;if(!(oe>re[1]+ue||oe<re[0]-ue))return oe>=.9*re[1]+.1*re[0]?"n":oe<=.9*re[0]+.1*re[1]?"s":"ns"}(ie,C);te&&(B.interval=D[z],B.intervalPix=ie,B.region=te)}}if(A.ordinal&&!B.region){var J=A.unitTickvals,X=A.unitToPaddedPx.invert(C);for(P=0;P<J.length;P++){var ee=[.25*J[Math.max(P-1,0)]+.75*J[P],.25*J[Math.min(P+1,J.length-1)]+.75*J[P]];if(X>=ee[0]&&X<=ee[1]){B.clickableOrdinalRange=ee;break}}}return B}function v(A,C){k.event.sourceEvent.stopPropagation();var P=C.height-k.mouse(A)[1]-2*w.verticalPadding,O=C.brush.svgBrush;O.wasDragged=!0,O._dragging=!0,O.grabbingBar?O.newExtent=[P-O.grabPoint,P+O.barLength-O.grabPoint].map(C.unitToPaddedPx.invert):O.newExtent=[O.startExtent,C.unitToPaddedPx.invert(P)].sort(y),C.brush.filterSpecified=!0,O.extent=O.stayingIntervals.concat([O.newExtent]),O.brushCallback(C),g(A.parentNode)}function m(A,C){var P=f(C,C.height-k.mouse(A)[1]-2*w.verticalPadding),O="crosshair";P.clickableOrdinalRange?O="pointer":P.region&&(O=P.region+"-resize"),k.select(document.body).style("cursor",O)}function x(A){A.on("mousemove",function(C){k.event.preventDefault(),C.parent.inBrushDrag||m(this,C)}).on("mouseleave",function(C){C.parent.inBrushDrag||c()}).call(k.behavior.drag().on("dragstart",function(C){(function(P,O){k.event.sourceEvent.stopPropagation();var z=O.height-k.mouse(P)[1]-2*w.verticalPadding,B=O.unitToPaddedPx.invert(z),Y=O.brush,D=f(O,z),G=D.interval,V=Y.svgBrush;if(V.wasDragged=!1,V.grabbingBar=D.region==="ns",V.grabbingBar){var j=G.map(O.unitToPaddedPx);V.grabPoint=z-j[0]-w.verticalPadding,V.barLength=j[1]-j[0]}V.clickableOrdinalRange=D.clickableOrdinalRange,V.stayingIntervals=O.multiselect&&Y.filterSpecified?Y.filter.getConsolidated():[],G&&(V.stayingIntervals=V.stayingIntervals.filter(function(W){return W[0]!==G[0]&&W[1]!==G[1]})),V.startExtent=D.region?G[D.region==="s"?1:0]:B,O.parent.inBrushDrag=!0,V.brushStartCallback()})(this,C)}).on("drag",function(C){v(this,C)}).on("dragend",function(C){(function(P,O){var z=O.brush,B=z.filter,Y=z.svgBrush;Y._dragging||(m(P,O),v(P,O),O.brush.svgBrush.wasDragged=!1),Y._dragging=!1,k.event.sourceEvent.stopPropagation();var D=Y.grabbingBar;if(Y.grabbingBar=!1,Y.grabLocation=void 0,O.parent.inBrushDrag=!1,c(),!Y.wasDragged)return Y.wasDragged=void 0,Y.clickableOrdinalRange?z.filterSpecified&&O.multiselect?Y.extent.push(Y.clickableOrdinalRange):(Y.extent=[Y.clickableOrdinalRange],z.filterSpecified=!0):D?(Y.extent=Y.stayingIntervals,Y.extent.length===0&&d(z)):d(z),Y.brushCallback(O),g(P.parentNode),void Y.brushEndCallback(z.filterSpecified?B.getConsolidated():[]);var G=function(){B.set(B.getConsolidated())};if(O.ordinal){var V=O.unitTickvals;V[V.length-1]<V[0]&&V.reverse(),Y.newExtent=[n(0,V,Y.newExtent[0],Y.stayingIntervals),n(1,V,Y.newExtent[1],Y.stayingIntervals)];var j=Y.newExtent[1]>Y.newExtent[0];Y.extent=Y.stayingIntervals.concat(j?[Y.newExtent]:[]),Y.extent.length||d(z),Y.brushCallback(O),j?g(P.parentNode,G):(G(),g(P.parentNode))}else G();Y.brushEndCallback(z.filterSpecified?B.getConsolidated():[])})(this,C)}))}function T(A,C){return A[0]-C[0]}function d(A){A.filterSpecified=!1,A.svgBrush.extent=[[-1/0,1/0]]}function M(A){for(var C,P=A.slice(),O=[],z=P.shift();z;){for(C=z.slice();(z=P.shift())&&z[0]<=C[1];)C[1]=Math.max(C[1],z[1]);O.push(C)}return O.length===1&&O[0][0]>O[0][1]&&(O=[]),O}R.exports={makeBrush:function(A,C,P,O,z,B){var Y,D=function(){var G,V,j=[];return{set:function(W){(j=W.map(function(Z){return Z.slice().sort(y)}).sort(T)).length===1&&j[0][0]===-1/0&&j[0][1]===1/0&&(j=[[0,-1]]),G=M(j),V=j.reduce(function(Z,ie){return[Math.min(Z[0],ie[0]),Math.max(Z[1],ie[1])]},[1/0,-1/0])},get:function(){return j.slice()},getConsolidated:function(){return G},getBounds:function(){return V}}}();return D.set(P),{filter:D,filterSpecified:C,svgBrush:{extent:[],brushStartCallback:O,brushCallback:(Y=z,function(G){var V=G.brush,j=function(Z){return Z.svgBrush.extent.map(function(ie){return ie.slice()})}(V),W=j.slice();V.filter.set(W),Y()}),brushEndCallback:B}}},ensureAxisBrush:function(A,C,P){var O=A.selectAll("."+w.cn.axisBrush).data(_,i);O.enter().append("g").classed(w.cn.axisBrush,!0),function(z,B,Y){var D=Y._context.staticPlot,G=z.selectAll(".background").data(_);G.enter().append("rect").classed("background",!0).call(a).call(s).style("pointer-events",D?"none":"auto").attr("transform",h(0,w.verticalPadding)),G.call(x).attr("height",function(W){return W.height-w.verticalPadding});var V=z.selectAll(".highlight-shadow").data(_);V.enter().append("line").classed("highlight-shadow",!0).attr("x",-w.bar.width/2).attr("stroke-width",w.bar.width+w.bar.strokeWidth).attr("stroke",B).attr("opacity",w.bar.strokeOpacity).attr("stroke-linecap","butt"),V.attr("y1",function(W){return W.height}).call(b);var j=z.selectAll(".highlight").data(_);j.enter().append("line").classed("highlight",!0).attr("x",-w.bar.width/2).attr("stroke-width",w.bar.width-w.bar.strokeWidth).attr("stroke",w.bar.fillColor).attr("opacity",w.bar.fillOpacity).attr("stroke-linecap","butt"),j.attr("y1",function(W){return W.height}).call(b)}(O,C,P)},cleanRanges:function(A,C){if(Array.isArray(A[0])?(A=A.map(function(O){return O.sort(y)}),A=C.multiselect?M(A.sort(T)):[A[0]]):A=[A.sort(y)],C.tickvals){var P=C.tickvals.slice().sort(y);if(!(A=A.map(function(O){var z=[n(0,P,O[0],[]),n(1,P,O[1],[])];if(z[1]>z[0])return z}).filter(function(O){return O})).length)return}return A.length>1?A:A[0]}}},71791:function(R,E,e){R.exports={attributes:e(73362),supplyDefaults:e(3633),calc:e(24639),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:e(49351),categories:["gl","regl","noOpacity","noHover"],meta:{}}},49351:function(R,E,e){var w=e(39898),k=e(27659).a0,i=e(21341),_=e(77922);E.name="parcoords",E.plot=function(y){var h=k(y.calcdata,"parcoords")[0];h.length&&i(y,h)},E.clean=function(y,h,l,t){var o=t._has&&t._has("parcoords"),r=h._has&&h._has("parcoords");o&&!r&&(t._paperdiv.selectAll(".parcoords").remove(),t._glimages.selectAll("*").remove())},E.toSVG=function(y){var h=y._fullLayout._glimages,l=w.select(y).selectAll(".svg-container");l.filter(function(t,o){return o===l.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus").each(function(){var t=this,o=t.toDataURL("image/png");h.append("svg:image").attr({xmlns:_.svg,"xlink:href":o,preserveAspectRatio:"none",x:0,y:0,width:t.style.width,height:t.style.height})}),window.setTimeout(function(){w.selectAll("#filterBarPattern").attr("id","filterBarPattern")},60)}},24639:function(R,E,e){var w=e(71828).isArrayOrTypedArray,k=e(21081),i=e(28984).wrap;R.exports=function(_,y){var h,l;return k.hasColorscale(y,"line")&&w(y.line.color)?(h=y.line.color,l=k.extractOpts(y.line).colorscale,k.calc(_,y,{vals:h,containerStr:"line",cLetter:"c"})):(h=function(t){for(var o=new Array(t),r=0;r<t;r++)o[r]=.5;return o}(y._length),l=[[0,y.line.color],[1,y.line.color]]),i({lineColor:h,cscale:l})}},25706:function(R){R.exports={maxDimensionCount:60,overdrag:45,verticalPadding:2,tickDistance:50,canvasPixelRatio:1,blockLineCount:5e3,layers:["contextLineLayer","focusLineLayer","pickLineLayer"],axisTitleOffset:28,axisExtentOffset:10,bar:{width:4,captureWidth:10,fillColor:"magenta",fillOpacity:1,snapDuration:150,snapRatio:.25,snapClose:.01,strokeOpacity:1,strokeWidth:1,handleHeight:8,handleOpacity:1,handleOverlap:0},cn:{axisExtentText:"axis-extent-text",parcoordsLineLayers:"parcoords-line-layers",parcoordsLineLayer:"parcoords-lines",parcoords:"parcoords",parcoordsControlView:"parcoords-control-view",yAxis:"y-axis",axisOverlays:"axis-overlays",axis:"axis",axisHeading:"axis-heading",axisTitle:"axis-title",axisExtent:"axis-extent",axisExtentTop:"axis-extent-top",axisExtentTopText:"axis-extent-top-text",axisExtentBottom:"axis-extent-bottom",axisExtentBottomText:"axis-extent-bottom-text",axisBrush:"axis-brush"},id:{filterBarPattern:"filter-bar-pattern"}}},3633:function(R,E,e){var w=e(71828),k=e(52075).hasColorscale,i=e(1586),_=e(27670).c,y=e(85501),h=e(89298),l=e(73362),t=e(57920),o=e(25706).maxDimensionCount,r=e(94397);function n(a,s,u,p){function c(m,x){return w.coerce(a,s,l.dimensions,m,x)}var b=c("values"),g=c("visible");if(b&&b.length||(g=s.visible=!1),g){c("label"),c("tickvals"),c("ticktext"),c("tickformat");var f=c("range");s._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:f},h.setConvert(s._ax,p.layout),c("multiselect");var v=c("constraintrange");v&&(s.constraintrange=t.cleanRanges(v,s))}}R.exports=function(a,s,u,p){function c(m,x){return w.coerce(a,s,l,m,x)}var b=a.dimensions;Array.isArray(b)&&b.length>o&&(w.log("parcoords traces support up to "+o+" dimensions at the moment"),b.splice(o));var g=y(a,s,{name:"dimensions",layout:p,handleItemDefaults:n}),f=function(m,x,T,d,M){var A=M("line.color",T);if(k(m,"line")&&w.isArrayOrTypedArray(A)){if(A.length)return M("line.colorscale"),i(m,x,d,M,{prefix:"line.",cLetter:"c"}),A.length;x.line.color=T}return 1/0}(a,s,u,p,c);_(s,p,c),Array.isArray(g)&&g.length||(s.visible=!1),r(s,g,"values",f);var v={family:p.font.family,size:Math.round(p.font.size/1.2),color:p.font.color};w.coerceFont(c,"labelfont",v),w.coerceFont(c,"tickfont",v),w.coerceFont(c,"rangefont",v),c("labelangle"),c("labelside"),c("unselected.line.color"),c("unselected.line.opacity")}},1602:function(R,E,e){var w=e(71828).isTypedArray;E.convertTypedArray=function(k){return w(k)?Array.prototype.slice.call(k):k},E.isOrdinal=function(k){return!!k.tickvals},E.isVisible=function(k){return k.visible||!("visible"in k)}},67618:function(R,E,e){var w=e(71791);w.plot=e(21341),R.exports=w},83398:function(R,E,e){var w=e(56068),k=w([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
varying vec4 fragColor;
|
||
|
||
attribute vec4 p01_04, p05_08, p09_12, p13_16,
|
||
p17_20, p21_24, p25_28, p29_32,
|
||
p33_36, p37_40, p41_44, p45_48,
|
||
p49_52, p53_56, p57_60, colors;
|
||
|
||
uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,
|
||
loA, hiA, loB, hiB, loC, hiC, loD, hiD;
|
||
|
||
uniform vec2 resolution, viewBoxPos, viewBoxSize;
|
||
uniform float maskHeight;
|
||
uniform float drwLayer; // 0: context, 1: focus, 2: pick
|
||
uniform vec4 contextColor;
|
||
uniform sampler2D maskTexture, palette;
|
||
|
||
bool isPick = (drwLayer > 1.5);
|
||
bool isContext = (drwLayer < 0.5);
|
||
|
||
const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);
|
||
const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);
|
||
|
||
float val(mat4 p, mat4 v) {
|
||
return dot(matrixCompMult(p, v) * UNITS, UNITS);
|
||
}
|
||
|
||
float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {
|
||
float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);
|
||
float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);
|
||
return y1 * (1.0 - ratio) + y2 * ratio;
|
||
}
|
||
|
||
int iMod(int a, int b) {
|
||
return a - b * (a / b);
|
||
}
|
||
|
||
bool fOutside(float p, float lo, float hi) {
|
||
return (lo < hi) && (lo > p || p > hi);
|
||
}
|
||
|
||
bool vOutside(vec4 p, vec4 lo, vec4 hi) {
|
||
return (
|
||
fOutside(p[0], lo[0], hi[0]) ||
|
||
fOutside(p[1], lo[1], hi[1]) ||
|
||
fOutside(p[2], lo[2], hi[2]) ||
|
||
fOutside(p[3], lo[3], hi[3])
|
||
);
|
||
}
|
||
|
||
bool mOutside(mat4 p, mat4 lo, mat4 hi) {
|
||
return (
|
||
vOutside(p[0], lo[0], hi[0]) ||
|
||
vOutside(p[1], lo[1], hi[1]) ||
|
||
vOutside(p[2], lo[2], hi[2]) ||
|
||
vOutside(p[3], lo[3], hi[3])
|
||
);
|
||
}
|
||
|
||
bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {
|
||
return mOutside(A, loA, hiA) ||
|
||
mOutside(B, loB, hiB) ||
|
||
mOutside(C, loC, hiC) ||
|
||
mOutside(D, loD, hiD);
|
||
}
|
||
|
||
bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {
|
||
mat4 pnts[4];
|
||
pnts[0] = A;
|
||
pnts[1] = B;
|
||
pnts[2] = C;
|
||
pnts[3] = D;
|
||
|
||
for(int i = 0; i < 4; ++i) {
|
||
for(int j = 0; j < 4; ++j) {
|
||
for(int k = 0; k < 4; ++k) {
|
||
if(0 == iMod(
|
||
int(255.0 * texture2D(maskTexture,
|
||
vec2(
|
||
(float(i * 2 + j / 2) + 0.5) / 8.0,
|
||
(pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight
|
||
))[3]
|
||
) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),
|
||
2
|
||
)) return true;
|
||
}
|
||
}
|
||
}
|
||
return false;
|
||
}
|
||
|
||
vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {
|
||
float x = 0.5 * sign(v) + 0.5;
|
||
float y = axisY(x, A, B, C, D);
|
||
float z = 1.0 - abs(v);
|
||
|
||
z += isContext ? 0.0 : 2.0 * float(
|
||
outsideBoundingBox(A, B, C, D) ||
|
||
outsideRasterMask(A, B, C, D)
|
||
);
|
||
|
||
return vec4(
|
||
2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,
|
||
z,
|
||
1.0
|
||
);
|
||
}
|
||
|
||
void main() {
|
||
mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);
|
||
mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);
|
||
mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);
|
||
mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);
|
||
|
||
float v = colors[3];
|
||
|
||
gl_Position = position(isContext, v, A, B, C, D);
|
||
|
||
fragColor =
|
||
isContext ? vec4(contextColor) :
|
||
isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));
|
||
}
|
||
`]),i=w([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
varying vec4 fragColor;
|
||
|
||
void main() {
|
||
gl_FragColor = fragColor;
|
||
}
|
||
`]),_=e(25706).maxDimensionCount,y=e(71828),h=1e-6,l=new Uint8Array(4),t=new Uint8Array(4),o={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function r(f,v,m,x,T){var d=f._gl;d.enable(d.SCISSOR_TEST),d.scissor(v,m,x,T),f.clear({color:[0,0,0,0],depth:1})}function n(f,v,m,x,T,d){var M=d.key;m.drawCompleted||(function(A){A.read({x:0,y:0,width:1,height:1,data:l})}(f),m.drawCompleted=!0),function A(C){var P=Math.min(x,T-C*x);C===0&&(window.cancelAnimationFrame(m.currentRafs[M]),delete m.currentRafs[M],r(f,d.scissorX,d.scissorY,d.scissorWidth,d.viewBoxSize[1])),m.clearOnly||(d.count=2*P,d.offset=2*C*x,v(d),C*x+P<T&&(m.currentRafs[M]=window.requestAnimationFrame(function(){A(C+1)})),m.drawCompleted=!1)}(0)}function a(f,v){for(var m=new Array(256),x=0;x<256;x++)m[x]=f(x/255).concat(v);return m}function s(f,v){return(f>>>8*v)%256/255}function u(f,v,m){for(var x=new Array(8*v),T=0,d=0;d<v;d++)for(var M=0;M<2;M++)for(var A=0;A<4;A++){var C=4*f+A,P=m[64*d+C];C===63&&M===0&&(P*=-1),x[T++]=P}return x}function p(f){var v="0"+f;return v.substr(v.length-2)}function c(f){return f<_?"p"+p(f+1)+"_"+p(f+4):"colors"}function b(f,v,m,x,T,d,M,A,C,P,O,z,B,Y){for(var D=[[],[]],G=0;G<64;G++)D[0][G]=G===T?1:0,D[1][G]=G===d?1:0;M*=Y,A*=Y,C*=Y,P*=Y;var V=f.lines.canvasOverdrag*Y,j=f.domain,W=f.canvasWidth*Y,Z=f.canvasHeight*Y,ie=f.pad.l*Y,te=f.pad.b*Y,J=f.layoutHeight*Y,X=f.layoutWidth*Y,ee=f.deselectedLines.color,re=f.deselectedLines.opacity;return y.extendFlat({key:O,resolution:[W,Z],viewBoxPos:[M+V,A],viewBoxSize:[C,P],i0:T,i1:d,dim0A:D[0].slice(0,16),dim0B:D[0].slice(16,32),dim0C:D[0].slice(32,48),dim0D:D[0].slice(48,64),dim1A:D[1].slice(0,16),dim1B:D[1].slice(16,32),dim1C:D[1].slice(32,48),dim1D:D[1].slice(48,64),drwLayer:z,contextColor:[ee[0]/255,ee[1]/255,ee[2]/255,re!=="auto"?ee[3]*re:Math.max(.00392156862745098,Math.pow(1/f.lines.color.length,.3333333333333333))],scissorX:(x===v?0:M+V)+(ie-V)+X*j.x[0],scissorWidth:(x===m?W-M+V:C+.5)+(x===v?M+V:0),scissorY:A+te+J*j.y[0],scissorHeight:P,viewportX:ie-V+X*j.x[0],viewportY:te+J*j.y[0],viewportWidth:W,viewportHeight:Z},B)}function g(f){var v=2047,m=Math.max(0,Math.floor(f[0]*v),0),x=Math.min(v,Math.ceil(f[1]*v),v);return[Math.min(m,x),Math.max(m,x)]}R.exports=function(f,v){var m,x,T,d,M,A=v.context,C=v.pick,P=v.regl,O=P._gl,z=O.getParameter(O.ALIASED_LINE_WIDTH_RANGE),B=Math.max(z[0],Math.min(z[1],v.viewModel.plotGlPixelRatio)),Y={currentRafs:{},drawCompleted:!0,clearOnly:!1},D=function(Z){for(var ie={},te=0;te<=_;te+=4)ie[c(te)]=Z.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)});return ie}(P),G=P.texture(o),V=[];W(v);var j=P({profile:!1,blend:{enable:A,func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:1,dstAlpha:1},equation:{rgb:"add",alpha:"add"},color:[0,0,0,0]},depth:{enable:!A,mask:!0,func:"less",range:[0,1]},cull:{enable:!0,face:"back"},scissor:{enable:!0,box:{x:P.prop("scissorX"),y:P.prop("scissorY"),width:P.prop("scissorWidth"),height:P.prop("scissorHeight")}},viewport:{x:P.prop("viewportX"),y:P.prop("viewportY"),width:P.prop("viewportWidth"),height:P.prop("viewportHeight")},dither:!1,vert:k,frag:i,primitive:"lines",lineWidth:B,attributes:D,uniforms:{resolution:P.prop("resolution"),viewBoxPos:P.prop("viewBoxPos"),viewBoxSize:P.prop("viewBoxSize"),dim0A:P.prop("dim0A"),dim1A:P.prop("dim1A"),dim0B:P.prop("dim0B"),dim1B:P.prop("dim1B"),dim0C:P.prop("dim0C"),dim1C:P.prop("dim1C"),dim0D:P.prop("dim0D"),dim1D:P.prop("dim1D"),loA:P.prop("loA"),hiA:P.prop("hiA"),loB:P.prop("loB"),hiB:P.prop("hiB"),loC:P.prop("loC"),hiC:P.prop("hiC"),loD:P.prop("loD"),hiD:P.prop("hiD"),palette:G,contextColor:P.prop("contextColor"),maskTexture:P.prop("maskTexture"),drwLayer:P.prop("drwLayer"),maskHeight:P.prop("maskHeight")},offset:P.prop("offset"),count:P.prop("count")});function W(Z){m=Z.model,x=Z.viewModel,T=x.dimensions.slice(),d=T[0]?T[0].values.length:0;var ie=m.lines,te=C?ie.color.map(function(X,ee){return ee/ie.color.length}):ie.color,J=function(X,ee,re){for(var oe,ue=new Array(X*(_+4)),ce=0,de=0;de<X;de++){for(var me=0;me<_;me++)ue[ce++]=me<ee.length?ee[me].paddedUnitValues[de]:.5;ue[ce++]=s(de,2),ue[ce++]=s(de,1),ue[ce++]=s(de,0),ue[ce++]=(oe=re[de],Math.max(h,Math.min(.999999,oe)))}return ue}(d,T,te);(function(X,ee,re){for(var oe=0;oe<=_;oe+=4)X[c(oe)](u(oe/4,ee,re))})(D,d,J),A||C||(G=P.texture(y.extendFlat({data:a(m.unitToColor,255)},o)))}return{render:function(Z,ie,te){var J,X,ee,re=Z.length,oe=1/0,ue=-1/0;for(J=0;J<re;J++)Z[J].dim0.canvasX<oe&&(oe=Z[J].dim0.canvasX,X=J),Z[J].dim1.canvasX>ue&&(ue=Z[J].dim1.canvasX,ee=J);re===0&&r(P,0,0,m.canvasWidth,m.canvasHeight);var ce=function(he){var fe,ae,be,Ie=[[],[]];for(be=0;be<64;be++){var Te=!he&&be<T.length?T[be].brush.filter.getBounds():[-1/0,1/0];Ie[0][be]=Te[0],Ie[1][be]=Te[1]}var Ne=new Array(16384);for(fe=0;fe<16384;fe++)Ne[fe]=255;if(!he)for(fe=0;fe<T.length;fe++){var qe=fe%8,ve=(fe-qe)/8,Ce=Math.pow(2,qe),Ae=T[fe].brush.filter.get();if(!(Ae.length<2)){var ze=g(Ae[0])[1];for(ae=1;ae<Ae.length;ae++){var Ue=g(Ae[ae]);for(be=ze+1;be<Ue[0];be++)Ne[8*be+ve]&=~Ce;ze=Math.max(ze,Ue[1])}}}var Ve={shape:[8,2048],format:"alpha",type:"uint8",mag:"nearest",min:"nearest",data:Ne};return M?M(Ve):M=P.texture(Ve),{maskTexture:M,maskHeight:2048,loA:Ie[0].slice(0,16),loB:Ie[0].slice(16,32),loC:Ie[0].slice(32,48),loD:Ie[0].slice(48,64),hiA:Ie[1].slice(0,16),hiB:Ie[1].slice(16,32),hiC:Ie[1].slice(32,48),hiD:Ie[1].slice(48,64)}}(A);for(J=0;J<re;J++){var de=Z[J],me=de.dim0.crossfilterDimensionIndex,_e=de.dim1.crossfilterDimensionIndex,Se=de.canvasX,we=de.canvasY,xe=Se+de.panelSizeX,De=de.plotGlPixelRatio;if(ie||!V[me]||V[me][0]!==Se||V[me][1]!==xe){V[me]=[Se,xe];var Ee=b(m,X,ee,J,me,_e,Se,we,de.panelSizeX,de.panelSizeY,de.dim0.crossfilterDimensionIndex,A?0:C?2:1,ce,De);Y.clearOnly=te;var Me=ie?m.lines.blockLineCount:d;n(P,j,Y,Me,d,Ee)}}},readPixel:function(Z,ie){return P.read({x:Z,y:ie,width:1,height:1,data:t}),t},readPixels:function(Z,ie,te,J){var X=new Uint8Array(4*te*J);return P.read({x:Z,y:ie,width:te,height:J,data:X}),X},destroy:function(){for(var Z in f.style["pointer-events"]="none",G.destroy(),M&&M.destroy(),D)D[Z].destroy()},update:W}}},94397:function(R){R.exports=function(E,e,w,k){var i,_;for(k||(k=1/0),i=0;i<e.length;i++)(_=e[i]).visible&&(k=Math.min(k,_[w].length));for(k===1/0&&(k=0),E._length=k,i=0;i<e.length;i++)(_=e[i]).visible&&(_._length=k);return k}},17171:function(R,E,e){var w=e(39898),k=e(71828),i=k.numberFormat,_=e(36652),y=e(89298),h=k.strRotate,l=k.strTranslate,t=e(63893),o=e(91424),r=e(21081),n=e(28984),a=n.keyFun,s=n.repeat,u=n.unwrap,p=e(1602),c=e(25706),b=e(57920),g=e(83398);function f(G,V,j){return k.aggNums(G,null,V,j)}function v(G,V){return x(f(Math.min,G,V),f(Math.max,G,V))}function m(G){var V=G.range;return V?x(V[0],V[1]):v(G.values,G._length)}function x(G,V){return!isNaN(G)&&isFinite(G)||(G=0),!isNaN(V)&&isFinite(V)||(V=0),G===V&&(G===0?(G-=1,V+=1):(G*=.9,V*=1.1)),[G,V]}function T(G,V,j,W,Z){var ie,te,J=m(j);return W?w.scale.ordinal().domain(W.map((ie=i(j.tickformat),te=Z,te?function(X,ee){var re=te[ee];return re??ie(X)}:ie))).range(W.map(function(X){var ee=(X-J[0])/(J[1]-J[0]);return G-V+ee*(2*V-G)})):w.scale.linear().domain(J).range([G-V,V])}function d(G){if(G.tickvals){var V=m(G);return w.scale.ordinal().domain(G.tickvals).range(G.tickvals.map(function(j){return(j-V[0])/(V[1]-V[0])}))}}function M(G){var V=G.map(function(Z){return Z[0]}),j=G.map(function(Z){var ie=_(Z[1]);return w.rgb("rgb("+ie[0]+","+ie[1]+","+ie[2]+")")}),W="rgb".split("").map(function(Z){return w.scale.linear().clamp(!0).domain(V).range(j.map((ie=Z,function(te){return te[ie]})));var ie});return function(Z){return W.map(function(ie){return ie(Z)})}}function A(G){return G.dimensions.some(function(V){return V.brush.filterSpecified})}function C(G,V,j){var W=u(V),Z=W.trace,ie=p.convertTypedArray(W.lineColor),te=Z.line,J={color:_(Z.unselected.line.color),opacity:Z.unselected.line.opacity},X=r.extractOpts(te),ee=X.reversescale?r.flipScale(W.cscale):W.cscale,re=Z.domain,oe=Z.dimensions,ue=G.width,ce=Z.labelangle,de=Z.labelside,me=Z.labelfont,_e=Z.tickfont,Se=Z.rangefont,we=k.extendDeepNoArrays({},te,{color:ie.map(w.scale.linear().domain(m({values:ie,range:[X.min,X.max],_length:Z._length}))),blockLineCount:c.blockLineCount,canvasOverdrag:c.overdrag*c.canvasPixelRatio}),xe=Math.floor(ue*(re.x[1]-re.x[0])),De=Math.floor(G.height*(re.y[1]-re.y[0])),Ee=G.margin||{l:80,r:80,t:100,b:80},Me=xe,he=De;return{key:j,colCount:oe.filter(p.isVisible).length,dimensions:oe,tickDistance:c.tickDistance,unitToColor:M(ee),lines:we,deselectedLines:J,labelAngle:ce,labelSide:de,labelFont:me,tickFont:_e,rangeFont:Se,layoutWidth:ue,layoutHeight:G.height,domain:re,translateX:re.x[0]*ue,translateY:G.height-re.y[1]*G.height,pad:Ee,canvasWidth:Me*c.canvasPixelRatio+2*we.canvasOverdrag,canvasHeight:he*c.canvasPixelRatio,width:Me,height:he,canvasPixelRatio:c.canvasPixelRatio}}function P(G,V,j){var W=j.width,Z=j.height,ie=j.dimensions,te=j.canvasPixelRatio,J=function(ue){return W*ue/Math.max(1,j.colCount-1)},X=c.verticalPadding/Z,ee=function(ue,ce){return w.scale.linear().range([ce,ue-ce])}(Z,c.verticalPadding),re={key:j.key,xScale:J,model:j,inBrushDrag:!1},oe={};return re.dimensions=ie.filter(p.isVisible).map(function(ue,ce){var de=function(Te,Ne){return w.scale.linear().domain(m(Te)).range([Ne,1-Ne])}(ue,X),me=oe[ue.label];oe[ue.label]=(me||0)+1;var _e=ue.label+(me?"__"+me:""),Se=ue.constraintrange,we=Se&&Se.length;we&&!Array.isArray(Se[0])&&(Se=[Se]);var xe=we?Se.map(function(Te){return Te.map(de)}):[[-1/0,1/0]],De=ue.values;De.length>ue._length&&(De=De.slice(0,ue._length));var Ee,Me=ue.tickvals;function he(Te,Ne){return{val:Te,text:Ee[Ne]}}function fe(Te,Ne){return Te.val-Ne.val}if(Array.isArray(Me)&&Me.length){Ee=ue.ticktext,Array.isArray(Ee)&&Ee.length?Ee.length>Me.length?Ee=Ee.slice(0,Me.length):Me.length>Ee.length&&(Me=Me.slice(0,Ee.length)):Ee=Me.map(i(ue.tickformat));for(var ae=1;ae<Me.length;ae++)if(Me[ae]<Me[ae-1]){for(var be=Me.map(he).sort(fe),Ie=0;Ie<Me.length;Ie++)Me[Ie]=be[Ie].val,Ee[Ie]=be[Ie].text;break}}else Me=void 0;return De=p.convertTypedArray(De),{key:_e,label:ue.label,tickFormat:ue.tickformat,tickvals:Me,ticktext:Ee,ordinal:p.isOrdinal(ue),multiselect:ue.multiselect,xIndex:ce,crossfilterDimensionIndex:ce,visibleIndex:ue._index,height:Z,values:De,paddedUnitValues:De.map(de),unitTickvals:Me&&Me.map(de),xScale:J,x:J(ce),canvasX:J(ce)*te,unitToPaddedPx:ee,domainScale:T(Z,c.verticalPadding,ue,Me,Ee),ordinalScale:d(ue),parent:re,model:j,brush:b.makeBrush(G,we,xe,function(){G.linePickActive(!1)},function(){var Te=re;Te.focusLayer&&Te.focusLayer.render(Te.panels,!0);var Ne=A(Te);!G.contextShown()&&Ne?(Te.contextLayer&&Te.contextLayer.render(Te.panels,!0),G.contextShown(!0)):G.contextShown()&&!Ne&&(Te.contextLayer&&Te.contextLayer.render(Te.panels,!0,!0),G.contextShown(!1))},function(Te){if(re.focusLayer.render(re.panels,!0),re.pickLayer&&re.pickLayer.render(re.panels,!0),G.linePickActive(!0),V&&V.filterChanged){var Ne=de.invert,qe=Te.map(function(ve){return ve.map(Ne).sort(k.sorterAsc)}).sort(function(ve,Ce){return ve[0]-Ce[0]});V.filterChanged(re.key,ue._index,qe)}})}}),re}function O(G){G.classed(c.cn.axisExtentText,!0).attr("text-anchor","middle").style("cursor","default")}function z(G,V){var j=V==="top"?1:-1,W=G*Math.PI/180;return{dir:j,dx:Math.sin(W),dy:Math.cos(W),degrees:G}}function B(G,V,j){for(var W=V.panels||(V.panels=[]),Z=G.data(),ie=0;ie<Z.length-1;ie++){var te=W[ie]||(W[ie]={}),J=Z[ie],X=Z[ie+1];te.dim0=J,te.dim1=X,te.canvasX=J.canvasX,te.panelSizeX=X.canvasX-J.canvasX,te.panelSizeY=V.model.canvasHeight,te.y=0,te.canvasY=0,te.plotGlPixelRatio=j}}function Y(G,V){return y.tickText(G._ax,V,!1).text}function D(G,V){if(G.ordinal)return"";var j=G.domainScale.domain(),W=j[V?j.length-1:0];return Y(G.model.dimensions[G.visibleIndex],W)}R.exports=function(G,V,j,W){var Z=G._context.staticPlot,ie=G._fullLayout,te=ie._toppaper,J=ie._glcontainer,X=G._context.plotGlPixelRatio,ee=G._fullLayout.paper_bgcolor;(function(Te){for(var Ne=0;Ne<Te.length;Ne++)for(var qe=0;qe<Te[Ne].length;qe++)for(var ve=Te[Ne][qe].trace,Ce=ve.dimensions,Ae=0;Ae<Ce.length;Ae++){var ze=Ce[Ae].values,Ue=Ce[Ae]._ax;Ue&&(Ue.range?Ue.range=x(Ue.range[0],Ue.range[1]):Ue.range=v(ze,ve._length),Ue.dtick||(Ue.dtick=.01*(Math.abs(Ue.range[1]-Ue.range[0])||1)),Ue.tickformat=Ce[Ae].tickformat,y.calcTicks(Ue),Ue.cleanRange())}})(V);var re,oe,ue=(re=!0,oe=!1,{linePickActive:function(Te){return arguments.length?re=!!Te:re},contextShown:function(Te){return arguments.length?oe=!!Te:oe}}),ce=V.filter(function(Te){return u(Te).trace.visible}).map(C.bind(0,j)).map(P.bind(0,ue,W));J.each(function(Te,Ne){return k.extendFlat(Te,ce[Ne])});var de=J.selectAll(".gl-canvas").each(function(Te){Te.viewModel=ce[0],Te.viewModel.plotGlPixelRatio=X,Te.viewModel.paperColor=ee,Te.model=Te.viewModel?Te.viewModel.model:null}),me=null;de.filter(function(Te){return Te.pick}).style("pointer-events",Z?"none":"auto").on("mousemove",function(Te){if(ue.linePickActive()&&Te.lineLayer&&W&&W.hover){var Ne=w.event,qe=this.width,ve=this.height,Ce=w.mouse(this),Ae=Ce[0],ze=Ce[1];if(Ae<0||ze<0||Ae>=qe||ze>=ve)return;var Ue=Te.lineLayer.readPixel(Ae,ve-1-ze),Ve=Ue[3]!==0,Ye=Ve?Ue[2]+256*(Ue[1]+256*Ue[0]):null,$e={x:Ae,y:ze,clientX:Ne.clientX,clientY:Ne.clientY,dataIndex:Te.model.key,curveNumber:Ye};Ye!==me&&(Ve?W.hover($e):W.unhover&&W.unhover($e),me=Ye)}}),de.style("opacity",function(Te){return Te.pick?0:1}),te.style("background","rgba(255, 255, 255, 0)");var _e=te.selectAll("."+c.cn.parcoords).data(ce,a);_e.exit().remove(),_e.enter().append("g").classed(c.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),_e.attr("transform",function(Te){return l(Te.model.translateX,Te.model.translateY)});var Se=_e.selectAll("."+c.cn.parcoordsControlView).data(s,a);Se.enter().append("g").classed(c.cn.parcoordsControlView,!0),Se.attr("transform",function(Te){return l(Te.model.pad.l,Te.model.pad.t)});var we=Se.selectAll("."+c.cn.yAxis).data(function(Te){return Te.dimensions},a);we.enter().append("g").classed(c.cn.yAxis,!0),Se.each(function(Te){B(we,Te,X)}),de.each(function(Te){if(Te.viewModel){!Te.lineLayer||W?Te.lineLayer=g(this,Te):Te.lineLayer.update(Te),(Te.key||Te.key===0)&&(Te.viewModel[Te.key]=Te.lineLayer);var Ne=!Te.context||W;Te.lineLayer.render(Te.viewModel.panels,Ne)}}),we.attr("transform",function(Te){return l(Te.xScale(Te.xIndex),0)}),we.call(w.behavior.drag().origin(function(Te){return Te}).on("drag",function(Te){var Ne=Te.parent;ue.linePickActive(!1),Te.x=Math.max(-c.overdrag,Math.min(Te.model.width+c.overdrag,w.event.x)),Te.canvasX=Te.x*Te.model.canvasPixelRatio,we.sort(function(qe,ve){return qe.x-ve.x}).each(function(qe,ve){qe.xIndex=ve,qe.x=Te===qe?qe.x:qe.xScale(qe.xIndex),qe.canvasX=qe.x*qe.model.canvasPixelRatio}),B(we,Ne,X),we.filter(function(qe){return Math.abs(Te.xIndex-qe.xIndex)!==0}).attr("transform",function(qe){return l(qe.xScale(qe.xIndex),0)}),w.select(this).attr("transform",l(Te.x,0)),we.each(function(qe,ve,Ce){Ce===Te.parent.key&&(Ne.dimensions[ve]=qe)}),Ne.contextLayer&&Ne.contextLayer.render(Ne.panels,!1,!A(Ne)),Ne.focusLayer.render&&Ne.focusLayer.render(Ne.panels)}).on("dragend",function(Te){var Ne=Te.parent;Te.x=Te.xScale(Te.xIndex),Te.canvasX=Te.x*Te.model.canvasPixelRatio,B(we,Ne,X),w.select(this).attr("transform",function(qe){return l(qe.x,0)}),Ne.contextLayer&&Ne.contextLayer.render(Ne.panels,!1,!A(Ne)),Ne.focusLayer&&Ne.focusLayer.render(Ne.panels),Ne.pickLayer&&Ne.pickLayer.render(Ne.panels,!0),ue.linePickActive(!0),W&&W.axesMoved&&W.axesMoved(Ne.key,Ne.dimensions.map(function(qe){return qe.crossfilterDimensionIndex}))})),we.exit().remove();var xe=we.selectAll("."+c.cn.axisOverlays).data(s,a);xe.enter().append("g").classed(c.cn.axisOverlays,!0),xe.selectAll("."+c.cn.axis).remove();var De=xe.selectAll("."+c.cn.axis).data(s,a);De.enter().append("g").classed(c.cn.axis,!0),De.each(function(Te){var Ne=Te.model.height/Te.model.tickDistance,qe=Te.domainScale,ve=qe.domain();w.select(this).call(w.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(Ne,Te.tickFormat).tickValues(Te.ordinal?ve:null).tickFormat(function(Ce){return p.isOrdinal(Te)?Ce:Y(Te.model.dimensions[Te.visibleIndex],Ce)}).scale(qe)),o.font(De.selectAll("text"),Te.model.tickFont)}),De.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),De.selectAll("text").style("text-shadow",t.makeTextShadow(ee)).style("cursor","default");var Ee=xe.selectAll("."+c.cn.axisHeading).data(s,a);Ee.enter().append("g").classed(c.cn.axisHeading,!0);var Me=Ee.selectAll("."+c.cn.axisTitle).data(s,a);Me.enter().append("text").classed(c.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",Z?"none":"auto"),Me.text(function(Te){return Te.label}).each(function(Te){var Ne=w.select(this);o.font(Ne,Te.model.labelFont),t.convertToTspans(Ne,G)}).attr("transform",function(Te){var Ne=z(Te.model.labelAngle,Te.model.labelSide),qe=c.axisTitleOffset;return(Ne.dir>0?"":l(0,2*qe+Te.model.height))+h(Ne.degrees)+l(-qe*Ne.dx,-qe*Ne.dy)}).attr("text-anchor",function(Te){var Ne=z(Te.model.labelAngle,Te.model.labelSide);return 2*Math.abs(Ne.dx)>Math.abs(Ne.dy)?Ne.dir*Ne.dx<0?"start":"end":"middle"});var he=xe.selectAll("."+c.cn.axisExtent).data(s,a);he.enter().append("g").classed(c.cn.axisExtent,!0);var fe=he.selectAll("."+c.cn.axisExtentTop).data(s,a);fe.enter().append("g").classed(c.cn.axisExtentTop,!0),fe.attr("transform",l(0,-c.axisExtentOffset));var ae=fe.selectAll("."+c.cn.axisExtentTopText).data(s,a);ae.enter().append("text").classed(c.cn.axisExtentTopText,!0).call(O),ae.text(function(Te){return D(Te,!0)}).each(function(Te){o.font(w.select(this),Te.model.rangeFont)});var be=he.selectAll("."+c.cn.axisExtentBottom).data(s,a);be.enter().append("g").classed(c.cn.axisExtentBottom,!0),be.attr("transform",function(Te){return l(0,Te.model.height+c.axisExtentOffset)});var Ie=be.selectAll("."+c.cn.axisExtentBottomText).data(s,a);Ie.enter().append("text").classed(c.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(O),Ie.text(function(Te){return D(Te,!1)}).each(function(Te){o.font(w.select(this),Te.model.rangeFont)}),b.ensureAxisBrush(xe,ee,G)}},21341:function(R,E,e){var w=e(17171),k=e(79749),i=e(1602).isVisible,_={};function y(h,l,t){var o=l.indexOf(t),r=h.indexOf(o);return r===-1&&(r+=l.length),r}(R.exports=function(h,l){var t=h._fullLayout;if(k(h,[],_)){var o={},r={},n={},a={},s=t._size;l.forEach(function(u,p){var c=u[0].trace;n[p]=c.index;var b=a[p]=c._fullInput.index;o[p]=h.data[b].dimensions,r[p]=h.data[b].dimensions.slice()}),w(h,l,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},{filterChanged:function(u,p,c){var b=r[u][p],g=c.map(function(d){return d.slice()}),f="dimensions["+p+"].constraintrange",v=t._tracePreGUI[h._fullData[n[u]]._fullInput.uid];if(v[f]===void 0){var m=b.constraintrange;v[f]=m||null}var x=h._fullData[n[u]].dimensions[p];g.length?(g.length===1&&(g=g[0]),b.constraintrange=g,x.constraintrange=g.slice(),g=[g]):(delete b.constraintrange,delete x.constraintrange,g=null);var T={};T[f]=g,h.emit("plotly_restyle",[T,[a[u]]])},hover:function(u){h.emit("plotly_hover",u)},unhover:function(u){h.emit("plotly_unhover",u)},axesMoved:function(u,p){var c=function(b,g){return function(f,v){return y(b,g,f)-y(b,g,v)}}(p,r[u].filter(i));o[u].sort(c),r[u].filter(function(b){return!i(b)}).sort(function(b){return r[u].indexOf(b)}).forEach(function(b){o[u].splice(o[u].indexOf(b),1),o[u].splice(r[u].indexOf(b),0,b)}),h.emit("plotly_restyle",[{dimensions:[o[u]]},[a[u]]])}})}}).reglPrecompiled=_},34e3:function(R,E,e){var w=e(9012),k=e(27670).Y,i=e(41940),_=e(22399),y=e(5386).fF,h=e(5386).si,l=e(1426).extendFlat,t=e(79952).u,o=i({editType:"plot",arrayOk:!0,colorEditType:"plot"});R.exports={labels:{valType:"data_array",editType:"calc"},label0:{valType:"number",dflt:0,editType:"calc"},dlabel:{valType:"number",dflt:1,editType:"calc"},values:{valType:"data_array",editType:"calc"},marker:{colors:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:_.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:t,editType:"calc"},text:{valType:"data_array",editType:"plot"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},scalegroup:{valType:"string",dflt:"",editType:"calc"},textinfo:{valType:"flaglist",flags:["label","text","value","percent"],extras:["none"],editType:"calc"},hoverinfo:l({},w.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:y({},{keys:["label","color","value","percent","text"]}),texttemplate:h({editType:"plot"},{keys:["label","color","value","percent","text"]}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:l({},o,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:l({},o,{}),outsidetextfont:l({},o,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:l({},o,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:k({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"},_deprecated:{title:{valType:"string",dflt:"",editType:"calc"},titlefont:l({},o,{}),titleposition:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"calc"}}}},13584:function(R,E,e){var w=e(74875);E.name="pie",E.plot=function(k,i,_,y){w.plotBasePlot(E.name,k,i,_,y)},E.clean=function(k,i,_,y){w.cleanBasePlot(E.name,k,i,_,y)}},32354:function(R,E,e){var w=e(92770),k=e(84267),i=e(7901),_={};function y(l){return function(t,o){return!!t&&!!(t=k(t)).isValid()&&(t=i.addOpacity(t,t.getAlpha()),l[o]||(l[o]=t),t)}}function h(l,t){var o,r=JSON.stringify(l),n=t[r];if(!n){for(n=l.slice(),o=0;o<l.length;o++)n.push(k(l[o]).lighten(20).toHexString());for(o=0;o<l.length;o++)n.push(k(l[o]).darken(20).toHexString());t[r]=n}return n}R.exports={calc:function(l,t){var o,r,n=[],a=l._fullLayout,s=a.hiddenlabels||[],u=t.labels,p=t.marker.colors||[],c=t.values,b=t._length,g=t._hasValues&&b;if(t.dlabel)for(u=new Array(b),o=0;o<b;o++)u[o]=String(t.label0+o*t.dlabel);var f={},v=y(a["_"+t.type+"colormap"]),m=0,x=!1;for(o=0;o<b;o++){var T,d,M;if(g){if(T=c[o],!w(T))continue;T=+T}else T=1;(d=u[o])!==void 0&&d!==""||(d=o);var A=f[d=String(d)];A===void 0?(f[d]=n.length,(M=s.indexOf(d)!==-1)||(m+=T),n.push({v:T,label:d,color:v(p[o],d),i:o,pts:[o],hidden:M})):(x=!0,(r=n[A]).v+=T,r.pts.push(o),r.hidden||(m+=T),r.color===!1&&p[o]&&(r.color=v(p[o],d)))}return n=n.filter(function(C){return C.v>=0}),(t.type==="funnelarea"?x:t.sort)&&n.sort(function(C,P){return P.v-C.v}),n[0]&&(n[0].vTotal=m),n},crossTraceCalc:function(l,t){var o=(t||{}).type;o||(o="pie");var r=l._fullLayout,n=l.calcdata,a=r[o+"colorway"],s=r["_"+o+"colormap"];r["extend"+o+"colors"]&&(a=h(a,_));for(var u=0,p=0;p<n.length;p++){var c=n[p];if(c[0].trace.type===o)for(var b=0;b<c.length;b++){var g=c[b];g.color===!1&&(s[g.label]?g.color=s[g.label]:(s[g.label]=g.color=a[u%a.length],u++))}}},makePullColorFn:y,generateExtendedColors:h}},37434:function(R,E,e){var w=e(92770),k=e(71828),i=e(34e3),_=e(27670).c,y=e(90769).handleText,h=e(71828).coercePattern;function l(o,r){var n=Array.isArray(o),a=k.isArrayOrTypedArray(r),s=Math.min(n?o.length:1/0,a?r.length:1/0);if(isFinite(s)||(s=0),s&&a){for(var u,p=0;p<s;p++){var c=r[p];if(w(c)&&c>0){u=!0;break}}u||(s=0)}return{hasLabels:n,hasValues:a,len:s}}function t(o,r,n,a,s){a("marker.line.width")&&a("marker.line.color",s?void 0:n.paper_bgcolor);var u=a("marker.colors");h(a,"marker.pattern",u),o.marker&&!r.marker.pattern.fgcolor&&(r.marker.pattern.fgcolor=o.marker.colors),r.marker.pattern.bgcolor||(r.marker.pattern.bgcolor=n.paper_bgcolor)}R.exports={handleLabelsAndValues:l,handleMarkerDefaults:t,supplyDefaults:function(o,r,n,a){function s(x,T){return k.coerce(o,r,i,x,T)}var u=l(s("labels"),s("values")),p=u.len;if(r._hasLabels=u.hasLabels,r._hasValues=u.hasValues,!r._hasLabels&&r._hasValues&&(s("label0"),s("dlabel")),p){r._length=p,t(o,r,a,s,!0),s("scalegroup");var c,b=s("text"),g=s("texttemplate");if(g||(c=s("textinfo",Array.isArray(b)?"text+percent":"percent")),s("hovertext"),s("hovertemplate"),g||c&&c!=="none"){var f=s("textposition");y(o,r,a,s,f,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),(Array.isArray(f)||f==="auto"||f==="outside")&&s("automargin"),(f==="inside"||f==="auto"||Array.isArray(f))&&s("insidetextorientation")}_(r,a,s);var v=s("hole");if(s("title.text")){var m=s("title.position",v?"middle center":"top center");v||m!=="middle center"||(r.title.position="top center"),k.coerceFont(s,"title.font",a.font)}s("sort"),s("direction"),s("rotation"),s("pull")}else r.visible=!1}}},20007:function(R,E,e){var w=e(23469).appendArrayMultiPointValues;R.exports=function(k,i){var _={curveNumber:i.index,pointNumbers:k.pts,data:i._input,fullData:i,label:k.label,color:k.color,value:k.v,percent:k.percent,text:k.text,bbox:k.bbox,v:k.v};return k.pts.length===1&&(_.pointNumber=_.i=k.pts[0]),w(_,i,k.pts),i.type==="funnelarea"&&(delete _.v,delete _.i),_}},22209:function(R,E,e){var w=e(91424),k=e(7901);R.exports=function(i,_,y,h){var l=y.marker.pattern;l&&l.shape?w.pointStyle(i,y,h,_):k.fill(i,_.color)}},53581:function(R,E,e){var w=e(71828);function k(i){return i.indexOf("e")!==-1?i.replace(/[.]?0+e/,"e"):i.indexOf(".")!==-1?i.replace(/[.]?0+$/,""):i}E.formatPiePercent=function(i,_){var y=k((100*i).toPrecision(3));return w.numSeparate(y,_)+"%"},E.formatPieValue=function(i,_){var y=k(i.toPrecision(10));return w.numSeparate(y,_)},E.getFirstFilled=function(i,_){if(Array.isArray(i))for(var y=0;y<_.length;y++){var h=i[_[y]];if(h||h===0||h==="")return h}},E.castOption=function(i,_){return Array.isArray(i)?E.getFirstFilled(i,_):i||void 0},E.getRotationAngle=function(i){return(i==="auto"?0:i)*Math.PI/180}},58810:function(R,E,e){R.exports={attributes:e(34e3),supplyDefaults:e(37434).supplyDefaults,supplyLayoutDefaults:e(92097),layoutAttributes:e(92774),calc:e(32354).calc,crossTraceCalc:e(32354).crossTraceCalc,plot:e(14575).plot,style:e(68357),styleOne:e(63463),moduleType:"trace",name:"pie",basePlotModule:e(13584),categories:["pie-like","pie","showLegend"],meta:{}}},92774:function(R){R.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}},92097:function(R,E,e){var w=e(71828),k=e(92774);R.exports=function(i,_){function y(h,l){return w.coerce(i,_,k,h,l)}y("hiddenlabels"),y("piecolorway",_.colorway),y("extendpiecolors")}},14575:function(R,E,e){var w=e(39898),k=e(74875),i=e(30211),_=e(7901),y=e(91424),h=e(71828),l=h.strScale,t=h.strTranslate,o=e(63893),r=e(72597),n=r.recordMinTextSize,a=r.clearMinTextSize,s=e(97313).TEXTPAD,u=e(53581),p=e(20007),c=e(71828).isValidTextValue;function b(V,j,W){var Z=W[0],ie=Z.cx,te=Z.cy,J=Z.trace,X=J.type==="funnelarea";"_hasHoverLabel"in J||(J._hasHoverLabel=!1),"_hasHoverEvent"in J||(J._hasHoverEvent=!1),V.on("mouseover",function(ee){var re=j._fullLayout,oe=j._fullData[J.index];if(!j._dragging&&re.hovermode!==!1){var ue=oe.hoverinfo;if(Array.isArray(ue)&&(ue=i.castHoverinfo({hoverinfo:[u.castOption(ue,ee.pts)],_module:J._module},re,0)),ue==="all"&&(ue="label+text+value+percent+name"),oe.hovertemplate||ue!=="none"&&ue!=="skip"&&ue){var ce=ee.rInscribed||0,de=ie+ee.pxmid[0]*(1-ce),me=te+ee.pxmid[1]*(1-ce),_e=re.separators,Se=[];if(ue&&ue.indexOf("label")!==-1&&Se.push(ee.label),ee.text=u.castOption(oe.hovertext||oe.text,ee.pts),ue&&ue.indexOf("text")!==-1){var we=ee.text;h.isValidTextValue(we)&&Se.push(we)}ee.value=ee.v,ee.valueLabel=u.formatPieValue(ee.v,_e),ue&&ue.indexOf("value")!==-1&&Se.push(ee.valueLabel),ee.percent=ee.v/Z.vTotal,ee.percentLabel=u.formatPiePercent(ee.percent,_e),ue&&ue.indexOf("percent")!==-1&&Se.push(ee.percentLabel);var xe=oe.hoverlabel,De=xe.font,Ee=[];i.loneHover({trace:J,x0:de-ce*Z.r,x1:de+ce*Z.r,y:me,_x0:X?ie+ee.TL[0]:de-ce*Z.r,_x1:X?ie+ee.TR[0]:de+ce*Z.r,_y0:X?te+ee.TL[1]:me-ce*Z.r,_y1:X?te+ee.BL[1]:me+ce*Z.r,text:Se.join("<br>"),name:oe.hovertemplate||ue.indexOf("name")!==-1?oe.name:void 0,idealAlign:ee.pxmid[0]<0?"left":"right",color:u.castOption(xe.bgcolor,ee.pts)||ee.color,borderColor:u.castOption(xe.bordercolor,ee.pts),fontFamily:u.castOption(De.family,ee.pts),fontSize:u.castOption(De.size,ee.pts),fontColor:u.castOption(De.color,ee.pts),nameLength:u.castOption(xe.namelength,ee.pts),textAlign:u.castOption(xe.align,ee.pts),hovertemplate:u.castOption(oe.hovertemplate,ee.pts),hovertemplateLabels:ee,eventData:[p(ee,oe)]},{container:re._hoverlayer.node(),outerContainer:re._paper.node(),gd:j,inOut_bbox:Ee}),ee.bbox=Ee[0],J._hasHoverLabel=!0}J._hasHoverEvent=!0,j.emit("plotly_hover",{points:[p(ee,oe)],event:w.event})}}),V.on("mouseout",function(ee){var re=j._fullLayout,oe=j._fullData[J.index],ue=w.select(this).datum();J._hasHoverEvent&&(ee.originalEvent=w.event,j.emit("plotly_unhover",{points:[p(ue,oe)],event:w.event}),J._hasHoverEvent=!1),J._hasHoverLabel&&(i.loneUnhover(re._hoverlayer.node()),J._hasHoverLabel=!1)}),V.on("click",function(ee){var re=j._fullLayout,oe=j._fullData[J.index];j._dragging||re.hovermode===!1||(j._hoverdata=[p(ee,oe)],i.click(j,w.event))})}function g(V,j,W){var Z=u.castOption(V.insidetextfont.color,j.pts);!Z&&V._input.textfont&&(Z=u.castOption(V._input.textfont.color,j.pts));var ie=u.castOption(V.insidetextfont.family,j.pts)||u.castOption(V.textfont.family,j.pts)||W.family,te=u.castOption(V.insidetextfont.size,j.pts)||u.castOption(V.textfont.size,j.pts)||W.size;return{color:Z||_.contrast(j.color),family:ie,size:te}}function f(V,j){for(var W,Z,ie=0;ie<V.length;ie++)if((Z=(W=V[ie][0]).trace).title.text){var te=Z.title.text;Z._meta&&(te=h.templateString(te,Z._meta));var J=y.tester.append("text").attr("data-notex",1).text(te).call(y.font,Z.title.font).call(o.convertToTspans,j),X=y.bBox(J.node(),!0);W.titleBox={width:X.width,height:X.height},J.remove()}}function v(V,j,W){var Z=W.r||j.rpx1,ie=j.rInscribed;if(j.startangle===j.stopangle)return{rCenter:1-ie,scale:0,rotate:0,textPosAngle:0};var te,J=j.ring,X=J===1&&Math.abs(j.startangle-j.stopangle)===2*Math.PI,ee=j.halfangle,re=j.midangle,oe=W.trace.insidetextorientation,ue=oe==="horizontal",ce=oe==="tangential",de=oe==="radial",me=oe==="auto",_e=[];if(!me){var Se,we=function(fe,ae){if(function(Ne,qe){var ve=Ne.startangle,Ce=Ne.stopangle;return ve>qe&&qe>Ce||ve<qe&&qe<Ce}(j,fe)){var be=Math.abs(fe-j.startangle),Ie=Math.abs(fe-j.stopangle),Te=be<Ie?be:Ie;(te=ae==="tan"?x(V,Z,J,Te,0):m(V,Z,J,Te,Math.PI/2)).textPosAngle=fe,_e.push(te)}};if(ue||ce){for(Se=4;Se>=-4;Se-=2)we(Math.PI*Se,"tan");for(Se=4;Se>=-4;Se-=2)we(Math.PI*(Se+1),"tan")}if(ue||de){for(Se=4;Se>=-4;Se-=2)we(Math.PI*(Se+1.5),"rad");for(Se=4;Se>=-4;Se-=2)we(Math.PI*(Se+.5),"rad")}}if(X||me||ue){var xe=Math.sqrt(V.width*V.width+V.height*V.height);if((te={scale:ie*Z*2/xe,rCenter:1-ie,rotate:0}).textPosAngle=(j.startangle+j.stopangle)/2,te.scale>=1)return te;_e.push(te)}(me||de)&&((te=m(V,Z,J,ee,re)).textPosAngle=(j.startangle+j.stopangle)/2,_e.push(te)),(me||ce)&&((te=x(V,Z,J,ee,re)).textPosAngle=(j.startangle+j.stopangle)/2,_e.push(te));for(var De=0,Ee=0,Me=0;Me<_e.length;Me++){var he=_e[Me].scale;if(Ee<he&&(Ee=he,De=Me),!me&&Ee>=1)break}return _e[De]}function m(V,j,W,Z,ie){j=Math.max(0,j-2*s);var te=V.width/V.height,J=M(te,Z,j,W);return{scale:2*J/V.height,rCenter:T(te,J/j),rotate:d(ie)}}function x(V,j,W,Z,ie){j=Math.max(0,j-2*s);var te=V.height/V.width,J=M(te,Z,j,W);return{scale:2*J/V.width,rCenter:T(te,J/j),rotate:d(ie+Math.PI/2)}}function T(V,j){return Math.cos(j)-V*j}function d(V){return(180/Math.PI*V+720)%180-90}function M(V,j,W,Z){var ie=V+1/(2*Math.tan(j));return W*Math.min(1/(Math.sqrt(ie*ie+.5)+ie),Z/(Math.sqrt(V*V+Z/2)+V))}function A(V,j){return V.v!==j.vTotal||j.trace.hole?Math.min(1/(1+1/Math.sin(V.halfangle)),V.ring/2):1}function C(V,j){var W=j.pxmid[0],Z=j.pxmid[1],ie=V.width/2,te=V.height/2;return W<0&&(ie*=-1),Z<0&&(te*=-1),{scale:1,rCenter:1,rotate:0,x:ie+Math.abs(te)*(ie>0?1:-1)/2,y:te/(1+W*W/(Z*Z)),outside:!0}}function P(V,j){var W,Z,ie,te=V.trace,J={x:V.cx,y:V.cy},X={tx:0,ty:0};X.ty+=te.title.font.size,ie=z(te),te.title.position.indexOf("top")!==-1?(J.y-=(1+ie)*V.r,X.ty-=V.titleBox.height):te.title.position.indexOf("bottom")!==-1&&(J.y+=(1+ie)*V.r);var ee,re=V.r/((ee=V.trace.aspectratio)===void 0?1:ee),oe=j.w*(te.domain.x[1]-te.domain.x[0])/2;return te.title.position.indexOf("left")!==-1?(oe+=re,J.x-=(1+ie)*re,X.tx+=V.titleBox.width/2):te.title.position.indexOf("center")!==-1?oe*=2:te.title.position.indexOf("right")!==-1&&(oe+=re,J.x+=(1+ie)*re,X.tx-=V.titleBox.width/2),W=oe/V.titleBox.width,Z=O(V,j)/V.titleBox.height,{x:J.x,y:J.y,scale:Math.min(W,Z),tx:X.tx,ty:X.ty}}function O(V,j){var W=V.trace,Z=j.h*(W.domain.y[1]-W.domain.y[0]);return Math.min(V.titleBox.height,Z/2)}function z(V){var j,W=V.pull;if(!W)return 0;if(Array.isArray(W))for(W=0,j=0;j<V.pull.length;j++)V.pull[j]>W&&(W=V.pull[j]);return W}function B(V,j){for(var W=[],Z=0;Z<V.length;Z++){var ie=V[Z][0],te=ie.trace,J=te.domain,X=j.w*(J.x[1]-J.x[0]),ee=j.h*(J.y[1]-J.y[0]);te.title.text&&te.title.position!=="middle center"&&(ee-=O(ie,j));var re=X/2,oe=ee/2;te.type!=="funnelarea"||te.scalegroup||(oe/=te.aspectratio),ie.r=Math.min(re,oe)/(1+z(te)),ie.cx=j.l+j.w*(te.domain.x[1]+te.domain.x[0])/2,ie.cy=j.t+j.h*(1-te.domain.y[0])-ee/2,te.title.text&&te.title.position.indexOf("bottom")!==-1&&(ie.cy-=O(ie,j)),te.scalegroup&&W.indexOf(te.scalegroup)===-1&&W.push(te.scalegroup)}(function(ue,ce){for(var de,me,_e,Se=0;Se<ce.length;Se++){var we=1/0,xe=ce[Se];for(me=0;me<ue.length;me++)if((_e=(de=ue[me][0]).trace).scalegroup===xe){var De;if(_e.type==="pie")De=de.r*de.r;else if(_e.type==="funnelarea"){var Ee,Me;_e.aspectratio>1?Me=(Ee=de.r)/_e.aspectratio:Ee=(Me=de.r)*_e.aspectratio,De=(Ee*=(1+_e.baseratio)/2)*Me}we=Math.min(we,De/de.vTotal)}for(me=0;me<ue.length;me++)if((_e=(de=ue[me][0]).trace).scalegroup===xe){var he=we*de.vTotal;_e.type==="funnelarea"&&(he/=(1+_e.baseratio)/2,he/=_e.aspectratio),de.r=Math.sqrt(he)}}})(V,W)}function Y(V,j){return[V*Math.sin(j),-V*Math.cos(j)]}function D(V,j,W){var Z=V._fullLayout,ie=W.trace,te=ie.texttemplate,J=ie.textinfo;if(!te&&J&&J!=="none"){var X,ee=J.split("+"),re=function(De){return ee.indexOf(De)!==-1},oe=re("label"),ue=re("text"),ce=re("value"),de=re("percent"),me=Z.separators;if(X=oe?[j.label]:[],ue){var _e=u.getFirstFilled(ie.text,j.pts);c(_e)&&X.push(_e)}ce&&X.push(u.formatPieValue(j.v,me)),de&&X.push(u.formatPiePercent(j.v/W.vTotal,me)),j.text=X.join("<br>")}if(te){var Se=h.castOption(ie,j.i,"texttemplate");if(Se){var we=function(De){return{label:De.label,value:De.v,valueLabel:u.formatPieValue(De.v,Z.separators),percent:De.v/W.vTotal,percentLabel:u.formatPiePercent(De.v/W.vTotal,Z.separators),color:De.color,text:De.text,customdata:h.castOption(ie,De.i,"customdata")}}(j),xe=u.getFirstFilled(ie.text,j.pts);(c(xe)||xe==="")&&(we.text=xe),j.text=h.texttemplateString(Se,we,V._fullLayout._d3locale,we,ie._meta||{})}else j.text=""}}function G(V,j){var W=V.rotate*Math.PI/180,Z=Math.cos(W),ie=Math.sin(W),te=(j.left+j.right)/2,J=(j.top+j.bottom)/2;V.textX=te*Z-J*ie,V.textY=te*ie+J*Z,V.noCenter=!0}R.exports={plot:function(V,j){var W=V._context.staticPlot,Z=V._fullLayout,ie=Z._size;a("pie",Z),f(j,V),B(j,ie);var te=h.makeTraceGroups(Z._pielayer,j,"trace").each(function(J){var X=w.select(this),ee=J[0],re=ee.trace;(function(oe){var ue,ce,de,me=oe[0],_e=me.r,Se=me.trace,we=u.getRotationAngle(Se.rotation),xe=2*Math.PI/me.vTotal,De="px0",Ee="px1";if(Se.direction==="counterclockwise"){for(ue=0;ue<oe.length&&oe[ue].hidden;ue++);if(ue===oe.length)return;we+=xe*oe[ue].v,xe*=-1,De="px1",Ee="px0"}for(de=Y(_e,we),ue=0;ue<oe.length;ue++)(ce=oe[ue]).hidden||(ce[De]=de,ce.startangle=we,we+=xe*ce.v/2,ce.pxmid=Y(_e,we),ce.midangle=we,de=Y(_e,we+=xe*ce.v/2),ce.stopangle=we,ce[Ee]=de,ce.largeArc=ce.v>me.vTotal/2?1:0,ce.halfangle=Math.PI*Math.min(ce.v/me.vTotal,.5),ce.ring=1-Se.hole,ce.rInscribed=A(ce,me))})(J),X.attr("stroke-linejoin","round"),X.each(function(){var oe=w.select(this).selectAll("g.slice").data(J);oe.enter().append("g").classed("slice",!0),oe.exit().remove();var ue=[[[],[]],[[],[]]],ce=!1;oe.each(function(Ee,Me){if(Ee.hidden)w.select(this).selectAll("path,g").remove();else{Ee.pointNumber=Ee.i,Ee.curveNumber=re.index,ue[Ee.pxmid[1]<0?0:1][Ee.pxmid[0]<0?0:1].push(Ee);var he=ee.cx,fe=ee.cy,ae=w.select(this),be=ae.selectAll("path.surface").data([Ee]);if(be.enter().append("path").classed("surface",!0).style({"pointer-events":W?"none":"all"}),ae.call(b,V,J),re.pull){var Ie=+u.castOption(re.pull,Ee.pts)||0;Ie>0&&(he+=Ie*Ee.pxmid[0],fe+=Ie*Ee.pxmid[1])}Ee.cxFinal=he,Ee.cyFinal=fe;var Te=re.hole;if(Ee.v===ee.vTotal){var Ne="M"+(he+Ee.px0[0])+","+(fe+Ee.px0[1])+ze(Ee.px0,Ee.pxmid,!0,1)+ze(Ee.pxmid,Ee.px0,!0,1)+"Z";Te?be.attr("d","M"+(he+Te*Ee.px0[0])+","+(fe+Te*Ee.px0[1])+ze(Ee.px0,Ee.pxmid,!1,Te)+ze(Ee.pxmid,Ee.px0,!1,Te)+"Z"+Ne):be.attr("d",Ne)}else{var qe=ze(Ee.px0,Ee.px1,!0,1);if(Te){var ve=1-Te;be.attr("d","M"+(he+Te*Ee.px1[0])+","+(fe+Te*Ee.px1[1])+ze(Ee.px1,Ee.px0,!1,Te)+"l"+ve*Ee.px0[0]+","+ve*Ee.px0[1]+qe+"Z")}else be.attr("d","M"+he+","+fe+"l"+Ee.px0[0]+","+Ee.px0[1]+qe+"Z")}D(V,Ee,ee);var Ce=u.castOption(re.textposition,Ee.pts),Ae=ae.selectAll("g.slicetext").data(Ee.text&&Ce!=="none"?[0]:[]);Ae.enter().append("g").classed("slicetext",!0),Ae.exit().remove(),Ae.each(function(){var Ue=h.ensureSingle(w.select(this),"text","",function(wt){wt.attr("data-notex",1)}),Ve=h.ensureUniformFontSize(V,Ce==="outside"?function(wt,ut,lt){return{color:u.castOption(wt.outsidetextfont.color,ut.pts)||u.castOption(wt.textfont.color,ut.pts)||lt.color,family:u.castOption(wt.outsidetextfont.family,ut.pts)||u.castOption(wt.textfont.family,ut.pts)||lt.family,size:u.castOption(wt.outsidetextfont.size,ut.pts)||u.castOption(wt.textfont.size,ut.pts)||lt.size}}(re,Ee,Z.font):g(re,Ee,Z.font));Ue.text(Ee.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(y.font,Ve).call(o.convertToTspans,V);var Ye,$e=y.bBox(Ue.node());if(Ce==="outside")Ye=C($e,Ee);else if(Ye=v($e,Ee,ee),Ce==="auto"&&Ye.scale<1){var rt=h.ensureUniformFontSize(V,re.outsidetextfont);Ue.call(y.font,rt),Ye=C($e=y.bBox(Ue.node()),Ee)}var ht=Ye.textPosAngle,nt=ht===void 0?Ee.pxmid:Y(ee.r,ht);if(Ye.targetX=he+nt[0]*Ye.rCenter+(Ye.x||0),Ye.targetY=fe+nt[1]*Ye.rCenter+(Ye.y||0),G(Ye,$e),Ye.outside){var bt=Ye.targetY;Ee.yLabelMin=bt-$e.height/2,Ee.yLabelMid=bt,Ee.yLabelMax=bt+$e.height/2,Ee.labelExtraX=0,Ee.labelExtraY=0,ce=!0}Ye.fontSize=Ve.size,n(re.type,Ye,Z),J[Me].transform=Ye,h.setTransormAndDisplay(Ue,Ye)})}function ze(Ue,Ve,Ye,$e){var rt=$e*(Ve[0]-Ue[0]),ht=$e*(Ve[1]-Ue[1]);return"a"+$e*ee.r+","+$e*ee.r+" 0 "+Ee.largeArc+(Ye?" 1 ":" 0 ")+rt+","+ht}});var de=w.select(this).selectAll("g.titletext").data(re.title.text?[0]:[]);if(de.enter().append("g").classed("titletext",!0),de.exit().remove(),de.each(function(){var Ee,Me=h.ensureSingle(w.select(this),"text","",function(fe){fe.attr("data-notex",1)}),he=re.title.text;re._meta&&(he=h.templateString(he,re._meta)),Me.text(he).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(y.font,re.title.font).call(o.convertToTspans,V),Ee=re.title.position==="middle center"?function(fe){var ae=Math.sqrt(fe.titleBox.width*fe.titleBox.width+fe.titleBox.height*fe.titleBox.height);return{x:fe.cx,y:fe.cy,scale:fe.trace.hole*fe.r*2/ae,tx:0,ty:-fe.titleBox.height/2+fe.trace.title.font.size}}(ee):P(ee,ie),Me.attr("transform",t(Ee.x,Ee.y)+l(Math.min(1,Ee.scale))+t(Ee.tx,Ee.ty))}),ce&&function(Ee,Me){var he,fe,ae,be,Ie,Te,Ne,qe,ve,Ce,Ae,ze,Ue;function Ve(ht,nt){return ht.pxmid[1]-nt.pxmid[1]}function Ye(ht,nt){return nt.pxmid[1]-ht.pxmid[1]}function $e(ht,nt){nt||(nt={});var bt,wt,ut,lt,Tt=nt.labelExtraY+(fe?nt.yLabelMax:nt.yLabelMin),Et=fe?ht.yLabelMin:ht.yLabelMax,St=fe?ht.yLabelMax:ht.yLabelMin,Ft=ht.cyFinal+Ie(ht.px0[1],ht.px1[1]),zt=Tt-Et;if(zt*Ne>0&&(ht.labelExtraY=zt),Array.isArray(Me.pull))for(wt=0;wt<Ce.length;wt++)(ut=Ce[wt])===ht||(u.castOption(Me.pull,ht.pts)||0)>=(u.castOption(Me.pull,ut.pts)||0)||((ht.pxmid[1]-ut.pxmid[1])*Ne>0?(zt=ut.cyFinal+Ie(ut.px0[1],ut.px1[1])-Et-ht.labelExtraY)*Ne>0&&(ht.labelExtraY+=zt):(St+ht.labelExtraY-Ft)*Ne>0&&(bt=3*Te*Math.abs(wt-Ce.indexOf(ht)),(lt=ut.cxFinal+be(ut.px0[0],ut.px1[0])+bt-(ht.cxFinal+ht.pxmid[0])-ht.labelExtraX)*Te>0&&(ht.labelExtraX+=lt)))}for(fe=0;fe<2;fe++)for(ae=fe?Ve:Ye,Ie=fe?Math.max:Math.min,Ne=fe?1:-1,he=0;he<2;he++){for(be=he?Math.max:Math.min,Te=he?1:-1,(qe=Ee[fe][he]).sort(ae),ve=Ee[1-fe][he],Ce=ve.concat(qe),ze=[],Ae=0;Ae<qe.length;Ae++)qe[Ae].yLabelMid!==void 0&&ze.push(qe[Ae]);for(Ue=!1,Ae=0;fe&&Ae<ve.length;Ae++)if(ve[Ae].yLabelMid!==void 0){Ue=ve[Ae];break}for(Ae=0;Ae<ze.length;Ae++){var rt=Ae&&ze[Ae-1];Ue&&!Ae&&(rt=Ue),$e(ze[Ae],rt)}}}(ue,re),function(Ee,Me){Ee.each(function(he){var fe=w.select(this);if(he.labelExtraX||he.labelExtraY){var ae=fe.select("g.slicetext text");he.transform.targetX+=he.labelExtraX,he.transform.targetY+=he.labelExtraY,h.setTransormAndDisplay(ae,he.transform);var be=he.cxFinal+he.pxmid[0],Ie="M"+be+","+(he.cyFinal+he.pxmid[1]),Te=(he.yLabelMax-he.yLabelMin)*(he.pxmid[0]<0?-1:1)/4;if(he.labelExtraX){var Ne=he.labelExtraX*he.pxmid[1]/he.pxmid[0],qe=he.yLabelMid+he.labelExtraY-(he.cyFinal+he.pxmid[1]);Math.abs(Ne)>Math.abs(qe)?Ie+="l"+qe*he.pxmid[0]/he.pxmid[1]+","+qe+"H"+(be+he.labelExtraX+Te):Ie+="l"+he.labelExtraX+","+Ne+"v"+(qe-Ne)+"h"+Te}else Ie+="V"+(he.yLabelMid+he.labelExtraY)+"h"+Te;h.ensureSingle(fe,"path","textline").call(_.stroke,Me.outsidetextfont.color).attr({"stroke-width":Math.min(2,Me.outsidetextfont.size/8),d:Ie,fill:"none"})}else fe.select("path.textline").remove()})}(oe,re),ce&&re.automargin){var me=y.bBox(X.node()),_e=re.domain,Se=ie.w*(_e.x[1]-_e.x[0]),we=ie.h*(_e.y[1]-_e.y[0]),xe=(.5*Se-ee.r)/ie.w,De=(.5*we-ee.r)/ie.h;k.autoMargin(V,"pie."+re.uid+".automargin",{xl:_e.x[0]-xe,xr:_e.x[1]+xe,yb:_e.y[0]-De,yt:_e.y[1]+De,l:Math.max(ee.cx-ee.r-me.left,0),r:Math.max(me.right-(ee.cx+ee.r),0),b:Math.max(me.bottom-(ee.cy+ee.r),0),t:Math.max(ee.cy-ee.r-me.top,0),pad:5})}})});setTimeout(function(){te.selectAll("tspan").each(function(){var J=w.select(this);J.attr("dy")&&J.attr("dy",J.attr("dy"))})},0)},formatSliceLabel:D,transformInsideText:v,determineInsideTextFont:g,positionTitleOutside:P,prerenderTitles:f,layoutAreas:B,attachFxHandlers:b,computeTransform:G}},68357:function(R,E,e){var w=e(39898),k=e(63463),i=e(72597).resizeText;R.exports=function(_){var y=_._fullLayout._pielayer.selectAll(".trace");i(_,y,"pie"),y.each(function(h){var l=h[0].trace,t=w.select(this);t.style({opacity:l.opacity}),t.selectAll("path.surface").each(function(o){w.select(this).call(k,o,l,_)})})}},63463:function(R,E,e){var w=e(7901),k=e(53581).castOption,i=e(22209);R.exports=function(_,y,h,l){var t=h.marker.line,o=k(t.color,y.pts)||w.defaultLine,r=k(t.width,y.pts)||0;_.call(i,y,h,l).style("stroke-width",r).call(w.stroke,o)}},10959:function(R,E,e){var w=e(82196);R.exports={x:w.x,y:w.y,xy:{valType:"data_array",editType:"calc"},indices:{valType:"data_array",editType:"calc"},xbounds:{valType:"data_array",editType:"calc"},ybounds:{valType:"data_array",editType:"calc"},text:w.text,marker:{color:{valType:"color",arrayOk:!1,editType:"calc"},opacity:{valType:"number",min:0,max:1,dflt:1,arrayOk:!1,editType:"calc"},blend:{valType:"boolean",dflt:null,editType:"calc"},sizemin:{valType:"number",min:.1,max:2,dflt:.5,editType:"calc"},sizemax:{valType:"number",min:.1,dflt:20,editType:"calc"},border:{color:{valType:"color",arrayOk:!1,editType:"calc"},arearatio:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},editType:"calc"},editType:"calc"},transforms:void 0}},42743:function(R,E,e){var w=e(9330).gl_pointcloud2d,k=e(78614),i=e(71739).findExtremes,_=e(34603);function y(l,t){this.scene=l,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=w(l.glplot,this.pointcloudOptions),this.pointcloud._trace=this}var h=y.prototype;h.handlePick=function(l){var t=this.idToIndex[l.pointId];return{trace:this,dataCoord:l.dataCoord,traceCoord:this.pickXYData?[this.pickXYData[2*t],this.pickXYData[2*t+1]]:[this.pickXData[t],this.pickYData[t]],textLabel:Array.isArray(this.textLabels)?this.textLabels[t]:this.textLabels,color:this.color,name:this.name,pointIndex:t,hoverinfo:this.hoverinfo}},h.update=function(l){this.index=l.index,this.textLabels=l.text,this.name=l.name,this.hoverinfo=l.hoverinfo,this.bounds=[1/0,1/0,-1/0,-1/0],this.updateFast(l),this.color=_(l,{})},h.updateFast=function(l){var t,o,r,n,a,s,u=this.xData=this.pickXData=l.x,p=this.yData=this.pickYData=l.y,c=this.pickXYData=l.xy,b=l.xbounds&&l.ybounds,g=l.indices,f=this.bounds;if(c){if(r=c,t=c.length>>>1,b)f[0]=l.xbounds[0],f[2]=l.xbounds[1],f[1]=l.ybounds[0],f[3]=l.ybounds[1];else for(s=0;s<t;s++)n=r[2*s],a=r[2*s+1],n<f[0]&&(f[0]=n),n>f[2]&&(f[2]=n),a<f[1]&&(f[1]=a),a>f[3]&&(f[3]=a);if(g)o=g;else for(o=new Int32Array(t),s=0;s<t;s++)o[s]=s}else for(t=u.length,r=new Float32Array(2*t),o=new Int32Array(t),s=0;s<t;s++)n=u[s],a=p[s],o[s]=s,r[2*s]=n,r[2*s+1]=a,n<f[0]&&(f[0]=n),n>f[2]&&(f[2]=n),a<f[1]&&(f[1]=a),a>f[3]&&(f[3]=a);this.idToIndex=o,this.pointcloudOptions.idToIndex=o,this.pointcloudOptions.positions=r;var v=k(l.marker.color),m=k(l.marker.border.color),x=l.opacity*l.marker.opacity;v[3]*=x,this.pointcloudOptions.color=v;var T=l.marker.blend;T===null&&(T=u.length<100||p.length<100),this.pointcloudOptions.blend=T,m[3]*=x,this.pointcloudOptions.borderColor=m;var d=l.marker.sizemin,M=Math.max(l.marker.sizemax,l.marker.sizemin);this.pointcloudOptions.sizeMin=d,this.pointcloudOptions.sizeMax=M,this.pointcloudOptions.areaRatio=l.marker.border.arearatio,this.pointcloud.update(this.pointcloudOptions);var A=this.scene.xaxis,C=this.scene.yaxis,P=M/2||.5;l._extremes[A._id]=i(A,[f[0],f[2]],{ppad:P}),l._extremes[C._id]=i(C,[f[1],f[3]],{ppad:P})},h.dispose=function(){this.pointcloud.dispose()},R.exports=function(l,t){var o=new y(l,t.uid);return o.update(t),o}},33876:function(R,E,e){var w=e(71828),k=e(10959);R.exports=function(i,_,y){function h(l,t){return w.coerce(i,_,k,l,t)}h("x"),h("y"),h("xbounds"),h("ybounds"),i.xy&&i.xy instanceof Float32Array&&(_.xy=i.xy),i.indices&&i.indices instanceof Int32Array&&(_.indices=i.indices),h("text"),h("marker.color",y),h("marker.opacity"),h("marker.blend"),h("marker.sizemin"),h("marker.sizemax"),h("marker.border.color",y),h("marker.border.arearatio"),_._length=null}},20593:function(R,E,e){R.exports={attributes:e(10959),supplyDefaults:e(33876),calc:e(36563),plot:e(42743),moduleType:"trace",name:"pointcloud",basePlotModule:e(4796),categories:["gl","gl2d","showLegend"],meta:{}}},39953:function(R,E,e){var w=e(41940),k=e(9012),i=e(22399),_=e(77914),y=e(27670).Y,h=e(5386).fF,l=e(50693),t=e(44467).templatedArray,o=e(12663).descriptionOnlyNumbers,r=e(1426).extendFlat,n=e(30962).overrideAll;(R.exports=n({hoverinfo:r({},k.hoverinfo,{flags:[],arrayOk:!1}),hoverlabel:_.hoverlabel,domain:y({name:"sankey",trace:!0}),orientation:{valType:"enumerated",values:["v","h"],dflt:"h"},valueformat:{valType:"string",dflt:".3s",description:o("value")},valuesuffix:{valType:"string",dflt:""},arrangement:{valType:"enumerated",values:["snap","perpendicular","freeform","fixed"],dflt:"snap"},textfont:w({}),customdata:void 0,node:{label:{valType:"data_array",dflt:[]},groups:{valType:"info_array",impliedEdits:{x:[],y:[]},dimensions:2,freeLength:!0,dflt:[],items:{valType:"number",editType:"calc"}},x:{valType:"data_array",dflt:[]},y:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:i.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:.5,arrayOk:!0}},pad:{valType:"number",arrayOk:!1,min:0,dflt:20},thickness:{valType:"number",arrayOk:!1,min:1,dflt:20},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:_.hoverlabel,hovertemplate:h({},{keys:["value","label"]})},link:{arrowlen:{valType:"number",min:0,dflt:0},label:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:i.defaultLine,arrayOk:!0},width:{valType:"number",min:0,dflt:0,arrayOk:!0}},source:{valType:"data_array",dflt:[]},target:{valType:"data_array",dflt:[]},value:{valType:"data_array",dflt:[]},hoverinfo:{valType:"enumerated",values:["all","none","skip"],dflt:"all"},hoverlabel:_.hoverlabel,hovertemplate:h({},{keys:["value","label"]}),colorscales:t("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:r(l().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")).transforms=void 0},75536:function(R,E,e){var w=e(30962).overrideAll,k=e(27659).a0,i=e(60436),_=e(528),y=e(6964),h=e(28569),l=e(47322).prepSelect,t=e(71828),o=e(73972),r="sankey";function n(a,s){var u=a._fullData[s],p=a._fullLayout,c=p.dragmode,b=p.dragmode==="pan"?"move":"crosshair",g=u._bgRect;if(g&&c!=="pan"&&c!=="zoom"){y(g,b);var f={_id:"x",c2p:t.identity,_offset:u._sankey.translateX,_length:u._sankey.width},v={_id:"y",c2p:t.identity,_offset:u._sankey.translateY,_length:u._sankey.height},m={gd:a,element:g.node(),plotinfo:{id:s,xaxis:f,yaxis:v,fillRangeItems:t.noop},subplot:s,xaxes:[f],yaxes:[v],doneFnCompleted:function(x){var T,d=a._fullData[s],M=d.node.groups.slice(),A=[];function C(B){for(var Y=d._sankey.graph.nodes,D=0;D<Y.length;D++)if(Y[D].pointNumber===B)return Y[D]}for(var P=0;P<x.length;P++){var O=C(x[P].pointNumber);if(O)if(O.group){for(var z=0;z<O.childrenNodes.length;z++)A.push(O.childrenNodes[z].pointNumber);M[O.pointNumber-d.node._count]=!1}else A.push(O.pointNumber)}T=M.filter(Boolean).concat([A]),o.call("_guiRestyle",a,{"node.groups":[T]},s)},prepFn:function(x,T,d){l(x,T,d,m,c)}};h.init(m)}}E.name=r,E.baseLayoutAttrOverrides=w({hoverlabel:_.hoverlabel},"plot","nested"),E.plot=function(a){var s=k(a.calcdata,r)[0];i(a,s),E.updateFx(a)},E.clean=function(a,s,u,p){var c=p._has&&p._has(r),b=s._has&&s._has(r);c&&!b&&(p._paperdiv.selectAll(".sankey").remove(),p._paperdiv.selectAll(".bgsankey").remove())},E.updateFx=function(a){for(var s=0;s<a._fullData.length;s++)n(a,s)}},92930:function(R,E,e){var w=e(68664),k=e(71828),i=e(28984).wrap,_=k.isArrayOrTypedArray,y=k.isIndex,h=e(21081);R.exports=function(l,t){var o=function(r){var n,a=r.node,s=r.link,u=[],p=_(s.color),c=_(s.customdata),b={},g={},f=s.colorscales.length;for(n=0;n<f;n++){var v=s.colorscales[n],m=h.extractScale(v,{cLetter:"c"}),x=h.makeColorScaleFunc(m);g[v.label]=x}var T=0;for(n=0;n<s.value.length;n++)s.source[n]>T&&(T=s.source[n]),s.target[n]>T&&(T=s.target[n]);var d,M=T+1;r.node._count=M;var A=r.node.groups,C={};for(n=0;n<A.length;n++){var P=A[n];for(d=0;d<P.length;d++){var O=P[d],z=M+n;C.hasOwnProperty(O)?k.warn("Node "+O+" is already part of a group."):C[O]=z}}var B={source:[],target:[]};for(n=0;n<s.value.length;n++){var Y=s.value[n],D=s.source[n],G=s.target[n];if(Y>0&&y(D,M)&&y(G,M)&&(!C.hasOwnProperty(D)||!C.hasOwnProperty(G)||C[D]!==C[G])){C.hasOwnProperty(G)&&(G=C[G]),C.hasOwnProperty(D)&&(D=C[D]),G=+G,b[D=+D]=b[G]=!0;var V="";s.label&&s.label[n]&&(V=s.label[n]);var j=null;V&&g.hasOwnProperty(V)&&(j=g[V]),u.push({pointNumber:n,label:V,color:p?s.color[n]:s.color,customdata:c?s.customdata[n]:s.customdata,concentrationscale:j,source:D,target:G,value:+Y}),B.source.push(D),B.target.push(G)}}var W=M+A.length,Z=_(a.color),ie=_(a.customdata),te=[];for(n=0;n<W;n++)if(b[n]){var J=a.label[n];te.push({group:n>M-1,childrenNodes:[],pointNumber:n,label:J,color:Z?a.color[n]:a.color,customdata:ie?a.customdata[n]:a.customdata})}var X=!1;return function(ee,re,oe){for(var ue=k.init2dArray(ee,0),ce=0;ce<Math.min(re.length,oe.length);ce++)if(k.isIndex(re[ce],ee)&&k.isIndex(oe[ce],ee)){if(re[ce]===oe[ce])return!0;ue[re[ce]].push(oe[ce])}return w(ue).components.some(function(de){return de.length>1})}(W,B.source,B.target)&&(X=!0),{circular:X,links:u,nodes:te,groups:A,groupLookup:C}}(t);return i({circular:o.circular,_nodes:o.nodes,_links:o.links,_groups:o.groups,_groupLookup:o.groupLookup})}},85247:function(R){R.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"}}},26857:function(R,E,e){var w=e(71828),k=e(39953),i=e(7901),_=e(84267),y=e(27670).c,h=e(38048),l=e(44467),t=e(85501);function o(r,n){function a(s,u){return w.coerce(r,n,k.link.colorscales,s,u)}a("label"),a("cmin"),a("cmax"),a("colorscale")}R.exports=function(r,n,a,s){function u(M,A){return w.coerce(r,n,k,M,A)}var p=w.extendDeep(s.hoverlabel,r.hoverlabel),c=r.node,b=l.newContainer(n,"node");function g(M,A){return w.coerce(c,b,k.node,M,A)}g("label"),g("groups"),g("x"),g("y"),g("pad"),g("thickness"),g("line.color"),g("line.width"),g("hoverinfo",r.hoverinfo),h(c,b,g,p),g("hovertemplate");var f=s.colorway;g("color",b.label.map(function(M,A){return i.addOpacity(function(C){return f[C%f.length]}(A),.8)})),g("customdata");var v=r.link||{},m=l.newContainer(n,"link");function x(M,A){return w.coerce(v,m,k.link,M,A)}x("label"),x("arrowlen"),x("source"),x("target"),x("value"),x("line.color"),x("line.width"),x("hoverinfo",r.hoverinfo),h(v,m,x,p),x("hovertemplate");var T,d=_(s.paper_bgcolor).getLuminance()<.333?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)";x("color",w.repeat(d,m.value.length)),x("customdata"),t(v,m,{name:"colorscales",handleItemDefaults:o}),y(n,s,u),u("orientation"),u("valueformat"),u("valuesuffix"),b.x.length&&b.y.length&&(T="freeform"),u("arrangement",T),w.coerceFont(u,"textfont",w.extendFlat({},s.font)),n._length=null}},29396:function(R,E,e){R.exports={attributes:e(39953),supplyDefaults:e(26857),calc:e(92930),plot:e(60436),moduleType:"trace",name:"sankey",basePlotModule:e(75536),selectPoints:e(84564),categories:["noOpacity"],meta:{}}},60436:function(R,E,e){var w=e(39898),k=e(71828),i=k.numberFormat,_=e(3393),y=e(30211),h=e(7901),l=e(85247).cn,t=k._;function o(v){return v!==""}function r(v,m){return v.filter(function(x){return x.key===m.traceId})}function n(v,m){w.select(v).select("path").style("fill-opacity",m),w.select(v).select("rect").style("fill-opacity",m)}function a(v){w.select(v).select("text.name").style("fill","black")}function s(v){return function(m){return v.node.sourceLinks.indexOf(m.link)!==-1||v.node.targetLinks.indexOf(m.link)!==-1}}function u(v){return function(m){return m.node.sourceLinks.indexOf(v.link)!==-1||m.node.targetLinks.indexOf(v.link)!==-1}}function p(v,m,x){m&&x&&r(x,m).selectAll("."+l.sankeyLink).filter(s(m)).call(b.bind(0,m,x,!1))}function c(v,m,x){m&&x&&r(x,m).selectAll("."+l.sankeyLink).filter(s(m)).call(g.bind(0,m,x,!1))}function b(v,m,x,T){var d=T.datum().link.label;T.style("fill-opacity",function(M){if(!M.link.concentrationscale)return .4}),d&&r(m,v).selectAll("."+l.sankeyLink).filter(function(M){return M.link.label===d}).style("fill-opacity",function(M){if(!M.link.concentrationscale)return .4}),x&&r(m,v).selectAll("."+l.sankeyNode).filter(u(v)).call(p)}function g(v,m,x,T){var d=T.datum().link.label;T.style("fill-opacity",function(M){return M.tinyColorAlpha}),d&&r(m,v).selectAll("."+l.sankeyLink).filter(function(M){return M.link.label===d}).style("fill-opacity",function(M){return M.tinyColorAlpha}),x&&r(m,v).selectAll(l.sankeyNode).filter(u(v)).call(c)}function f(v,m){var x=v.hoverlabel||{},T=k.nestedProperty(x,m).get();return!Array.isArray(T)&&T}R.exports=function(v,m){for(var x=v._fullLayout,T=x._paper,d=x._size,M=0;M<v._fullData.length;M++)if(v._fullData[M].visible&&v._fullData[M].type===l.sankey&&!v._fullData[M]._viewInitial){var A=v._fullData[M].node;v._fullData[M]._viewInitial={node:{groups:A.groups.slice(),x:A.x.slice(),y:A.y.slice()}}}var C=t(v,"source:")+" ",P=t(v,"target:")+" ",O=t(v,"concentration:")+" ",z=t(v,"incoming flow count:")+" ",B=t(v,"outgoing flow count:")+" ";_(v,T,m,{width:d.w,height:d.h,margin:{t:d.t,r:d.r,b:d.b,l:d.l}},{linkEvents:{hover:function(Y,D,G){v._fullLayout.hovermode!==!1&&(w.select(Y).call(b.bind(0,D,G,!0)),D.link.trace.link.hoverinfo!=="skip"&&(D.link.fullData=D.link.trace,v.emit("plotly_hover",{event:w.event,points:[D.link]})))},follow:function(Y,D){if(v._fullLayout.hovermode!==!1){var G=D.link.trace.link;if(G.hoverinfo!=="none"&&G.hoverinfo!=="skip"){for(var V=[],j=0,W=0;W<D.flow.links.length;W++){var Z=D.flow.links[W];if(v._fullLayout.hovermode!=="closest"||D.link.pointNumber===Z.pointNumber){D.link.pointNumber===Z.pointNumber&&(j=W),Z.fullData=Z.trace,G=D.link.trace.link;var ie=J(Z),te={valueLabel:i(D.valueFormat)(Z.value)+D.valueSuffix};V.push({x:ie[0],y:ie[1],name:te.valueLabel,text:[Z.label||"",C+Z.source.label,P+Z.target.label,Z.concentrationscale?O+i("%0.2f")(Z.flow.labelConcentration):""].filter(o).join("<br>"),color:f(G,"bgcolor")||h.addOpacity(Z.color,1),borderColor:f(G,"bordercolor"),fontFamily:f(G,"font.family"),fontSize:f(G,"font.size"),fontColor:f(G,"font.color"),nameLength:f(G,"namelength"),textAlign:f(G,"align"),idealAlign:w.event.x<ie[0]?"right":"left",hovertemplate:G.hovertemplate,hovertemplateLabels:te,eventData:[Z]})}}y.loneHover(V,{container:x._hoverlayer.node(),outerContainer:x._paper.node(),gd:v,anchorIndex:j}).each(function(){D.link.concentrationscale||n(this,.65),a(this)})}}function J(X){var ee,re;X.circular?(ee=(X.circularPathData.leftInnerExtent+X.circularPathData.rightInnerExtent)/2,re=X.circularPathData.verticalFullExtent):(ee=(X.source.x1+X.target.x0)/2,re=(X.y0+X.y1)/2);var oe=[ee,re];return X.trace.orientation==="v"&&oe.reverse(),oe[0]+=D.parent.translateX,oe[1]+=D.parent.translateY,oe}},unhover:function(Y,D,G){v._fullLayout.hovermode!==!1&&(w.select(Y).call(g.bind(0,D,G,!0)),D.link.trace.link.hoverinfo!=="skip"&&(D.link.fullData=D.link.trace,v.emit("plotly_unhover",{event:w.event,points:[D.link]})),y.loneUnhover(x._hoverlayer.node()))},select:function(Y,D){var G=D.link;G.originalEvent=w.event,v._hoverdata=[G],y.click(v,{target:!0})}},nodeEvents:{hover:function(Y,D,G){v._fullLayout.hovermode!==!1&&(w.select(Y).call(p,D,G),D.node.trace.node.hoverinfo!=="skip"&&(D.node.fullData=D.node.trace,v.emit("plotly_hover",{event:w.event,points:[D.node]})))},follow:function(Y,D){if(v._fullLayout.hovermode!==!1){var G=D.node.trace.node;if(G.hoverinfo!=="none"&&G.hoverinfo!=="skip"){var V=w.select(Y).select("."+l.nodeRect),j=v._fullLayout._paperdiv.node().getBoundingClientRect(),W=V.node().getBoundingClientRect(),Z=W.left-2-j.left,ie=W.right+2-j.left,te=W.top+W.height/4-j.top,J={valueLabel:i(D.valueFormat)(D.node.value)+D.valueSuffix};D.node.fullData=D.node.trace,v._fullLayout._calcInverseTransform(v);var X=v._fullLayout._invScaleX,ee=v._fullLayout._invScaleY,re=y.loneHover({x0:X*Z,x1:X*ie,y:ee*te,name:i(D.valueFormat)(D.node.value)+D.valueSuffix,text:[D.node.label,z+D.node.targetLinks.length,B+D.node.sourceLinks.length].filter(o).join("<br>"),color:f(G,"bgcolor")||D.tinyColorHue,borderColor:f(G,"bordercolor"),fontFamily:f(G,"font.family"),fontSize:f(G,"font.size"),fontColor:f(G,"font.color"),nameLength:f(G,"namelength"),textAlign:f(G,"align"),idealAlign:"left",hovertemplate:G.hovertemplate,hovertemplateLabels:J,eventData:[D.node]},{container:x._hoverlayer.node(),outerContainer:x._paper.node(),gd:v});n(re,.85),a(re)}}},unhover:function(Y,D,G){v._fullLayout.hovermode!==!1&&(w.select(Y).call(c,D,G),D.node.trace.node.hoverinfo!=="skip"&&(D.node.fullData=D.node.trace,v.emit("plotly_unhover",{event:w.event,points:[D.node]})),y.loneUnhover(x._hoverlayer.node()))},select:function(Y,D,G){var V=D.node;V.originalEvent=w.event,v._hoverdata=[V],w.select(Y).call(c,D,G),y.click(v,{target:!0})}}})}},3393:function(R,E,e){var w=e(49887),k=e(81684).k4,i=e(39898),_=e(30838),y=e(86781),h=e(85247),l=e(84267),t=e(7901),o=e(91424),r=e(71828),n=r.strTranslate,a=r.strRotate,s=e(28984),u=s.keyFun,p=s.repeat,c=s.unwrap,b=e(63893),g=e(73972),f=e(18783),v=f.CAP_SHIFT,m=f.LINE_SPACING;function x(W,Z,ie){var te,J=c(Z),X=J.trace,ee=X.domain,re=X.orientation==="h",oe=X.node.pad,ue=X.node.thickness,ce=W.width*(ee.x[1]-ee.x[0]),de=W.height*(ee.y[1]-ee.y[0]),me=J._nodes,_e=J._links,Se=J.circular;(te=Se?y.sankeyCircular().circularLinkGap(0):_.sankey()).iterations(h.sankeyIterations).size(re?[ce,de]:[de,ce]).nodeWidth(ue).nodePadding(oe).nodeId(function(Te){return Te.pointNumber}).nodes(me).links(_e);var we,xe,De,Ee=te();for(var Me in te.nodePadding()<oe&&r.warn("node.pad was reduced to ",te.nodePadding()," to fit within the figure."),J._groupLookup){var he,fe=parseInt(J._groupLookup[Me]);for(we=0;we<Ee.nodes.length;we++)if(Ee.nodes[we].pointNumber===fe){he=Ee.nodes[we];break}if(he){var ae={pointNumber:parseInt(Me),x0:he.x0,x1:he.x1,y0:he.y0,y1:he.y1,partOfGroup:!0,sourceLinks:[],targetLinks:[]};Ee.nodes.unshift(ae),he.childrenNodes.unshift(ae)}}if(function(){for(we=0;we<Ee.nodes.length;we++){var Te,Ne,qe=Ee.nodes[we],ve={};for(xe=0;xe<qe.targetLinks.length;xe++)Te=(Ne=qe.targetLinks[xe]).source.pointNumber+":"+Ne.target.pointNumber,ve.hasOwnProperty(Te)||(ve[Te]=[]),ve[Te].push(Ne);var Ce=Object.keys(ve);for(xe=0;xe<Ce.length;xe++){var Ae=ve[Te=Ce[xe]],ze=0,Ue={};for(De=0;De<Ae.length;De++)Ue[(Ne=Ae[De]).label]||(Ue[Ne.label]=0),Ue[Ne.label]+=Ne.value,ze+=Ne.value;for(De=0;De<Ae.length;De++)(Ne=Ae[De]).flow={value:ze,labelConcentration:Ue[Ne.label]/ze,concentration:Ne.value/ze,links:Ae},Ne.concentrationscale&&(Ne.color=l(Ne.concentrationscale(Ne.flow.labelConcentration)))}var Ve=0;for(xe=0;xe<qe.sourceLinks.length;xe++)Ve+=qe.sourceLinks[xe].value;for(xe=0;xe<qe.sourceLinks.length;xe++)(Ne=qe.sourceLinks[xe]).concentrationOut=Ne.value/Ve;var Ye=0;for(xe=0;xe<qe.targetLinks.length;xe++)Ye+=qe.targetLinks[xe].value;for(xe=0;xe<qe.targetLinks.length;xe++)(Ne=qe.targetLinks[xe]).concenrationIn=Ne.value/Ye}}(),X.node.x.length&&X.node.y.length){for(we=0;we<Math.min(X.node.x.length,X.node.y.length,Ee.nodes.length);we++)if(X.node.x[we]&&X.node.y[we]){var be=[X.node.x[we]*ce,X.node.y[we]*de];Ee.nodes[we].x0=be[0]-ue/2,Ee.nodes[we].x1=be[0]+ue/2;var Ie=Ee.nodes[we].y1-Ee.nodes[we].y0;Ee.nodes[we].y0=be[1]-Ie/2,Ee.nodes[we].y1=be[1]+Ie/2}X.arrangement==="snap"&&function(Te){var Ne,qe,ve=Te.map(function(Ve,Ye){return{x0:Ve.x0,index:Ye}}).sort(function(Ve,Ye){return Ve.x0-Ye.x0}),Ce=[],Ae=-1,ze=-1/0;for(we=0;we<ve.length;we++){var Ue=Te[ve[we].index];Ue.x0>ze+ue&&(Ae+=1,Ne=Ue.x0),ze=Ue.x0,Ce[Ae]||(Ce[Ae]=[]),Ce[Ae].push(Ue),qe=Ne-Ue.x0,Ue.x0+=qe,Ue.x1+=qe}return Ce}(me=Ee.nodes).forEach(function(Te){var Ne,qe,ve,Ce=0,Ae=Te.length;for(Te.sort(function(ze,Ue){return ze.y0-Ue.y0}),ve=0;ve<Ae;++ve)(Ne=Te[ve]).y0>=Ce||(qe=Ce-Ne.y0)>1e-6&&(Ne.y0+=qe,Ne.y1+=qe),Ce=Ne.y1+oe}),te.update(Ee)}return{circular:Se,key:ie,trace:X,guid:r.randstr(),horizontal:re,width:ce,height:de,nodePad:X.node.pad,nodeLineColor:X.node.line.color,nodeLineWidth:X.node.line.width,linkLineColor:X.link.line.color,linkLineWidth:X.link.line.width,linkArrowLength:X.link.arrowlen,valueFormat:X.valueformat,valueSuffix:X.valuesuffix,textFont:X.textfont,translateX:ee.x[0]*W.width+W.margin.l,translateY:W.height-ee.y[1]*W.height+W.margin.t,dragParallel:re?de:ce,dragPerpendicular:re?ce:de,arrangement:X.arrangement,sankey:te,graph:Ee,forceLayouts:{},interactionState:{dragInProgress:!1,hovered:!1}}}function T(W,Z,ie){var te=l(Z.color),J=Z.source.label+"|"+Z.target.label+"__"+ie;return Z.trace=W.trace,Z.curveNumber=W.trace.index,{circular:W.circular,key:J,traceId:W.key,pointNumber:Z.pointNumber,link:Z,tinyColorHue:t.tinyRGB(te),tinyColorAlpha:te.getAlpha(),linkPath:d,linkLineColor:W.linkLineColor,linkLineWidth:W.linkLineWidth,linkArrowLength:W.linkArrowLength,valueFormat:W.valueFormat,valueSuffix:W.valueSuffix,sankey:W.sankey,parent:W,interactionState:W.interactionState,flow:Z.flow}}function d(){return function(W){var Z=W.linkArrowLength;if(W.link.circular)return function(xe,De){var Ee=xe.width/2,Me=xe.circularPathData;return xe.circularLinkType==="top"?"M "+(Me.targetX-De)+" "+(Me.targetY+Ee)+" L"+(Me.rightInnerExtent-De)+" "+(Me.targetY+Ee)+"A"+(Me.rightLargeArcRadius+Ee)+" "+(Me.rightSmallArcRadius+Ee)+" 0 0 1 "+(Me.rightFullExtent-Ee-De)+" "+(Me.targetY-Me.rightSmallArcRadius)+"L"+(Me.rightFullExtent-Ee-De)+" "+Me.verticalRightInnerExtent+"A"+(Me.rightLargeArcRadius+Ee)+" "+(Me.rightLargeArcRadius+Ee)+" 0 0 1 "+(Me.rightInnerExtent-De)+" "+(Me.verticalFullExtent-Ee)+"L"+Me.leftInnerExtent+" "+(Me.verticalFullExtent-Ee)+"A"+(Me.leftLargeArcRadius+Ee)+" "+(Me.leftLargeArcRadius+Ee)+" 0 0 1 "+(Me.leftFullExtent+Ee)+" "+Me.verticalLeftInnerExtent+"L"+(Me.leftFullExtent+Ee)+" "+(Me.sourceY-Me.leftSmallArcRadius)+"A"+(Me.leftLargeArcRadius+Ee)+" "+(Me.leftSmallArcRadius+Ee)+" 0 0 1 "+Me.leftInnerExtent+" "+(Me.sourceY+Ee)+"L"+Me.sourceX+" "+(Me.sourceY+Ee)+"L"+Me.sourceX+" "+(Me.sourceY-Ee)+"L"+Me.leftInnerExtent+" "+(Me.sourceY-Ee)+"A"+(Me.leftLargeArcRadius-Ee)+" "+(Me.leftSmallArcRadius-Ee)+" 0 0 0 "+(Me.leftFullExtent-Ee)+" "+(Me.sourceY-Me.leftSmallArcRadius)+"L"+(Me.leftFullExtent-Ee)+" "+Me.verticalLeftInnerExtent+"A"+(Me.leftLargeArcRadius-Ee)+" "+(Me.leftLargeArcRadius-Ee)+" 0 0 0 "+Me.leftInnerExtent+" "+(Me.verticalFullExtent+Ee)+"L"+(Me.rightInnerExtent-De)+" "+(Me.verticalFullExtent+Ee)+"A"+(Me.rightLargeArcRadius-Ee)+" "+(Me.rightLargeArcRadius-Ee)+" 0 0 0 "+(Me.rightFullExtent+Ee-De)+" "+Me.verticalRightInnerExtent+"L"+(Me.rightFullExtent+Ee-De)+" "+(Me.targetY-Me.rightSmallArcRadius)+"A"+(Me.rightLargeArcRadius-Ee)+" "+(Me.rightSmallArcRadius-Ee)+" 0 0 0 "+(Me.rightInnerExtent-De)+" "+(Me.targetY-Ee)+"L"+(Me.targetX-De)+" "+(Me.targetY-Ee)+(De>0?"L"+Me.targetX+" "+Me.targetY:"")+"Z":"M "+(Me.targetX-De)+" "+(Me.targetY-Ee)+" L"+(Me.rightInnerExtent-De)+" "+(Me.targetY-Ee)+"A"+(Me.rightLargeArcRadius+Ee)+" "+(Me.rightSmallArcRadius+Ee)+" 0 0 0 "+(Me.rightFullExtent-Ee-De)+" "+(Me.targetY+Me.rightSmallArcRadius)+"L"+(Me.rightFullExtent-Ee-De)+" "+Me.verticalRightInnerExtent+"A"+(Me.rightLargeArcRadius+Ee)+" "+(Me.rightLargeArcRadius+Ee)+" 0 0 0 "+(Me.rightInnerExtent-De)+" "+(Me.verticalFullExtent+Ee)+"L"+Me.leftInnerExtent+" "+(Me.verticalFullExtent+Ee)+"A"+(Me.leftLargeArcRadius+Ee)+" "+(Me.leftLargeArcRadius+Ee)+" 0 0 0 "+(Me.leftFullExtent+Ee)+" "+Me.verticalLeftInnerExtent+"L"+(Me.leftFullExtent+Ee)+" "+(Me.sourceY+Me.leftSmallArcRadius)+"A"+(Me.leftLargeArcRadius+Ee)+" "+(Me.leftSmallArcRadius+Ee)+" 0 0 0 "+Me.leftInnerExtent+" "+(Me.sourceY-Ee)+"L"+Me.sourceX+" "+(Me.sourceY-Ee)+"L"+Me.sourceX+" "+(Me.sourceY+Ee)+"L"+Me.leftInnerExtent+" "+(Me.sourceY+Ee)+"A"+(Me.leftLargeArcRadius-Ee)+" "+(Me.leftSmallArcRadius-Ee)+" 0 0 1 "+(Me.leftFullExtent-Ee)+" "+(Me.sourceY+Me.leftSmallArcRadius)+"L"+(Me.leftFullExtent-Ee)+" "+Me.verticalLeftInnerExtent+"A"+(Me.leftLargeArcRadius-Ee)+" "+(Me.leftLargeArcRadius-Ee)+" 0 0 1 "+Me.leftInnerExtent+" "+(Me.verticalFullExtent-Ee)+"L"+(Me.rightInnerExtent-De)+" "+(Me.verticalFullExtent-Ee)+"A"+(Me.rightLargeArcRadius-Ee)+" "+(Me.rightLargeArcRadius-Ee)+" 0 0 1 "+(Me.rightFullExtent+Ee-De)+" "+Me.verticalRightInnerExtent+"L"+(Me.rightFullExtent+Ee-De)+" "+(Me.targetY+Me.rightSmallArcRadius)+"A"+(Me.rightLargeArcRadius-Ee)+" "+(Me.rightSmallArcRadius-Ee)+" 0 0 1 "+(Me.rightInnerExtent-De)+" "+(Me.targetY+Ee)+"L"+(Me.targetX-De)+" "+(Me.targetY+Ee)+(De>0?"L"+Me.targetX+" "+Me.targetY:"")+"Z"}(W.link,Z);var ie=Math.abs((W.link.target.x0-W.link.source.x1)/2);Z>ie&&(Z=ie);var te=W.link.source.x1,J=W.link.target.x0-Z,X=k(te,J),ee=X(.5),re=X(.5),oe=W.link.y0-W.link.width/2,ue=W.link.y0+W.link.width/2,ce=W.link.y1-W.link.width/2,de=W.link.y1+W.link.width/2,me="M"+te+","+oe,_e="C"+ee+","+oe+" "+re+","+ce+" "+J+","+ce,Se="C"+re+","+de+" "+ee+","+ue+" "+te+","+ue,we=Z>0?"L"+(J+Z)+","+(ce+W.link.width/2):"";return me+_e+(we+="L"+J+","+de)+Se+"Z"}}function M(W,Z){var ie=l(Z.color),te=h.nodePadAcross,J=W.nodePad/2;Z.dx=Z.x1-Z.x0,Z.dy=Z.y1-Z.y0;var X=Z.dx,ee=Math.max(.5,Z.dy),re="node_"+Z.pointNumber;return Z.group&&(re=r.randstr()),Z.trace=W.trace,Z.curveNumber=W.trace.index,{index:Z.pointNumber,key:re,partOfGroup:Z.partOfGroup||!1,group:Z.group,traceId:W.key,trace:W.trace,node:Z,nodePad:W.nodePad,nodeLineColor:W.nodeLineColor,nodeLineWidth:W.nodeLineWidth,textFont:W.textFont,size:W.horizontal?W.height:W.width,visibleWidth:Math.ceil(X),visibleHeight:ee,zoneX:-te,zoneY:-J,zoneWidth:X+2*te,zoneHeight:ee+2*J,labelY:W.horizontal?Z.dy/2+1:Z.dx/2+1,left:Z.originalLayer===1,sizeAcross:W.width,forceLayouts:W.forceLayouts,horizontal:W.horizontal,darkBackground:ie.getBrightness()<=128,tinyColorHue:t.tinyRGB(ie),tinyColorAlpha:ie.getAlpha(),valueFormat:W.valueFormat,valueSuffix:W.valueSuffix,sankey:W.sankey,graph:W.graph,arrangement:W.arrangement,uniqueNodeLabelPathId:[W.guid,W.key,re].join("_"),interactionState:W.interactionState,figure:W}}function A(W){W.attr("transform",function(Z){return n(Z.node.x0.toFixed(3),Z.node.y0.toFixed(3))})}function C(W){W.call(A)}function P(W,Z){W.call(C),Z.attr("d",d())}function O(W){W.attr("width",function(Z){return Z.node.x1-Z.node.x0}).attr("height",function(Z){return Z.visibleHeight})}function z(W){return W.link.width>1||W.linkLineWidth>0}function B(W){return n(W.translateX,W.translateY)+(W.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function Y(W,Z,ie){W.on(".basic",null).on("mouseover.basic",function(te){te.interactionState.dragInProgress||te.partOfGroup||(ie.hover(this,te,Z),te.interactionState.hovered=[this,te])}).on("mousemove.basic",function(te){te.interactionState.dragInProgress||te.partOfGroup||(ie.follow(this,te),te.interactionState.hovered=[this,te])}).on("mouseout.basic",function(te){te.interactionState.dragInProgress||te.partOfGroup||(ie.unhover(this,te,Z),te.interactionState.hovered=!1)}).on("click.basic",function(te){te.interactionState.hovered&&(ie.unhover(this,te,Z),te.interactionState.hovered=!1),te.interactionState.dragInProgress||te.partOfGroup||ie.select(this,te,Z)})}function D(W,Z,ie,te){var J=i.behavior.drag().origin(function(X){return{x:X.node.x0+X.visibleWidth/2,y:X.node.y0+X.visibleHeight/2}}).on("dragstart",function(X){if(X.arrangement!=="fixed"&&(r.ensureSingle(te._fullLayout._infolayer,"g","dragcover",function(re){te._fullLayout._dragCover=re}),r.raiseToTop(this),X.interactionState.dragInProgress=X.node,V(X.node),X.interactionState.hovered&&(ie.nodeEvents.unhover.apply(0,X.interactionState.hovered),X.interactionState.hovered=!1),X.arrangement==="snap")){var ee=X.traceId+"|"+X.key;X.forceLayouts[ee]?X.forceLayouts[ee].alpha(1):function(re,oe,ue,ce){(function(me){for(var _e=0;_e<me.length;_e++)me[_e].y=(me[_e].y0+me[_e].y1)/2,me[_e].x=(me[_e].x0+me[_e].x1)/2})(ue.graph.nodes);var de=ue.graph.nodes.filter(function(me){return me.originalX===ue.node.originalX}).filter(function(me){return!me.partOfGroup});ue.forceLayouts[oe]=w.forceSimulation(de).alphaDecay(0).force("collide",w.forceCollide().radius(function(me){return me.dy/2+ue.nodePad/2}).strength(1).iterations(h.forceIterations)).force("constrain",function(me,_e,Se,we){return function(){for(var xe=0,De=0;De<Se.length;De++){var Ee=Se[De];Ee===we.interactionState.dragInProgress?(Ee.x=Ee.lastDraggedX,Ee.y=Ee.lastDraggedY):(Ee.vx=(Ee.originalX-Ee.x)/h.forceTicksPerFrame,Ee.y=Math.min(we.size-Ee.dy/2,Math.max(Ee.dy/2,Ee.y))),xe=Math.max(xe,Math.abs(Ee.vx),Math.abs(Ee.vy))}!we.interactionState.dragInProgress&&xe<.1&&we.forceLayouts[_e].alpha()>0&&we.forceLayouts[_e].alpha(0)}}(0,oe,de,ue)).stop()}(0,ee,X),function(re,oe,ue,ce,de){window.requestAnimationFrame(function me(){var _e;for(_e=0;_e<h.forceTicksPerFrame;_e++)ue.forceLayouts[ce].tick();if(function(we){for(var xe=0;xe<we.length;xe++)we[xe].y0=we[xe].y-we[xe].dy/2,we[xe].y1=we[xe].y0+we[xe].dy,we[xe].x0=we[xe].x-we[xe].dx/2,we[xe].x1=we[xe].x0+we[xe].dx}(ue.graph.nodes),ue.sankey.update(ue.graph),P(re.filter(j(ue)),oe),ue.forceLayouts[ce].alpha()>0)window.requestAnimationFrame(me);else{var Se=ue.node.originalX;ue.node.x0=Se-ue.visibleWidth/2,ue.node.x1=Se+ue.visibleWidth/2,G(ue,de)}})}(W,Z,X,ee,te)}}).on("drag",function(X){if(X.arrangement!=="fixed"){var ee=i.event.x,re=i.event.y;X.arrangement==="snap"?(X.node.x0=ee-X.visibleWidth/2,X.node.x1=ee+X.visibleWidth/2,X.node.y0=re-X.visibleHeight/2,X.node.y1=re+X.visibleHeight/2):(X.arrangement==="freeform"&&(X.node.x0=ee-X.visibleWidth/2,X.node.x1=ee+X.visibleWidth/2),re=Math.max(0,Math.min(X.size-X.visibleHeight/2,re)),X.node.y0=re-X.visibleHeight/2,X.node.y1=re+X.visibleHeight/2),V(X.node),X.arrangement!=="snap"&&(X.sankey.update(X.graph),P(W.filter(j(X)),Z))}}).on("dragend",function(X){if(X.arrangement!=="fixed"){X.interactionState.dragInProgress=!1;for(var ee=0;ee<X.node.childrenNodes.length;ee++)X.node.childrenNodes[ee].x=X.node.x,X.node.childrenNodes[ee].y=X.node.y;X.arrangement!=="snap"&&G(X,te)}});W.on(".drag",null).call(J)}function G(W,Z){for(var ie=[],te=[],J=0;J<W.graph.nodes.length;J++){var X=(W.graph.nodes[J].x0+W.graph.nodes[J].x1)/2,ee=(W.graph.nodes[J].y0+W.graph.nodes[J].y1)/2;ie.push(X/W.figure.width),te.push(ee/W.figure.height)}g.call("_guiRestyle",Z,{"node.x":[ie],"node.y":[te]},W.trace.index).then(function(){Z._fullLayout._dragCover&&Z._fullLayout._dragCover.remove()})}function V(W){W.lastDraggedX=W.x0+W.dx/2,W.lastDraggedY=W.y0+W.dy/2}function j(W){return function(Z){return Z.node.originalX===W.node.originalX}}R.exports=function(W,Z,ie,te,J){var X=W._context.staticPlot,ee=!1;r.ensureSingle(W._fullLayout._infolayer,"g","first-render",function(){ee=!0});var re=W._fullLayout._dragCover,oe=ie.filter(function(xe){return c(xe).trace.visible}).map(x.bind(null,te)),ue=Z.selectAll("."+h.cn.sankey).data(oe,u);ue.exit().remove(),ue.enter().append("g").classed(h.cn.sankey,!0).style("box-sizing","content-box").style("position","absolute").style("left",0).style("shape-rendering","geometricPrecision").style("pointer-events",X?"none":"auto").attr("transform",B),ue.each(function(xe,De){W._fullData[De]._sankey=xe;var Ee="bgsankey-"+xe.trace.uid+"-"+De;r.ensureSingle(W._fullLayout._draggers,"rect",Ee),W._fullData[De]._bgRect=i.select("."+Ee),W._fullData[De]._bgRect.style("pointer-events",X?"none":"all").attr("width",xe.width).attr("height",xe.height).attr("x",xe.translateX).attr("y",xe.translateY).classed("bgsankey",!0).style({fill:"transparent","stroke-width":0})}),ue.transition().ease(h.ease).duration(h.duration).attr("transform",B);var ce=ue.selectAll("."+h.cn.sankeyLinks).data(p,u);ce.enter().append("g").classed(h.cn.sankeyLinks,!0).style("fill","none");var de=ce.selectAll("."+h.cn.sankeyLink).data(function(xe){return xe.graph.links.filter(function(De){return De.value}).map(T.bind(null,xe))},u);de.enter().append("path").classed(h.cn.sankeyLink,!0).call(Y,ue,J.linkEvents),de.style("stroke",function(xe){return z(xe)?t.tinyRGB(l(xe.linkLineColor)):xe.tinyColorHue}).style("stroke-opacity",function(xe){return z(xe)?t.opacity(xe.linkLineColor):xe.tinyColorAlpha}).style("fill",function(xe){return xe.tinyColorHue}).style("fill-opacity",function(xe){return xe.tinyColorAlpha}).style("stroke-width",function(xe){return z(xe)?xe.linkLineWidth:1}).attr("d",d()),de.style("opacity",function(){return W._context.staticPlot||ee||re?1:0}).transition().ease(h.ease).duration(h.duration).style("opacity",1),de.exit().transition().ease(h.ease).duration(h.duration).style("opacity",0).remove();var me=ue.selectAll("."+h.cn.sankeyNodeSet).data(p,u);me.enter().append("g").classed(h.cn.sankeyNodeSet,!0),me.style("cursor",function(xe){switch(xe.arrangement){case"fixed":return"default";case"perpendicular":return"ns-resize";default:return"move"}});var _e=me.selectAll("."+h.cn.sankeyNode).data(function(xe){var De=xe.graph.nodes;return function(Ee){var Me,he=[];for(Me=0;Me<Ee.length;Me++)Ee[Me].originalX=(Ee[Me].x0+Ee[Me].x1)/2,Ee[Me].originalY=(Ee[Me].y0+Ee[Me].y1)/2,he.indexOf(Ee[Me].originalX)===-1&&he.push(Ee[Me].originalX);for(he.sort(function(fe,ae){return fe-ae}),Me=0;Me<Ee.length;Me++)Ee[Me].originalLayerIndex=he.indexOf(Ee[Me].originalX),Ee[Me].originalLayer=Ee[Me].originalLayerIndex/(he.length-1)}(De),De.map(M.bind(null,xe))},u);_e.enter().append("g").classed(h.cn.sankeyNode,!0).call(A).style("opacity",function(xe){return!W._context.staticPlot&&!ee||xe.partOfGroup?0:1}),_e.call(Y,ue,J.nodeEvents).call(D,de,J,W),_e.transition().ease(h.ease).duration(h.duration).call(A).style("opacity",function(xe){return xe.partOfGroup?0:1}),_e.exit().transition().ease(h.ease).duration(h.duration).style("opacity",0).remove();var Se=_e.selectAll("."+h.cn.nodeRect).data(p);Se.enter().append("rect").classed(h.cn.nodeRect,!0).call(O),Se.style("stroke-width",function(xe){return xe.nodeLineWidth}).style("stroke",function(xe){return t.tinyRGB(l(xe.nodeLineColor))}).style("stroke-opacity",function(xe){return t.opacity(xe.nodeLineColor)}).style("fill",function(xe){return xe.tinyColorHue}).style("fill-opacity",function(xe){return xe.tinyColorAlpha}),Se.transition().ease(h.ease).duration(h.duration).call(O);var we=_e.selectAll("."+h.cn.nodeLabel).data(p);we.enter().append("text").classed(h.cn.nodeLabel,!0).style("cursor","default"),we.attr("data-notex",1).text(function(xe){return xe.node.label}).each(function(xe){var De=i.select(this);o.font(De,xe.textFont),b.convertToTspans(De,W)}).style("text-shadow",b.makeTextShadow(W._fullLayout.paper_bgcolor)).attr("text-anchor",function(xe){return xe.horizontal&&xe.left?"end":"start"}).attr("transform",function(xe){var De=i.select(this),Ee=b.lineCount(De),Me=xe.textFont.size*((Ee-1)*m-v),he=xe.nodeLineWidth/2+3,fe=((xe.horizontal?xe.visibleHeight:xe.visibleWidth)-Me)/2;xe.horizontal&&(xe.left?he=-he:he+=xe.visibleWidth);var ae=xe.horizontal?"":"scale(-1,1)"+a(90);return n(xe.horizontal?he:fe,xe.horizontal?fe:he)+ae}),we.transition().ease(h.ease).duration(h.duration)}},84564:function(R){R.exports=function(E,e){for(var w=[],k=E.cd[0].trace,i=k._sankey.graph.nodes,_=0;_<i.length;_++){var y=i[_];if(!y.partOfGroup){var h=[(y.x0+y.x1)/2,(y.y0+y.y1)/2];k.orientation==="v"&&h.reverse(),e&&e.contains(h,!1,_,E)&&w.push({pointNumber:y.pointNumber})}}return w}},75225:function(R,E,e){var w=e(71828);R.exports=function(k,i){for(var _=0;_<k.length;_++)k[_].i=_;w.mergeArray(i.text,k,"tx"),w.mergeArray(i.texttemplate,k,"txt"),w.mergeArray(i.hovertext,k,"htx"),w.mergeArray(i.customdata,k,"data"),w.mergeArray(i.textposition,k,"tp"),i.textfont&&(w.mergeArrayCastPositive(i.textfont.size,k,"ts"),w.mergeArray(i.textfont.color,k,"tc"),w.mergeArray(i.textfont.family,k,"tf"));var y=i.marker;if(y){w.mergeArrayCastPositive(y.size,k,"ms"),w.mergeArrayCastPositive(y.opacity,k,"mo"),w.mergeArray(y.symbol,k,"mx"),w.mergeArray(y.angle,k,"ma"),w.mergeArray(y.standoff,k,"mf"),w.mergeArray(y.color,k,"mc");var h=y.line;y.line&&(w.mergeArray(h.color,k,"mlc"),w.mergeArrayCastPositive(h.width,k,"mlw"));var l=y.gradient;l&&l.type!=="none"&&(w.mergeArray(l.type,k,"mgt"),w.mergeArray(l.color,k,"mgc"))}}},82196:function(R,E,e){var w=e(12663).axisHoverFormat,k=e(5386).si,i=e(5386).fF,_=e(50693),y=e(41940),h=e(79952).P,l=e(79952).u,t=e(91424),o=e(47581),r=e(1426).extendFlat;R.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:{valType:"any",dflt:0,editType:"calc"},yperiod:{valType:"any",dflt:0,editType:"calc"},xperiod0:{valType:"any",editType:"calc"},yperiod0:{valType:"any",editType:"calc"},xperiodalignment:{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"},yperiodalignment:{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"},xhoverformat:w("x"),yhoverformat:w("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:k({},{}),hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"style"},mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"],editType:"calc"},hoveron:{valType:"flaglist",flags:["points","fills"],editType:"style"},hovertemplate:i({},{keys:o.eventDataKeys}),line:{color:{valType:"color",editType:"style",anim:!0},width:{valType:"number",min:0,dflt:2,editType:"style",anim:!0},shape:{valType:"enumerated",values:["linear","spline","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},smoothing:{valType:"number",min:0,max:1.3,dflt:1,editType:"plot"},dash:r({},h,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:{valType:"color",editType:"style",anim:!0},fillpattern:l,marker:r({symbol:{valType:"enumerated",values:t.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:r({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},_("marker.line",{anim:!0})),gradient:{type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],arrayOk:!0,dflt:"none",editType:"calc"},color:{valType:"color",arrayOk:!0,editType:"calc"},editType:"calc"},editType:"calc"},_("marker",{anim:!0})),selected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},editType:"style"},editType:"style"},unselected:{marker:{opacity:{valType:"number",min:0,max:1,editType:"style"},color:{valType:"color",editType:"style"},size:{valType:"number",min:0,editType:"style"},editType:"style"},textfont:{color:{valType:"color",editType:"style"},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"},textfont:y({editType:"calc",colorEditType:"style",arrayOk:!0})}},47761:function(R,E,e){var w=e(92770),k=e(71828),i=e(89298),_=e(42973),y=e(50606).BADNUM,h=e(34098),l=e(36922),t=e(75225),o=e(66279);function r(p,c,b,g,f,v,m){var x=c._length,T=p._fullLayout,d=b._id,M=g._id,A=T._firstScatter[s(c)]===c.uid,C=(u(c,T,b,g)||{}).orientation,P=c.fill;b._minDtick=0,g._minDtick=0;var O={padded:!0},z={padded:!0};m&&(O.ppad=z.ppad=m);var B=x<2||f[0]!==f[x-1]||v[0]!==v[x-1];B&&(P==="tozerox"||P==="tonextx"&&(A||C==="h"))?O.tozero=!0:(c.error_y||{}).visible||P!=="tonexty"&&P!=="tozeroy"&&(h.hasMarkers(c)||h.hasText(c))||(O.padded=!1,O.ppad=0),B&&(P==="tozeroy"||P==="tonexty"&&(A||C==="v"))?z.tozero=!0:P!=="tonextx"&&P!=="tozerox"||(z.padded=!1),d&&(c._extremes[d]=i.findExtremes(b,f,O)),M&&(c._extremes[M]=i.findExtremes(g,v,z))}function n(p,c){if(h.hasMarkers(p)){var b,g=p.marker,f=1.6*(p.marker.sizeref||1);if(b=p.marker.sizemode==="area"?function(d){return Math.max(Math.sqrt((d||0)/f),3)}:function(d){return Math.max((d||0)/f,3)},k.isArrayOrTypedArray(g.size)){var v={type:"linear"};i.setConvert(v);for(var m=v.makeCalcdata(p.marker,"size"),x=new Array(c),T=0;T<c;T++)x[T]=b(m[T]);return x}return b(g.size)}}function a(p,c){var b=s(c),g=p._firstScatter;g[b]||(g[b]=c.uid)}function s(p){var c=p.stackgroup;return p.xaxis+p.yaxis+p.type+(c?"-"+c:"")}function u(p,c,b,g){var f=p.stackgroup;if(f){var v=c._scatterStackOpts[b._id+g._id][f],m=v.orientation==="v"?g:b;return m.type==="linear"||m.type==="log"?v:void 0}}R.exports={calc:function(p,c){var b,g,f,v,m,x,T=p._fullLayout,d=c._xA=i.getFromId(p,c.xaxis||"x","x"),M=c._yA=i.getFromId(p,c.yaxis||"y","y"),A=d.makeCalcdata(c,"x"),C=M.makeCalcdata(c,"y"),P=_(c,d,"x",A),O=_(c,M,"y",C),z=P.vals,B=O.vals,Y=c._length,D=new Array(Y),G=c.ids,V=u(c,T,d,M),j=!1;a(T,c);var W,Z="x",ie="y";V?(k.pushUnique(V.traceIndices,c._expandedIndex),(b=V.orientation==="v")?(ie="s",W="x"):(Z="s",W="y"),m=V.stackgaps==="interpolate"):r(p,c,d,M,z,B,n(c,Y));var te=!!c.xperiodalignment,J=!!c.yperiodalignment;for(g=0;g<Y;g++){var X=D[g]={},ee=w(z[g]),re=w(B[g]);ee&&re?(X[Z]=z[g],X[ie]=B[g],te&&(X.orig_x=A[g],X.xEnd=P.ends[g],X.xStart=P.starts[g]),J&&(X.orig_y=C[g],X.yEnd=O.ends[g],X.yStart=O.starts[g])):V&&(b?ee:re)?(X[W]=b?z[g]:B[g],X.gap=!0,m?(X.s=y,j=!0):X.s=0):X[Z]=X[ie]=y,G&&(X.id=String(G[g]))}if(t(D,c),l(p,c),o(D,c),V){for(g=0;g<D.length;)D[g][W]===y?D.splice(g,1):g++;if(k.sort(D,function(de,me){return de[W]-me[W]||de.i-me.i}),j){for(g=0;g<D.length-1&&D[g].gap;)g++;for((x=D[g].s)||(x=D[g].s=0),f=0;f<g;f++)D[f].s=x;for(v=D.length-1;v>g&&D[v].gap;)v--;for(x=D[v].s,f=D.length-1;f>v;f--)D[f].s=x;for(;g<v;)if(D[++g].gap){for(f=g+1;D[f].gap;)f++;for(var oe=D[g-1][W],ue=D[g-1].s,ce=(D[f].s-ue)/(D[f][W]-oe);g<f;)D[g].s=ue+(D[g][W]-oe)*ce,g++}}}return D},calcMarkerSize:n,calcAxisExpansion:r,setFirstScatter:a,getStackOpts:u}},66279:function(R,E,e){var w=e(71828);R.exports=function(k,i){w.isArrayOrTypedArray(i.selectedpoints)&&w.tagSelected(k,i)}},36922:function(R,E,e){var w=e(52075).hasColorscale,k=e(78803),i=e(34098);R.exports=function(_,y){i.hasLines(y)&&w(y,"line")&&k(_,y,{vals:y.line.color,containerStr:"line",cLetter:"c"}),i.hasMarkers(y)&&(w(y,"marker")&&k(_,y,{vals:y.marker.color,containerStr:"marker",cLetter:"c"}),w(y,"marker.line")&&k(_,y,{vals:y.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}},47581:function(R){R.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}},72626:function(R,E,e){var w=e(47761),k=e(11661).setGroupPositions;function i(_,y,h,l,t,o,r){t[l]=!0;var n={i:null,gap:!0,s:0};if(n[r]=h,_.splice(y,0,n),y&&h===_[y-1][r]){var a=_[y-1];n.s=a.s,n.i=a.i,n.gap=a.gap}else o&&(n.s=function(s,u,p,c){var b=s[u-1],g=s[u+1];return g?b?b.s+(g.s-b.s)*(p-b[c])/(g[c]-b[c]):g.s:b.s}(_,y,h,r));y||(_[0].t=_[1].t,_[0].trace=_[1].trace,delete _[1].t,delete _[1].trace)}R.exports=function(_,y){_._fullLayout.scattermode==="group"&&function(W,Z){for(var ie=Z.xaxis,te=Z.yaxis,J=W._fullLayout,X=W._fullData,ee=W.calcdata,re=[],oe=[],ue=0;ue<X.length;ue++){var ce=X[ue];ce.visible===!0&&ce.type==="scatter"&&ce.xaxis===ie._id&&ce.yaxis===te._id&&(ce.orientation==="h"?re.push(ee[ue]):ce.orientation==="v"&&oe.push(ee[ue]))}var de={mode:J.scattermode,gap:J.scattergap};k(W,ie,te,oe,de),k(W,te,ie,re,de)}(_,y);var h=y.xaxis,l=y.yaxis,t=h._id+l._id,o=_._fullLayout._scatterStackOpts[t];if(o){var r,n,a,s,u,p,c,b,g,f,v,m,x,T,d,M=_.calcdata;for(var A in o){var C=(f=o[A]).traceIndices;if(C.length){for(v=f.stackgaps==="interpolate",m=f.groupnorm,f.orientation==="v"?(x="x",T="y"):(x="y",T="x"),d=new Array(C.length),r=0;r<d.length;r++)d[r]=!1;p=M[C[0]];var P=new Array(p.length);for(r=0;r<p.length;r++)P[r]=p[r][x];for(r=1;r<C.length;r++){for(u=M[C[r]],n=a=0;n<u.length;n++){for(c=u[n][x];c>P[a]&&a<P.length;a++)i(u,n,P[a],r,d,v,x),n++;if(c!==P[a]){for(s=0;s<r;s++)i(M[C[s]],a,c,s,d,v,x);P.splice(a,0,c)}a++}for(;a<P.length;a++)i(u,n,P[a],r,d,v,x),n++}var O=P.length;for(n=0;n<p.length;n++){for(b=p[n][T]=p[n].s,r=1;r<C.length;r++)(u=M[C[r]])[0].trace._rawLength=u[0].trace._length,u[0].trace._length=O,b+=u[n].s,u[n][T]=b;if(m)for(g=(m==="fraction"?b:b/100)||1,r=0;r<C.length;r++){var z=M[C[r]][n];z[T]/=g,z.sNorm=z.s/g}}for(r=0;r<C.length;r++){var B=(u=M[C[r]])[0].trace,Y=w.calcMarkerSize(B,B._rawLength),D=Array.isArray(Y);if(Y&&d[r]||D){var G=Y;for(Y=new Array(O),n=0;n<O;n++)Y[n]=u[n].gap?0:D?G[u[n].i]:G}var V=new Array(O),j=new Array(O);for(n=0;n<O;n++)V[n]=u[n].x,j[n]=u[n].y;w.calcAxisExpansion(_,B,h,l,V,j,Y),u[0].t.orientation=f.orientation}}}}}},34936:function(R,E,e){var w=e(71828),k=e(26125),i=e(82196);R.exports=function(_,y){var h,l,t;function o(u){return w.coerce(l._input,l,i,u)}if(y.scattermode==="group")for(t=0;t<_.length;t++)(l=_[t]).type==="scatter"&&(h=l._input,k(h,l,y,o));for(t=0;t<_.length;t++){var r=_[t];if(r.type==="scatter"){var n=r.fill;if(n!=="none"&&n!=="toself"&&(r.opacity=void 0,n==="tonexty"||n==="tonextx"))for(var a=t-1;a>=0;a--){var s=_[a];if(s.type==="scatter"&&s.xaxis===r.xaxis&&s.yaxis===r.yaxis){s.opacity=void 0;break}}}}}},17438:function(R,E,e){var w=e(71828),k=e(73972),i=e(82196),_=e(47581),y=e(34098),h=e(67513),l=e(73927),t=e(565),o=e(49508),r=e(11058),n=e(94039),a=e(82410),s=e(28908),u=e(71828).coercePattern;R.exports=function(p,c,b,g){function f(C,P){return w.coerce(p,c,i,C,P)}var v=h(p,c,g,f);if(v||(c.visible=!1),c.visible){l(p,c,g,f),f("xhoverformat"),f("yhoverformat");var m=t(p,c,g,f);g.scattermode==="group"&&c.orientation===void 0&&f("orientation","v");var x=!m&&v<_.PTS_LINESONLY?"lines+markers":"lines";f("text"),f("hovertext"),f("mode",x),y.hasLines(c)&&(r(p,c,b,g,f,{backoff:!0}),n(p,c,f),f("connectgaps"),f("line.simplify")),y.hasMarkers(c)&&o(p,c,b,g,f,{gradient:!0}),y.hasText(c)&&(f("texttemplate"),a(p,c,g,f));var T=[];(y.hasMarkers(c)||y.hasText(c))&&(f("cliponaxis"),f("marker.maxdisplayed"),T.push("points")),f("fill",m?m.fillDflt:"none"),c.fill!=="none"&&(s(p,c,b,f),y.hasLines(c)||n(p,c,f),u(f,"fillpattern",c.fillcolor,!1));var d=(c.line||{}).color,M=(c.marker||{}).color;c.fill!=="tonext"&&c.fill!=="toself"||T.push("fills"),f("hoveron",T.join("+")||"points"),c.hoveron!=="fills"&&f("hovertemplate");var A=k.getComponentMethod("errorbars","supplyDefaults");A(p,c,d||M||b,{axis:"y"}),A(p,c,d||M||b,{axis:"x",inherit:"y"}),w.coerceSelectionMarkerOpacity(c,f)}}},28908:function(R,E,e){var w=e(7901),k=e(71828).isArrayOrTypedArray;R.exports=function(i,_,y,h){var l=!1;if(_.marker){var t=_.marker.color,o=(_.marker.line||{}).color;t&&!k(t)?l=t:o&&!k(o)&&(l=o)}h("fillcolor",w.addOpacity((_.line||{}).color||l||y,.5))}},8225:function(R,E,e){var w=e(89298);R.exports=function(k,i,_){var y={},h={_fullLayout:_},l=w.getFromTrace(h,i,"x"),t=w.getFromTrace(h,i,"y"),o=k.orig_x;o===void 0&&(o=k.x);var r=k.orig_y;return r===void 0&&(r=k.y),y.xLabel=w.tickText(l,l.c2l(o),!0).text,y.yLabel=w.tickText(t,t.c2l(r),!0).text,y}},34603:function(R,E,e){var w=e(7901),k=e(34098);R.exports=function(i,_){var y,h;if(i.mode==="lines")return(y=i.line.color)&&w.opacity(y)?y:i.fillcolor;if(i.mode==="none")return i.fill?i.fillcolor:"";var l=_.mcc||(i.marker||{}).color,t=_.mlcc||((i.marker||{}).line||{}).color;return(h=l&&w.opacity(l)?l:t&&w.opacity(t)&&(_.mlw||((i.marker||{}).line||{}).width)?t:"")?w.opacity(h)<.3?w.addOpacity(h,.3):h:(y=(i.line||{}).color)&&w.opacity(y)&&k.hasLines(i)&&i.line.width?y:i.fillcolor}},26125:function(R,E,e){var w=e(99082).getAxisGroup;R.exports=function(k,i,_,y){var h=i.orientation,l=i[{v:"x",h:"y"}[h]+"axis"],t=w(_,l)+h,o=_._alignmentOpts||{},r=y("alignmentgroup"),n=o[t];n||(n=o[t]={});var a=n[r];a?a.traces.push(i):a=n[r]={traces:[i],alignmentIndex:Object.keys(n).length,offsetGroups:{}};var s=y("offsetgroup"),u=a.offsetGroups,p=u[s];s&&(p||(p=u[s]={offsetIndex:Object.keys(u).length}),i._offsetIndex=p.offsetIndex)}},33720:function(R,E,e){var w=e(71828),k=e(30211),i=e(73972),_=e(34603),y=e(7901),h=w.fillText;R.exports=function(l,t,o,r){var n=l.cd,a=n[0].trace,s=l.xa,u=l.ya,p=s.c2p(t),c=u.c2p(o),b=[p,c],g=a.hoveron||"",f=a.mode.indexOf("markers")!==-1?3:.5,v=!!a.xperiodalignment,m=!!a.yperiodalignment;if(g.indexOf("points")!==-1){var x=function(_e){var Se=Math.max(f,_e.mrc||0),we=s.c2p(_e.x)-p,xe=u.c2p(_e.y)-c;return Math.max(Math.sqrt(we*we+xe*xe)-Se,1-f/Se)},T=k.getDistanceFunction(r,function(_e){if(v){var Se=s.c2p(_e.xStart),we=s.c2p(_e.xEnd);return p>=Math.min(Se,we)&&p<=Math.max(Se,we)?0:1/0}var xe=Math.max(3,_e.mrc||0),De=1-1/xe,Ee=Math.abs(s.c2p(_e.x)-p);return Ee<xe?De*Ee/xe:Ee-xe+De},function(_e){if(m){var Se=u.c2p(_e.yStart),we=u.c2p(_e.yEnd);return c>=Math.min(Se,we)&&c<=Math.max(Se,we)?0:1/0}var xe=Math.max(3,_e.mrc||0),De=1-1/xe,Ee=Math.abs(u.c2p(_e.y)-c);return Ee<xe?De*Ee/xe:Ee-xe+De},x);if(k.getClosest(n,T,l),l.index!==!1){var d=n[l.index],M=s.c2p(d.x,!0),A=u.c2p(d.y,!0),C=d.mrc||1;l.index=d.i;var P=n[0].t.orientation,O=P&&(d.sNorm||d.s),z=P==="h"?O:d.orig_x!==void 0?d.orig_x:d.x,B=P==="v"?O:d.orig_y!==void 0?d.orig_y:d.y;return w.extendFlat(l,{color:_(a,d),x0:M-C,x1:M+C,xLabelVal:z,y0:A-C,y1:A+C,yLabelVal:B,spikeDistance:x(d),hovertemplate:a.hovertemplate}),h(d,a,l),i.getComponentMethod("errorbars","hoverInfo")(d,a,l),[l]}}if(g.indexOf("fills")!==-1&&a._polygons){var Y,D,G,V,j,W,Z,ie,te,J=a._polygons,X=[],ee=!1,re=1/0,oe=-1/0,ue=1/0,ce=-1/0;for(Y=0;Y<J.length;Y++)(G=J[Y]).contains(b)&&(ee=!ee,X.push(G),ue=Math.min(ue,G.ymin),ce=Math.max(ce,G.ymax));if(ee){var de=((ue=Math.max(ue,0))+(ce=Math.min(ce,u._length)))/2;for(Y=0;Y<X.length;Y++)for(V=X[Y].pts,D=1;D<V.length;D++)(ie=V[D-1][1])>de!=(te=V[D][1])>=de&&(W=V[D-1][0],Z=V[D][0],te-ie&&(j=W+(Z-W)*(de-ie)/(te-ie),re=Math.min(re,j),oe=Math.max(oe,j)));re=Math.max(re,0),oe=Math.min(oe,s._length);var me=y.defaultLine;return y.opacity(a.fillcolor)?me=a.fillcolor:y.opacity((a.line||{}).color)&&(me=a.line.color),w.extendFlat(l,{distance:l.maxHoverDistance,x0:re,x1:oe,y0:de,y1:de,color:me,hovertemplate:!1}),delete l.index,a.text&&!Array.isArray(a.text)?l.text=String(a.text):l.text=a.name,[l]}}}},67368:function(R,E,e){var w=e(34098);R.exports={hasLines:w.hasLines,hasMarkers:w.hasMarkers,hasText:w.hasText,isBubble:w.isBubble,attributes:e(82196),layoutAttributes:e(21479),supplyDefaults:e(17438),crossTraceDefaults:e(34936),supplyLayoutDefaults:e(79334),calc:e(47761).calc,crossTraceCalc:e(72626),arraysToCalcdata:e(75225),plot:e(32663),colorbar:e(4898),formatLabels:e(8225),style:e(16296).style,styleOnSelect:e(16296).styleOnSelect,hoverPoints:e(33720),selectPoints:e(98002),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:e(93612),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}},21479:function(R){R.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}},79334:function(R,E,e){var w=e(71828),k=e(21479);R.exports=function(i,_){var y,h=_.barmode==="group";_.scattermode==="group"&&(y=h?_.bargap:.2,w.coerce(i,_,k,"scattergap",y))}},11058:function(R,E,e){var w=e(71828).isArrayOrTypedArray,k=e(52075).hasColorscale,i=e(1586);R.exports=function(_,y,h,l,t,o){o||(o={});var r=(_.marker||{}).color;t("line.color",h),k(_,"line")?i(_,y,l,t,{prefix:"line.",cLetter:"c"}):t("line.color",!w(r)&&r||h),t("line.width"),o.noDash||t("line.dash"),o.backoff&&t("line.backoff")}},34621:function(R,E,e){var w=e(91424),k=e(50606),i=k.BADNUM,_=k.LOG_CLIP,y=_+.5,h=_-.5,l=e(71828),t=l.segmentsIntersect,o=l.constrain,r=e(47581);R.exports=function(n,a){var s,u,p,c,b,g,f,v,m,x,T,d,M,A,C,P,O,z,B=a.trace||{},Y=a.xaxis,D=a.yaxis,G=Y.type==="log",V=D.type==="log",j=Y._length,W=D._length,Z=a.backoff,ie=B.marker,te=a.connectGaps,J=a.baseTolerance,X=a.shape,ee=X==="linear",re=B.fill&&B.fill!=="none",oe=[],ue=r.minTolerance,ce=n.length,de=new Array(ce),me=0;function _e(zt){var Je=n[zt];if(!Je)return!1;var et=a.linearized?Y.l2p(Je.x):Y.c2p(Je.x),Ze=a.linearized?D.l2p(Je.y):D.c2p(Je.y);if(et===i){if(G&&(et=Y.c2p(Je.x,!0)),et===i)return!1;V&&Ze===i&&(et*=Math.abs(Y._m*W*(Y._m>0?y:h)/(D._m*j*(D._m>0?y:h)))),et*=1e3}if(Ze===i){if(V&&(Ze=D.c2p(Je.y,!0)),Ze===i)return!1;Ze*=1e3}return[et,Ze]}function Se(zt,Je,et,Ze){var Qe=et-zt,st=Ze-Je,ft=.5-zt,Be=.5-Je,je=Qe*Qe+st*st,at=Qe*ft+st*Be;if(at>0&&at<je){var ot=ft*st-Be*Qe;if(ot*ot<je)return!0}}function we(zt,Je){var et=zt[0]/j,Ze=zt[1]/W,Qe=Math.max(0,-et,et-1,-Ze,Ze-1);return Qe&&O!==void 0&&Se(et,Ze,O,z)&&(Qe=0),Qe&&Je&&Se(et,Ze,Je[0]/j,Je[1]/W)&&(Qe=0),(1+r.toleranceGrowth*Qe)*J}function xe(zt,Je){var et=zt[0]-Je[0],Ze=zt[1]-Je[1];return Math.sqrt(et*et+Ze*Ze)}var De,Ee,Me,he,fe,ae,be,Ie=r.maxScreensAway,Te=-j*Ie,Ne=j*(1+Ie),qe=-W*Ie,ve=W*(1+Ie),Ce=[[Te,qe,Ne,qe],[Ne,qe,Ne,ve],[Ne,ve,Te,ve],[Te,ve,Te,qe]];function Ae(zt){if(zt[0]<Te||zt[0]>Ne||zt[1]<qe||zt[1]>ve)return[o(zt[0],Te,Ne),o(zt[1],qe,ve)]}function ze(zt,Je){return zt[0]===Je[0]&&(zt[0]===Te||zt[0]===Ne)||zt[1]===Je[1]&&(zt[1]===qe||zt[1]===ve)||void 0}function Ue(zt,Je,et){return function(Ze,Qe){var st=Ae(Ze),ft=Ae(Qe),Be=[];if(st&&ft&&ze(st,ft))return Be;st&&Be.push(st),ft&&Be.push(ft);var je=2*l.constrain((Ze[zt]+Qe[zt])/2,Je,et)-((st||Ze)[zt]+(ft||Qe)[zt]);return je&&((st&&ft?je>0==st[zt]>ft[zt]?st:ft:st||ft)[zt]+=je),Be}}function Ve(zt){var Je=zt[0],et=zt[1],Ze=Je===de[me-1][0],Qe=et===de[me-1][1];if(!Ze||!Qe)if(me>1){var st=Je===de[me-2][0],ft=et===de[me-2][1];Ze&&(Je===Te||Je===Ne)&&st?ft?me--:de[me-1]=zt:Qe&&(et===qe||et===ve)&&ft?st?me--:de[me-1]=zt:de[me++]=zt}else de[me++]=zt}function Ye(zt){de[me-1][0]!==zt[0]&&de[me-1][1]!==zt[1]&&Ve([Me,he]),Ve(zt),fe=null,Me=he=0}X==="linear"||X==="spline"?be=function(zt,Je){for(var et=[],Ze=0,Qe=0;Qe<4;Qe++){var st=Ce[Qe],ft=t(zt[0],zt[1],Je[0],Je[1],st[0],st[1],st[2],st[3]);ft&&(!Ze||Math.abs(ft.x-et[0][0])>1||Math.abs(ft.y-et[0][1])>1)&&(ft=[ft.x,ft.y],Ze&&xe(ft,zt)<xe(et[0],zt)?et.unshift(ft):et.push(ft),Ze++)}return et}:X==="hv"||X==="vh"?be=function(zt,Je){var et=[],Ze=Ae(zt),Qe=Ae(Je);return Ze&&Qe&&ze(Ze,Qe)||(Ze&&et.push(Ze),Qe&&et.push(Qe)),et}:X==="hvh"?be=Ue(0,Te,Ne):X==="vhv"&&(be=Ue(1,qe,ve));var $e=l.isArrayOrTypedArray(ie);function rt(zt){if(zt&&Z&&(zt.i=s,zt.d=n,zt.trace=B,zt.marker=$e?ie[zt.i]:ie,zt.backoff=Z),O=zt[0]/j,z=zt[1]/W,De=zt[0]<Te?Te:zt[0]>Ne?Ne:0,Ee=zt[1]<qe?qe:zt[1]>ve?ve:0,De||Ee){if(me)if(fe){var Je=be(fe,zt);Je.length>1&&(Ye(Je[0]),de[me++]=Je[1])}else ae=be(de[me-1],zt)[0],de[me++]=ae;else de[me++]=[De||zt[0],Ee||zt[1]];var et=de[me-1];De&&Ee&&(et[0]!==De||et[1]!==Ee)?(fe&&(Me!==De&&he!==Ee?Ve(Me&&he?(Ze=fe,st=(Qe=zt)[0]-Ze[0],ft=(Qe[1]-Ze[1])/st,(Ze[1]*Qe[0]-Qe[1]*Ze[0])/st>0?[ft>0?Te:Ne,ve]:[ft>0?Ne:Te,qe]):[Me||De,he||Ee]):Me&&he&&Ve([Me,he])),Ve([De,Ee])):Me-De&&he-Ee&&Ve([De||Me,Ee||he]),fe=zt,Me=De,he=Ee}else fe&&Ye(be(fe,zt)[0]),de[me++]=zt;var Ze,Qe,st,ft}for(s=0;s<ce;s++)if(u=_e(s)){for(me=0,fe=null,rt(u),s++;s<ce;s++){if(!(c=_e(s))){if(te)continue;break}if(ee&&a.simplify){var ht=_e(s+1);if(x=xe(c,u),re&&(me===0||me===ce-1)||!(x<we(c,ht)*ue)){for(v=[(c[0]-u[0])/x,(c[1]-u[1])/x],b=u,T=x,d=A=C=0,f=!1,p=c,s++;s<n.length;s++){if(g=ht,ht=_e(s+1),!g){if(te)continue;break}if(P=(m=[g[0]-u[0],g[1]-u[1]])[0]*v[1]-m[1]*v[0],A=Math.min(A,P),(C=Math.max(C,P))-A>we(g,ht))break;p=g,(M=m[0]*v[0]+m[1]*v[1])>T?(T=M,c=g,f=!1):M<d&&(d=M,b=g,f=!0)}if(f?(rt(c),p!==b&&rt(b)):(b!==u&&rt(b),p!==c&&rt(c)),rt(p),s>=n.length||!g)break;rt(g),u=g}}else rt(c)}fe&&Ve([Me||fe[0],he||fe[1]]),oe.push(de.slice(0,me))}var nt=X.slice(X.length-1);if(Z&&nt!=="h"&&nt!=="v"){for(var bt=!1,wt=-1,ut=[],lt=0;lt<oe.length;lt++)for(var Tt=0;Tt<oe[lt].length-1;Tt++){var Et=oe[lt][Tt],St=oe[lt][Tt+1],Ft=w.applyBackoff(St,Et);Ft[0]===St[0]&&Ft[1]===St[1]||(bt=!0),ut[wt+1]||(ut[++wt]=[Et,[Ft[0],Ft[1]]])}return bt?ut:oe}return oe}},94039:function(R){R.exports=function(E,e,w){w("line.shape")==="spline"&&w("line.smoothing")}},68687:function(R){var E={tonextx:1,tonexty:1,tonext:1};R.exports=function(e,w,k){var i,_,y,h,l,t={},o=!1,r=-1,n=0,a=-1;for(_=0;_<k.length;_++)(y=(i=k[_][0].trace).stackgroup||"")?y in t?l=t[y]:(l=t[y]=n,n++):i.fill in E&&a>=0?l=a:(l=a=n,n++),l<r&&(o=!0),i._groupIndex=r=l;var s=k.slice();o&&s.sort(function(p,c){var b=p[0].trace,g=c[0].trace;return b._groupIndex-g._groupIndex||b.index-g.index});var u={};for(_=0;_<s.length;_++)y=(i=s[_][0].trace).stackgroup||"",i.visible===!0?(i._nexttrace=null,i.fill in E&&(h=u[y],i._prevtrace=h||null,h&&(h._nexttrace=i)),i._ownfill=i.fill&&(i.fill.substr(0,6)==="tozero"||i.fill==="toself"||i.fill.substr(0,2)==="to"&&!i._prevtrace),u[y]=i):i._prevtrace=i._nexttrace=i._ownfill=null;return s}},39984:function(R,E,e){var w=e(92770);R.exports=function(k,i){i||(i=2);var _=k.marker,y=_.sizeref||1,h=_.sizemin||0,l=_.sizemode==="area"?function(t){return Math.sqrt(t/y)}:function(t){return t/y};return function(t){var o=l(t/i);return w(o)&&o>0?Math.max(o,h):0}}},4898:function(R){R.exports={container:"marker",min:"cmin",max:"cmax"}},49508:function(R,E,e){var w=e(7901),k=e(52075).hasColorscale,i=e(1586),_=e(34098);R.exports=function(y,h,l,t,o,r){var n=_.isBubble(y),a=(y.line||{}).color;r=r||{},a&&(l=a),o("marker.symbol"),o("marker.opacity",n?.7:1),o("marker.size"),r.noAngle||(o("marker.angle"),r.noAngleRef||o("marker.angleref"),r.noStandOff||o("marker.standoff")),o("marker.color",l),k(y,"marker")&&i(y,h,t,o,{prefix:"marker.",cLetter:"c"}),r.noSelect||(o("selected.marker.color"),o("unselected.marker.color"),o("selected.marker.size"),o("unselected.marker.size")),r.noLine||(o("marker.line.color",a&&!Array.isArray(a)&&h.marker.color!==a?a:n?w.background:w.defaultLine),k(y,"marker.line")&&i(y,h,t,o,{prefix:"marker.line.",cLetter:"c"}),o("marker.line.width",n?1:0)),n&&(o("marker.sizeref"),o("marker.sizemin"),o("marker.sizemode")),r.gradient&&o("marker.gradient.type")!=="none"&&o("marker.gradient.color")}},73927:function(R,E,e){var w=e(71828).dateTick0,k=e(50606).ONEWEEK;function i(_,y){return w(y,_%k==0?1:0)}R.exports=function(_,y,h,l,t){if(t||(t={x:!0,y:!0}),t.x){var o=l("xperiod");o&&(l("xperiod0",i(o,y.xcalendar)),l("xperiodalignment"))}if(t.y){var r=l("yperiod");r&&(l("yperiod0",i(r,y.ycalendar)),l("yperiodalignment"))}}},32663:function(R,E,e){var w=e(39898),k=e(73972),i=e(71828),_=i.ensureSingle,y=i.identity,h=e(91424),l=e(34098),t=e(34621),o=e(68687),r=e(61082).tester;function n(a,s,u,p,c,b,g){var f,v=a._context.staticPlot;(function(be,Ie,Te,Ne,qe){var ve=Te.xaxis,Ce=Te.yaxis,Ae=w.extent(i.simpleMap(ve.range,ve.r2c)),ze=w.extent(i.simpleMap(Ce.range,Ce.r2c)),Ue=Ne[0].trace;if(l.hasMarkers(Ue)){var Ve=Ue.marker.maxdisplayed;if(Ve!==0){var Ye=Ne.filter(function(nt){return nt.x>=Ae[0]&&nt.x<=Ae[1]&&nt.y>=ze[0]&&nt.y<=ze[1]}),$e=Math.ceil(Ye.length/Ve),rt=0;qe.forEach(function(nt,bt){var wt=nt[0].trace;l.hasMarkers(wt)&&wt.marker.maxdisplayed>0&&bt<Ie&&rt++});var ht=Math.round(rt*$e/3+Math.floor(rt/3)*$e/7.1);Ne.forEach(function(nt){delete nt.vis}),Ye.forEach(function(nt,bt){Math.round((bt+ht)%$e)===0&&(nt.vis=!0)})}}})(0,s,u,p,c);var m=!!g&&g.duration>0;function x(be){return m?be.transition():be}var T=u.xaxis,d=u.yaxis,M=p[0].trace,A=M.line,C=w.select(b),P=_(C,"g","errorbars"),O=_(C,"g","lines"),z=_(C,"g","points"),B=_(C,"g","text");if(k.getComponentMethod("errorbars","plot")(a,P,u,g),M.visible===!0){var Y,D;x(C).style("opacity",M.opacity);var G=M.fill.charAt(M.fill.length-1);G!=="x"&&G!=="y"&&(G=""),p[0][u.isRangePlot?"nodeRangePlot3":"node3"]=C;var V,j,W="",Z=[],ie=M._prevtrace;ie&&(W=ie._prevRevpath||"",D=ie._nextFill,Z=ie._polygons);var te,J,X,ee,re,oe,ue,ce="",de="",me=[],_e=i.noop;if(Y=M._ownFill,l.hasLines(M)||M.fill!=="none"){for(D&&D.datum(p),["hv","vh","hvh","vhv"].indexOf(A.shape)!==-1?(te=h.steps(A.shape),J=h.steps(A.shape.split("").reverse().join(""))):te=J=A.shape==="spline"?function(be){var Ie=be[be.length-1];return be.length>1&&be[0][0]===Ie[0]&&be[0][1]===Ie[1]?h.smoothclosed(be.slice(1),A.smoothing):h.smoothopen(be,A.smoothing)}:function(be){return"M"+be.join("L")},X=function(be){return J(be.reverse())},me=t(p,{xaxis:T,yaxis:d,trace:M,connectGaps:M.connectgaps,baseTolerance:Math.max(A.width||1,3)/4,shape:A.shape,backoff:A.backoff,simplify:A.simplify,fill:M.fill}),ue=M._polygons=new Array(me.length),f=0;f<me.length;f++)M._polygons[f]=r(me[f]);me.length&&(ee=me[0][0],oe=(re=me[me.length-1])[re.length-1]),_e=function(be){return function(Ie){if(V=te(Ie),j=X(Ie),ce?G?(ce+="L"+V.substr(1),de=j+"L"+de.substr(1)):(ce+="Z"+V,de=j+"Z"+de):(ce=V,de=j),l.hasLines(M)){var Te=w.select(this);if(Te.datum(p),be)x(Te.style("opacity",0).attr("d",V).call(h.lineGroupStyle)).style("opacity",1);else{var Ne=x(Te);Ne.attr("d",V),h.singleLineStyle(p,Ne)}}}}}var Se=O.selectAll(".js-line").data(me);x(Se.exit()).style("opacity",0).remove(),Se.each(_e(!1)),Se.enter().append("path").classed("js-line",!0).style("vector-effect",v?"none":"non-scaling-stroke").call(h.lineGroupStyle).each(_e(!0)),h.setClipUrl(Se,u.layerClipId,a),me.length?(Y?(Y.datum(p),ee&&oe&&(G?(G==="y"?ee[1]=oe[1]=d.c2p(0,!0):G==="x"&&(ee[0]=oe[0]=T.c2p(0,!0)),x(Y).attr("d","M"+oe+"L"+ee+"L"+ce.substr(1)).call(h.singleFillStyle,a)):x(Y).attr("d",ce+"Z").call(h.singleFillStyle,a))):D&&(M.fill.substr(0,6)==="tonext"&&ce&&W?(M.fill==="tonext"?x(D).attr("d",ce+"Z"+W+"Z").call(h.singleFillStyle,a):x(D).attr("d",ce+"L"+W.substr(1)+"Z").call(h.singleFillStyle,a),M._polygons=M._polygons.concat(Z)):(xe(D),M._polygons=null)),M._prevRevpath=de,M._prevPolygons=ue):(Y?xe(Y):D&&xe(D),M._polygons=M._prevRevpath=M._prevPolygons=null),z.datum(p),B.datum(p),function(be,Ie,Te){var Ne,qe=Te[0].trace,ve=l.hasMarkers(qe),Ce=l.hasText(qe),Ae=fe(qe),ze=ae,Ue=ae;if(ve||Ce){var Ve=y,Ye=qe.stackgroup,$e=Ye&&a._fullLayout._scatterStackOpts[T._id+d._id][Ye].stackgaps==="infer zero";qe.marker.maxdisplayed||qe._needsCull?Ve=$e?Ee:De:Ye&&!$e&&(Ve=Me),ve&&(ze=Ve),Ce&&(Ue=Ve)}var rt,ht=(Ne=be.selectAll("path.point").data(ze,Ae)).enter().append("path").classed("point",!0);m&&ht.call(h.pointStyle,qe,a).call(h.translatePoints,T,d).style("opacity",0).transition().style("opacity",1),Ne.order(),ve&&(rt=h.makePointStyleFns(qe)),Ne.each(function(nt){var bt=w.select(this),wt=x(bt);h.translatePoint(nt,wt,T,d)?(h.singlePointStyle(nt,wt,qe,rt,a),u.layerClipId&&h.hideOutsideRangePoint(nt,wt,T,d,qe.xcalendar,qe.ycalendar),qe.customdata&&bt.classed("plotly-customdata",nt.data!==null&&nt.data!==void 0)):wt.remove()}),m?Ne.exit().transition().style("opacity",0).remove():Ne.exit().remove(),(Ne=Ie.selectAll("g").data(Ue,Ae)).enter().append("g").classed("textpoint",!0).append("text"),Ne.order(),Ne.each(function(nt){var bt=w.select(this),wt=x(bt.select("text"));h.translatePoint(nt,wt,T,d)?u.layerClipId&&h.hideOutsideRangePoint(nt,bt,T,d,qe.xcalendar,qe.ycalendar):bt.remove()}),Ne.selectAll("text").call(h.textPointStyle,qe,a).each(function(nt){var bt=T.c2p(nt.x),wt=d.c2p(nt.y);w.select(this).selectAll("tspan.line").each(function(){x(w.select(this)).attr({x:bt,y:wt})})}),Ne.exit().remove()}(z,B,p);var we=M.cliponaxis===!1?null:u.layerClipId;h.setClipUrl(z,we,a),h.setClipUrl(B,we,a)}function xe(be){x(be).attr("d","M0,0Z")}function De(be){return be.filter(function(Ie){return!Ie.gap&&Ie.vis})}function Ee(be){return be.filter(function(Ie){return Ie.vis})}function Me(be){return be.filter(function(Ie){return!Ie.gap})}function he(be){return be.id}function fe(be){if(be.ids)return he}function ae(){return!1}}R.exports=function(a,s,u,p,c,b){var g,f,v=!c,m=!!c&&c.duration>0,x=o(a,s,u);(g=p.selectAll("g.trace").data(x,function(T){return T[0].trace.uid})).enter().append("g").attr("class",function(T){return"trace scatter trace"+T[0].trace.uid}).style("stroke-miterlimit",2),g.order(),function(T,d,M){d.each(function(A){var C=_(w.select(this),"g","fills");h.setClipUrl(C,M.layerClipId,T);var P=A[0].trace,O=[];P._ownfill&&O.push("_ownFill"),P._nexttrace&&O.push("_nextFill");var z=C.selectAll("g").data(O,y);z.enter().append("g"),z.exit().each(function(B){P[B]=null}).remove(),z.order().each(function(B){P[B]=_(w.select(this),"path","js-fill")})})}(a,g,s),m?(b&&(f=b()),w.transition().duration(c.duration).ease(c.easing).each("end",function(){f&&f()}).each("interrupt",function(){f&&f()}).each(function(){p.selectAll("g.trace").each(function(T,d){n(a,d,s,T,x,this,c)})})):g.each(function(T,d){n(a,d,s,T,x,this,c)}),v&&g.exit().remove(),p.selectAll("path:not([d])").remove()}},98002:function(R,E,e){var w=e(34098);R.exports=function(k,i){var _,y,h,l,t=k.cd,o=k.xaxis,r=k.yaxis,n=[],a=t[0].trace;if(!w.hasMarkers(a)&&!w.hasText(a))return[];if(i===!1)for(_=0;_<t.length;_++)t[_].selected=0;else for(_=0;_<t.length;_++)y=t[_],h=o.c2p(y.x),l=r.c2p(y.y),y.i!==null&&i.contains([h,l],!1,_,k)?(n.push({pointNumber:y.i,x:o.c2d(y.x),y:r.c2d(y.y)}),y.selected=1):y.selected=0;return n}},565:function(R){var E=["orientation","groupnorm","stackgaps"];R.exports=function(e,w,k,i){var _=k._scatterStackOpts,y=i("stackgroup");if(y){var h=w.xaxis+w.yaxis,l=_[h];l||(l=_[h]={});var t=l[y],o=!1;t?t.traces.push(w):(t=l[y]={traceIndices:[],traces:[w]},o=!0);for(var r={orientation:w.x&&!w.y?"h":"v"},n=0;n<E.length;n++){var a=E[n],s=a+"Found";if(!t[s]){var u=e[a]!==void 0,p=a==="orientation";if((u||o)&&(t[a]=i(a,r[a]),p&&(t.fillDflt=t[a]==="h"?"tonextx":"tonexty"),u&&(t[s]=!0,!o&&(delete t.traces[0][a],p))))for(var c=0;c<t.traces.length-1;c++){var b=t.traces[c];b._input.fill!==b.fill&&(b.fill=t.fillDflt)}}}return t}}},16296:function(R,E,e){var w=e(39898),k=e(91424),i=e(73972);function _(h,l,t){k.pointStyle(h.selectAll("path.point"),l,t)}function y(h,l,t){k.textPointStyle(h.selectAll("text"),l,t)}R.exports={style:function(h){var l=w.select(h).selectAll("g.trace.scatter");l.style("opacity",function(t){return t[0].trace.opacity}),l.selectAll("g.points").each(function(t){_(w.select(this),t.trace||t[0].trace,h)}),l.selectAll("g.text").each(function(t){y(w.select(this),t.trace||t[0].trace,h)}),l.selectAll("g.trace path.js-line").call(k.lineGroupStyle),l.selectAll("g.trace path.js-fill").call(k.fillGroupStyle,h),i.getComponentMethod("errorbars","style")(l)},stylePoints:_,styleText:y,styleOnSelect:function(h,l,t){var o=l[0].trace;o.selectedpoints?(k.selectedPointStyle(t.selectAll("path.point"),o),k.selectedTextStyle(t.selectAll("text"),o)):(_(t,o,h),y(t,o,h))}}},34098:function(R,E,e){var w=e(71828);R.exports={hasLines:function(k){return k.visible&&k.mode&&k.mode.indexOf("lines")!==-1},hasMarkers:function(k){return k.visible&&(k.mode&&k.mode.indexOf("markers")!==-1||k.type==="splom")},hasText:function(k){return k.visible&&k.mode&&k.mode.indexOf("text")!==-1},isBubble:function(k){return w.isPlainObject(k.marker)&&w.isArrayOrTypedArray(k.marker.size)}}},82410:function(R,E,e){var w=e(71828);R.exports=function(k,i,_,y,h){h=h||{},y("textposition"),w.coerceFont(y,"textfont",_.font),h.noSelect||(y("selected.textfont.color"),y("unselected.textfont.color"))}},67513:function(R,E,e){var w=e(71828),k=e(73972);R.exports=function(i,_,y,h){var l,t=h("x"),o=h("y");if(k.getComponentMethod("calendars","handleTraceDefaults")(i,_,["x","y"],y),t){var r=w.minRowLength(t);o?l=Math.min(r,w.minRowLength(o)):(l=r,h("y0"),h("dy"))}else{if(!o)return 0;l=w.minRowLength(o),h("x0"),h("dx")}return _._length=l,l}},44542:function(R,E,e){var w=e(82196),k=e(50693),i=e(12663).axisHoverFormat,_=e(5386).fF,y=e(5386).si,h=e(9012),l=e(29659),t=e(87381),o=e(1426).extendFlat,r=e(30962).overrideAll,n=e(78607),a=w.line,s=w.marker,u=s.line,p=o({width:a.width,dash:{valType:"enumerated",values:n(l),dflt:"solid"}},k("line")),c=R.exports=r({x:w.x,y:w.y,z:{valType:"data_array"},text:o({},w.text,{}),texttemplate:y({},{}),hovertext:o({},w.hovertext,{}),hovertemplate:_(),xhoverformat:i("x"),yhoverformat:i("y"),zhoverformat:i("z"),mode:o({},w.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}},y:{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}},z:{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}}},connectgaps:w.connectgaps,line:p,marker:o({symbol:{valType:"enumerated",values:n(t),dflt:"circle",arrayOk:!0},size:o({},s.size,{dflt:8}),sizeref:s.sizeref,sizemin:s.sizemin,sizemode:s.sizemode,opacity:o({},s.opacity,{arrayOk:!1}),colorbar:s.colorbar,line:o({width:o({},u.width,{arrayOk:!1})},k("marker.line"))},k("marker")),textposition:o({},w.textposition,{dflt:"top center"}),textfont:{color:w.textfont.color,size:w.textfont.size,family:o({},w.textfont.family,{arrayOk:!1})},opacity:h.opacity,hoverinfo:o({},h.hoverinfo)},"calc","nested");c.x.editType=c.y.editType=c.z.editType="calc+clearAxisTypes"},36563:function(R,E,e){var w=e(75225),k=e(36922);R.exports=function(i,_){var y=[{x:!1,y:!1,trace:_,t:{}}];return w(y,_),k(i,_),y}},67336:function(R,E,e){var w=e(73972);function k(i,_,y,h){if(!_||!_.visible)return null;for(var l=w.getComponentMethod("errorbars","makeComputeError")(_),t=new Array(i.length),o=0;o<i.length;o++){var r=l(+i[o],o);if(h.type==="log"){var n=h.c2l(i[o]),a=i[o]-r[0],s=i[o]+r[1];if(t[o]=[(h.c2l(a,!0)-n)*y,(h.c2l(s,!0)-n)*y],a>0){var u=h.c2l(a);h._lowerLogErrorBound||(h._lowerLogErrorBound=u),h._lowerErrorBound=Math.min(h._lowerLogErrorBound,u)}}else t[o]=[-r[0]*y,r[1]*y]}return t}R.exports=function(i,_,y){var h=[k(i.x,i.error_x,_[0],y.xaxis),k(i.y,i.error_y,_[1],y.yaxis),k(i.z,i.error_z,_[2],y.zaxis)],l=function(s){for(var u=0;u<s.length;u++)if(s[u])return s[u].length;return 0}(h);if(l===0)return null;for(var t=new Array(l),o=0;o<l;o++){for(var r=[[0,0,0],[0,0,0]],n=0;n<3;n++)if(h[n])for(var a=0;a<2;a++)r[a][n]=h[n][o][a];t[o]=r}return t}},58925:function(R,E,e){var w=e(9330).gl_line3d,k=e(9330).gl_scatter3d,i=e(9330).gl_error3d,_=e(9330).gl_mesh3d,y=e(9330).delaunay_triangulate,h=e(71828),l=e(78614),t=e(81697).formatColor,o=e(39984),r=e(29659),n=e(87381),a=e(89298),s=e(23469).appendArrayPointValue,u=e(67336);function p(d,M){this.scene=d,this.uid=M,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 c=p.prototype;function b(d){return d==null?0:d.indexOf("left")>-1?-1:d.indexOf("right")>-1?1:0}function g(d){return d==null?0:d.indexOf("top")>-1?-1:d.indexOf("bottom")>-1?1:0}function f(d,M){return M(4*d)}function v(d){return n[d]}function m(d,M,A,C,P){var O=null;if(h.isArrayOrTypedArray(d)){O=[];for(var z=0;z<M;z++)d[z]===void 0?O[z]=C:O[z]=A(d[z],P)}else O=A(d,h.identity);return O}function x(d){if(h.isArrayOrTypedArray(d)){var M=d[0];return h.isArrayOrTypedArray(M)&&(d=M),"rgb("+d.slice(0,3).map(function(A){return Math.round(255*A)})+")"}return null}function T(d){return h.isArrayOrTypedArray(d)?d.length===4&&typeof d[0]=="number"?x(d):d.map(x):null}c.handlePick=function(d){if(d.object&&(d.object===this.linePlot||d.object===this.delaunayMesh||d.object===this.textMarkers||d.object===this.scatterPlot)){var M=d.index=d.data.index;return d.object.highlight&&d.object.highlight(null),this.scatterPlot&&(d.object=this.scatterPlot,this.scatterPlot.highlight(d.data)),d.textLabel="",this.textLabels&&(Array.isArray(this.textLabels)?(this.textLabels[M]||this.textLabels[M]===0)&&(d.textLabel=this.textLabels[M]):d.textLabel=this.textLabels),d.traceCoordinate=[this.data.x[M],this.data.y[M],this.data.z[M]],!0}},c.update=function(d){var M,A,C,P,O=this.scene.glplot.gl,z=r.solid;this.data=d;var B=function(G,V){var j,W,Z,ie,te,J,X=[],ee=G.fullSceneLayout,re=G.dataScale,oe=ee.xaxis,ue=ee.yaxis,ce=ee.zaxis,de=V.marker,me=V.line,_e=V.x||[],Se=V.y||[],we=V.z||[],xe=_e.length,De=V.xcalendar,Ee=V.ycalendar,Me=V.zcalendar;for(te=0;te<xe;te++)j=oe.d2l(_e[te],0,De)*re[0],W=ue.d2l(Se[te],0,Ee)*re[1],Z=ce.d2l(we[te],0,Me)*re[2],X[te]=[j,W,Z];if(Array.isArray(V.text))J=V.text;else if(V.text!==void 0)for(J=new Array(xe),te=0;te<xe;te++)J[te]=V.text;function he(Ye,$e){var rt=ee[Ye];return a.tickText(rt,rt.d2l($e),!0).text}var fe=V.texttemplate;if(fe){var ae=G.fullLayout._d3locale,be=Array.isArray(fe),Ie=be?Math.min(fe.length,xe):xe,Te=be?function(Ye){return fe[Ye]}:function(){return fe};for(J=new Array(Ie),te=0;te<Ie;te++){var Ne={x:_e[te],y:Se[te],z:we[te]},qe={xLabel:he("xaxis",_e[te]),yLabel:he("yaxis",Se[te]),zLabel:he("zaxis",we[te])},ve={};s(ve,V,te);var Ce=V._meta||{};J[te]=h.texttemplateString(Te(te),qe,ae,ve,Ne,Ce)}}if(ie={position:X,mode:V.mode,text:J},"line"in V&&(ie.lineColor=t(me,1,xe),ie.lineWidth=me.width,ie.lineDashes=me.dash),"marker"in V){var Ae=o(V);ie.scatterColor=t(de,1,xe),ie.scatterSize=m(de.size,xe,f,20,Ae),ie.scatterMarker=m(de.symbol,xe,v,"●"),ie.scatterLineWidth=de.line.width,ie.scatterLineColor=t(de.line,1,xe),ie.scatterAngle=0}"textposition"in V&&(ie.textOffset=function(Ye){var $e=[0,0];if(Array.isArray(Ye))for(var rt=0;rt<Ye.length;rt++)$e[rt]=[0,0],Ye[rt]&&($e[rt][0]=b(Ye[rt]),$e[rt][1]=g(Ye[rt]));else $e[0]=b(Ye),$e[1]=g(Ye);return $e}(V.textposition),ie.textColor=t(V.textfont,1,xe),ie.textSize=m(V.textfont.size,xe,h.identity,12),ie.textFont=V.textfont.family,ie.textAngle=0);var ze=["x","y","z"];for(ie.project=[!1,!1,!1],ie.projectScale=[1,1,1],ie.projectOpacity=[1,1,1],te=0;te<3;++te){var Ue=V.projection[ze[te]];(ie.project[te]=Ue.show)&&(ie.projectOpacity[te]=Ue.opacity,ie.projectScale[te]=Ue.scale)}ie.errorBounds=u(V,re,ee);var Ve=function(Ye){for(var $e=[0,0,0],rt=[[0,0,0],[0,0,0],[0,0,0]],ht=[1,1,1],nt=0;nt<3;nt++){var bt=Ye[nt];bt&&bt.copy_zstyle!==!1&&Ye[2].visible!==!1&&(bt=Ye[2]),bt&&bt.visible&&($e[nt]=bt.width/2,rt[nt]=l(bt.color),ht[nt]=bt.thickness)}return{capSize:$e,color:rt,lineWidth:ht}}([V.error_x,V.error_y,V.error_z]);return ie.errorColor=Ve.color,ie.errorLineWidth=Ve.lineWidth,ie.errorCapSize=Ve.capSize,ie.delaunayAxis=V.surfaceaxis,ie.delaunayColor=l(V.surfacecolor),ie}(this.scene,d);"mode"in B&&(this.mode=B.mode),"lineDashes"in B&&B.lineDashes in r&&(z=r[B.lineDashes]),this.color=T(B.scatterColor)||T(B.lineColor),this.dataPoints=B.position,M={gl:this.scene.glplot.gl,position:B.position,color:B.lineColor,lineWidth:B.lineWidth||1,dashes:z[0],dashScale:z[1],opacity:d.opacity,connectGaps:d.connectgaps},this.mode.indexOf("lines")!==-1?this.linePlot?this.linePlot.update(M):(this.linePlot=w(M),this.linePlot._trace=this,this.scene.glplot.add(this.linePlot)):this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose(),this.linePlot=null);var Y=d.opacity;if(d.marker&&d.marker.opacity!==void 0&&(Y*=d.marker.opacity),A={gl:this.scene.glplot.gl,position:B.position,color:B.scatterColor,size:B.scatterSize,glyph:B.scatterMarker,opacity:Y,orthographic:!0,lineWidth:B.scatterLineWidth,lineColor:B.scatterLineColor,project:B.project,projectScale:B.projectScale,projectOpacity:B.projectOpacity},this.mode.indexOf("markers")!==-1?this.scatterPlot?this.scatterPlot.update(A):(this.scatterPlot=k(A),this.scatterPlot._trace=this,this.scatterPlot.highlightScale=1,this.scene.glplot.add(this.scatterPlot)):this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose(),this.scatterPlot=null),P={gl:this.scene.glplot.gl,position:B.position,glyph:B.text,color:B.textColor,size:B.textSize,angle:B.textAngle,alignment:B.textOffset,font:B.textFont,orthographic:!0,lineWidth:0,project:!1,opacity:d.opacity},this.textLabels=d.hovertext||d.text,this.mode.indexOf("text")!==-1?this.textMarkers?this.textMarkers.update(P):(this.textMarkers=k(P),this.textMarkers._trace=this,this.textMarkers.highlightScale=1,this.scene.glplot.add(this.textMarkers)):this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose(),this.textMarkers=null),C={gl:this.scene.glplot.gl,position:B.position,color:B.errorColor,error:B.errorBounds,lineWidth:B.errorLineWidth,capSize:B.errorCapSize,opacity:d.opacity},this.errorBars?B.errorBounds?this.errorBars.update(C):(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose(),this.errorBars=null):B.errorBounds&&(this.errorBars=i(C),this.errorBars._trace=this,this.scene.glplot.add(this.errorBars)),B.delaunayAxis>=0){var D=function(G,V,j){var W,Z=(j+1)%3,ie=(j+2)%3,te=[],J=[];for(W=0;W<G.length;++W){var X=G[W];!isNaN(X[Z])&&isFinite(X[Z])&&!isNaN(X[ie])&&isFinite(X[ie])&&(te.push([X[Z],X[ie]]),J.push(W))}var ee=y(te);for(W=0;W<ee.length;++W)for(var re=ee[W],oe=0;oe<re.length;++oe)re[oe]=J[re[oe]];return{positions:G,cells:ee,meshColor:V}}(B.position,B.delaunayColor,B.delaunayAxis);D.opacity=d.opacity,this.delaunayMesh?this.delaunayMesh.update(D):(D.gl=O,this.delaunayMesh=_(D),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)},c.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())},R.exports=function(d,M){var A=new p(d,M.uid);return A.update(M),A}},21428:function(R,E,e){var w=e(73972),k=e(71828),i=e(34098),_=e(49508),y=e(11058),h=e(82410),l=e(44542);R.exports=function(t,o,r,n){function a(v,m){return k.coerce(t,o,l,v,m)}var s=function(v,m,x,T){var d=0,M=x("x"),A=x("y"),C=x("z");return w.getComponentMethod("calendars","handleTraceDefaults")(v,m,["x","y","z"],T),M&&A&&C&&(d=Math.min(M.length,A.length,C.length),m._length=m._xlength=m._ylength=m._zlength=d),d}(t,o,a,n);if(s){a("text"),a("hovertext"),a("hovertemplate"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),a("mode"),i.hasLines(o)&&(a("connectgaps"),y(t,o,r,n,a)),i.hasMarkers(o)&&_(t,o,r,n,a,{noSelect:!0,noAngle:!0}),i.hasText(o)&&(a("texttemplate"),h(t,o,n,a,{noSelect:!0}));var u=(o.line||{}).color,p=(o.marker||{}).color;a("surfaceaxis")>=0&&a("surfacecolor",u||p);for(var c=["x","y","z"],b=0;b<3;++b){var g="projection."+c[b];a(g+".show")&&(a(g+".opacity"),a(g+".scale"))}var f=w.getComponentMethod("errorbars","supplyDefaults");f(t,o,u||p||r,{axis:"z"}),f(t,o,u||p||r,{axis:"y",inherit:"z"}),f(t,o,u||p||r,{axis:"x",inherit:"z"})}else o.visible=!1}},13551:function(R,E,e){R.exports={plot:e(58925),attributes:e(44542),markerSymbols:e(87381),supplyDefaults:e(21428),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:e(36563),moduleType:"trace",name:"scatter3d",basePlotModule:e(58547),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}},97001:function(R,E,e){var w=e(82196),k=e(9012),i=e(5386).fF,_=e(5386).si,y=e(50693),h=e(1426).extendFlat,l=w.marker,t=w.line,o=l.line;R.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:h({},w.mode,{dflt:"markers"}),text:h({},w.text,{}),texttemplate:_({editType:"plot"},{keys:["a","b","text"]}),hovertext:h({},w.hovertext,{}),line:{color:t.color,width:t.width,dash:t.dash,backoff:t.backoff,shape:h({},t.shape,{values:["linear","spline"]}),smoothing:t.smoothing,editType:"calc"},connectgaps:w.connectgaps,fill:h({},w.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:w.fillcolor,marker:h({symbol:l.symbol,opacity:l.opacity,maxdisplayed:l.maxdisplayed,angle:l.angle,angleref:l.angleref,standoff:l.standoff,size:l.size,sizeref:l.sizeref,sizemin:l.sizemin,sizemode:l.sizemode,line:h({width:o.width,editType:"calc"},y("marker.line")),gradient:l.gradient,editType:"calc"},y("marker")),textfont:w.textfont,textposition:w.textposition,selected:w.selected,unselected:w.unselected,hoverinfo:h({},k.hoverinfo,{flags:["a","b","text","name"]}),hoveron:w.hoveron,hovertemplate:i()}},34618:function(R,E,e){var w=e(92770),k=e(36922),i=e(75225),_=e(66279),y=e(47761).calcMarkerSize,h=e(22882);R.exports=function(l,t){var o=t._carpetTrace=h(l,t);if(o&&o.visible&&o.visible!=="legendonly"){var r;t.xaxis=o.xaxis,t.yaxis=o.yaxis;var n,a,s=t._length,u=new Array(s),p=!1;for(r=0;r<s;r++)if(n=t.a[r],a=t.b[r],w(n)&&w(a)){var c=o.ab2xy(+n,+a,!0),b=o.isVisible(+n,+a);b||(p=!0),u[r]={x:c[0],y:c[1],a:n,b:a,vis:b}}else u[r]={x:!1,y:!1};return t._needsCull=p,u[0].carpet=o,u[0].trace=t,y(t,s),k(l,t),i(u,t),_(u,t),u}}},98965:function(R,E,e){var w=e(71828),k=e(47581),i=e(34098),_=e(49508),y=e(11058),h=e(94039),l=e(82410),t=e(28908),o=e(97001);R.exports=function(r,n,a,s){function u(f,v){return w.coerce(r,n,o,f,v)}u("carpet"),n.xaxis="x",n.yaxis="y";var p=u("a"),c=u("b"),b=Math.min(p.length,c.length);if(b){n._length=b,u("text"),u("texttemplate"),u("hovertext"),u("mode",b<k.PTS_LINESONLY?"lines+markers":"lines"),i.hasLines(n)&&(y(r,n,a,s,u,{backoff:!0}),h(r,n,u),u("connectgaps")),i.hasMarkers(n)&&_(r,n,a,s,u,{gradient:!0}),i.hasText(n)&&l(r,n,s,u);var g=[];(i.hasMarkers(n)||i.hasText(n))&&(u("marker.maxdisplayed"),g.push("points")),u("fill"),n.fill!=="none"&&(t(r,n,a,u),i.hasLines(n)||h(r,n,u)),n.fill!=="tonext"&&n.fill!=="toself"||g.push("fills"),u("hoveron",g.join("+")||"points")!=="fills"&&u("hovertemplate"),w.coerceSelectionMarkerOpacity(n,u)}else n.visible=!1}},16165:function(R){R.exports=function(E,e,w,k,i){var _=k[i];return E.a=_.a,E.b=_.b,E.y=_.y,E}},48953:function(R){R.exports=function(E,e){var w={},k=e._carpet,i=k.ab2ij([E.a,E.b]),_=Math.floor(i[0]),y=i[0]-_,h=Math.floor(i[1]),l=i[1]-h,t=k.evalxy([],_,h,y,l);return w.yLabel=t[1].toFixed(3),w}},22931:function(R,E,e){var w=e(33720),k=e(71828).fillText;R.exports=function(i,_,y,h){var l=w(i,_,y,h);if(l&&l[0].index!==!1){var t=l[0];if(t.index===void 0){var o=1-t.y0/i.ya._length,r=i.xa._length,n=r*o/2,a=r-n;return t.x0=Math.max(Math.min(t.x0,a),n),t.x1=Math.max(Math.min(t.x1,a),n),l}var s=t.cd[t.index];t.a=s.a,t.b=s.b,t.xLabelVal=void 0,t.yLabelVal=void 0;var u=t.trace,p=u._carpet,c=u._module.formatLabels(s,u);t.yLabel=c.yLabel,delete t.text;var b=[];if(!u.hovertemplate){var g=(s.hi||u.hoverinfo).split("+");g.indexOf("all")!==-1&&(g=["a","b","text"]),g.indexOf("a")!==-1&&f(p.aaxis,s.a),g.indexOf("b")!==-1&&f(p.baxis,s.b),b.push("y: "+t.yLabel),g.indexOf("text")!==-1&&k(s,u,b),t.extraText=b.join("<br>")}return l}function f(v,m){var x;x=v.labelprefix&&v.labelprefix.length>0?v.labelprefix.replace(/ = $/,""):v._hovertitle,b.push(x+": "+m.toFixed(3)+v.labelsuffix)}}},46858:function(R,E,e){R.exports={attributes:e(97001),supplyDefaults:e(98965),colorbar:e(4898),formatLabels:e(48953),calc:e(34618),plot:e(1913),style:e(16296).style,styleOnSelect:e(16296).styleOnSelect,hoverPoints:e(22931),selectPoints:e(98002),eventData:e(16165),moduleType:"trace",name:"scattercarpet",basePlotModule:e(93612),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}},1913:function(R,E,e){var w=e(32663),k=e(89298),i=e(91424);R.exports=function(_,y,h,l){var t,o,r,n=h[0][0].carpet,a=k.getFromId(_,n.xaxis||"x"),s=k.getFromId(_,n.yaxis||"y"),u={xaxis:a,yaxis:s,plot:y.plot};for(t=0;t<h.length;t++)(o=h[t][0].trace)._xA=a,o._yA=s;for(w(_,u,h,l),t=0;t<h.length;t++)o=h[t][0].trace,r=l.selectAll("g.trace"+o.uid+" .js-line"),i.setClipUrl(r,h[t][0].carpet._clipPathId,_)}},19316:function(R,E,e){var w=e(5386).fF,k=e(5386).si,i=e(82196),_=e(9012),y=e(50693),h=e(79952).P,l=e(1426).extendFlat,t=e(30962).overrideAll,o=i.marker,r=i.line,n=o.line;R.exports=t({lon:{valType:"data_array"},lat:{valType:"data_array"},locations:{valType:"data_array"},locationmode:{valType:"enumerated",values:["ISO-3","USA-states","country names","geojson-id"],dflt:"ISO-3"},geojson:{valType:"any",editType:"calc"},featureidkey:{valType:"string",editType:"calc",dflt:"id"},mode:l({},i.mode,{dflt:"markers"}),text:l({},i.text,{}),texttemplate:k({editType:"plot"},{keys:["lat","lon","location","text"]}),hovertext:l({},i.hovertext,{}),textfont:i.textfont,textposition:i.textposition,line:{color:r.color,width:r.width,dash:h},connectgaps:i.connectgaps,marker:l({symbol:o.symbol,opacity:o.opacity,angle:o.angle,angleref:l({},o.angleref,{values:["previous","up","north"]}),standoff:o.standoff,size:o.size,sizeref:o.sizeref,sizemin:o.sizemin,sizemode:o.sizemode,colorbar:o.colorbar,line:l({width:n.width},y("marker.line")),gradient:o.gradient},y("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:i.fillcolor,selected:i.selected,unselected:i.unselected,hoverinfo:l({},_.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:w()},"calc","nested")},84622:function(R,E,e){var w=e(92770),k=e(50606).BADNUM,i=e(36922),_=e(75225),y=e(66279),h=e(71828)._;function l(t){return t&&typeof t=="string"}R.exports=function(t,o){var r,n=Array.isArray(o.locations),a=n?o.locations.length:o._length,s=new Array(a);r=o.geojson?function(f){return l(f)||w(f)}:l;for(var u=0;u<a;u++){var p=s[u]={};if(n){var c=o.locations[u];p.loc=r(c)?c:null}else{var b=o.lon[u],g=o.lat[u];w(b)&&w(g)?p.lonlat=[+b,+g]:p.lonlat=[k,k]}}return _(s,o),i(t,o),y(s,o),a&&(s[0].t={labels:{lat:h(t,"lat:")+" ",lon:h(t,"lon:")+" "}}),s}},10659:function(R,E,e){var w=e(71828),k=e(34098),i=e(49508),_=e(11058),y=e(82410),h=e(28908),l=e(19316);R.exports=function(t,o,r,n){function a(f,v){return w.coerce(t,o,l,f,v)}var s,u=a("locations");if(u&&u.length){var p,c=a("geojson");(typeof c=="string"&&c!==""||w.isPlainObject(c))&&(p="geojson-id"),a("locationmode",p)==="geojson-id"&&a("featureidkey"),s=u.length}else{var b=a("lon")||[],g=a("lat")||[];s=Math.min(b.length,g.length)}s?(o._length=s,a("text"),a("hovertext"),a("hovertemplate"),a("mode"),k.hasLines(o)&&(_(t,o,r,n,a),a("connectgaps")),k.hasMarkers(o)&&i(t,o,r,n,a,{gradient:!0}),k.hasText(o)&&(a("texttemplate"),y(t,o,n,a)),a("fill"),o.fill!=="none"&&h(t,o,r,a),w.coerceSelectionMarkerOpacity(o,a)):o.visible=!1}},84084:function(R){R.exports=function(E,e,w,k,i){E.lon=e.lon,E.lat=e.lat,E.location=e.loc?e.loc:null;var _=k[i];return _.fIn&&_.fIn.properties&&(E.properties=_.fIn.properties),E}},82719:function(R,E,e){var w=e(89298);R.exports=function(k,i,_){var y={},h=_[i.geo]._subplot.mockAxis,l=k.lonlat;return y.lonLabel=w.tickText(h,h.c2l(l[0]),!0).text,y.latLabel=w.tickText(h,h.c2l(l[1]),!0).text,y}},14977:function(R,E,e){var w=e(30211),k=e(50606).BADNUM,i=e(34603),_=e(71828).fillText,y=e(19316);R.exports=function(h,l,t){var o=h.cd,r=o[0].trace,n=h.xa,a=h.ya,s=h.subplot,u=s.projection.isLonLatOverEdges,p=s.project;if(w.getClosest(o,function(x){var T=x.lonlat;if(T[0]===k||u(T))return 1/0;var d=p(T),M=p([l,t]),A=Math.abs(d[0]-M[0]),C=Math.abs(d[1]-M[1]),P=Math.max(3,x.mrc||0);return Math.max(Math.sqrt(A*A+C*C)-P,1-3/P)},h),h.index!==!1){var c=o[h.index],b=c.lonlat,g=[n.c2p(b),a.c2p(b)],f=c.mrc||1;h.x0=g[0]-f,h.x1=g[0]+f,h.y0=g[1]-f,h.y1=g[1]+f,h.loc=c.loc,h.lon=b[0],h.lat=b[1];var v={};v[r.geo]={_subplot:s};var m=r._module.formatLabels(c,r,v);return h.lonLabel=m.lonLabel,h.latLabel=m.latLabel,h.color=i(r,c),h.extraText=function(x,T,d,M){if(!x.hovertemplate){var A=T.hi||x.hoverinfo,C=A==="all"?y.hoverinfo.flags:A.split("+"),P=C.indexOf("location")!==-1&&Array.isArray(x.locations),O=C.indexOf("lon")!==-1,z=C.indexOf("lat")!==-1,B=C.indexOf("text")!==-1,Y=[];return P?Y.push(T.loc):O&&z?Y.push("("+D(d.latLabel)+", "+D(d.lonLabel)+")"):O?Y.push(M.lon+D(d.lonLabel)):z&&Y.push(M.lat+D(d.latLabel)),B&&_(T,x,Y),Y.join("<br>")}function D(G){return G+"°"}}(r,c,h,o[0].t.labels),h.hovertemplate=r.hovertemplate,[h]}}},17988:function(R,E,e){R.exports={attributes:e(19316),supplyDefaults:e(10659),colorbar:e(4898),formatLabels:e(82719),calc:e(84622),calcGeoJSON:e(89171).calcGeoJSON,plot:e(89171).plot,style:e(33095),styleOnSelect:e(16296).styleOnSelect,hoverPoints:e(14977),eventData:e(84084),selectPoints:e(20548),moduleType:"trace",name:"scattergeo",basePlotModule:e(44622),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}},89171:function(R,E,e){var w=e(39898),k=e(71828),i=e(90973).getTopojsonFeatures,_=e(18214),y=e(41327),h=e(71739).findExtremes,l=e(50606).BADNUM,t=e(47761).calcMarkerSize,o=e(34098),r=e(33095);R.exports={calcGeoJSON:function(n,a){var s,u,p=n[0].trace,c=a[p.geo],b=c._subplot,g=p._length;if(Array.isArray(p.locations)){var f=p.locationmode,v=f==="geojson-id"?y.extractTraceFeature(n):i(p,b.topojson);for(s=0;s<g;s++){u=n[s];var m=f==="geojson-id"?u.fOut:y.locationToFeature(f,u.loc,v);u.lonlat=m?m.properties.ct:[l,l]}}var x,T,d={padded:!0};if(c.fitbounds==="geojson"&&p.locationmode==="geojson-id"){var M=y.computeBbox(y.getTraceGeojson(p));x=[M[0],M[2]],T=[M[1],M[3]]}else{for(x=new Array(g),T=new Array(g),s=0;s<g;s++)u=n[s],x[s]=u.lonlat[0],T[s]=u.lonlat[1];d.ppad=t(p,g)}p._extremes.lon=h(c.lonaxis._ax,x,d),p._extremes.lat=h(c.lataxis._ax,T,d)},plot:function(n,a,s){var u=a.layers.frontplot.select(".scatterlayer"),p=k.makeTraceGroups(u,s,"trace scattergeo");function c(b,g){b.lonlat[0]===l&&w.select(g).remove()}p.selectAll("*").remove(),p.each(function(b){var g=w.select(this),f=b[0].trace;if(o.hasLines(f)||f.fill!=="none"){var v=_.calcTraceToLineCoords(b),m=f.fill!=="none"?_.makePolygon(v):_.makeLine(v);g.selectAll("path.js-line").data([{geojson:m,trace:f}]).enter().append("path").classed("js-line",!0).style("stroke-miterlimit",2)}o.hasMarkers(f)&&g.selectAll("path.point").data(k.identity).enter().append("path").classed("point",!0).each(function(x){c(x,this)}),o.hasText(f)&&g.selectAll("g").data(k.identity).enter().append("g").append("text").each(function(x){c(x,this)}),r(n,b)})}}},20548:function(R,E,e){var w=e(34098),k=e(50606).BADNUM;R.exports=function(i,_){var y,h,l,t,o,r=i.cd,n=i.xaxis,a=i.yaxis,s=[],u=r[0].trace;if(!w.hasMarkers(u)&&!w.hasText(u))return[];if(_===!1)for(o=0;o<r.length;o++)r[o].selected=0;else for(o=0;o<r.length;o++)(h=(y=r[o]).lonlat)[0]!==k&&(l=n.c2p(h),t=a.c2p(h),_.contains([l,t],null,o,i)?(s.push({pointNumber:o,lon:h[0],lat:h[1]}),y.selected=1):y.selected=0);return s}},33095:function(R,E,e){var w=e(39898),k=e(91424),i=e(7901),_=e(16296),y=_.stylePoints,h=_.styleText;R.exports=function(l,t){t&&function(o,r){var n=r[0].trace,a=r[0].node3;a.style("opacity",r[0].trace.opacity),y(a,n,o),h(a,n,o),a.selectAll("path.js-line").style("fill","none").each(function(s){var u=w.select(this),p=s.trace,c=p.line||{};u.call(i.stroke,c.color).call(k.dashLine,c.dash||"",c.width||0),p.fill!=="none"&&u.call(i.fill,p.fillcolor)})}(l,t)}},42341:function(R,E,e){var w=e(9012),k=e(82196),i=e(12663).axisHoverFormat,_=e(50693),y=e(78607),h=e(1426).extendFlat,l=e(30962).overrideAll,t=e(78232).DASHES,o=k.line,r=k.marker,n=r.line,a=R.exports=l({x:k.x,x0:k.x0,dx:k.dx,y:k.y,y0:k.y0,dy:k.dy,xperiod:k.xperiod,yperiod:k.yperiod,xperiod0:k.xperiod0,yperiod0:k.yperiod0,xperiodalignment:k.xperiodalignment,yperiodalignment:k.yperiodalignment,xhoverformat:i("x"),yhoverformat:i("y"),text:k.text,hovertext:k.hovertext,textposition:k.textposition,textfont:k.textfont,mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"]},line:{color:o.color,width:o.width,shape:{valType:"enumerated",values:["linear","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},dash:{valType:"enumerated",values:y(t),dflt:"solid"}},marker:h({},_("marker"),{symbol:r.symbol,angle:r.angle,size:r.size,sizeref:r.sizeref,sizemin:r.sizemin,sizemode:r.sizemode,opacity:r.opacity,colorbar:r.colorbar,line:h({},_("marker.line"),{width:n.width})}),connectgaps:k.connectgaps,fill:h({},k.fill,{dflt:"none"}),fillcolor:k.fillcolor,selected:{marker:k.selected.marker,textfont:k.selected.textfont},unselected:{marker:k.unselected.marker,textfont:k.unselected.textfont},opacity:w.opacity},"calc","nested");a.x.editType=a.y.editType=a.x0.editType=a.y0.editType="calc+clearAxisTypes",a.hovertemplate=k.hovertemplate,a.texttemplate=k.texttemplate},72156:function(R,E,e){var w=e(20794);R.exports={moduleType:"trace",name:"scattergl",basePlotModule:e(93612),categories:["gl","regl","cartesian","symbols","errorBarsOK","showLegend","scatter-like"],attributes:e(42341),supplyDefaults:e(47148),crossTraceDefaults:e(34936),colorbar:e(4898),formatLabels:e(68101),calc:e(45032),hoverPoints:w.hoverPoints,selectPoints:e(58147),meta:{}}},45032:function(R,E,e){var w=e(88294),k=e(71828),i=e(41675),_=e(71739).findExtremes,y=e(42973),h=e(47761),l=h.calcMarkerSize,t=h.calcAxisExpansion,o=h.setFirstScatter,r=e(36922),n=e(19635),a=e(38967),s=e(50606).BADNUM,u=e(78232).TOO_MANY_POINTS;function p(c,b,g){var f=c._extremes[b._id],v=_(b,g._bnds,{padded:!0});f.min=f.min.concat(v.min),f.max=f.max.concat(v.max)}R.exports=function(c,b){var g,f=c._fullLayout,v=b._xA=i.getFromId(c,b.xaxis,"x"),m=b._yA=i.getFromId(c,b.yaxis,"y"),x=f._plots[b.xaxis+b.yaxis],T=b._length,d=T>=u,M=2*T,A={},C=v.makeCalcdata(b,"x"),P=m.makeCalcdata(b,"y"),O=y(b,v,"x",C),z=y(b,m,"y",P),B=O.vals,Y=z.vals;b._x=B,b._y=Y,b.xperiodalignment&&(b._origX=C,b._xStarts=O.starts,b._xEnds=O.ends),b.yperiodalignment&&(b._origY=P,b._yStarts=z.starts,b._yEnds=z.ends);var D=new Array(M),G=new Array(T);for(g=0;g<T;g++)D[2*g]=B[g]===s?NaN:B[g],D[2*g+1]=Y[g]===s?NaN:Y[g],G[g]=g;if(v.type==="log")for(g=0;g<M;g+=2)D[g]=v.c2l(D[g]);if(m.type==="log")for(g=1;g<M;g+=2)D[g]=m.c2l(D[g]);d&&v.type!=="log"&&m.type!=="log"?A.tree=w(D):A.ids=G,r(c,b);var V,j=function(Z,ie,te,J,X,ee){var re=n.style(Z,te);if(re.marker&&(re.marker.positions=J),re.line&&J.length>1&&k.extendFlat(re.line,n.linePositions(Z,te,J)),re.errorX||re.errorY){var oe=n.errorBarPositions(Z,te,J,X,ee);re.errorX&&k.extendFlat(re.errorX,oe.x),re.errorY&&k.extendFlat(re.errorY,oe.y)}return re.text&&(k.extendFlat(re.text,{positions:J},n.textPosition(Z,te,re.text,re.marker)),k.extendFlat(re.textSel,{positions:J},n.textPosition(Z,te,re.text,re.markerSel)),k.extendFlat(re.textUnsel,{positions:J},n.textPosition(Z,te,re.text,re.markerUnsel))),re}(c,0,b,D,B,Y),W=a(c,x);return o(f,b),d?j.marker&&(V=j.marker.sizeAvg||Math.max(j.marker.size,3)):V=l(b,T),t(c,b,v,m,B,Y,V),j.errorX&&p(b,v,j.errorX),j.errorY&&p(b,m,j.errorY),j.fill&&!W.fill2d&&(W.fill2d=!0),j.marker&&!W.scatter2d&&(W.scatter2d=!0),j.line&&!W.line2d&&(W.line2d=!0),!j.errorX&&!j.errorY||W.error2d||(W.error2d=!0),j.text&&!W.glText&&(W.glText=!0),j.marker&&(j.marker.snap=T),W.lineOptions.push(j.line),W.errorXOptions.push(j.errorX),W.errorYOptions.push(j.errorY),W.fillOptions.push(j.fill),W.markerOptions.push(j.marker),W.markerSelectedOptions.push(j.markerSel),W.markerUnselectedOptions.push(j.markerUnsel),W.textOptions.push(j.text),W.textSelectedOptions.push(j.textSel),W.textUnselectedOptions.push(j.textUnsel),W.selectBatch.push([]),W.unselectBatch.push([]),A._scene=W,A.index=W.count,A.x=B,A.y=Y,A.positions=D,W.count++,[{x:!1,y:!1,t:A,trace:b}]}},78232:function(R){R.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:20,SYMBOL_STROKE:1,DOT_RE:/-dot/,OPEN_RE:/-open/,DASHES:{solid:[1],dot:[1,1],dash:[4,1],longdash:[8,1],dashdot:[4,1,1,1],longdashdot:[8,1,1,1]}}},19635:function(R,E,e){var w=e(92770),k=e(82019),i=e(25075),_=e(73972),y=e(71828),h=e(91424),l=e(41675),t=e(81697).formatColor,o=e(34098),r=e(39984),n=e(68645),a=e(78232),s=e(37822).DESELECTDIM,u={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},p=e(23469).appendArrayPointValue;function c(C,P){var O,z=C._fullLayout,B=P._length,Y=P.textfont,D=P.textposition,G=Array.isArray(D)?D:[D],V=Y.color,j=Y.size,W=Y.family,Z={},ie=C._context.plotGlPixelRatio,te=P.texttemplate;if(te){Z.text=[];var J=z._d3locale,X=Array.isArray(te),ee=X?Math.min(te.length,B):B,re=X?function(Se){return te[Se]}:function(){return te};for(O=0;O<ee;O++){var oe={i:O},ue=P._module.formatLabels(oe,P,z),ce={};p(ce,P,O);var de=P._meta||{};Z.text.push(y.texttemplateString(re(O),ue,J,ce,oe,de))}}else Array.isArray(P.text)&&P.text.length<B?Z.text=P.text.slice():Z.text=P.text;if(Array.isArray(Z.text))for(O=Z.text.length;O<B;O++)Z.text[O]="";for(Z.opacity=P.opacity,Z.font={},Z.align=[],Z.baseline=[],O=0;O<G.length;O++){var me=G[O].split(/\s+/);switch(me[1]){case"left":Z.align.push("right");break;case"right":Z.align.push("left");break;default:Z.align.push(me[1])}switch(me[0]){case"top":Z.baseline.push("bottom");break;case"bottom":Z.baseline.push("top");break;default:Z.baseline.push(me[0])}}if(Array.isArray(V))for(Z.color=new Array(B),O=0;O<B;O++)Z.color[O]=V[O];else Z.color=V;if(y.isArrayOrTypedArray(j)||Array.isArray(W))for(Z.font=new Array(B),O=0;O<B;O++){var _e=Z.font[O]={};_e.size=(y.isTypedArray(j)?j[O]:Array.isArray(j)?w(j[O])?j[O]:0:j)*ie,_e.family=Array.isArray(W)?W[O]:W}else Z.font={size:j*ie,family:W};return Z}function b(C,P){var O,z,B=P._length,Y=P.marker,D={},G=y.isArrayOrTypedArray(Y.symbol),V=y.isArrayOrTypedArray(Y.angle),j=y.isArrayOrTypedArray(Y.color),W=y.isArrayOrTypedArray(Y.line.color),Z=y.isArrayOrTypedArray(Y.opacity),ie=y.isArrayOrTypedArray(Y.size),te=y.isArrayOrTypedArray(Y.line.width);if(G||(z=n.isOpenSymbol(Y.symbol)),G||j||W||Z||V){D.symbols=new Array(B),D.angles=new Array(B),D.colors=new Array(B),D.borderColors=new Array(B);var J=Y.symbol,X=Y.angle,ee=t(Y,Y.opacity,B),re=t(Y.line,Y.opacity,B);if(!Array.isArray(re[0])){var oe=re;for(re=Array(B),O=0;O<B;O++)re[O]=oe}if(!Array.isArray(ee[0])){var ue=ee;for(ee=Array(B),O=0;O<B;O++)ee[O]=ue}if(!Array.isArray(J)){var ce=J;for(J=Array(B),O=0;O<B;O++)J[O]=ce}if(!Array.isArray(X)){var de=X;for(X=Array(B),O=0;O<B;O++)X[O]=de}for(D.symbols=J,D.angles=X,D.colors=ee,D.borderColors=re,O=0;O<B;O++)G&&(z=n.isOpenSymbol(Y.symbol[O])),z&&(re[O]=ee[O].slice(),ee[O]=ee[O].slice(),ee[O][3]=0);for(D.opacity=P.opacity,D.markers=new Array(B),O=0;O<B;O++)D.markers[O]=A({mx:D.symbols[O],ma:D.angles[O]},P)}else z?(D.color=i(Y.color,"uint8"),D.color[3]=0,D.borderColor=i(Y.color,"uint8")):(D.color=i(Y.color,"uint8"),D.borderColor=i(Y.line.color,"uint8")),D.opacity=P.opacity*Y.opacity,D.marker=A({mx:Y.symbol,ma:Y.angle},P);var me,_e=r(P,1);if(ie||te){var Se,we=D.sizes=new Array(B),xe=D.borderSizes=new Array(B),De=0;if(ie){for(O=0;O<B;O++)we[O]=_e(Y.size[O]),De+=we[O];Se=De/B}else for(me=_e(Y.size),O=0;O<B;O++)we[O]=me;if(te)for(O=0;O<B;O++)xe[O]=Y.line.width[O];else for(me=Y.line.width,O=0;O<B;O++)xe[O]=me;D.sizeAvg=Se}else D.size=_e(Y&&Y.size||10),D.borderSizes=_e(Y.line.width);return D}function g(C,P,O){var z=P.marker,B={};return O&&(O.marker&&O.marker.symbol?B=b(0,y.extendFlat({},z,O.marker)):O.marker&&(O.marker.size&&(B.size=O.marker.size),O.marker.color&&(B.colors=O.marker.color),O.marker.opacity!==void 0&&(B.opacity=O.marker.opacity))),B}function f(C,P,O){var z={};if(!O)return z;if(O.textfont){var B={opacity:1,text:P.text,texttemplate:P.texttemplate,textposition:P.textposition,textfont:y.extendFlat({},P.textfont)};O.textfont&&y.extendFlat(B.textfont,O.textfont),z=c(C,B)}return z}function v(C,P,O){var z={capSize:2*P.width*O,lineWidth:P.thickness*O,color:P.color};return P.copy_ystyle&&(z=C.error_y),z}var m=a.SYMBOL_SDF_SIZE,x=a.SYMBOL_SIZE,T=a.SYMBOL_STROKE,d={},M=h.symbolFuncs[0](.05*x);function A(C,P){var O,z,B=C.mx;if(B==="circle")return null;var Y=h.symbolNumber(B),D=h.symbolFuncs[Y%100],G=!!h.symbolNoDot[Y%100],V=!!h.symbolNoFill[Y%100],j=n.isDotSymbol(B);if(C.ma&&(B+="_"+C.ma),d[B])return d[B];var W=h.getMarkerAngle(C,P);return O=j&&!G?D(1.1*x,W)+M:D(x,W),z=k(O,{w:m,h:m,viewBox:[-x,-x,x,x],stroke:V?T:-T}),d[B]=z,z||null}R.exports={style:function(C,P){var O,z={marker:void 0,markerSel:void 0,markerUnsel:void 0,line:void 0,fill:void 0,errorX:void 0,errorY:void 0,text:void 0,textSel:void 0,textUnsel:void 0},B=C._context.plotGlPixelRatio;if(P.visible!==!0)return z;if(o.hasText(P)&&(z.text=c(C,P),z.textSel=f(C,P,P.selected),z.textUnsel=f(C,P,P.unselected)),o.hasMarkers(P)&&(z.marker=b(0,P),z.markerSel=g(0,P,P.selected),z.markerUnsel=g(0,P,P.unselected),!P.unselected&&y.isArrayOrTypedArray(P.marker.opacity))){var Y=P.marker.opacity;for(z.markerUnsel.opacity=new Array(Y.length),O=0;O<Y.length;O++)z.markerUnsel.opacity[O]=s*Y[O]}if(o.hasLines(P)){z.line={overlay:!0,thickness:P.line.width*B,color:P.line.color,opacity:P.opacity};var D=(a.DASHES[P.line.dash]||[1]).slice();for(O=0;O<D.length;++O)D[O]*=P.line.width*B;z.line.dashes=D}return P.error_x&&P.error_x.visible&&(z.errorX=v(P,P.error_x,B)),P.error_y&&P.error_y.visible&&(z.errorY=v(P,P.error_y,B)),P.fill&&P.fill!=="none"&&(z.fill={closed:!0,fill:P.fillcolor,thickness:0}),z},markerStyle:b,markerSelection:g,linePositions:function(C,P,O){var z,B,Y=O.length,D=Y/2;if(o.hasLines(P)&&D)if(P.line.shape==="hv"){for(z=[],B=0;B<D-1;B++)isNaN(O[2*B])||isNaN(O[2*B+1])?z.push(NaN,NaN,NaN,NaN):(z.push(O[2*B],O[2*B+1]),isNaN(O[2*B+2])||isNaN(O[2*B+3])?z.push(NaN,NaN):z.push(O[2*B+2],O[2*B+1]));z.push(O[Y-2],O[Y-1])}else if(P.line.shape==="hvh"){for(z=[],B=0;B<D-1;B++)if(isNaN(O[2*B])||isNaN(O[2*B+1])||isNaN(O[2*B+2])||isNaN(O[2*B+3]))isNaN(O[2*B])||isNaN(O[2*B+1])?z.push(NaN,NaN):z.push(O[2*B],O[2*B+1]),z.push(NaN,NaN);else{var G=(O[2*B]+O[2*B+2])/2;z.push(O[2*B],O[2*B+1],G,O[2*B+1],G,O[2*B+3])}z.push(O[Y-2],O[Y-1])}else if(P.line.shape==="vhv"){for(z=[],B=0;B<D-1;B++)if(isNaN(O[2*B])||isNaN(O[2*B+1])||isNaN(O[2*B+2])||isNaN(O[2*B+3]))isNaN(O[2*B])||isNaN(O[2*B+1])?z.push(NaN,NaN):z.push(O[2*B],O[2*B+1]),z.push(NaN,NaN);else{var V=(O[2*B+1]+O[2*B+3])/2;z.push(O[2*B],O[2*B+1],O[2*B],V,O[2*B+2],V)}z.push(O[Y-2],O[Y-1])}else if(P.line.shape==="vh"){for(z=[],B=0;B<D-1;B++)isNaN(O[2*B])||isNaN(O[2*B+1])?z.push(NaN,NaN,NaN,NaN):(z.push(O[2*B],O[2*B+1]),isNaN(O[2*B+2])||isNaN(O[2*B+3])?z.push(NaN,NaN):z.push(O[2*B],O[2*B+3]));z.push(O[Y-2],O[Y-1])}else z=O;var j=!1;for(B=0;B<z.length;B++)if(isNaN(z[B])){j=!0;break}var W=j||z.length>a.TOO_MANY_POINTS||o.hasMarkers(P)?"rect":"round";if(j&&P.connectgaps){var Z=z[0],ie=z[1];for(B=0;B<z.length;B+=2)isNaN(z[B])||isNaN(z[B+1])?(z[B]=Z,z[B+1]=ie):(Z=z[B],ie=z[B+1])}return{join:W,positions:z}},errorBarPositions:function(C,P,O,z,B){var Y=_.getComponentMethod("errorbars","makeComputeError"),D=l.getFromId(C,P.xaxis,"x"),G=l.getFromId(C,P.yaxis,"y"),V=O.length/2,j={};function W(Z,ie){var te=ie._id.charAt(0),J=P["error_"+te];if(J&&J.visible&&(ie.type==="linear"||ie.type==="log")){for(var X=Y(J),ee={x:0,y:1}[te],re={x:[0,1,2,3],y:[2,3,0,1]}[te],oe=new Float64Array(4*V),ue=1/0,ce=-1/0,de=0,me=0;de<V;de++,me+=4){var _e=Z[de];if(w(_e)){var Se=O[2*de+ee],we=X(_e,de),xe=we[0],De=we[1];if(w(xe)&&w(De)){var Ee=_e-xe,Me=_e+De;oe[me+re[0]]=Se-ie.c2l(Ee),oe[me+re[1]]=ie.c2l(Me)-Se,oe[me+re[2]]=0,oe[me+re[3]]=0,ue=Math.min(ue,_e-xe),ce=Math.max(ce,_e+De)}}}j[te]={positions:O,errors:oe,_bnds:[ue,ce]}}}return W(z,D),W(B,G),j},textPosition:function(C,P,O,z){var B,Y=P._length,D={};if(o.hasMarkers(P)){var G=O.font,V=O.align,j=O.baseline;for(D.offset=new Array(Y),B=0;B<Y;B++){var W=z.sizes?z.sizes[B]:z.size,Z=Array.isArray(G)?G[B].size:G.size,ie=Array.isArray(V)?V.length>1?V[B]:V[0]:V,te=Array.isArray(j)?j.length>1?j[B]:j[0]:j,J=u[ie],X=u[te],ee=W?W/.8+1:0,re=-X*ee-.5*X;D.offset[B]=[J*ee/Z,re/Z]}}return D}}},47148:function(R,E,e){var w=e(71828),k=e(73972),i=e(68645),_=e(42341),y=e(47581),h=e(34098),l=e(67513),t=e(73927),o=e(49508),r=e(11058),n=e(28908),a=e(82410);R.exports=function(s,u,p,c){function b(M,A){return w.coerce(s,u,_,M,A)}var g=!!s.marker&&i.isOpenSymbol(s.marker.symbol),f=h.isBubble(s),v=l(s,u,c,b);if(v){t(s,u,c,b),b("xhoverformat"),b("yhoverformat");var m=v<y.PTS_LINESONLY?"lines+markers":"lines";b("text"),b("hovertext"),b("hovertemplate"),b("mode",m),h.hasLines(u)&&(b("connectgaps"),r(s,u,p,c,b),b("line.shape")),h.hasMarkers(u)&&(o(s,u,p,c,b,{noAngleRef:!0,noStandOff:!0}),b("marker.line.width",g||f?1:0)),h.hasText(u)&&(b("texttemplate"),a(s,u,c,b));var x=(u.line||{}).color,T=(u.marker||{}).color;b("fill"),u.fill!=="none"&&n(s,u,p,b);var d=k.getComponentMethod("errorbars","supplyDefaults");d(s,u,x||T||p,{axis:"y"}),d(s,u,x||T||p,{axis:"x",inherit:"y"}),w.coerceSelectionMarkerOpacity(u,b)}else u.visible=!1}},5345:function(R,E,e){var w=e(71828),k=e(7901),i=e(37822).DESELECTDIM;R.exports={styleTextSelection:function(_){var y,h,l=_[0],t=l.trace,o=l.t,r=o._scene,n=o.index,a=r.selectBatch[n],s=r.unselectBatch[n],u=r.textOptions[n],p=r.textSelectedOptions[n]||{},c=r.textUnselectedOptions[n]||{},b=w.extendFlat({},u);if(a.length||s.length){var g=p.color,f=c.color,v=u.color,m=Array.isArray(v);for(b.color=new Array(t._length),y=0;y<a.length;y++)h=a[y],b.color[h]=g||(m?v[h]:v);for(y=0;y<s.length;y++){h=s[y];var x=m?v[h]:v;b.color[h]=f||(g?x:k.addOpacity(x,i))}}r.glText[n].update(b)}}},68101:function(R,E,e){var w=e(8225);R.exports=function(k,i,_){var y=k.i;return"x"in k||(k.x=i._x[y]),"y"in k||(k.y=i._y[y]),w(k,i,_)}},68645:function(R,E,e){var w=e(78232);E.isOpenSymbol=function(k){return typeof k=="string"?w.OPEN_RE.test(k):k%200>100},E.isDotSymbol=function(k){return typeof k=="string"?w.DOT_RE.test(k):k>200}},20794:function(R,E,e){var w=e(73972),k=e(71828),i=e(34603);function _(y,h,l,t){var o=y.xa,r=y.ya,n=y.distance,a=y.dxy,s=y.index,u={pointNumber:s,x:h[s],y:l[s]};u.tx=Array.isArray(t.text)?t.text[s]:t.text,u.htx=Array.isArray(t.hovertext)?t.hovertext[s]:t.hovertext,u.data=Array.isArray(t.customdata)?t.customdata[s]:t.customdata,u.tp=Array.isArray(t.textposition)?t.textposition[s]:t.textposition;var p=t.textfont;p&&(u.ts=k.isArrayOrTypedArray(p.size)?p.size[s]:p.size,u.tc=Array.isArray(p.color)?p.color[s]:p.color,u.tf=Array.isArray(p.family)?p.family[s]:p.family);var c=t.marker;c&&(u.ms=k.isArrayOrTypedArray(c.size)?c.size[s]:c.size,u.mo=k.isArrayOrTypedArray(c.opacity)?c.opacity[s]:c.opacity,u.mx=k.isArrayOrTypedArray(c.symbol)?c.symbol[s]:c.symbol,u.ma=k.isArrayOrTypedArray(c.angle)?c.angle[s]:c.angle,u.mc=k.isArrayOrTypedArray(c.color)?c.color[s]:c.color);var b=c&&c.line;b&&(u.mlc=Array.isArray(b.color)?b.color[s]:b.color,u.mlw=k.isArrayOrTypedArray(b.width)?b.width[s]:b.width);var g=c&&c.gradient;g&&g.type!=="none"&&(u.mgt=Array.isArray(g.type)?g.type[s]:g.type,u.mgc=Array.isArray(g.color)?g.color[s]:g.color);var f=o.c2p(u.x,!0),v=r.c2p(u.y,!0),m=u.mrc||1,x=t.hoverlabel;x&&(u.hbg=Array.isArray(x.bgcolor)?x.bgcolor[s]:x.bgcolor,u.hbc=Array.isArray(x.bordercolor)?x.bordercolor[s]:x.bordercolor,u.hts=k.isArrayOrTypedArray(x.font.size)?x.font.size[s]:x.font.size,u.htc=Array.isArray(x.font.color)?x.font.color[s]:x.font.color,u.htf=Array.isArray(x.font.family)?x.font.family[s]:x.font.family,u.hnl=k.isArrayOrTypedArray(x.namelength)?x.namelength[s]:x.namelength);var T=t.hoverinfo;T&&(u.hi=Array.isArray(T)?T[s]:T);var d=t.hovertemplate;d&&(u.ht=Array.isArray(d)?d[s]:d);var M={};M[y.index]=u;var A=t._origX,C=t._origY,P=k.extendFlat({},y,{color:i(t,u),x0:f-m,x1:f+m,xLabelVal:A?A[s]:u.x,y0:v-m,y1:v+m,yLabelVal:C?C[s]:u.y,cd:M,distance:n,spikeDistance:a,hovertemplate:u.ht});return u.htx?P.text=u.htx:u.tx?P.text=u.tx:t.text&&(P.text=t.text),k.fillText(u,t,P),w.getComponentMethod("errorbars","hoverInfo")(u,t,P),P}R.exports={hoverPoints:function(y,h,l,t){var o,r,n,a,s,u,p,c,b,g,f=y.cd,v=f[0].t,m=f[0].trace,x=y.xa,T=y.ya,d=v.x,M=v.y,A=x.c2p(h),C=T.c2p(l),P=y.distance;if(v.tree){var O=x.p2c(A-P),z=x.p2c(A+P),B=T.p2c(C-P),Y=T.p2c(C+P);o=t==="x"?v.tree.range(Math.min(O,z),Math.min(T._rl[0],T._rl[1]),Math.max(O,z),Math.max(T._rl[0],T._rl[1])):v.tree.range(Math.min(O,z),Math.min(B,Y),Math.max(O,z),Math.max(B,Y))}else o=v.ids;var D=P;if(t==="x"){var G=!!m.xperiodalignment,V=!!m.yperiodalignment;for(u=0;u<o.length;u++){if(a=d[r=o[u]],p=Math.abs(x.c2p(a)-A),G){var j=x.c2p(m._xStarts[r]),W=x.c2p(m._xEnds[r]);p=A>=Math.min(j,W)&&A<=Math.max(j,W)?0:1/0}if(p<D){if(D=p,s=M[r],c=T.c2p(s)-C,V){var Z=T.c2p(m._yStarts[r]),ie=T.c2p(m._yEnds[r]);c=C>=Math.min(Z,ie)&&C<=Math.max(Z,ie)?0:1/0}g=Math.sqrt(p*p+c*c),n=o[u]}}}else for(u=o.length-1;u>-1;u--)a=d[r=o[u]],s=M[r],p=x.c2p(a)-A,c=T.c2p(s)-C,(b=Math.sqrt(p*p+c*c))<D&&(D=g=b,n=r);return y.index=n,y.distance=D,y.dxy=g,n===void 0?[y]:[_(y,d,M,m)]},calcHover:_}},68868:function(R,E,e){var w=e(72156);w.plot=e(26787),R.exports=w},26787:function(R,E,e){var w=e(11870),k=e(46075),i=e(3593),_=e(42505),y=e(71828),h=e(64505).selectMode,l=e(79749),t=e(34098),o=e(68687),r=e(5345).styleTextSelection,n={};function a(s,u,p,c){var b=s._size,g=s.width*c,f=s.height*c,v=b.l*c,m=b.b*c,x=b.r*c,T=b.t*c,d=b.w*c,M=b.h*c;return[v+u.domain[0]*d,m+p.domain[0]*M,g-x-(1-u.domain[1])*d,f-T-(1-p.domain[1])*M]}(R.exports=function(s,u,p){if(p.length){var c,b,g=s._fullLayout,f=u._scene,v=u.xaxis,m=u.yaxis;if(f)if(l(s,["ANGLE_instanced_arrays","OES_element_index_uint"],n)){var x=f.count,T=g._glcanvas.data()[0].regl;if(o(s,u,p),f.dirty){if(f.error2d===!0&&(f.error2d=i(T)),f.line2d===!0&&(f.line2d=k(T)),f.scatter2d===!0&&(f.scatter2d=w(T)),f.fill2d===!0&&(f.fill2d=k(T)),f.glText===!0)for(f.glText=new Array(x),c=0;c<x;c++)f.glText[c]=new _(T);if(f.glText){if(x>f.glText.length){var d=x-f.glText.length;for(c=0;c<d;c++)f.glText.push(new _(T))}else if(x<f.glText.length){var M=f.glText.length-x;f.glText.splice(x,M).forEach(function(oe){oe.destroy()})}for(c=0;c<x;c++)f.glText[c].update(f.textOptions[c])}if(f.line2d&&(f.line2d.update(f.lineOptions),f.lineOptions=f.lineOptions.map(function(oe){if(oe&&oe.positions){for(var ue=oe.positions,ce=0;ce<ue.length&&(isNaN(ue[ce])||isNaN(ue[ce+1]));)ce+=2;for(var de=ue.length-2;de>ce&&(isNaN(ue[de])||isNaN(ue[de+1]));)de-=2;oe.positions=ue.slice(ce,de+2)}return oe}),f.line2d.update(f.lineOptions)),f.error2d){var A=(f.errorXOptions||[]).concat(f.errorYOptions||[]);f.error2d.update(A)}f.scatter2d&&f.scatter2d.update(f.markerOptions),f.fillOrder=y.repeat(null,x),f.fill2d&&(f.fillOptions=f.fillOptions.map(function(oe,ue){var ce=p[ue];if(oe&&ce&&ce[0]&&ce[0].trace){var de,me,_e=ce[0],Se=_e.trace,we=_e.t,xe=f.lineOptions[ue],De=[];Se._ownfill&&De.push(ue),Se._nexttrace&&De.push(ue+1),De.length&&(f.fillOrder[ue]=De);var Ee,Me,he=[],fe=xe&&xe.positions||we.positions;if(Se.fill==="tozeroy"){for(Ee=0;Ee<fe.length&&isNaN(fe[Ee+1]);)Ee+=2;for(Me=fe.length-2;Me>Ee&&isNaN(fe[Me+1]);)Me-=2;fe[Ee+1]!==0&&(he=[fe[Ee],0]),he=he.concat(fe.slice(Ee,Me+2)),fe[Me+1]!==0&&(he=he.concat([fe[Me],0]))}else if(Se.fill==="tozerox"){for(Ee=0;Ee<fe.length&&isNaN(fe[Ee]);)Ee+=2;for(Me=fe.length-2;Me>Ee&&isNaN(fe[Me]);)Me-=2;fe[Ee]!==0&&(he=[0,fe[Ee+1]]),he=he.concat(fe.slice(Ee,Me+2)),fe[Me]!==0&&(he=he.concat([0,fe[Me+1]]))}else if(Se.fill==="toself"||Se.fill==="tonext"){for(he=[],de=0,oe.splitNull=!0,me=0;me<fe.length;me+=2)(isNaN(fe[me])||isNaN(fe[me+1]))&&((he=he.concat(fe.slice(de,me))).push(fe[de],fe[de+1]),he.push(null,null),de=me+2);he=he.concat(fe.slice(de)),de&&he.push(fe[de],fe[de+1])}else{var ae=Se._nexttrace;if(ae){var be=f.lineOptions[ue+1];if(be){var Ie=be.positions;if(Se.fill==="tonexty"){for(he=fe.slice(),ue=Math.floor(Ie.length/2);ue--;){var Te=Ie[2*ue],Ne=Ie[2*ue+1];isNaN(Te)||isNaN(Ne)||he.push(Te,Ne)}oe.fill=ae.fillcolor}}}}if(Se._prevtrace&&Se._prevtrace.fill==="tonext"){var qe=f.lineOptions[ue-1].positions,ve=he.length/2,Ce=[de=ve];for(me=0;me<qe.length;me+=2)(isNaN(qe[me])||isNaN(qe[me+1]))&&(Ce.push(me/2+ve+1),de=me+2);he=he.concat(qe),oe.hole=Ce}return oe.fillmode=Se.fill,oe.opacity=Se.opacity,oe.positions=he,oe}}),f.fill2d.update(f.fillOptions))}var C=g.dragmode,P=h(C),O=g.clickmode.indexOf("select")>-1;for(c=0;c<x;c++){var z=p[c][0],B=z.trace,Y=z.t,D=Y.index,G=B._length,V=Y.x,j=Y.y;if(B.selectedpoints||P||O){if(P||(P=!0),B.selectedpoints){var W=f.selectBatch[D]=y.selIndices2selPoints(B),Z={};for(b=0;b<W.length;b++)Z[W[b]]=1;var ie=[];for(b=0;b<G;b++)Z[b]||ie.push(b);f.unselectBatch[D]=ie}var te=Y.xpx=new Array(G),J=Y.ypx=new Array(G);for(b=0;b<G;b++)te[b]=v.c2p(V[b]),J[b]=m.c2p(j[b])}else Y.xpx=Y.ypx=null}if(P){if(f.select2d||(f.select2d=w(g._glcanvas.data()[1].regl)),f.scatter2d){var X=new Array(x);for(c=0;c<x;c++)X[c]=f.selectBatch[c].length||f.unselectBatch[c].length?f.markerUnselectedOptions[c]:{};f.scatter2d.update(X)}f.select2d&&(f.select2d.update(f.markerOptions),f.select2d.update(f.markerSelectedOptions)),f.glText&&p.forEach(function(oe){var ue=((oe||[])[0]||{}).trace||{};t.hasText(ue)&&r(oe)})}else f.scatter2d&&f.scatter2d.update(f.markerOptions);var ee={viewport:a(g,v,m,s._context.plotGlPixelRatio),range:[(v._rl||v.range)[0],(m._rl||m.range)[0],(v._rl||v.range)[1],(m._rl||m.range)[1]]},re=y.repeat(ee,f.count);f.fill2d&&f.fill2d.update(re),f.line2d&&f.line2d.update(re),f.error2d&&f.error2d.update(re.concat(re)),f.scatter2d&&f.scatter2d.update(re),f.select2d&&f.select2d.update(re),f.glText&&f.glText.forEach(function(oe){oe.update(ee)})}else f.init()}}).reglPrecompiled=n},38967:function(R,E,e){var w=e(71828);R.exports=function(k,i){var _=i._scene,y={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},h={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return i._scene||((_=i._scene={}).init=function(){w.extendFlat(_,h,y)},_.init(),_.update=function(l){var t=w.repeat(l,_.count);if(_.fill2d&&_.fill2d.update(t),_.scatter2d&&_.scatter2d.update(t),_.line2d&&_.line2d.update(t),_.error2d&&_.error2d.update(t.concat(t)),_.select2d&&_.select2d.update(t),_.glText)for(var o=0;o<_.count;o++)_.glText[o].update(l)},_.draw=function(){for(var l=_.count,t=_.fill2d,o=_.error2d,r=_.line2d,n=_.scatter2d,a=_.glText,s=_.select2d,u=_.selectBatch,p=_.unselectBatch,c=0;c<l;c++){if(t&&_.fillOrder[c]&&t.draw(_.fillOrder[c]),r&&_.lineOptions[c]&&r.draw(c),o&&(_.errorXOptions[c]&&o.draw(c),_.errorYOptions[c]&&o.draw(c+l)),n&&_.markerOptions[c])if(p[c].length){var b=w.repeat([],_.count);b[c]=p[c],n.draw(b)}else u[c].length||n.draw(c);a[c]&&_.textOptions[c]&&a[c].render()}s&&s.draw(u),_.dirty=!1},_.destroy=function(){_.fill2d&&_.fill2d.destroy&&_.fill2d.destroy(),_.scatter2d&&_.scatter2d.destroy&&_.scatter2d.destroy(),_.error2d&&_.error2d.destroy&&_.error2d.destroy(),_.line2d&&_.line2d.destroy&&_.line2d.destroy(),_.select2d&&_.select2d.destroy&&_.select2d.destroy(),_.glText&&_.glText.forEach(function(l){l.destroy&&l.destroy()}),_.lineOptions=null,_.fillOptions=null,_.markerOptions=null,_.markerSelectedOptions=null,_.markerUnselectedOptions=null,_.errorXOptions=null,_.errorYOptions=null,_.textOptions=null,_.textSelectedOptions=null,_.textUnselectedOptions=null,_.selectBatch=null,_.unselectBatch=null,i._scene=null}),_.dirty||w.extendFlat(_,y),_}},58147:function(R,E,e){var w=e(34098),k=e(5345).styleTextSelection;R.exports=function(i,_){var y=i.cd,h=i.xaxis,l=i.yaxis,t=[],o=y[0].trace,r=y[0].t,n=o._length,a=r.x,s=r.y,u=r._scene,p=r.index;if(!u)return t;var c=w.hasText(o),b=w.hasMarkers(o),g=!b&&!c;if(o.visible!==!0||g)return t;var f=[],v=[];if(_!==!1&&!_.degenerate)for(var m=0;m<n;m++)_.contains([r.xpx[m],r.ypx[m]],!1,m,i)?(f.push(m),t.push({pointNumber:m,x:h.c2d(a[m]),y:l.c2d(s[m])})):v.push(m);if(b){var x=u.scatter2d;if(f.length||v.length){if(!u.selectBatch[p].length&&!u.unselectBatch[p].length){var T=new Array(u.count);T[p]=u.markerUnselectedOptions[p],x.update.apply(x,T)}}else{var d=new Array(u.count);d[p]=u.markerOptions[p],x.update.apply(x,d)}}return u.selectBatch[p]=f,u.unselectBatch[p]=v,c&&k(y),t}},99181:function(R,E,e){var w=e(5386).fF,k=e(5386).si,i=e(19316),_=e(82196),y=e(23585),h=e(9012),l=e(50693),t=e(1426).extendFlat,o=e(30962).overrideAll,r=e(23585),n=i.line,a=i.marker;R.exports=o({lon:i.lon,lat:i.lat,cluster:{enabled:{valType:"boolean"},maxzoom:t({},r.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:t({},a.opacity,{dflt:1})},mode:t({},_.mode,{dflt:"markers"}),text:t({},_.text,{}),texttemplate:k({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:t({},_.hovertext,{}),line:{color:n.color,width:n.width},connectgaps:_.connectgaps,marker:t({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:a.opacity,size:a.size,sizeref:a.sizeref,sizemin:a.sizemin,sizemode:a.sizemode},l("marker")),fill:i.fill,fillcolor:_.fillcolor,textfont:y.layers.symbol.textfont,textposition:y.layers.symbol.textposition,below:{valType:"string"},selected:{marker:_.selected.marker},unselected:{marker:_.unselected.marker},hoverinfo:t({},h.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:w()},"calc","nested")},15790:function(R,E,e){var w=e(92770),k=e(71828),i=e(50606).BADNUM,_=e(18214),y=e(21081),h=e(91424),l=e(39984),t=e(34098),o=e(13056),r=e(23469).appendArrayPointValue,n=e(63893).NEWLINES,a=e(63893).BR_TAG_ALL;function s(g){return{type:g,geojson:_.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function u(g,f){return k.isArrayOrTypedArray(g)?f?function(v){return w(g[v])?+g[v]:0}:function(v){return g[v]}:g?function(){return g}:p}function p(){return""}function c(g){return g[0]===i}function b(g,f){var v;if(k.isArrayOrTypedArray(g)&&k.isArrayOrTypedArray(f)){v=["step",["get","point_count"],g[0]];for(var m=1;m<g.length;m++)v.push(f[m-1],g[m])}else v=g;return v}R.exports=function(g,f){var v,m=f[0].trace,x=m.visible===!0&&m._length!==0,T=m.fill!=="none",d=t.hasLines(m),M=t.hasMarkers(m),A=t.hasText(m),C=M&&m.marker.symbol==="circle",P=M&&m.marker.symbol!=="circle",O=m.cluster&&m.cluster.enabled,z=s("fill"),B=s("line"),Y=s("circle"),D=s("symbol"),G={fill:z,line:B,circle:Y,symbol:D};if(!x)return G;if((T||d)&&(v=_.calcTraceToLineCoords(f)),T&&(z.geojson=_.makePolygon(v),z.layout.visibility="visible",k.extendFlat(z.paint,{"fill-color":m.fillcolor})),d&&(B.geojson=_.makeLine(v),B.layout.visibility="visible",k.extendFlat(B.paint,{"line-width":m.line.width,"line-color":m.line.color,"line-opacity":m.opacity})),C){var V=function(Z){var ie,te,J,X,ee=Z[0].trace,re=ee.marker,oe=ee.selectedpoints,ue=k.isArrayOrTypedArray(re.color),ce=k.isArrayOrTypedArray(re.size),de=k.isArrayOrTypedArray(re.opacity);function me(he){return ee.opacity*he}ue&&(te=y.hasColorscale(ee,"marker")?y.makeColorScaleFuncFromTrace(re):k.identity),ce&&(J=l(ee)),de&&(X=function(he){return me(w(he)?+k.constrain(he,0,1):0)});var _e,Se,we=[];for(ie=0;ie<Z.length;ie++){var xe=Z[ie],De=xe.lonlat;if(!c(De)){var Ee={};te&&(Ee.mcc=xe.mcc=te(xe.mc)),J&&(Ee.mrc=xe.mrc=J(xe.ms)),X&&(Ee.mo=X(xe.mo)),oe&&(Ee.selected=xe.selected||0),we.push({type:"Feature",id:ie+1,geometry:{type:"Point",coordinates:De},properties:Ee})}}if(oe)for(_e=h.makeSelectedPointStyleFns(ee),ie=0;ie<we.length;ie++){var Me=we[ie].properties;_e.selectedOpacityFn&&(Me.mo=me(_e.selectedOpacityFn(Me))),_e.selectedColorFn&&(Me.mcc=_e.selectedColorFn(Me)),_e.selectedSizeFn&&(Me.mrc=_e.selectedSizeFn(Me))}return{geojson:{type:"FeatureCollection",features:we},mcc:ue||_e&&_e.selectedColorFn?{type:"identity",property:"mcc"}:re.color,mrc:ce||_e&&_e.selectedSizeFn?{type:"identity",property:"mrc"}:(Se=re.size,Se/2),mo:de||_e&&_e.selectedOpacityFn?{type:"identity",property:"mo"}:me(re.opacity)}}(f);Y.geojson=V.geojson,Y.layout.visibility="visible",O&&(Y.filter=["!",["has","point_count"]],G.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":b(m.cluster.color,m.cluster.step),"circle-radius":b(m.cluster.size,m.cluster.step),"circle-opacity":b(m.cluster.opacity,m.cluster.step)}},G.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":["Open Sans Regular","Arial Unicode MS Regular"],"text-size":12}}),k.extendFlat(Y.paint,{"circle-color":V.mcc,"circle-radius":V.mrc,"circle-opacity":V.mo})}if(C&&O&&(Y.filter=["!",["has","point_count"]]),(P||A)&&(D.geojson=function(Z,ie){for(var te=ie._fullLayout,J=Z[0].trace,X=J.marker||{},ee=X.symbol,re=X.angle,oe=ee!=="circle"?u(ee):p,ue=re!=="auto"?u(re,!0):p,ce=t.hasText(J)?u(J.text):p,de=[],me=0;me<Z.length;me++){var _e=Z[me];if(!c(_e.lonlat)){var Se,we=J.texttemplate;if(we){var xe=Array.isArray(we)?we[me]||"":we,De=J._module.formatLabels(_e,J,te),Ee={};r(Ee,J,_e.i);var Me=J._meta||{};Se=k.texttemplateString(xe,De,te._d3locale,Ee,_e,Me)}else Se=ce(me);Se&&(Se=Se.replace(n,"").replace(a,`
|
||
`)),de.push({type:"Feature",geometry:{type:"Point",coordinates:_e.lonlat},properties:{symbol:oe(me),angle:ue(me),text:Se}})}}return{type:"FeatureCollection",features:de}}(f,g),k.extendFlat(D.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),P&&(k.extendFlat(D.layout,{"icon-size":m.marker.size/10}),"angle"in m.marker&&m.marker.angle!=="auto"&&k.extendFlat(D.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),D.layout["icon-allow-overlap"]=m.marker.allowoverlap,k.extendFlat(D.paint,{"icon-opacity":m.opacity*m.marker.opacity,"icon-color":m.marker.color})),A)){var j=(m.marker||{}).size,W=o(m.textposition,j);k.extendFlat(D.layout,{"text-size":m.textfont.size,"text-anchor":W.anchor,"text-offset":W.offset}),k.extendFlat(D.paint,{"text-color":m.textfont.color,"text-opacity":m.opacity})}return G}},76645:function(R,E,e){var w=e(71828),k=e(34098),i=e(49508),_=e(11058),y=e(82410),h=e(28908),l=e(99181);R.exports=function(t,o,r,n){function a(m,x){return w.coerce(t,o,l,m,x)}function s(m,x){return w.coerce2(t,o,l,m,x)}var u=function(m,x,T){var d=T("lon")||[],M=T("lat")||[],A=Math.min(d.length,M.length);return x._length=A,A}(0,o,a);if(u){if(a("text"),a("texttemplate"),a("hovertext"),a("hovertemplate"),a("mode"),a("below"),k.hasLines(o)&&(_(t,o,r,n,a,{noDash:!0}),a("connectgaps")),k.hasMarkers(o)){i(t,o,r,n,a,{noLine:!0,noAngle:!0}),a("marker.allowoverlap"),a("marker.angle");var p=o.marker;p.symbol!=="circle"&&(w.isArrayOrTypedArray(p.size)&&(p.size=p.size[0]),w.isArrayOrTypedArray(p.color)&&(p.color=p.color[0]))}var c=s("cluster.maxzoom"),b=s("cluster.step"),g=s("cluster.color",o.marker&&o.marker.color||r),f=s("cluster.size"),v=s("cluster.opacity");a("cluster.enabled",c!==!1||b!==!1||g!==!1||f!==!1||v!==!1),k.hasText(o)&&y(t,o,n,a,{noSelect:!0}),a("fill"),o.fill!=="none"&&h(t,o,r,a),w.coerceSelectionMarkerOpacity(o,a)}else o.visible=!1}},53353:function(R){R.exports=function(E,e){return E.lon=e.lon,E.lat=e.lat,E}},15636:function(R,E,e){var w=e(89298);R.exports=function(k,i,_){var y={},h=_[i.subplot]._subplot.mockAxis,l=k.lonlat;return y.lonLabel=w.tickText(h,h.c2l(l[0]),!0).text,y.latLabel=w.tickText(h,h.c2l(l[1]),!0).text,y}},28178:function(R,E,e){var w=e(30211),k=e(71828),i=e(34603),_=k.fillText,y=e(50606).BADNUM,h=e(77734).traceLayerPrefix;function l(t,o,r){if(!t.hovertemplate){var n=(o.hi||t.hoverinfo).split("+"),a=n.indexOf("all")!==-1,s=n.indexOf("lon")!==-1,u=n.indexOf("lat")!==-1,p=o.lonlat,c=[];return a||s&&u?c.push("("+b(p[1])+", "+b(p[0])+")"):s?c.push(r.lon+b(p[0])):u&&c.push(r.lat+b(p[1])),(a||n.indexOf("text")!==-1)&&_(o,t,c),c.join("<br>")}function b(g){return g+"°"}}R.exports={hoverPoints:function(t,o,r){var n=t.cd,a=n[0].trace,s=t.xa,u=t.ya,p=t.subplot,c=[],b=h+a.uid+"-circle",g=a.cluster&&a.cluster.enabled;if(g){var f=p.map.queryRenderedFeatures(null,{layers:[b]});c=f.map(function(z){return z.id})}var v=360*(o>=0?Math.floor((o+180)/360):Math.ceil((o-180)/360)),m=o-v;if(w.getClosest(n,function(z){var B=z.lonlat;if(B[0]===y||g&&c.indexOf(z.i+1)===-1)return 1/0;var Y=k.modHalf(B[0],360),D=B[1],G=p.project([Y,D]),V=G.x-s.c2p([m,D]),j=G.y-u.c2p([Y,r]),W=Math.max(3,z.mrc||0);return Math.max(Math.sqrt(V*V+j*j)-W,1-3/W)},t),t.index!==!1){var x=n[t.index],T=x.lonlat,d=[k.modHalf(T[0],360)+v,T[1]],M=s.c2p(d),A=u.c2p(d),C=x.mrc||1;t.x0=M-C,t.x1=M+C,t.y0=A-C,t.y1=A+C;var P={};P[a.subplot]={_subplot:p};var O=a._module.formatLabels(x,a,P);return t.lonLabel=O.lonLabel,t.latLabel=O.latLabel,t.color=i(a,x),t.extraText=l(a,x,n[0].t.labels),t.hovertemplate=a.hovertemplate,[t]}},getExtraText:l}},20467:function(R,E,e){R.exports={attributes:e(99181),supplyDefaults:e(76645),colorbar:e(4898),formatLabels:e(15636),calc:e(84622),plot:e(86951),hoverPoints:e(28178).hoverPoints,eventData:e(53353),selectPoints:e(86387),styleOnSelect:function(w,k){k&&k[0].trace._glTrace.update(k)},moduleType:"trace",name:"scattermapbox",basePlotModule:e(50101),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}},86951:function(R,E,e){var w=e(71828),k=e(15790),i=e(77734).traceLayerPrefix,_={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function y(l,t,o,r){this.type="scattermapbox",this.subplot=l,this.uid=t,this.clusterEnabled=o,this.isHidden=r,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:i+t+"-fill",line:i+t+"-line",circle:i+t+"-circle",symbol:i+t+"-symbol",cluster:i+t+"-cluster",clusterCount:i+t+"-cluster-count"},this.below=null}var h=y.prototype;h.addSource=function(l,t,o){var r={type:"geojson",data:t.geojson};o&&o.enabled&&w.extendFlat(r,{cluster:!0,clusterMaxZoom:o.maxzoom});var n=this.subplot.map.getSource(this.sourceIds[l]);n?n.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[l],r)},h.setSourceData=function(l,t){this.subplot.map.getSource(this.sourceIds[l]).setData(t.geojson)},h.addLayer=function(l,t,o){var r={type:t.type,id:this.layerIds[l],source:this.sourceIds[l],layout:t.layout,paint:t.paint};t.filter&&(r.filter=t.filter);for(var n,a=this.layerIds[l],s=this.subplot.getMapLayers(),u=0;u<s.length;u++)if(s[u].id===a){n=!0;break}n?(this.subplot.setOptions(a,"setLayoutProperty",r.layout),r.layout.visibility==="visible"&&this.subplot.setOptions(a,"setPaintProperty",r.paint)):this.subplot.addLayer(r,o)},h.update=function(l){var t=l[0].trace,o=this.subplot,r=o.map,n=k(o.gd,l),a=o.belowLookup["trace-"+this.uid],s=!(!t.cluster||!t.cluster.enabled),u=!!this.clusterEnabled,p=this;function c(m){u?function(x){for(var T=_.cluster,d=T.length-1;d>=0;d--){var M=T[d];r.removeLayer(p.layerIds[M])}x||r.removeSource(p.sourceIds.circle)}(m):function(x){for(var T=_.nonCluster,d=T.length-1;d>=0;d--){var M=T[d];r.removeLayer(p.layerIds[M]),x||r.removeSource(p.sourceIds[M])}}(m)}function b(m){s?function(x){x||p.addSource("circle",n.circle,t.cluster);for(var T=_.cluster,d=0;d<T.length;d++){var M=T[d],A=n[M];p.addLayer(M,A,a)}}(m):function(x){for(var T=_.nonCluster,d=0;d<T.length;d++){var M=T[d],A=n[M];x||p.addSource(M,A),p.addLayer(M,A,a)}}(m)}function g(){for(var m=s?_.cluster:_.nonCluster,x=0;x<m.length;x++){var T=m[x],d=n[T];d&&(o.setOptions(p.layerIds[T],"setLayoutProperty",d.layout),d.layout.visibility==="visible"&&(T!=="cluster"&&p.setSourceData(T,d),o.setOptions(p.layerIds[T],"setPaintProperty",d.paint)))}}var f=this.isHidden,v=t.visible!==!0;v?f||c():f?v||b():u!==s?(c(),b()):(this.below!==a&&(c(!0),b(!0)),g()),this.clusterEnabled=s,this.isHidden=v,this.below=a,l[0].trace._glTrace=this},h.dispose=function(){for(var l=this.subplot.map,t=this.clusterEnabled?_.cluster:_.nonCluster,o=t.length-1;o>=0;o--){var r=t[o];l.removeLayer(this.layerIds[r]),l.removeSource(this.sourceIds[r])}},R.exports=function(l,t){var o,r,n,a=t[0].trace,s=a.cluster&&a.cluster.enabled,u=a.visible!==!0,p=new y(l,a.uid,s,u),c=k(l.gd,t),b=p.below=l.belowLookup["trace-"+a.uid];if(s)for(p.addSource("circle",c.circle,a.cluster),o=0;o<_.cluster.length;o++)n=c[r=_.cluster[o]],p.addLayer(r,n,b);else for(o=0;o<_.nonCluster.length;o++)n=c[r=_.nonCluster[o]],p.addSource(r,n,a.cluster),p.addLayer(r,n,b);return t[0].trace._glTrace=p,p}},86387:function(R,E,e){var w=e(71828),k=e(34098),i=e(50606).BADNUM;R.exports=function(_,y){var h,l=_.cd,t=_.xaxis,o=_.yaxis,r=[],n=l[0].trace;if(!k.hasMarkers(n))return[];if(y===!1)for(h=0;h<l.length;h++)l[h].selected=0;else for(h=0;h<l.length;h++){var a=l[h],s=a.lonlat;if(s[0]!==i){var u=[w.modHalf(s[0],360),s[1]],p=[t.c2p(u),o.c2p(u)];y.contains(p,null,h,_)?(r.push({pointNumber:h,lon:s[0],lat:s[1]}),a.selected=1):a.selected=0}}return r}},81245:function(R,E,e){var w=e(5386).fF,k=e(5386).si,i=e(1426).extendFlat,_=e(82196),y=e(9012),h=_.line;R.exports={mode:_.mode,r:{valType:"data_array",editType:"calc+clearAxisTypes"},theta:{valType:"data_array",editType:"calc+clearAxisTypes"},r0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dr:{valType:"number",dflt:1,editType:"calc"},theta0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes"},dtheta:{valType:"number",editType:"calc"},thetaunit:{valType:"enumerated",values:["radians","degrees","gradians"],dflt:"degrees",editType:"calc+clearAxisTypes"},text:_.text,texttemplate:k({editType:"plot"},{keys:["r","theta","text"]}),hovertext:_.hovertext,line:{color:h.color,width:h.width,dash:h.dash,backoff:h.backoff,shape:i({},h.shape,{values:["linear","spline"]}),smoothing:h.smoothing,editType:"calc"},connectgaps:_.connectgaps,marker:_.marker,cliponaxis:i({},_.cliponaxis,{dflt:!1}),textposition:_.textposition,textfont:_.textfont,fill:i({},_.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:_.fillcolor,hoverinfo:i({},y.hoverinfo,{flags:["r","theta","text","name"]}),hoveron:_.hoveron,hovertemplate:w(),selected:_.selected,unselected:_.unselected}},26442:function(R,E,e){var w=e(92770),k=e(50606).BADNUM,i=e(89298),_=e(36922),y=e(75225),h=e(66279),l=e(47761).calcMarkerSize;R.exports=function(t,o){for(var r=t._fullLayout,n=o.subplot,a=r[n].radialaxis,s=r[n].angularaxis,u=a.makeCalcdata(o,"r"),p=s.makeCalcdata(o,"theta"),c=o._length,b=new Array(c),g=0;g<c;g++){var f=u[g],v=p[g],m=b[g]={};w(f)&&w(v)?(m.r=f,m.theta=v):m.r=k}var x=l(o,c);return o._extremes.x=i.findExtremes(a,u,{ppad:x}),_(t,o),y(b,o),h(b,o),b}},22184:function(R,E,e){var w=e(71828),k=e(34098),i=e(49508),_=e(11058),y=e(94039),h=e(82410),l=e(28908),t=e(47581).PTS_LINESONLY,o=e(81245);function r(n,a,s,u){var p,c=u("r"),b=u("theta");if(c)b?p=Math.min(c.length,b.length):(p=c.length,u("theta0"),u("dtheta"));else{if(!b)return 0;p=a.theta.length,u("r0"),u("dr")}return a._length=p,p}R.exports={handleRThetaDefaults:r,supplyDefaults:function(n,a,s,u){function p(g,f){return w.coerce(n,a,o,g,f)}var c=r(0,a,0,p);if(c){p("thetaunit"),p("mode",c<t?"lines+markers":"lines"),p("text"),p("hovertext"),a.hoveron!=="fills"&&p("hovertemplate"),k.hasLines(a)&&(_(n,a,s,u,p,{backoff:!0}),y(n,a,p),p("connectgaps")),k.hasMarkers(a)&&i(n,a,s,u,p,{gradient:!0}),k.hasText(a)&&(p("texttemplate"),h(n,a,u,p));var b=[];(k.hasMarkers(a)||k.hasText(a))&&(p("cliponaxis"),p("marker.maxdisplayed"),b.push("points")),p("fill"),a.fill!=="none"&&(l(n,a,s,p),k.hasLines(a)||y(n,a,p)),a.fill!=="tonext"&&a.fill!=="toself"||b.push("fills"),p("hoveron",b.join("+")||"points"),w.coerceSelectionMarkerOpacity(a,p)}else a.visible=!1}}},98608:function(R,E,e){var w=e(71828),k=e(89298);R.exports=function(i,_,y){var h,l,t={},o=y[_.subplot]._subplot;o?(h=o.radialAxis,l=o.angularAxis):(h=(o=y[_.subplot]).radialaxis,l=o.angularaxis);var r=h.c2l(i.r);t.rLabel=k.tickText(h,r,!0).text;var n=l.thetaunit==="degrees"?w.rad2deg(i.theta):i.theta;return t.thetaLabel=k.tickText(l,n,!0).text,t}},59150:function(R,E,e){var w=e(33720);function k(i,_,y,h){var l=y.radialAxis,t=y.angularAxis;l._hovertitle="r",t._hovertitle="θ";var o={};o[_.subplot]={_subplot:y};var r=_._module.formatLabels(i,_,o);h.rLabel=r.rLabel,h.thetaLabel=r.thetaLabel;var n=i.hi||_.hoverinfo,a=[];function s(p,c){a.push(p._hovertitle+": "+c)}if(!_.hovertemplate){var u=n.split("+");u.indexOf("all")!==-1&&(u=["r","theta","text"]),u.indexOf("r")!==-1&&s(l,h.rLabel),u.indexOf("theta")!==-1&&s(t,h.thetaLabel),u.indexOf("text")!==-1&&h.text&&(a.push(h.text),delete h.text),h.extraText=a.join("<br>")}}R.exports={hoverPoints:function(i,_,y,h){var l=w(i,_,y,h);if(l&&l[0].index!==!1){var t=l[0];if(t.index===void 0)return l;var o=i.subplot,r=t.cd[t.index],n=t.trace;if(o.isPtInside(r))return t.xLabelVal=void 0,t.yLabelVal=void 0,k(r,n,o,t),t.hovertemplate=n.hovertemplate,l}},makeHoverPointText:k}},91271:function(R,E,e){R.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:e(23580),categories:["polar","symbols","showLegend","scatter-like"],attributes:e(81245),supplyDefaults:e(22184).supplyDefaults,colorbar:e(4898),formatLabels:e(98608),calc:e(26442),plot:e(45162),style:e(16296).style,styleOnSelect:e(16296).styleOnSelect,hoverPoints:e(59150).hoverPoints,selectPoints:e(98002),meta:{}}},45162:function(R,E,e){var w=e(32663),k=e(50606).BADNUM;R.exports=function(i,_,y){for(var h=_.layers.frontplot.select("g.scatterlayer"),l=_.xaxis,t=_.yaxis,o={xaxis:l,yaxis:t,plot:_.framework,layerClipId:_._hasClipOnAxisFalse?_.clipIds.forTraces:null},r=_.radialAxis,n=_.angularAxis,a=0;a<y.length;a++)for(var s=y[a],u=0;u<s.length;u++){u===0&&(s[0].trace._xA=l,s[0].trace._yA=t);var p=s[u],c=p.r;if(c===k)p.x=p.y=k;else{var b=r.c2g(c),g=n.c2g(p.theta);p.x=b*Math.cos(g),p.y=b*Math.sin(g)}}w(i,o,y,h)}},53286:function(R,E,e){var w=e(81245),k=e(42341),i=e(5386).si;R.exports={mode:w.mode,r:w.r,theta:w.theta,r0:w.r0,dr:w.dr,theta0:w.theta0,dtheta:w.dtheta,thetaunit:w.thetaunit,text:w.text,texttemplate:i({editType:"plot"},{keys:["r","theta","text"]}),hovertext:w.hovertext,hovertemplate:w.hovertemplate,line:k.line,connectgaps:k.connectgaps,marker:k.marker,fill:k.fill,fillcolor:k.fillcolor,textposition:k.textposition,textfont:k.textfont,hoverinfo:w.hoverinfo,selected:w.selected,unselected:w.unselected}},65746:function(R,E,e){R.exports={moduleType:"trace",name:"scatterpolargl",basePlotModule:e(23580),categories:["gl","regl","polar","symbols","showLegend","scatter-like"],attributes:e(53286),supplyDefaults:e(75485),colorbar:e(4898),formatLabels:e(46255),calc:e(37499),hoverPoints:e(29347).hoverPoints,selectPoints:e(58147),meta:{}}},37499:function(R,E,e){var w=e(36922),k=e(47761).calcMarkerSize,i=e(19635),_=e(89298),y=e(78232).TOO_MANY_POINTS;R.exports=function(h,l){var t=h._fullLayout,o=l.subplot,r=t[o].radialaxis,n=t[o].angularaxis,a=l._r=r.makeCalcdata(l,"r"),s=l._theta=n.makeCalcdata(l,"theta"),u=l._length,p={};u<a.length&&(a=a.slice(0,u)),u<s.length&&(s=s.slice(0,u)),p.r=a,p.theta=s,w(h,l);var c,b=p.opts=i.style(h,l);return u<y?c=k(l,u):b.marker&&(c=2*(b.marker.sizeAvg||Math.max(b.marker.size,3))),l._extremes.x=_.findExtremes(r,a,{ppad:c}),[{x:!1,y:!1,t:p,trace:l}]}},75485:function(R,E,e){var w=e(71828),k=e(34098),i=e(22184).handleRThetaDefaults,_=e(49508),y=e(11058),h=e(82410),l=e(28908),t=e(47581).PTS_LINESONLY,o=e(53286);R.exports=function(r,n,a,s){function u(c,b){return w.coerce(r,n,o,c,b)}var p=i(r,n,s,u);p?(u("thetaunit"),u("mode",p<t?"lines+markers":"lines"),u("text"),u("hovertext"),n.hoveron!=="fills"&&u("hovertemplate"),k.hasLines(n)&&(y(r,n,a,s,u),u("connectgaps")),k.hasMarkers(n)&&_(r,n,a,s,u,{noAngleRef:!0,noStandOff:!0}),k.hasText(n)&&(u("texttemplate"),h(r,n,s,u)),u("fill"),n.fill!=="none"&&l(r,n,a,u),w.coerceSelectionMarkerOpacity(n,u)):n.visible=!1}},46255:function(R,E,e){var w=e(98608);R.exports=function(k,i,_){var y=k.i;return"r"in k||(k.r=i._r[y]),"theta"in k||(k.theta=i._theta[y]),w(k,i,_)}},29347:function(R,E,e){var w=e(20794),k=e(59150).makeHoverPointText;R.exports={hoverPoints:function(i,_,y,h){var l=i.cd[0].t,t=l.r,o=l.theta,r=w.hoverPoints(i,_,y,h);if(r&&r[0].index!==!1){var n=r[0];if(n.index===void 0)return r;var a=i.subplot,s=n.cd[n.index],u=n.trace;if(s.r=t[n.index],s.theta=o[n.index],a.isPtInside(s))return n.xLabelVal=void 0,n.yLabelVal=void 0,k(s,u,a,n),r}}}},21461:function(R,E,e){var w=e(65746);w.plot=e(49741),R.exports=w},49741:function(R,E,e){var w=e(88294),k=e(92770),i=e(26787),_=e(38967),y=e(19635),h=e(71828),l=e(78232).TOO_MANY_POINTS;R.exports=function(t,o,r){if(r.length){var n=o.radialAxis,a=o.angularAxis,s=_(t,o);return r.forEach(function(u){if(u&&u[0]&&u[0].trace){var p,c=u[0],b=c.trace,g=c.t,f=b._length,v=g.r,m=g.theta,x=g.opts,T=v.slice(),d=m.slice();for(p=0;p<v.length;p++)o.isPtInside({r:v[p],theta:m[p]})||(T[p]=NaN,d[p]=NaN);var M=new Array(2*f),A=Array(f),C=Array(f);for(p=0;p<f;p++){var P,O,z=T[p];if(k(z)){var B=n.c2g(z),Y=a.c2g(d[p],b.thetaunit);P=B*Math.cos(Y),O=B*Math.sin(Y)}else P=O=NaN;A[p]=M[2*p]=P,C[p]=M[2*p+1]=O}g.tree=w(M),x.marker&&f>=l&&(x.marker.cluster=g.tree),x.marker&&(x.markerSel.positions=x.markerUnsel.positions=x.marker.positions=M),x.line&&M.length>1&&h.extendFlat(x.line,y.linePositions(t,b,M)),x.text&&(h.extendFlat(x.text,{positions:M},y.textPosition(t,b,x.text,x.marker)),h.extendFlat(x.textSel,{positions:M},y.textPosition(t,b,x.text,x.markerSel)),h.extendFlat(x.textUnsel,{positions:M},y.textPosition(t,b,x.text,x.markerUnsel))),x.fill&&!s.fill2d&&(s.fill2d=!0),x.marker&&!s.scatter2d&&(s.scatter2d=!0),x.line&&!s.line2d&&(s.line2d=!0),x.text&&!s.glText&&(s.glText=!0),s.lineOptions.push(x.line),s.fillOptions.push(x.fill),s.markerOptions.push(x.marker),s.markerSelectedOptions.push(x.markerSel),s.markerUnselectedOptions.push(x.markerUnsel),s.textOptions.push(x.text),s.textSelectedOptions.push(x.textSel),s.textUnselectedOptions.push(x.textUnsel),s.selectBatch.push([]),s.unselectBatch.push([]),g.x=A,g.y=C,g.rawx=A,g.rawy=C,g.r=v,g.theta=m,g.positions=M,g._scene=s,g.index=s.count,s.count++}}),i(t,o,r)}},R.exports.reglPrecompiled={}},48300:function(R,E,e){var w=e(5386).fF,k=e(5386).si,i=e(1426).extendFlat,_=e(82196),y=e(9012),h=_.line;R.exports={mode:_.mode,real:{valType:"data_array",editType:"calc+clearAxisTypes"},imag:{valType:"data_array",editType:"calc+clearAxisTypes"},text:_.text,texttemplate:k({editType:"plot"},{keys:["real","imag","text"]}),hovertext:_.hovertext,line:{color:h.color,width:h.width,dash:h.dash,backoff:h.backoff,shape:i({},h.shape,{values:["linear","spline"]}),smoothing:h.smoothing,editType:"calc"},connectgaps:_.connectgaps,marker:_.marker,cliponaxis:i({},_.cliponaxis,{dflt:!1}),textposition:_.textposition,textfont:_.textfont,fill:i({},_.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:_.fillcolor,hoverinfo:i({},y.hoverinfo,{flags:["real","imag","text","name"]}),hoveron:_.hoveron,hovertemplate:w(),selected:_.selected,unselected:_.unselected}},30621:function(R,E,e){var w=e(92770),k=e(50606).BADNUM,i=e(36922),_=e(75225),y=e(66279),h=e(47761).calcMarkerSize;R.exports=function(l,t){for(var o=l._fullLayout,r=t.subplot,n=o[r].realaxis,a=o[r].imaginaryaxis,s=n.makeCalcdata(t,"real"),u=a.makeCalcdata(t,"imag"),p=t._length,c=new Array(p),b=0;b<p;b++){var g=s[b],f=u[b],v=c[b]={};w(g)&&w(f)?(v.real=g,v.imag=f):v.real=k}return h(t,p),i(l,t),_(c,t),y(c,t),c}},65269:function(R,E,e){var w=e(71828),k=e(34098),i=e(49508),_=e(11058),y=e(94039),h=e(82410),l=e(28908),t=e(47581).PTS_LINESONLY,o=e(48300);R.exports=function(r,n,a,s){function u(b,g){return w.coerce(r,n,o,b,g)}var p=function(b,g,f,v){var m,x=v("real"),T=v("imag");return x&&T&&(m=Math.min(x.length,T.length)),g._length=m,m}(0,n,0,u);if(p){u("mode",p<t?"lines+markers":"lines"),u("text"),u("hovertext"),n.hoveron!=="fills"&&u("hovertemplate"),k.hasLines(n)&&(_(r,n,a,s,u,{backoff:!0}),y(r,n,u),u("connectgaps")),k.hasMarkers(n)&&i(r,n,a,s,u,{gradient:!0}),k.hasText(n)&&(u("texttemplate"),h(r,n,s,u));var c=[];(k.hasMarkers(n)||k.hasText(n))&&(u("cliponaxis"),u("marker.maxdisplayed"),c.push("points")),u("fill"),n.fill!=="none"&&(l(r,n,a,u),k.hasLines(n)||y(r,n,u)),n.fill!=="tonext"&&n.fill!=="toself"||c.push("fills"),u("hoveron",c.join("+")||"points"),w.coerceSelectionMarkerOpacity(n,u)}else n.visible=!1}},62047:function(R,E,e){var w=e(89298);R.exports=function(k,i,_){var y={},h=_[i.subplot]._subplot;return y.realLabel=w.tickText(h.radialAxis,k.real,!0).text,y.imagLabel=w.tickText(h.angularAxis,k.imag,!0).text,y}},11350:function(R,E,e){var w=e(33720);function k(i,_,y,h){var l=y.radialAxis,t=y.angularAxis;l._hovertitle="real",t._hovertitle="imag";var o={};o[_.subplot]={_subplot:y};var r=_._module.formatLabels(i,_,o);h.realLabel=r.realLabel,h.imagLabel=r.imagLabel;var n=i.hi||_.hoverinfo,a=[];function s(p,c){a.push(p._hovertitle+": "+c)}if(!_.hovertemplate){var u=n.split("+");u.indexOf("all")!==-1&&(u=["real","imag","text"]),u.indexOf("real")!==-1&&s(l,h.realLabel),u.indexOf("imag")!==-1&&s(t,h.imagLabel),u.indexOf("text")!==-1&&h.text&&(a.push(h.text),delete h.text),h.extraText=a.join("<br>")}}R.exports={hoverPoints:function(i,_,y,h){var l=w(i,_,y,h);if(l&&l[0].index!==!1){var t=l[0];if(t.index===void 0)return l;var o=i.subplot,r=t.cd[t.index],n=t.trace;if(o.isPtInside(r))return t.xLabelVal=void 0,t.yLabelVal=void 0,k(r,n,o,t),t.hovertemplate=n.hovertemplate,l}},makeHoverPointText:k}},85956:function(R,E,e){R.exports={moduleType:"trace",name:"scattersmith",basePlotModule:e(7504),categories:["smith","symbols","showLegend","scatter-like"],attributes:e(48300),supplyDefaults:e(65269),colorbar:e(4898),formatLabels:e(62047),calc:e(30621),plot:e(12480),style:e(16296).style,styleOnSelect:e(16296).styleOnSelect,hoverPoints:e(11350).hoverPoints,selectPoints:e(98002),meta:{}}},12480:function(R,E,e){var w=e(32663),k=e(50606).BADNUM,i=e(23893).smith;R.exports=function(_,y,h){for(var l=y.layers.frontplot.select("g.scatterlayer"),t=y.xaxis,o=y.yaxis,r={xaxis:t,yaxis:o,plot:y.framework,layerClipId:y._hasClipOnAxisFalse?y.clipIds.forTraces:null},n=0;n<h.length;n++)for(var a=h[n],s=0;s<a.length;s++){s===0&&(a[0].trace._xA=t,a[0].trace._yA=o);var u=a[s],p=u.real;if(p===k)u.x=u.y=k;else{var c=i([p,u.imag]);u.x=c[0],u.y=c[1]}}w(_,r,h,l)}},50413:function(R,E,e){var w=e(5386).fF,k=e(5386).si,i=e(82196),_=e(9012),y=e(50693),h=e(79952).P,l=e(1426).extendFlat,t=i.marker,o=i.line,r=t.line;R.exports={a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},c:{valType:"data_array",editType:"calc"},sum:{valType:"number",dflt:0,min:0,editType:"calc"},mode:l({},i.mode,{dflt:"markers"}),text:l({},i.text,{}),texttemplate:k({editType:"plot"},{keys:["a","b","c","text"]}),hovertext:l({},i.hovertext,{}),line:{color:o.color,width:o.width,dash:h,backoff:o.backoff,shape:l({},o.shape,{values:["linear","spline"]}),smoothing:o.smoothing,editType:"calc"},connectgaps:i.connectgaps,cliponaxis:i.cliponaxis,fill:l({},i.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:i.fillcolor,marker:l({symbol:t.symbol,opacity:t.opacity,angle:t.angle,angleref:t.angleref,standoff:t.standoff,maxdisplayed:t.maxdisplayed,size:t.size,sizeref:t.sizeref,sizemin:t.sizemin,sizemode:t.sizemode,line:l({width:r.width,editType:"calc"},y("marker.line")),gradient:t.gradient,editType:"calc"},y("marker")),textfont:i.textfont,textposition:i.textposition,selected:i.selected,unselected:i.unselected,hoverinfo:l({},_.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:i.hoveron,hovertemplate:w()}},54337:function(R,E,e){var w=e(92770),k=e(36922),i=e(75225),_=e(66279),y=e(47761).calcMarkerSize,h=["a","b","c"],l={a:["b","c"],b:["a","c"],c:["a","b"]};R.exports=function(t,o){var r,n,a,s,u,p,c=t._fullLayout[o.subplot].sum,b=o.sum||c,g={a:o.a,b:o.b,c:o.c};for(r=0;r<h.length;r++)if(!g[a=h[r]]){for(u=g[l[a][0]],p=g[l[a][1]],s=new Array(u.length),n=0;n<u.length;n++)s[n]=b-u[n]-p[n];g[a]=s}var f,v,m,x,T,d,M=o._length,A=new Array(M);for(r=0;r<M;r++)f=g.a[r],v=g.b[r],m=g.c[r],w(f)&&w(v)&&w(m)?((x=c/((f=+f)+(v=+v)+(m=+m)))!=1&&(f*=x,v*=x,m*=x),d=f,T=m-v,A[r]={x:T,y:d,a:f,b:v,c:m}):A[r]={x:!1,y:!1};return y(o,M),k(t,o),i(A,o),_(A,o),A}},46008:function(R,E,e){var w=e(71828),k=e(47581),i=e(34098),_=e(49508),y=e(11058),h=e(94039),l=e(82410),t=e(28908),o=e(50413);R.exports=function(r,n,a,s){function u(v,m){return w.coerce(r,n,o,v,m)}var p,c=u("a"),b=u("b"),g=u("c");if(c?(p=c.length,b?(p=Math.min(p,b.length),g&&(p=Math.min(p,g.length))):p=g?Math.min(p,g.length):0):b&&g&&(p=Math.min(b.length,g.length)),p){n._length=p,u("sum"),u("text"),u("hovertext"),n.hoveron!=="fills"&&u("hovertemplate"),u("mode",p<k.PTS_LINESONLY?"lines+markers":"lines"),i.hasLines(n)&&(y(r,n,a,s,u,{backoff:!0}),h(r,n,u),u("connectgaps")),i.hasMarkers(n)&&_(r,n,a,s,u,{gradient:!0}),i.hasText(n)&&(u("texttemplate"),l(r,n,s,u));var f=[];(i.hasMarkers(n)||i.hasText(n))&&(u("cliponaxis"),u("marker.maxdisplayed"),f.push("points")),u("fill"),n.fill!=="none"&&(t(r,n,a,u),i.hasLines(n)||h(r,n,u)),n.fill!=="tonext"&&n.fill!=="toself"||f.push("fills"),u("hoveron",f.join("+")||"points"),w.coerceSelectionMarkerOpacity(n,u)}else n.visible=!1}},4524:function(R){R.exports=function(E,e,w,k,i){if(e.xa&&(E.xaxis=e.xa),e.ya&&(E.yaxis=e.ya),k[i]){var _=k[i];E.a=_.a,E.b=_.b,E.c=_.c}else E.a=e.a,E.b=e.b,E.c=e.c;return E}},93645:function(R,E,e){var w=e(89298);R.exports=function(k,i,_){var y={},h=_[i.subplot]._subplot;return y.aLabel=w.tickText(h.aaxis,k.a,!0).text,y.bLabel=w.tickText(h.baxis,k.b,!0).text,y.cLabel=w.tickText(h.caxis,k.c,!0).text,y}},47250:function(R,E,e){var w=e(33720);R.exports=function(k,i,_,y){var h=w(k,i,_,y);if(h&&h[0].index!==!1){var l=h[0];if(l.index===void 0){var t=1-l.y0/k.ya._length,o=k.xa._length,r=o*t/2,n=o-r;return l.x0=Math.max(Math.min(l.x0,n),r),l.x1=Math.max(Math.min(l.x1,n),r),h}var a=l.cd[l.index],s=l.trace,u=l.subplot;l.a=a.a,l.b=a.b,l.c=a.c,l.xLabelVal=void 0,l.yLabelVal=void 0;var p={};p[s.subplot]={_subplot:u};var c=s._module.formatLabels(a,s,p);l.aLabel=c.aLabel,l.bLabel=c.bLabel,l.cLabel=c.cLabel;var b=a.hi||s.hoverinfo,g=[];if(!s.hovertemplate){var f=b.split("+");f.indexOf("all")!==-1&&(f=["a","b","c"]),f.indexOf("a")!==-1&&v(u.aaxis,l.aLabel),f.indexOf("b")!==-1&&v(u.baxis,l.bLabel),f.indexOf("c")!==-1&&v(u.caxis,l.cLabel)}return l.extraText=g.join("<br>"),l.hovertemplate=s.hovertemplate,h}function v(m,x){g.push(m._hovertitle+": "+x)}}},52979:function(R,E,e){R.exports={attributes:e(50413),supplyDefaults:e(46008),colorbar:e(4898),formatLabels:e(93645),calc:e(54337),plot:e(7507),style:e(16296).style,styleOnSelect:e(16296).styleOnSelect,hoverPoints:e(47250),selectPoints:e(98002),eventData:e(4524),moduleType:"trace",name:"scatterternary",basePlotModule:e(61639),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}},7507:function(R,E,e){var w=e(32663);R.exports=function(k,i,_){var y=i.plotContainer;y.select(".scatterlayer").selectAll("*").remove();for(var h=i.xaxis,l=i.yaxis,t={xaxis:h,yaxis:l,plot:y,layerClipId:i._hasClipOnAxisFalse?i.clipIdRelative:null},o=i.layers.frontplot.select("g.scatterlayer"),r=0;r<_.length;r++){var n=_[r];n.length&&(n[0].trace._xA=h,n[0].trace._yA=l)}w(k,t,_,o)}},46880:function(R,E,e){var w=e(82196),k=e(50693),i=e(12663).axisHoverFormat,_=e(5386).fF,y=e(42341),h=e(85555).idRegex,l=e(44467).templatedArray,t=e(1426).extendFlat,o=w.marker,r=o.line,n=t(k("marker.line",{editTypeOverride:"calc"}),{width:t({},r.width,{editType:"calc"}),editType:"calc"}),a=t(k("marker"),{symbol:o.symbol,angle:o.angle,size:t({},o.size,{editType:"markerSize"}),sizeref:o.sizeref,sizemin:o.sizemin,sizemode:o.sizemode,opacity:o.opacity,colorbar:o.colorbar,line:n,editType:"calc"});function s(u){return{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"subplotid",regex:h[u],editType:"plot"}}}a.color.editType=a.cmin.editType=a.cmax.editType="style",R.exports={dimensions:l("dimension",{visible:{valType:"boolean",dflt:!0,editType:"calc"},label:{valType:"string",editType:"calc"},values:{valType:"data_array",editType:"calc+clearAxisTypes"},axis:{type:{valType:"enumerated",values:["linear","log","date","category"],editType:"calc+clearAxisTypes"},matches:{valType:"boolean",dflt:!1,editType:"calc"},editType:"calc+clearAxisTypes"},editType:"calc+clearAxisTypes"}),text:t({},y.text,{}),hovertext:t({},y.hovertext,{}),hovertemplate:_(),xhoverformat:i("x"),yhoverformat:i("y"),marker:a,xaxes:s("x"),yaxes:s("y"),diagonal:{visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"},showupperhalf:{valType:"boolean",dflt:!0,editType:"calc"},showlowerhalf:{valType:"boolean",dflt:!0,editType:"calc"},selected:{marker:y.selected.marker,editType:"calc"},unselected:{marker:y.unselected.marker,editType:"calc"},opacity:y.opacity}},65017:function(R,E,e){var w=e(73972),k=e(83312);R.exports={moduleType:"trace",name:"splom",categories:["gl","regl","cartesian","symbols","showLegend","scatter-like"],attributes:e(46880),supplyDefaults:e(25784),colorbar:e(4898),calc:e(87625),plot:e(79410),hoverPoints:e(8567).hoverPoints,selectPoints:e(8689),editStyle:e(28801),meta:{}},w.register(k)},16947:function(R,E,e){var w=e(46075),k=e(73972),i=e(79749),_=e(27659).a0,y=e(93612),h=e(41675).getFromId,l=e(89298).shouldShowZeroLine,t="splom",o={};function r(a,s,u){for(var p=u.matrixOptions.data.length,c=s._visibleDims,b=u.viewOpts.ranges=new Array(p),g=0;g<c.length;g++){var f=c[g],v=b[g]=new Array(4),m=h(a,s._diag[f][0]);m&&(v[0]=m.r2l(m.range[0]),v[2]=m.r2l(m.range[1]));var x=h(a,s._diag[f][1]);x&&(v[1]=x.r2l(x.range[0]),v[3]=x.r2l(x.range[1]))}u.selectBatch.length||u.unselectBatch.length?u.matrix.update({ranges:b},{ranges:b}):u.matrix.update({ranges:b})}function n(a){var s=a._fullLayout,u=s._glcanvas.data()[0].regl,p=s._splomGrid;p||(p=s._splomGrid=w(u)),p.update(function(c){var b,g=c._context.plotGlPixelRatio,f=c._fullLayout,v=f._size,m=[0,0,f.width*g,f.height*g],x={};function T(Z,ie,te,J,X,ee){te*=g,J*=g,X*=g,ee*=g;var re=ie[Z+"color"],oe=ie[Z+"width"],ue=String(re+oe);ue in x?x[ue].data.push(NaN,NaN,te,J,X,ee):x[ue]={data:[te,J,X,ee],join:"rect",thickness:oe*g,color:re,viewport:m,range:m,overlay:!1}}for(b in f._splomSubplots){var d,M,A=f._plots[b],C=A.xaxis,P=A.yaxis,O=C._gridVals,z=P._gridVals,B=C._offset,Y=C._length,D=P._length,G=v.b+P.domain[0]*v.h,V=-P._m,j=-V*P.r2l(P.range[0],P.calendar);if(C.showgrid)for(b=0;b<O.length;b++)d=B+C.l2p(O[b].x),T("grid",C,d,G,d,G+D);if(P.showgrid)for(b=0;b<z.length;b++)T("grid",P,B,M=G+j+V*z[b].x,B+Y,M);l(c,C,P)&&(d=B+C.l2p(0),T("zeroline",C,d,G,d,G+D)),l(c,P,C)&&T("zeroline",P,B,M=G+j+0,B+Y,M)}var W=[];for(b in x)W.push(x[b]);return W}(a))}R.exports={name:t,attr:y.attr,attrRegex:y.attrRegex,layoutAttributes:y.layoutAttributes,supplyLayoutDefaults:y.supplyLayoutDefaults,drawFramework:y.drawFramework,plot:function(a){var s=a._fullLayout,u=k.getModule(t),p=_(a.calcdata,u)[0];i(a,["ANGLE_instanced_arrays","OES_element_index_uint"],o)&&(s._hasOnlyLargeSploms&&n(a),u.plot(a,{},p))},drag:function(a){var s=a.calcdata,u=a._fullLayout;u._hasOnlyLargeSploms&&n(a);for(var p=0;p<s.length;p++){var c=s[p][0].trace,b=u._splomScenes[c.uid];c.type==="splom"&&b&&b.matrix&&r(a,c,b)}},updateGrid:n,clean:function(a,s,u,p){var c,b={};if(p._splomScenes){for(c=0;c<a.length;c++){var g=a[c];g.type==="splom"&&(b[g.uid]=1)}for(c=0;c<u.length;c++){var f=u[c];if(!b[f.uid]){var v=p._splomScenes[f.uid];v&&v.destroy&&v.destroy(),p._splomScenes[f.uid]=null,delete p._splomScenes[f.uid]}}}Object.keys(p._splomScenes||{}).length===0&&delete p._splomScenes,p._splomGrid&&!s._hasOnlyLargeSploms&&p._hasOnlyLargeSploms&&(p._splomGrid.destroy(),p._splomGrid=null,delete p._splomGrid),y.clean(a,s,u,p)},updateFx:y.updateFx,toSVG:y.toSVG,reglPrecompiled:o}},87625:function(R,E,e){var w=e(71828),k=e(41675),i=e(47761).calcMarkerSize,_=e(47761).calcAxisExpansion,y=e(36922),h=e(19635).markerSelection,l=e(19635).markerStyle,t=e(10164),o=e(50606).BADNUM,r=e(78232).TOO_MANY_POINTS;R.exports=function(n,a){var s,u,p,c,b,g,f=a.dimensions,v=a._length,m={},x=m.cdata=[],T=m.data=[],d=a._visibleDims=[];function M(C,P){for(var O=C.makeCalcdata({v:P.values,vcalendar:a.calendar},"v"),z=0;z<O.length;z++)O[z]=O[z]===o?NaN:O[z];x.push(O),T.push(C.type==="log"?w.simpleMap(O,C.c2l):O)}for(s=0;s<f.length;s++)if((p=f[s]).visible){if(c=k.getFromId(n,a._diag[s][0]),b=k.getFromId(n,a._diag[s][1]),c&&b&&c.type!==b.type){w.log("Skipping splom dimension "+s+" with conflicting axis types");continue}c?(M(c,p),b&&b.type==="category"&&(b._categories=c._categories.slice())):M(b,p),d.push(s)}for(y(n,a),w.extendFlat(m,l(n,a)),g=x.length*v>r?m.sizeAvg||Math.max(m.size,3):i(a,v),u=0;u<d.length;u++)p=f[s=d[u]],c=k.getFromId(n,a._diag[s][0])||{},b=k.getFromId(n,a._diag[s][1])||{},_(n,a,c,b,x[u],x[u],g);var A=t(n,a);return A.matrix||(A.matrix=!0),A.matrixOptions=m,A.selectedOptions=h(n,a,a.selected),A.unselectedOptions=h(n,a,a.unselected),[{x:!1,y:!1,t:{},trace:a}]}},25784:function(R,E,e){var w=e(71828),k=e(85501),i=e(46880),_=e(34098),y=e(49508),h=e(94397),l=e(68645).isOpenSymbol;function t(o,r){function n(s,u){return w.coerce(o,r,i.dimensions,s,u)}n("label");var a=n("values");a&&a.length?n("visible"):r.visible=!1,n("axis.type"),n("axis.matches")}R.exports=function(o,r,n,a){function s(v,m){return w.coerce(o,r,i,v,m)}var u=k(o,r,{name:"dimensions",handleItemDefaults:t}),p=s("diagonal.visible"),c=s("showupperhalf"),b=s("showlowerhalf");if(h(r,u,"values")&&(p||c||b)){s("text"),s("hovertext"),s("hovertemplate"),s("xhoverformat"),s("yhoverformat"),y(o,r,n,a,s,{noAngleRef:!0,noStandOff:!0});var g=l(r.marker.symbol),f=_.isBubble(r);s("marker.line.width",g||f?1:0),function(v,m,x,T){var d,M,A=m.dimensions,C=A.length,P=m.showupperhalf,O=m.showlowerhalf,z=m.diagonal.visible,B=new Array(C),Y=new Array(C);for(d=0;d<C;d++){var D=d?d+1:"";B[d]="x"+D,Y[d]="y"+D}var G=T("xaxes",B),V=T("yaxes",Y),j=m._diag=new Array(C);m._xaxes={},m._yaxes={};var W=[],Z=[];function ie(de,me,_e,Se){if(de){var we=de.charAt(0),xe=x._splomAxes[we];if(m["_"+we+"axes"][de]=1,Se.push(de),!(de in xe)){var De=xe[de]={};_e&&(De.label=_e.label||"",_e.visible&&_e.axis&&(_e.axis.type&&(De.type=_e.axis.type),_e.axis.matches&&(De.matches=me)))}}}var te=!z&&!O,J=!z&&!P;for(m._axesDim={},d=0;d<C;d++){var X=A[d],ee=d===0,re=d===C-1,oe=ee&&te||re&&J?void 0:G[d],ue=ee&&J||re&&te?void 0:V[d];ie(oe,ue,X,W),ie(ue,oe,X,Z),j[d]=[oe,ue],m._axesDim[oe]=d,m._axesDim[ue]=d}for(d=0;d<W.length;d++)for(M=0;M<Z.length;M++){var ce=W[d]+Z[M];d>M&&P||d<M&&O?x._splomSubplots[ce]=1:d!==M||!z&&O&&P||(x._splomSubplots[ce]=1)}(!O||!z&&P&&O)&&(x._splomGridDflt.xside="bottom",x._splomGridDflt.yside="left")}(0,r,a,s),w.coerceSelectionMarkerOpacity(r,s)}else r.visible=!1}},28801:function(R,E,e){var w=e(71828),k=e(36922),i=e(19635).markerStyle;R.exports=function(_,y){var h=y.trace,l=_._fullLayout._splomScenes[h.uid];if(l){k(_,h),w.extendFlat(l.matrixOptions,i(_,h));var t=w.extendFlat({},l.matrixOptions,l.viewOpts);l.matrix.update(t,null)}}},35948:function(R,E){E.getDimIndex=function(e,w){for(var k=w._id,i={x:0,y:1}[k.charAt(0)],_=e._visibleDims,y=0;y<_.length;y++){var h=_[y];if(e._diag[h][i]===k)return y}return!1}},8567:function(R,E,e){var w=e(35948),k=e(20794).calcHover;R.exports={hoverPoints:function(i,_,y){var h=i.cd[0].trace,l=i.scene.matrixOptions.cdata,t=i.xa,o=i.ya,r=t.c2p(_),n=o.c2p(y),a=i.distance,s=w.getDimIndex(h,t),u=w.getDimIndex(h,o);if(s===!1||u===!1)return[i];for(var p,c,b=l[s],g=l[u],f=a,v=0;v<b.length;v++){var m=b[v],x=g[v],T=t.c2p(m)-r,d=o.c2p(x)-n,M=Math.sqrt(T*T+d*d);M<f&&(f=c=M,p=v)}return i.index=p,i.distance=f,i.dxy=c,p===void 0?[i]:[k(i,b,g,h)]}}},6419:function(R,E,e){var w=e(65017);w.basePlotModule=e(16947),R.exports=w},79410:function(R,E,e){var w=e(60487),k=e(71828),i=e(41675),_=e(64505).selectMode;function y(h,l){var t,o,r,n,a,s=h._fullLayout,u=s._size,p=l.trace,c=l.t,b=s._splomScenes[p.uid],g=b.matrixOptions,f=g.cdata,v=s._glcanvas.data()[0].regl,m=s.dragmode;if(f.length!==0){g.lower=p.showupperhalf,g.upper=p.showlowerhalf,g.diagonal=p.diagonal.visible;var x=p._visibleDims,T=f.length,d=b.viewOpts={};for(d.ranges=new Array(T),d.domains=new Array(T),a=0;a<x.length;a++){r=x[a];var M=d.ranges[a]=new Array(4),A=d.domains[a]=new Array(4);(t=i.getFromId(h,p._diag[r][0]))&&(M[0]=t._rl[0],M[2]=t._rl[1],A[0]=t.domain[0],A[2]=t.domain[1]),(o=i.getFromId(h,p._diag[r][1]))&&(M[1]=o._rl[0],M[3]=o._rl[1],A[1]=o.domain[0],A[3]=o.domain[1])}var C=h._context.plotGlPixelRatio,P=u.l*C,O=u.b*C,z=u.w*C,B=u.h*C;d.viewport=[P,O,z+P,B+O],b.matrix===!0&&(b.matrix=w(v));var Y=s.clickmode.indexOf("select")>-1,D=!0;if(_(m)||p.selectedpoints||Y){var G=p._length;if(p.selectedpoints){b.selectBatch=p.selectedpoints;var V=p.selectedpoints,j={};for(r=0;r<V.length;r++)j[V[r]]=!0;var W=[];for(r=0;r<G;r++)j[r]||W.push(r);b.unselectBatch=W}var Z=c.xpx=new Array(T),ie=c.ypx=new Array(T);for(a=0;a<x.length;a++){if(r=x[a],t=i.getFromId(h,p._diag[r][0]))for(Z[a]=new Array(G),n=0;n<G;n++)Z[a][n]=t.c2p(f[a][n]);if(o=i.getFromId(h,p._diag[r][1]))for(ie[a]=new Array(G),n=0;n<G;n++)ie[a][n]=o.c2p(f[a][n])}if(b.selectBatch.length||b.unselectBatch.length){var te=k.extendFlat({},g,b.unselectedOptions,d),J=k.extendFlat({},g,b.selectedOptions,d);b.matrix.update(te,J),D=!1}}else c.xpx=c.ypx=null;if(D){var X=k.extendFlat({},g,d);b.matrix.update(X,null)}}}R.exports=function(h,l,t){if(t.length)for(var o=0;o<t.length;o++)y(h,t[o][0])}},10164:function(R,E,e){var w=e(71828);R.exports=function(k,i){var _=k._fullLayout,y=i.uid,h=_._splomScenes;h||(h=_._splomScenes={});var l={dirty:!0,selectBatch:[],unselectBatch:[]},t=h[i.uid];return t||((t=h[y]=w.extendFlat({},l,{matrix:!1,selectBatch:[],unselectBatch:[]})).draw=function(){t.matrix&&t.matrix.draw&&(t.selectBatch.length||t.unselectBatch.length?t.matrix.draw(t.unselectBatch,t.selectBatch):t.matrix.draw()),t.dirty=!1},t.destroy=function(){t.matrix&&t.matrix.destroy&&t.matrix.destroy(),t.matrixOptions=null,t.selectBatch=null,t.unselectBatch=null,t=null}),t.dirty||w.extendFlat(t,l),t}},8689:function(R,E,e){var w=e(71828),k=w.pushUnique,i=e(34098),_=e(35948);R.exports=function(y,h){var l=y.cd,t=l[0].trace,o=l[0].t,r=y.scene,n=r.matrixOptions.cdata,a=y.xaxis,s=y.yaxis,u=[];if(!r)return u;var p=!i.hasMarkers(t)&&!i.hasText(t);if(t.visible!==!0||p)return u;var c=_.getDimIndex(t,a),b=_.getDimIndex(t,s);if(c===!1||b===!1)return u;var g=o.xpx[c],f=o.ypx[b],v=n[c],m=n[b],x=(y.scene.selectBatch||[]).slice(),T=[];if(h!==!1&&!h.degenerate)for(var d=0;d<v.length;d++)h.contains([g[d],f[d]],null,d,y)?(u.push({pointNumber:d,x:v[d],y:m[d]}),k(x,d)):x.indexOf(d)!==-1?k(x,d):T.push(d);var M=r.matrixOptions;return x.length||T.length?r.selectBatch.length||r.unselectBatch.length||r.matrix.update(r.unselectedOptions,w.extendFlat({},M,r.selectedOptions,r.viewOpts)):r.matrix.update(M,null),r.selectBatch=x,r.unselectBatch=T,u}},21850:function(R,E,e){var w=e(50693),k=e(12663).axisHoverFormat,i=e(5386).fF,_=e(2418),y=e(9012),h=e(1426).extendFlat,l={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},starts:{x:{valType:"data_array",editType:"calc"},y:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},editType:"calc"},maxdisplayed:{valType:"integer",min:0,dflt:1e3,editType:"calc"},sizeref:{valType:"number",editType:"calc",min:0,dflt:1},text:{valType:"string",dflt:"",editType:"calc"},hovertext:{valType:"string",dflt:"",editType:"calc"},hovertemplate:i({editType:"calc"},{keys:["tubex","tubey","tubez","tubeu","tubev","tubew","norm","divergence"]}),uhoverformat:k("u",1),vhoverformat:k("v",1),whoverformat:k("w",1),xhoverformat:k("x"),yhoverformat:k("y"),zhoverformat:k("z"),showlegend:h({},y.showlegend,{dflt:!1})};h(l,w("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"})),["opacity","lightposition","lighting"].forEach(function(t){l[t]=_[t]}),l.hoverinfo=h({},y.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,R.exports=l},88489:function(R,E,e){var w=e(71828),k=e(78803);function i(h){var l,t,o,r,n,a,s,u,p,c,b,g,f=h._x,v=h._y,m=h._z,x=h._len,T=-1/0,d=1/0,M=-1/0,A=1/0,C=-1/0,P=1/0,O="";for(x&&(s=f[0],p=v[0],b=m[0]),x>1&&(u=f[x-1],c=v[x-1],g=m[x-1]),l=0;l<x;l++)T=Math.max(T,f[l]),d=Math.min(d,f[l]),M=Math.max(M,v[l]),A=Math.min(A,v[l]),C=Math.max(C,m[l]),P=Math.min(P,m[l]),r||f[l]===s||(r=!0,O+="x"),n||v[l]===p||(n=!0,O+="y"),a||m[l]===b||(a=!0,O+="z");r||(O+="x"),n||(O+="y"),a||(O+="z");var z=_(h._x),B=_(h._y),Y=_(h._z);O=(O=(O=O.replace("x",(s>u?"-":"+")+"x")).replace("y",(p>c?"-":"+")+"y")).replace("z",(b>g?"-":"+")+"z");var D=function(){x=0,z=[],B=[],Y=[]};(!x||x<z.length*B.length*Y.length)&&D();var G=function(we){return we==="x"?f:we==="y"?v:m},V=function(we){return we==="x"?z:we==="y"?B:Y},j=function(we){return we[x-1]<we[0]?-1:1},W=G(O[1]),Z=G(O[3]),ie=G(O[5]),te=V(O[1]).length,J=V(O[3]).length,X=V(O[5]).length,ee=!1,re=function(we,xe,De){return te*(J*we+xe)+De},oe=j(G(O[1])),ue=j(G(O[3])),ce=j(G(O[5]));for(l=0;l<X-1;l++){for(t=0;t<J-1;t++){for(o=0;o<te-1;o++){var de=re(l,t,o),me=re(l,t,o+1),_e=re(l,t+1,o),Se=re(l+1,t,o);if(W[de]*oe<W[me]*oe&&Z[de]*ue<Z[_e]*ue&&ie[de]*ce<ie[Se]*ce||(ee=!0),ee)break}if(ee)break}if(ee)break}return ee&&(w.warn("Encountered arbitrary coordinates! Unable to input data grid."),D()),{xMin:d,yMin:A,zMin:P,xMax:T,yMax:M,zMax:C,Xs:z,Ys:B,Zs:Y,len:x,fill:O}}function _(h){return w.distinctVals(h).vals}function y(h,l){if(l===void 0&&(l=h.length),w.isTypedArray(h))return h.subarray(0,l);for(var t=[],o=0;o<l;o++)t[o]=+h[o];return t}R.exports={calc:function(h,l){l._len=Math.min(l.u.length,l.v.length,l.w.length,l.x.length,l.y.length,l.z.length),l._u=y(l.u,l._len),l._v=y(l.v,l._len),l._w=y(l.w,l._len),l._x=y(l.x,l._len),l._y=y(l.y,l._len),l._z=y(l.z,l._len);var t=i(l);l._gridFill=t.fill,l._Xs=t.Xs,l._Ys=t.Ys,l._Zs=t.Zs,l._len=t.len;var o,r,n,a=0;l.starts&&(o=y(l.starts.x||[]),r=y(l.starts.y||[]),n=y(l.starts.z||[]),a=Math.min(o.length,r.length,n.length)),l._startsX=o||[],l._startsY=r||[],l._startsZ=n||[];var s,u=0,p=1/0;for(s=0;s<l._len;s++){var c=l._u[s],b=l._v[s],g=l._w[s],f=Math.sqrt(c*c+b*b+g*g);u=Math.max(u,f),p=Math.min(p,f)}for(k(h,l,{vals:[p,u],containerStr:"",cLetter:"c"}),s=0;s<a;s++){var v=o[s];t.xMax=Math.max(t.xMax,v),t.xMin=Math.min(t.xMin,v);var m=r[s];t.yMax=Math.max(t.yMax,m),t.yMin=Math.min(t.yMin,m);var x=n[s];t.zMax=Math.max(t.zMax,x),t.zMin=Math.min(t.zMin,x)}l._slen=a,l._normMax=u,l._xbnds=[t.xMin,t.xMax],l._ybnds=[t.yMin,t.yMax],l._zbnds=[t.zMin,t.zMax]},filter:y,processGrid:i}},90154:function(R,E,e){var w=e(9330).gl_streamtube3d,k=w.createTubeMesh,i=e(71828),_=e(81697).parseColorScale,y=e(21081).extractOpts,h=e(90060),l={xaxis:0,yaxis:1,zaxis:2};function t(s,u){this.scene=s,this.uid=u,this.mesh=null,this.data=null}var o=t.prototype;function r(s){var u=s.length;return u>2?s.slice(1,u-1):u===2?[(s[0]+s[1])/2]:s}function n(s){var u=s.length;return u===1?[.5,.5]:[s[1]-s[0],s[u-1]-s[u-2]]}function a(s,u){var p=s.fullSceneLayout,c=s.dataScale,b=u._len,g={};function f(te,J){var X=p[J],ee=c[l[J]];return i.simpleMap(te,function(re){return X.d2l(re)*ee})}if(g.vectors=h(f(u._u,"xaxis"),f(u._v,"yaxis"),f(u._w,"zaxis"),b),!b)return{positions:[],cells:[]};var v=f(u._Xs,"xaxis"),m=f(u._Ys,"yaxis"),x=f(u._Zs,"zaxis");if(g.meshgrid=[v,m,x],g.gridFill=u._gridFill,u._slen)g.startingPositions=h(f(u._startsX,"xaxis"),f(u._startsY,"yaxis"),f(u._startsZ,"zaxis"));else{for(var T=m[0],d=r(v),M=r(x),A=new Array(d.length*M.length),C=0,P=0;P<d.length;P++)for(var O=0;O<M.length;O++)A[C++]=[d[P],T,M[O]];g.startingPositions=A}g.colormap=_(u),g.tubeSize=u.sizeref,g.maxLength=u.maxdisplayed;var z=f(u._xbnds,"xaxis"),B=f(u._ybnds,"yaxis"),Y=f(u._zbnds,"zaxis"),D=n(v),G=n(m),V=n(x),j=[[z[0]-D[0],B[0]-G[0],Y[0]-V[0]],[z[1]+D[1],B[1]+G[1],Y[1]+V[1]]],W=w(g,j),Z=y(u);W.vertexIntensityBounds=[Z.min/u._normMax,Z.max/u._normMax];var ie=u.lightposition;return W.lightPosition=[ie.x,ie.y,ie.z],W.ambient=u.lighting.ambient,W.diffuse=u.lighting.diffuse,W.specular=u.lighting.specular,W.roughness=u.lighting.roughness,W.fresnel=u.lighting.fresnel,W.opacity=u.opacity,u._pad=W.tubeScale*u.sizeref*2,W}o.handlePick=function(s){var u=this.scene.fullSceneLayout,p=this.scene.dataScale;function c(f,v){var m=u[v],x=p[l[v]];return m.l2c(f)/x}if(s.object===this.mesh){var b=s.data.position,g=s.data.velocity;return s.traceCoordinate=[c(b[0],"xaxis"),c(b[1],"yaxis"),c(b[2],"zaxis"),c(g[0],"xaxis"),c(g[1],"yaxis"),c(g[2],"zaxis"),s.data.intensity*this.data._normMax,s.data.divergence],s.textLabel=this.data.hovertext||this.data.text,!0}},o.update=function(s){this.data=s;var u=a(this.scene,s);this.mesh.update(u)},o.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},R.exports=function(s,u){var p=s.glplot.gl,c=a(s,u),b=k(p,c),g=new t(s,u.uid);return g.mesh=b,g.data=u,b._trace=g,s.glplot.add(b),g}},22459:function(R,E,e){var w=e(71828),k=e(1586),i=e(21850);R.exports=function(_,y,h,l){function t(p,c){return w.coerce(_,y,i,p,c)}var o=t("u"),r=t("v"),n=t("w"),a=t("x"),s=t("y"),u=t("z");o&&o.length&&r&&r.length&&n&&n.length&&a&&a.length&&s&&s.length&&u&&u.length?(t("starts.x"),t("starts.y"),t("starts.z"),t("maxdisplayed"),t("sizeref"),t("lighting.ambient"),t("lighting.diffuse"),t("lighting.specular"),t("lighting.roughness"),t("lighting.fresnel"),t("lightposition.x"),t("lightposition.y"),t("lightposition.z"),k(_,y,l,t,{prefix:"",cLetter:"c"}),t("text"),t("hovertext"),t("hovertemplate"),t("uhoverformat"),t("vhoverformat"),t("whoverformat"),t("xhoverformat"),t("yhoverformat"),t("zhoverformat"),y._length=null):y.visible=!1}},61510:function(R,E,e){R.exports={moduleType:"trace",name:"streamtube",basePlotModule:e(58547),categories:["gl3d","showLegend"],attributes:e(21850),supplyDefaults:e(22459),colorbar:{min:"cmin",max:"cmax"},calc:e(88489).calc,plot:e(90154),eventData:function(w,k){return w.tubex=w.x,w.tubey=w.y,w.tubez=w.z,w.tubeu=k.traceCoordinate[3],w.tubev=k.traceCoordinate[4],w.tubew=k.traceCoordinate[5],w.norm=k.traceCoordinate[6],w.divergence=k.traceCoordinate[7],delete w.x,delete w.y,delete w.z,w},meta:{}}},57564:function(R,E,e){var w=e(9012),k=e(5386).fF,i=e(5386).si,_=e(50693),y=e(27670).Y,h=e(34e3),l=e(7055),t=e(1426).extendFlat,o=e(79952).u;R.exports={labels:{valType:"data_array",editType:"calc"},parents:{valType:"data_array",editType:"calc"},values:{valType:"data_array",editType:"calc"},branchvalues:{valType:"enumerated",values:["remainder","total"],dflt:"remainder",editType:"calc"},count:{valType:"flaglist",flags:["branches","leaves"],dflt:"leaves",editType:"calc"},level:{valType:"any",editType:"plot",anim:!0},maxdepth:{valType:"integer",editType:"plot",dflt:-1},marker:t({colors:{valType:"data_array",editType:"calc"},line:{color:t({},h.marker.line.color,{dflt:null}),width:t({},h.marker.line.width,{dflt:1}),editType:"calc"},pattern:o,editType:"calc"},_("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1},editType:"plot"},text:h.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot"},texttemplate:i({editType:"plot"},{keys:l.eventDataKeys.concat(["label","value"])}),hovertext:h.hovertext,hoverinfo:t({},w.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:k({},{keys:l.eventDataKeys}),textfont:h.textfont,insidetextorientation:h.insidetextorientation,insidetextfont:h.insidetextfont,outsidetextfont:t({},h.outsidetextfont,{}),rotation:{valType:"angle",dflt:0,editType:"plot"},sort:h.sort,root:{color:{valType:"color",editType:"calc",dflt:"rgba(0,0,0,0)"},editType:"calc"},domain:y({name:"sunburst",trace:!0,editType:"calc"})}},66888:function(R,E,e){var w=e(74875);E.name="sunburst",E.plot=function(k,i,_,y){w.plotBasePlot(E.name,k,i,_,y)},E.clean=function(k,i,_,y){w.cleanBasePlot(E.name,k,i,_,y)}},52147:function(R,E,e){var w=e(674),k=e(92770),i=e(71828),_=e(21081).makeColorScaleFuncFromTrace,y=e(32354).makePullColorFn,h=e(32354).generateExtendedColors,l=e(21081).calc,t=e(50606).ALMOST_EQUAL,o={},r={},n={};function a(s,u,p){var c=0,b=s.children;if(b){for(var g=b.length,f=0;f<g;f++)c+=a(b[f],u,p);p.branches&&c++}else p.leaves&&c++;return s.value=s.data.data.value=c,u._values||(u._values=[]),u._values[s.data.data.i]=c,c}E.calc=function(s,u){var p,c,b,g,f,v,m=s._fullLayout,x=u.ids,T=i.isArrayOrTypedArray(x),d=u.labels,M=u.parents,A=u.values,C=i.isArrayOrTypedArray(A),P=[],O={},z={},B=function(ce){return ce||typeof ce=="number"},Y=function(ce){return!C||k(A[ce])&&A[ce]>=0};T?(p=Math.min(x.length,M.length),c=function(ce){return B(x[ce])&&Y(ce)},b=function(ce){return String(x[ce])}):(p=Math.min(d.length,M.length),c=function(ce){return B(d[ce])&&Y(ce)},b=function(ce){return String(d[ce])}),C&&(p=Math.min(p,A.length));for(var D=0;D<p;D++)if(c(D)){var G=b(D),V=B(M[D])?String(M[D]):"",j={i:D,id:G,pid:V,label:B(d[D])?String(d[D]):""};C&&(j.v=+A[D]),P.push(j),f=G,O[g=V]?O[g].push(f):O[g]=[f],z[f]=1}if(O[""]){if(O[""].length>1){for(var W=i.randstr(),Z=0;Z<P.length;Z++)P[Z].pid===""&&(P[Z].pid=W);P.unshift({hasMultipleRoots:!0,id:W,pid:"",label:""})}}else{var ie,te=[];for(ie in O)z[ie]||te.push(ie);if(te.length!==1)return i.warn(["Multiple implied roots, cannot build",u.type,"hierarchy of",u.name+".","These roots include:",te.join(", ")].join(" "));ie=te[0],P.unshift({hasImpliedRoot:!0,id:ie,pid:"",label:ie})}try{v=w.stratify().id(function(ce){return ce.id}).parentId(function(ce){return ce.pid})(P)}catch(ce){return i.warn(["Failed to build",u.type,"hierarchy of",u.name+".","Error:",ce.message].join(" "))}var J=w.hierarchy(v),X=!1;if(C)switch(u.branchvalues){case"remainder":J.sum(function(ce){return ce.data.v});break;case"total":J.each(function(ce){var de=ce.data.data,me=de.v;if(ce.children){var _e=ce.children.reduce(function(Se,we){return Se+we.data.data.v},0);if((de.hasImpliedRoot||de.hasMultipleRoots)&&(me=_e),me<_e*t)return X=!0,i.warn(["Total value for node",ce.data.data.id,"of",u.name,"is smaller than the sum of its children.",`
|
||
parent value =`,me,`
|
||
children sum =`,_e].join(" "))}ce.value=me})}else a(J,u,{branches:u.count.indexOf("branches")!==-1,leaves:u.count.indexOf("leaves")!==-1});if(!X){var ee,re;u.sort&&J.sort(function(ce,de){return de.value-ce.value});var oe=u.marker.colors||[],ue=!!oe.length;return u._hasColorscale?(ue||(oe=C?u.values:u._values),l(s,u,{vals:oe,containerStr:"marker",cLetter:"c"}),re=_(u.marker)):ee=y(m["_"+u.type+"colormap"]),J.each(function(ce){var de=ce.data.data;de.color=u._hasColorscale?re(oe[de.i]):ee(oe[de.i],de.id)}),P[0].hierarchy=J,P}},E._runCrossTraceCalc=function(s,u){var p=u._fullLayout,c=u.calcdata,b=p[s+"colorway"],g=p["_"+s+"colormap"];p["extend"+s+"colors"]&&(b=h(b,s==="icicle"?n:s==="treemap"?r:o));var f,v=0;function m(d){var M=d.data.data,A=M.id;M.color===!1&&(g[A]?M.color=g[A]:d.parent?d.parent.parent?M.color=d.parent.data.data.color:(g[A]=M.color=b[v%b.length],v++):M.color=f)}for(var x=0;x<c.length;x++){var T=c[x][0];T.trace.type===s&&T.hierarchy&&(f=T.trace.root.color,T.hierarchy.each(m))}},E.crossTraceCalc=function(s){return E._runCrossTraceCalc("sunburst",s)}},7055:function(R){R.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}},17094:function(R,E,e){var w=e(71828),k=e(57564),i=e(27670).c,_=e(90769).handleText,y=e(37434).handleMarkerDefaults,h=e(21081),l=h.hasColorscale,t=h.handleDefaults;R.exports=function(o,r,n,a){function s(f,v){return w.coerce(o,r,k,f,v)}var u=s("labels"),p=s("parents");if(u&&u.length&&p&&p.length){var c=s("values");c&&c.length?s("branchvalues"):s("count"),s("level"),s("maxdepth"),y(o,r,a,s);var b=r._hasColorscale=l(o,"marker","colors")||(o.marker||{}).coloraxis;b&&t(o,r,a,s,{prefix:"marker.",cLetter:"c"}),s("leaf.opacity",b?1:.7);var g=s("text");s("texttemplate"),r.texttemplate||s("textinfo",Array.isArray(g)?"text+label":"label"),s("hovertext"),s("hovertemplate"),_(o,r,a,s,"auto",{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),s("insidetextorientation"),s("sort"),s("rotation"),s("root.color"),i(r,a,s),r._length=null}else r.visible=!1}},43467:function(R,E,e){var w=e(91424),k=e(7901);R.exports=function(i,_,y,h,l){var t=_.data.data,o=t.i,r=l||t.color;if(o>=0){_.i=t.i;var n=y.marker;n.pattern&&n.colors&&n.pattern.shape||(n.color=r,_.color=r),w.pointStyle(i,y,h,_)}else k.fill(i,r)}},83523:function(R,E,e){var w=e(39898),k=e(73972),i=e(23469).appendArrayPointValue,_=e(30211),y=e(71828),h=e(11086),l=e(2791),t=e(53581).formatPieValue;function o(r,n,a){for(var s=r.data.data,u={curveNumber:n.index,pointNumber:s.i,data:n._input,fullData:n},p=0;p<a.length;p++){var c=a[p];c in r&&(u[c]=r[c])}return"parentString"in r&&!l.isHierarchyRoot(r)&&(u.parent=r.parentString),i(u,n,s.i),u}R.exports=function(r,n,a,s,u){var p=s[0],c=p.trace,b=p.hierarchy,g=c.type==="sunburst",f=c.type==="treemap"||c.type==="icicle";"_hasHoverLabel"in c||(c._hasHoverLabel=!1),"_hasHoverEvent"in c||(c._hasHoverEvent=!1),r.on("mouseover",function(v){var m=a._fullLayout;if(!a._dragging&&m.hovermode!==!1){var x,T=a._fullData[c.index],d=v.data.data,M=d.i,A=l.isHierarchyRoot(v),C=l.getParent(b,v),P=l.getValue(v),O=function(oe){return y.castOption(T,M,oe)},z=O("hovertemplate"),B=_.castHoverinfo(T,m,M),Y=m.separators;if(z||B&&B!=="none"&&B!=="skip"){var D,G;g&&(D=p.cx+v.pxmid[0]*(1-v.rInscribed),G=p.cy+v.pxmid[1]*(1-v.rInscribed)),f&&(D=v._hoverX,G=v._hoverY);var V,j={},W=[],Z=[],ie=function(oe){return W.indexOf(oe)!==-1};B&&(W=B==="all"?T._module.attributes.hoverinfo.flags:B.split("+")),j.label=d.label,ie("label")&&j.label&&Z.push(j.label),d.hasOwnProperty("v")&&(j.value=d.v,j.valueLabel=t(j.value,Y),ie("value")&&Z.push(j.valueLabel)),j.currentPath=v.currentPath=l.getPath(v.data),ie("current path")&&!A&&Z.push(j.currentPath);var te=[],J=function(){te.indexOf(V)===-1&&(Z.push(V),te.push(V))};j.percentParent=v.percentParent=P/l.getValue(C),j.parent=v.parentString=l.getPtLabel(C),ie("percent parent")&&(V=l.formatPercent(j.percentParent,Y)+" of "+j.parent,J()),j.percentEntry=v.percentEntry=P/l.getValue(n),j.entry=v.entry=l.getPtLabel(n),!ie("percent entry")||A||v.onPathbar||(V=l.formatPercent(j.percentEntry,Y)+" of "+j.entry,J()),j.percentRoot=v.percentRoot=P/l.getValue(b),j.root=v.root=l.getPtLabel(b),ie("percent root")&&!A&&(V=l.formatPercent(j.percentRoot,Y)+" of "+j.root,J()),j.text=O("hovertext")||O("text"),ie("text")&&(V=j.text,y.isValidTextValue(V)&&Z.push(V)),x=[o(v,T,u.eventDataKeys)];var X={trace:T,y:G,_x0:v._x0,_x1:v._x1,_y0:v._y0,_y1:v._y1,text:Z.join("<br>"),name:z||ie("name")?T.name:void 0,color:O("hoverlabel.bgcolor")||d.color,borderColor:O("hoverlabel.bordercolor"),fontFamily:O("hoverlabel.font.family"),fontSize:O("hoverlabel.font.size"),fontColor:O("hoverlabel.font.color"),nameLength:O("hoverlabel.namelength"),textAlign:O("hoverlabel.align"),hovertemplate:z,hovertemplateLabels:j,eventData:x};g&&(X.x0=D-v.rInscribed*v.rpx1,X.x1=D+v.rInscribed*v.rpx1,X.idealAlign=v.pxmid[0]<0?"left":"right"),f&&(X.x=D,X.idealAlign=D<0?"left":"right");var ee=[];_.loneHover(X,{container:m._hoverlayer.node(),outerContainer:m._paper.node(),gd:a,inOut_bbox:ee}),x[0].bbox=ee[0],c._hasHoverLabel=!0}if(f){var re=r.select("path.surface");u.styleOne(re,v,T,a,{hovered:!0})}c._hasHoverEvent=!0,a.emit("plotly_hover",{points:x||[o(v,T,u.eventDataKeys)],event:w.event})}}),r.on("mouseout",function(v){var m=a._fullLayout,x=a._fullData[c.index],T=w.select(this).datum();if(c._hasHoverEvent&&(v.originalEvent=w.event,a.emit("plotly_unhover",{points:[o(T,x,u.eventDataKeys)],event:w.event}),c._hasHoverEvent=!1),c._hasHoverLabel&&(_.loneUnhover(m._hoverlayer.node()),c._hasHoverLabel=!1),f){var d=r.select("path.surface");u.styleOne(d,T,x,a,{hovered:!1})}}),r.on("click",function(v){var m=a._fullLayout,x=a._fullData[c.index],T=g&&(l.isHierarchyRoot(v)||l.isLeaf(v)),d=l.getPtId(v),M=l.isEntry(v)?l.findEntryWithChild(b,d):l.findEntryWithLevel(b,d),A=l.getPtId(M),C={points:[o(v,x,u.eventDataKeys)],event:w.event};T||(C.nextLevel=A);var P=h.triggerHandler(a,"plotly_"+c.type+"click",C);if(P!==!1&&m.hovermode&&(a._hoverdata=[o(v,x,u.eventDataKeys)],_.click(a,w.event)),!T&&P!==!1&&!a._dragging&&!a._transitioning){k.call("_storeDirectGUIEdit",x,m._tracePreGUI[x.uid],{level:x.level});var O={data:[{level:A}],traces:[c.index]},z={frame:{redraw:!1,duration:u.transitionTime},transition:{duration:u.transitionTime,easing:u.transitionEasing},mode:"immediate",fromcurrent:!0};_.loneUnhover(m._hoverlayer.node()),k.call("animate",a,O,z)}})}},2791:function(R,E,e){var w=e(71828),k=e(7901),i=e(6964),_=e(53581);function y(h){return h.data.data.pid}E.findEntryWithLevel=function(h,l){var t;return l&&h.eachAfter(function(o){if(E.getPtId(o)===l)return t=o.copy()}),t||h},E.findEntryWithChild=function(h,l){var t;return h.eachAfter(function(o){for(var r=o.children||[],n=0;n<r.length;n++){var a=r[n];if(E.getPtId(a)===l)return t=o.copy()}}),t||h},E.isEntry=function(h){return!h.parent},E.isLeaf=function(h){return!h.children},E.getPtId=function(h){return h.data.data.id},E.getPtLabel=function(h){return h.data.data.label},E.getValue=function(h){return h.value},E.isHierarchyRoot=function(h){return y(h)===""},E.setSliceCursor=function(h,l,t){var o=t.isTransitioning;if(!o){var r=h.datum();o=t.hideOnRoot&&E.isHierarchyRoot(r)||t.hideOnLeaves&&E.isLeaf(r)}i(h,o?null:"pointer")},E.getInsideTextFontKey=function(h,l,t,o,r){var n=(r||{}).onPathbar?"pathbar.textfont":"insidetextfont",a=t.data.data.i;return w.castOption(l,a,n+"."+h)||w.castOption(l,a,"textfont."+h)||o.size},E.getOutsideTextFontKey=function(h,l,t,o){var r=t.data.data.i;return w.castOption(l,r,"outsidetextfont."+h)||w.castOption(l,r,"textfont."+h)||o.size},E.isOutsideText=function(h,l){return!h._hasColorscale&&E.isHierarchyRoot(l)},E.determineTextFont=function(h,l,t,o){return E.isOutsideText(h,l)?function(r,n,a){return{color:E.getOutsideTextFontKey("color",r,n,a),family:E.getOutsideTextFontKey("family",r,n,a),size:E.getOutsideTextFontKey("size",r,n,a)}}(h,l,t):function(r,n,a,s){var u=(s||{}).onPathbar,p=n.data.data,c=p.i,b=w.castOption(r,c,(u?"pathbar.textfont":"insidetextfont")+".color");return!b&&r._input.textfont&&(b=w.castOption(r._input,c,"textfont.color")),{color:b||k.contrast(p.color),family:E.getInsideTextFontKey("family",r,n,a,s),size:E.getInsideTextFontKey("size",r,n,a,s)}}(h,l,t,o)},E.hasTransition=function(h){return!!(h&&h.duration>0)},E.getMaxDepth=function(h){return h.maxdepth>=0?h.maxdepth:1/0},E.isHeader=function(h,l){return!(E.isLeaf(h)||h.depth===l._maxDepth-1)},E.getParent=function(h,l){return E.findEntryWithLevel(h,y(l))},E.listPath=function(h,l){var t=h.parent;if(!t)return[];var o=l?[t.data[l]]:[t];return E.listPath(t,l).concat(o)},E.getPath=function(h){return E.listPath(h,"label").join("/")+"/"},E.formatValue=_.formatPieValue,E.formatPercent=function(h,l){var t=w.formatPercent(h,0);return t==="0%"&&(t=_.formatPiePercent(h,l)),t}},87619:function(R,E,e){R.exports={moduleType:"trace",name:"sunburst",basePlotModule:e(66888),categories:[],animatable:!0,attributes:e(57564),layoutAttributes:e(2654),supplyDefaults:e(17094),supplyLayoutDefaults:e(57034),calc:e(52147).calc,crossTraceCalc:e(52147).crossTraceCalc,plot:e(24714).plot,style:e(29969).style,colorbar:e(4898),meta:{}}},2654:function(R){R.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}},57034:function(R,E,e){var w=e(71828),k=e(2654);R.exports=function(i,_){function y(h,l){return w.coerce(i,_,k,h,l)}y("sunburstcolorway",_.colorway),y("extendsunburstcolors")}},24714:function(R,E,e){var w=e(39898),k=e(674),i=e(81684).sX,_=e(91424),y=e(71828),h=e(63893),l=e(72597),t=l.recordMinTextSize,o=l.clearMinTextSize,r=e(14575),n=e(53581).getRotationAngle,a=r.computeTransform,s=r.transformInsideText,u=e(29969).styleOne,p=e(16688).resizeText,c=e(83523),b=e(7055),g=e(2791);function f(m,x,T,d){var M=m._context.staticPlot,A=m._fullLayout,C=!A.uniformtext.mode&&g.hasTransition(d),P=w.select(T).selectAll("g.slice"),O=x[0],z=O.trace,B=O.hierarchy,Y=g.findEntryWithLevel(B,z.level),D=g.getMaxDepth(z),G=A._size,V=z.domain,j=G.w*(V.x[1]-V.x[0]),W=G.h*(V.y[1]-V.y[0]),Z=.5*Math.min(j,W),ie=O.cx=G.l+G.w*(V.x[1]+V.x[0])/2,te=O.cy=G.t+G.h*(1-V.y[0])-W/2;if(!Y)return P.remove();var J=null,X={};C&&P.each(function(fe){X[g.getPtId(fe)]={rpx0:fe.rpx0,rpx1:fe.rpx1,x0:fe.x0,x1:fe.x1,transform:fe.transform},!J&&g.isEntry(fe)&&(J=fe)});var ee=function(fe){return k.partition().size([2*Math.PI,fe.height+1])(fe)}(Y).descendants(),re=Y.height+1,oe=0,ue=D;O.hasMultipleRoots&&g.isHierarchyRoot(Y)&&(ee=ee.slice(1),re-=1,oe=1,ue+=1),ee=ee.filter(function(fe){return fe.y1<=ue});var ce=n(z.rotation);ce&&ee.forEach(function(fe){fe.x0+=ce,fe.x1+=ce});var de=Math.min(re,D),me=function(fe){return(fe-oe)/de*Z},_e=function(fe,ae){return[fe*Math.cos(ae),-fe*Math.sin(ae)]},Se=function(fe){return y.pathAnnulus(fe.rpx0,fe.rpx1,fe.x0,fe.x1,ie,te)},we=function(fe){return ie+v(fe)[0]*(fe.transform.rCenter||0)+(fe.transform.x||0)},xe=function(fe){return te+v(fe)[1]*(fe.transform.rCenter||0)+(fe.transform.y||0)};(P=P.data(ee,g.getPtId)).enter().append("g").classed("slice",!0),C?P.exit().transition().each(function(){var fe=w.select(this);fe.select("path.surface").transition().attrTween("d",function(ae){var be=function(Ie){var Te,Ne=g.getPtId(Ie),qe=X[Ne],ve=X[g.getPtId(Y)];if(ve){var Ce=(Ie.x1>ve.x1?2*Math.PI:0)+ce;Te=Ie.rpx1<ve.rpx1?{x0:Ie.x0,x1:Ie.x1,rpx0:0,rpx1:0}:{x0:Ce,x1:Ce,rpx0:Ie.rpx0,rpx1:Ie.rpx1}}else{var Ae,ze=g.getPtId(Ie.parent);P.each(function(rt){if(g.getPtId(rt)===ze)return Ae=rt});var Ue,Ve=Ae.children;Ve.forEach(function(rt,ht){if(g.getPtId(rt)===Ne)return Ue=ht});var Ye=Ve.length,$e=i(Ae.x0,Ae.x1);Te={rpx0:Z,rpx1:Z,x0:$e(Ue/Ye),x1:$e((Ue+1)/Ye)}}return i(qe,Te)}(ae);return function(Ie){return Se(be(Ie))}}),fe.select("g.slicetext").attr("opacity",0)}).remove():P.exit().remove(),P.order();var De=null;if(C&&J){var Ee=g.getPtId(J);P.each(function(fe){De===null&&g.getPtId(fe)===Ee&&(De=fe.x1)})}var Me=P;function he(fe){var ae=fe.parent,be=X[g.getPtId(ae)],Ie={};if(be){var Te=ae.children,Ne=Te.indexOf(fe),qe=Te.length,ve=i(be.x0,be.x1);Ie.x0=ve(Ne/qe),Ie.x1=ve(Ne/qe)}else Ie.x0=Ie.x1=0;return Ie}C&&(Me=Me.transition().each("end",function(){var fe=w.select(this);g.setSliceCursor(fe,m,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:!1})})),Me.each(function(fe){var ae=w.select(this),be=y.ensureSingle(ae,"path","surface",function(Ce){Ce.style("pointer-events",M?"none":"all")});fe.rpx0=me(fe.y0),fe.rpx1=me(fe.y1),fe.xmid=(fe.x0+fe.x1)/2,fe.pxmid=_e(fe.rpx1,fe.xmid),fe.midangle=-(fe.xmid-Math.PI/2),fe.startangle=-(fe.x0-Math.PI/2),fe.stopangle=-(fe.x1-Math.PI/2),fe.halfangle=.5*Math.min(y.angleDelta(fe.x0,fe.x1)||Math.PI,Math.PI),fe.ring=1-fe.rpx0/fe.rpx1,fe.rInscribed=function(Ce){return Ce.rpx0===0&&y.isFullCircle([Ce.x0,Ce.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(Ce.halfangle)),Ce.ring/2))}(fe),C?be.transition().attrTween("d",function(Ce){var Ae=function(ze){var Ue,Ve=X[g.getPtId(ze)],Ye={x0:ze.x0,x1:ze.x1,rpx0:ze.rpx0,rpx1:ze.rpx1};if(Ve)Ue=Ve;else if(J)if(ze.parent)if(De){var $e=(ze.x1>De?2*Math.PI:0)+ce;Ue={x0:$e,x1:$e}}else Ue={rpx0:Z,rpx1:Z},y.extendFlat(Ue,he(ze));else Ue={rpx0:0,rpx1:0};else Ue={x0:ce,x1:ce};return i(Ue,Ye)}(Ce);return function(ze){return Se(Ae(ze))}}):be.attr("d",Se),ae.call(c,Y,m,x,{eventDataKeys:b.eventDataKeys,transitionTime:b.CLICK_TRANSITION_TIME,transitionEasing:b.CLICK_TRANSITION_EASING}).call(g.setSliceCursor,m,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:m._transitioning}),be.call(u,fe,z,m);var Ie=y.ensureSingle(ae,"g","slicetext"),Te=y.ensureSingle(Ie,"text","",function(Ce){Ce.attr("data-notex",1)}),Ne=y.ensureUniformFontSize(m,g.determineTextFont(z,fe,A.font));Te.text(E.formatSliceLabel(fe,Y,z,x,A)).classed("slicetext",!0).attr("text-anchor","middle").call(_.font,Ne).call(h.convertToTspans,m);var qe=_.bBox(Te.node());fe.transform=s(qe,fe,O),fe.transform.targetX=we(fe),fe.transform.targetY=xe(fe);var ve=function(Ce,Ae){var ze=Ce.transform;return a(ze,Ae),ze.fontSize=Ne.size,t(z.type,ze,A),y.getTextTransform(ze)};C?Te.transition().attrTween("transform",function(Ce){var Ae=function(ze){var Ue,Ve=X[g.getPtId(ze)],Ye=ze.transform;if(Ve)Ue=Ve;else if(Ue={rpx1:ze.rpx1,transform:{textPosAngle:Ye.textPosAngle,scale:0,rotate:Ye.rotate,rCenter:Ye.rCenter,x:Ye.x,y:Ye.y}},J)if(ze.parent)if(De){var $e=ze.x1>De?2*Math.PI:0;Ue.x0=Ue.x1=$e}else y.extendFlat(Ue,he(ze));else Ue.x0=Ue.x1=ce;else Ue.x0=Ue.x1=ce;var rt=i(Ue.transform.textPosAngle,ze.transform.textPosAngle),ht=i(Ue.rpx1,ze.rpx1),nt=i(Ue.x0,ze.x0),bt=i(Ue.x1,ze.x1),wt=i(Ue.transform.scale,Ye.scale),ut=i(Ue.transform.rotate,Ye.rotate),lt=Ye.rCenter===0?3:Ue.transform.rCenter===0?1/3:1,Tt=i(Ue.transform.rCenter,Ye.rCenter);return function(Et){var St=ht(Et),Ft=nt(Et),zt=bt(Et),Je=function(Ze){return Tt(Math.pow(Ze,lt))}(Et),et={pxmid:_e(St,(Ft+zt)/2),rpx1:St,transform:{textPosAngle:rt(Et),rCenter:Je,x:Ye.x,y:Ye.y}};return t(z.type,Ye,A),{transform:{targetX:we(et),targetY:xe(et),scale:wt(Et),rotate:ut(Et),rCenter:Je}}}}(Ce);return function(ze){return ve(Ae(ze),qe)}}):Te.attr("transform",ve(fe,qe))})}function v(m){return x=m.rpx1,T=m.transform.textPosAngle,[x*Math.sin(T),-x*Math.cos(T)];var x,T}E.plot=function(m,x,T,d){var M,A,C=m._fullLayout,P=C._sunburstlayer,O=!T,z=!C.uniformtext.mode&&g.hasTransition(T);o("sunburst",C),(M=P.selectAll("g.trace.sunburst").data(x,function(B){return B[0].trace.uid})).enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),M.order(),z?(d&&(A=d()),w.transition().duration(T.duration).ease(T.easing).each("end",function(){A&&A()}).each("interrupt",function(){A&&A()}).each(function(){P.selectAll("g.trace").each(function(B){f(m,B,this,T)})})):(M.each(function(B){f(m,B,this,T)}),C.uniformtext.mode&&p(m,C._sunburstlayer.selectAll(".trace"),"sunburst")),O&&M.exit().remove()},E.formatSliceLabel=function(m,x,T,d,M){var A=T.texttemplate,C=T.textinfo;if(!(A||C&&C!=="none"))return"";var P=M.separators,O=d[0],z=m.data.data,B=O.hierarchy,Y=g.isHierarchyRoot(m),D=g.getParent(B,m),G=g.getValue(m);if(!A){var V,j=C.split("+"),W=function(ue){return j.indexOf(ue)!==-1},Z=[];if(W("label")&&z.label&&Z.push(z.label),z.hasOwnProperty("v")&&W("value")&&Z.push(g.formatValue(z.v,P)),!Y){W("current path")&&Z.push(g.getPath(m.data));var ie=0;W("percent parent")&&ie++,W("percent entry")&&ie++,W("percent root")&&ie++;var te=ie>1;if(ie){var J,X=function(ue){V=g.formatPercent(J,P),te&&(V+=" of "+ue),Z.push(V)};W("percent parent")&&!Y&&(J=G/g.getValue(D),X("parent")),W("percent entry")&&(J=G/g.getValue(x),X("entry")),W("percent root")&&(J=G/g.getValue(B),X("root"))}}return W("text")&&(V=y.castOption(T,z.i,"text"),y.isValidTextValue(V)&&Z.push(V)),Z.join("<br>")}var ee=y.castOption(T,z.i,"texttemplate");if(!ee)return"";var re={};z.label&&(re.label=z.label),z.hasOwnProperty("v")&&(re.value=z.v,re.valueLabel=g.formatValue(z.v,P)),re.currentPath=g.getPath(m.data),Y||(re.percentParent=G/g.getValue(D),re.percentParentLabel=g.formatPercent(re.percentParent,P),re.parent=g.getPtLabel(D)),re.percentEntry=G/g.getValue(x),re.percentEntryLabel=g.formatPercent(re.percentEntry,P),re.entry=g.getPtLabel(x),re.percentRoot=G/g.getValue(B),re.percentRootLabel=g.formatPercent(re.percentRoot,P),re.root=g.getPtLabel(B),z.hasOwnProperty("color")&&(re.color=z.color);var oe=y.castOption(T,z.i,"text");return(y.isValidTextValue(oe)||oe==="")&&(re.text=oe),re.customdata=y.castOption(T,z.i,"customdata"),y.texttemplateString(ee,re,M._d3locale,re,T._meta||{})}},29969:function(R,E,e){var w=e(39898),k=e(7901),i=e(71828),_=e(72597).resizeText,y=e(43467);function h(l,t,o,r){var n=t.data.data,a=!t.children,s=n.i,u=i.castOption(o,s,"marker.line.color")||k.defaultLine,p=i.castOption(o,s,"marker.line.width")||0;l.call(y,t,o,r).style("stroke-width",p).call(k.stroke,u).style("opacity",a?o.leaf.opacity:null)}R.exports={style:function(l){var t=l._fullLayout._sunburstlayer.selectAll(".trace");_(l,t,"sunburst"),t.each(function(o){var r=w.select(this),n=o[0].trace;r.style("opacity",n.opacity),r.selectAll("path.surface").each(function(a){w.select(this).call(h,a,n,l)})})},styleOne:h}},54532:function(R,E,e){var w=e(7901),k=e(50693),i=e(12663).axisHoverFormat,_=e(5386).fF,y=e(9012),h=e(1426).extendFlat,l=e(30962).overrideAll;function t(r){return{show:{valType:"boolean",dflt:!1},start:{valType:"number",dflt:null,editType:"plot"},end:{valType:"number",dflt:null,editType:"plot"},size:{valType:"number",dflt:null,min:0,editType:"plot"},project:{x:{valType:"boolean",dflt:!1},y:{valType:"boolean",dflt:!1},z:{valType:"boolean",dflt:!1}},color:{valType:"color",dflt:w.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:w.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var o=R.exports=l(h({z:{valType:"data_array"},x:{valType:"data_array"},y:{valType:"data_array"},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:_(),xhoverformat:i("x"),yhoverformat:i("y"),zhoverformat:i("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},k("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:t(),y:t(),z:t()},hidesurface:{valType:"boolean",dflt:!1},lightposition:{x:{valType:"number",min:-1e5,max:1e5,dflt:10},y:{valType:"number",min:-1e5,max:1e5,dflt:1e4},z:{valType:"number",min:-1e5,max:1e5,dflt:0}},lighting:{ambient:{valType:"number",min:0,max:1,dflt:.8},diffuse:{valType:"number",min:0,max:1,dflt:.8},specular:{valType:"number",min:0,max:2,dflt:.05},roughness:{valType:"number",min:0,max:1,dflt:.5},fresnel:{valType:"number",min:0,max:5,dflt:.2}},opacity:{valType:"number",min:0,max:1,dflt:1},opacityscale:{valType:"any",editType:"calc"},_deprecated:{zauto:h({},k.zauto,{}),zmin:h({},k.zmin,{}),zmax:h({},k.zmax,{})},hoverinfo:h({},y.hoverinfo),showlegend:h({},y.showlegend,{dflt:!1})}),"calc","nested");o.x.editType=o.y.editType=o.z.editType="calc+clearAxisTypes",o.transforms=void 0},18396:function(R,E,e){var w=e(78803);R.exports=function(k,i){i.surfacecolor?w(k,i,{vals:i.surfacecolor,containerStr:"",cLetter:"c"}):w(k,i,{vals:i.z,containerStr:"",cLetter:"c"})}},43768:function(R,E,e){var w=e(9330).gl_surface3d,k=e(9330).ndarray,i=e(9330).ndarray_linear_interpolate.d2,_=e(824),y=e(43907),h=e(71828).isArrayOrTypedArray,l=e(81697).parseColorScale,t=e(78614),o=e(21081).extractOpts;function r(T,d,M){this.scene=T,this.uid=M,this.surface=d,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 n=r.prototype;n.getXat=function(T,d,M,A){var C=h(this.data.x)?h(this.data.x[0])?this.data.x[d][T]:this.data.x[T]:T;return M===void 0?C:A.d2l(C,0,M)},n.getYat=function(T,d,M,A){var C=h(this.data.y)?h(this.data.y[0])?this.data.y[d][T]:this.data.y[d]:d;return M===void 0?C:A.d2l(C,0,M)},n.getZat=function(T,d,M,A){var C=this.data.z[d][T];return C===null&&this.data.connectgaps&&this.data._interpolatedZ&&(C=this.data._interpolatedZ[d][T]),M===void 0?C:A.d2l(C,0,M)},n.handlePick=function(T){if(T.object===this.surface){var d=(T.data.index[0]-1)/this.dataScaleX-1,M=(T.data.index[1]-1)/this.dataScaleY-1,A=Math.max(Math.min(Math.round(d),this.data.z[0].length-1),0),C=Math.max(Math.min(Math.round(M),this.data._ylength-1),0);T.index=[A,C],T.traceCoordinate=[this.getXat(A,C),this.getYat(A,C),this.getZat(A,C)],T.dataCoordinate=[this.getXat(A,C,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(A,C,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(A,C,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var P=0;P<3;P++)T.dataCoordinate[P]!=null&&(T.dataCoordinate[P]*=this.scene.dataScale[P]);var O=this.data.hovertext||this.data.text;return Array.isArray(O)&&O[C]&&O[C][A]!==void 0?T.textLabel=O[C][A]:T.textLabel=O||"",T.data.dataCoordinate=T.dataCoordinate.slice(),this.surface.highlight(T.data),this.scene.glplot.spikes.position=T.dataCoordinate,!0}};var a=[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 s(T,d){if(T<d)return 0;for(var M=0;Math.floor(T%d)===0;)T/=d,M++;return M}function u(T){for(var d=[],M=0;M<a.length;M++){var A=a[M];d.push(s(T,A))}return d}function p(T){for(var d=u(T),M=T,A=0;A<a.length;A++)if(d[A]>0){M=a[A];break}return M}function c(T,d){if(!(T<1||d<1)){for(var M=u(T),A=u(d),C=1,P=0;P<a.length;P++)C*=Math.pow(a[P],Math.max(M[P],A[P]));return C}}n.calcXnums=function(T){var d,M=[];for(d=1;d<T;d++){var A=this.getXat(d-1,0),C=this.getXat(d,0);M[d-1]=C!==A&&A!=null&&C!=null?Math.abs(C-A):0}var P=0;for(d=1;d<T;d++)P+=M[d-1];for(d=1;d<T;d++)M[d-1]===0?M[d-1]=1:M[d-1]=Math.round(P/M[d-1]);return M},n.calcYnums=function(T){var d,M=[];for(d=1;d<T;d++){var A=this.getYat(0,d-1),C=this.getYat(0,d);M[d-1]=C!==A&&A!=null&&C!=null?Math.abs(C-A):0}var P=0;for(d=1;d<T;d++)P+=M[d-1];for(d=1;d<T;d++)M[d-1]===0?M[d-1]=1:M[d-1]=Math.round(P/M[d-1]);return M};var b=[1,2,4,6,12,24,36,48,60,120,180,240,360,720,840,1260],g=b[9],f=b[13];function v(T,d,M){var A=M[8]+M[2]*d[0]+M[5]*d[1];return T[0]=(M[6]+M[0]*d[0]+M[3]*d[1])/A,T[1]=(M[7]+M[1]*d[0]+M[4]*d[1])/A,T}function m(T,d,M){return function(A,C,P,O){for(var z=[0,0],B=A.shape[0],Y=A.shape[1],D=0;D<B;D++)for(var G=0;G<Y;G++)P(z,[D,G],O),A.set(D,G,i(C,z[0],z[1]))}(T,d,v,M),T}function x(T,d){for(var M=!1,A=0;A<T.length;A++)if(d===T[A]){M=!0;break}M===!1&&T.push(d)}n.estimateScale=function(T,d){for(var M=1+function(C){if(C.length!==0){for(var P=1,O=0;O<C.length;O++)P=c(P,C[O]);return P}}(d===0?this.calcXnums(T):this.calcYnums(T));M<g;)M*=2;for(;M>f;)M--,M/=p(M),++M<g&&(M=f);var A=Math.round(M/T);return A>1?A:1},n.refineCoords=function(T){for(var d=this.dataScaleX,M=this.dataScaleY,A=T[0].shape[0],C=T[0].shape[1],P=0|Math.floor(T[0].shape[0]*d+1),O=0|Math.floor(T[0].shape[1]*M+1),z=1+A+1,B=1+C+1,Y=k(new Float32Array(z*B),[z,B]),D=[1/d,0,0,0,1/M,0,0,0,1],G=0;G<T.length;++G){this.surface.padField(Y,T[G]);var V=k(new Float32Array(P*O),[P,O]);m(V,Y,D),T[G]=V}},n.setContourLevels=function(){var T,d,M,A=[[],[],[]],C=[!1,!1,!1],P=!1;for(T=0;T<3;++T)if(this.showContour[T]&&(P=!0,this.contourSize[T]>0&&this.contourStart[T]!==null&&this.contourEnd[T]!==null&&this.contourEnd[T]>this.contourStart[T]))for(C[T]=!0,d=this.contourStart[T];d<this.contourEnd[T];d+=this.contourSize[T])M=d*this.scene.dataScale[T],x(A[T],M);if(P){var O=[[],[],[]];for(T=0;T<3;++T)this.showContour[T]&&(O[T]=C[T]?A[T]:this.scene.contourLevels[T]);this.surface.update({levels:O})}},n.update=function(T){var d,M,A,C,P=this.scene,O=P.fullSceneLayout,z=this.surface,B=l(T),Y=P.dataScale,D=T.z[0].length,G=T._ylength,V=P.contourLevels;this.data=T;var j=[];for(d=0;d<3;d++)for(j[d]=[],M=0;M<D;M++)j[d][M]=[];for(M=0;M<D;M++)for(A=0;A<G;A++)j[0][M][A]=this.getXat(M,A,T.xcalendar,O.xaxis),j[1][M][A]=this.getYat(M,A,T.ycalendar,O.yaxis),j[2][M][A]=this.getZat(M,A,T.zcalendar,O.zaxis);if(T.connectgaps)for(T._emptypoints=y(j[2]),_(j[2],T._emptypoints),T._interpolatedZ=[],M=0;M<D;M++)for(T._interpolatedZ[M]=[],A=0;A<G;A++)T._interpolatedZ[M][A]=j[2][M][A];for(d=0;d<3;d++)for(M=0;M<D;M++)for(A=0;A<G;A++)(C=j[d][M][A])==null?j[d][M][A]=NaN:C=j[d][M][A]*=Y[d];for(d=0;d<3;d++)for(M=0;M<D;M++)for(A=0;A<G;A++)(C=j[d][M][A])!=null&&(this.minValues[d]>C&&(this.minValues[d]=C),this.maxValues[d]<C&&(this.maxValues[d]=C));for(d=0;d<3;d++)this.objectOffset[d]=.5*(this.minValues[d]+this.maxValues[d]);for(d=0;d<3;d++)for(M=0;M<D;M++)for(A=0;A<G;A++)(C=j[d][M][A])!=null&&(j[d][M][A]-=this.objectOffset[d]);var W=[k(new Float32Array(D*G),[D,G]),k(new Float32Array(D*G),[D,G]),k(new Float32Array(D*G),[D,G])];for(d=0;d<3;d++)for(M=0;M<D;M++)for(A=0;A<G;A++)W[d].set(M,A,j[d][M][A]);j=[];var Z={colormap:B,levels:[[],[],[]],showContour:[!0,!0,!0],showSurface:!T.hidesurface,contourProject:[[!1,!1,!1],[!1,!1,!1],[!1,!1,!1]],contourWidth:[1,1,1],contourColor:[[1,1,1,1],[1,1,1,1],[1,1,1,1]],contourTint:[1,1,1],dynamicColor:[[1,1,1,1],[1,1,1,1],[1,1,1,1]],dynamicWidth:[1,1,1],dynamicTint:[1,1,1],opacityscale:T.opacityscale,opacity:T.opacity},ie=o(T);if(Z.intensityBounds=[ie.min,ie.max],T.surfacecolor){var te=k(new Float32Array(D*G),[D,G]);for(M=0;M<D;M++)for(A=0;A<G;A++)te.set(M,A,T.surfacecolor[A][M]);W.push(te)}else Z.intensityBounds[0]*=Y[2],Z.intensityBounds[1]*=Y[2];(f<W[0].shape[0]||f<W[0].shape[1])&&(this.refineData=!1),this.refineData===!0&&(this.dataScaleX=this.estimateScale(W[0].shape[0],0),this.dataScaleY=this.estimateScale(W[0].shape[1],1),this.dataScaleX===1&&this.dataScaleY===1||this.refineCoords(W)),T.surfacecolor&&(Z.intensity=W.pop());var J=[!0,!0,!0],X=["x","y","z"];for(d=0;d<3;++d){var ee=T.contours[X[d]];J[d]=ee.highlight,Z.showContour[d]=ee.show||ee.highlight,Z.showContour[d]&&(Z.contourProject[d]=[ee.project.x,ee.project.y,ee.project.z],ee.show?(this.showContour[d]=!0,Z.levels[d]=V[d],z.highlightColor[d]=Z.contourColor[d]=t(ee.color),ee.usecolormap?z.highlightTint[d]=Z.contourTint[d]=0:z.highlightTint[d]=Z.contourTint[d]=1,Z.contourWidth[d]=ee.width,this.contourStart[d]=ee.start,this.contourEnd[d]=ee.end,this.contourSize[d]=ee.size):(this.showContour[d]=!1,this.contourStart[d]=null,this.contourEnd[d]=null,this.contourSize[d]=0),ee.highlight&&(Z.dynamicColor[d]=t(ee.highlightcolor),Z.dynamicWidth[d]=ee.highlightwidth))}(function(re){var oe=re[0].rgb,ue=re[re.length-1].rgb;return oe[0]===ue[0]&&oe[1]===ue[1]&&oe[2]===ue[2]&&oe[3]===ue[3]})(B)&&(Z.vertexColor=!0),Z.objectOffset=this.objectOffset,Z.coords=W,z.update(Z),z.visible=T.visible,z.enableDynamic=J,z.enableHighlight=J,z.snapToData=!0,"lighting"in T&&(z.ambientLight=T.lighting.ambient,z.diffuseLight=T.lighting.diffuse,z.specularLight=T.lighting.specular,z.roughness=T.lighting.roughness,z.fresnel=T.lighting.fresnel),"lightposition"in T&&(z.lightPosition=[T.lightposition.x,T.lightposition.y,T.lightposition.z])},n.dispose=function(){this.scene.glplot.remove(this.surface),this.surface.dispose()},R.exports=function(T,d){var M=T.glplot.gl,A=w({gl:M}),C=new r(T,A,d.uid);return A._trace=C,C.update(d),T.glplot.add(A),C}},91831:function(R,E,e){var w=e(73972),k=e(71828),i=e(1586),_=e(54532);function y(l,t,o,r){var n=r("opacityscale");n==="max"?t.opacityscale=[[0,.1],[1,1]]:n==="min"?t.opacityscale=[[0,1],[1,.1]]:n==="extremes"?t.opacityscale=function(a,s){for(var u=[],p=0;p<32;p++){var c=p/31,b=.1+.9*(1-Math.pow(Math.sin(1*c*Math.PI),2));u.push([c,Math.max(0,Math.min(1,b))])}return u}():function(a){var s=0;if(!Array.isArray(a)||a.length<2||!a[0]||!a[a.length-1]||+a[0][0]!=0||+a[a.length-1][0]!=1)return!1;for(var u=0;u<a.length;u++){var p=a[u];if(p.length!==2||+p[0]<s)return!1;s=+p[0]}return!0}(n)||(t.opacityscale=void 0)}function h(l,t,o){t in l&&!(o in l)&&(l[o]=l[t])}R.exports={supplyDefaults:function(l,t,o,r){var n,a;function s(x,T){return k.coerce(l,t,_,x,T)}var u=s("x"),p=s("y"),c=s("z");if(!c||!c.length||u&&u.length<1||p&&p.length<1)t.visible=!1;else{t._xlength=Array.isArray(u)&&k.isArrayOrTypedArray(u[0])?c.length:c[0].length,t._ylength=c.length,w.getComponentMethod("calendars","handleTraceDefaults")(l,t,["x","y","z"],r),s("text"),s("hovertext"),s("hovertemplate"),s("xhoverformat"),s("yhoverformat"),s("zhoverformat"),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lightposition.x","lightposition.y","lightposition.z","hidesurface","connectgaps","opacity"].forEach(function(x){s(x)});var b=s("surfacecolor"),g=["x","y","z"];for(n=0;n<3;++n){var f="contours."+g[n],v=s(f+".show"),m=s(f+".highlight");if(v||m)for(a=0;a<3;++a)s(f+".project."+g[a]);v&&(s(f+".color"),s(f+".width"),s(f+".usecolormap")),m&&(s(f+".highlightcolor"),s(f+".highlightwidth")),s(f+".start"),s(f+".end"),s(f+".size")}b||(h(l,"zmin","cmin"),h(l,"zmax","cmax"),h(l,"zauto","cauto")),i(l,t,r,s,{prefix:"",cLetter:"c"}),y(0,t,0,s),t._length=null}},opacityscaleDefaults:y}},93601:function(R,E,e){R.exports={attributes:e(54532),supplyDefaults:e(91831).supplyDefaults,colorbar:{min:"cmin",max:"cmax"},calc:e(18396),plot:e(43768),moduleType:"trace",name:"surface",basePlotModule:e(58547),categories:["gl3d","2dMap","showLegend"],meta:{}}},44464:function(R,E,e){var w=e(50215),k=e(1426).extendFlat,i=e(30962).overrideAll,_=e(41940),y=e(27670).Y,h=e(12663).descriptionOnlyNumbers;(R.exports=i({domain:y({name:"table",trace:!0}),columnwidth:{valType:"number",arrayOk:!0,dflt:null},columnorder:{valType:"data_array"},header:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:h("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:28},align:k({},w.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"}},font:k({},_({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:h("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:20},align:k({},w.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"}},font:k({},_({arrayOk:!0}))}},"calc","from-root")).transforms=void 0},99469:function(R,E,e){var w=e(27659).a0,k=e(36736),i="table";E.name=i,E.plot=function(_){var y=w(_.calcdata,i)[0];y.length&&k(_,y)},E.clean=function(_,y,h,l){var t=l._has&&l._has(i),o=y._has&&y._has(i);t&&!o&&l._paperdiv.selectAll(".table").remove()}},76333:function(R,E,e){var w=e(28984).wrap;R.exports=function(){return w({})}},49850:function(R){R.exports={cellPad:8,columnExtentOffset:10,columnTitleOffset:28,emptyHeaderHeight:16,latexCheck:/^\$.*\$$/,goldenRatio:1.618,lineBreaker:"<br>",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"}}},51018:function(R,E,e){var w=e(49850),k=e(1426).extendFlat,i=e(92770);function _(n){if(Array.isArray(n)){for(var a=0,s=0;s<n.length;s++)a=Math.max(a,_(n[s]));return a}return n}function y(n,a){return n+a}function h(n){var a,s=n.slice(),u=1/0,p=0;for(a=0;a<s.length;a++)Array.isArray(s[a])||(s[a]=[s[a]]),u=Math.min(u,s[a].length),p=Math.max(p,s[a].length);if(u!==p)for(a=0;a<s.length;a++){var c=p-s[a].length;c&&(s[a]=s[a].concat(l(c)))}return s}function l(n){for(var a=new Array(n),s=0;s<n;s++)a[s]="";return a}function t(n){return n.calcdata.columns.reduce(function(a,s){return s.xIndex<n.xIndex?a+s.columnWidth:a},0)}function o(n,a){return Object.keys(n).map(function(s){return k({},n[s],{auxiliaryBlocks:a})})}function r(n,a){for(var s,u={},p=0,c=0,b={firstRowIndex:null,lastRowIndex:null,rows:[]},g=0,f=0,v=0;v<n.length;v++)s=n[v],b.rows.push({rowIndex:v,rowHeight:s}),((c+=s)>=a||v===n.length-1)&&(u[p]=b,b.key=f++,b.firstRowIndex=g,b.lastRowIndex=v,b={firstRowIndex:null,lastRowIndex:null,rows:[]},p+=c,g=v+1,c=0);return u}R.exports=function(n,a){var s=h(a.cells.values),u=function(Y){return Y.slice(a.header.values.length,Y.length)},p=h(a.header.values);p.length&&!p[0].length&&(p[0]=[""],p=h(p));var c=p.concat(u(s).map(function(){return l((p[0]||[""]).length)})),b=a.domain,g=Math.floor(n._fullLayout._size.w*(b.x[1]-b.x[0])),f=Math.floor(n._fullLayout._size.h*(b.y[1]-b.y[0])),v=a.header.values.length?c[0].map(function(){return a.header.height}):[w.emptyHeaderHeight],m=s.length?s[0].map(function(){return a.cells.height}):[],x=v.reduce(y,0),T=r(m,f-x+w.uplift),d=o(r(v,x),[]),M=o(T,d),A={},C=a._fullInput.columnorder.concat(u(s.map(function(Y,D){return D}))),P=c.map(function(Y,D){var G=Array.isArray(a.columnwidth)?a.columnwidth[Math.min(D,a.columnwidth.length-1)]:a.columnwidth;return i(G)?Number(G):1}),O=P.reduce(y,0);P=P.map(function(Y){return Y/O*g});var z=Math.max(_(a.header.line.width),_(a.cells.line.width)),B={key:a.uid+n._context.staticPlot,translateX:b.x[0]*n._fullLayout._size.w,translateY:n._fullLayout._size.h*(1-b.y[1]),size:n._fullLayout._size,width:g,maxLineWidth:z,height:f,columnOrder:C,groupHeight:f,rowBlocks:M,headerRowBlocks:d,scrollY:0,cells:k({},a.cells,{values:s}),headerCells:k({},a.header,{values:c}),gdColumns:c.map(function(Y){return Y[0]}),gdColumnsOriginalOrder:c.map(function(Y){return Y[0]}),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:c.map(function(Y,D){var G=A[Y];return A[Y]=(G||0)+1,{key:Y+"__"+A[Y],label:Y,specIndex:D,xIndex:C[D],xScale:t,x:void 0,calcdata:void 0,columnWidth:P[D]}})};return B.columns.forEach(function(Y){Y.calcdata=B,Y.x=t(Y)}),B}},56269:function(R,E,e){var w=e(1426).extendFlat;E.splitToPanels=function(k){var i=[0,0],_=w({},k,{key:"header",type:"header",page:0,prevPages:i,currentRepaint:[null,null],dragHandle:!0,values:k.calcdata.headerCells.values[k.specIndex],rowBlocks:k.calcdata.headerRowBlocks,calcdata:w({},k.calcdata,{cells:k.calcdata.headerCells})});return[w({},k,{key:"cells1",type:"cells",page:0,prevPages:i,currentRepaint:[null,null],dragHandle:!1,values:k.calcdata.cells.values[k.specIndex],rowBlocks:k.calcdata.rowBlocks}),w({},k,{key:"cells2",type:"cells",page:1,prevPages:i,currentRepaint:[null,null],dragHandle:!1,values:k.calcdata.cells.values[k.specIndex],rowBlocks:k.calcdata.rowBlocks}),_]},E.splitToCells=function(k){var i=function(_){var y=_.rowBlocks[_.page],h=y?y.rows[0].rowIndex:0;return[h,y?h+y.rows.length:0]}(k);return(k.values||[]).slice(i[0],i[1]).map(function(_,y){return{keyWithinBlock:y+(typeof _=="string"&&_.match(/[<$&> ]/)?"_keybuster_"+Math.random():""),key:i[0]+y,column:k,calcdata:k.calcdata,page:k.page,rowBlocks:k.rowBlocks,value:_}})}},39754:function(R,E,e){var w=e(71828),k=e(44464),i=e(27670).c;R.exports=function(_,y,h,l){function t(o,r){return w.coerce(_,y,k,o,r)}i(y,l,t),t("columnwidth"),t("header.values"),t("header.format"),t("header.align"),t("header.prefix"),t("header.suffix"),t("header.height"),t("header.line.width"),t("header.line.color"),t("header.fill.color"),w.coerceFont(t,"header.font",w.extendFlat({},l.font)),function(o,r){for(var n=o.columnorder||[],a=o.header.values.length,s=n.slice(0,a),u=s.slice().sort(function(b,g){return b-g}),p=s.map(function(b){return u.indexOf(b)}),c=p.length;c<a;c++)p.push(c);r("columnorder",p)}(y,t),t("cells.values"),t("cells.format"),t("cells.align"),t("cells.prefix"),t("cells.suffix"),t("cells.height"),t("cells.line.width"),t("cells.line.color"),t("cells.fill.color"),w.coerceFont(t,"cells.font",w.extendFlat({},l.font)),y._length=null}},96595:function(R,E,e){R.exports={attributes:e(44464),supplyDefaults:e(39754),calc:e(76333),plot:e(36736),moduleType:"trace",name:"table",basePlotModule:e(99469),categories:["noOpacity"],meta:{}}},36736:function(R,E,e){var w=e(49850),k=e(39898),i=e(71828).numberFormat,_=e(28984),y=e(91424),h=e(63893),l=e(71828).raiseToTop,t=e(71828).strTranslate,o=e(71828).cancelTransition,r=e(51018),n=e(56269),a=e(7901);function s(W){return Math.ceil(W.calcdata.maxLineWidth/2)}function u(W,Z){return"clip"+W._fullLayout._uid+"_scrollAreaBottomClip_"+Z.key}function p(W,Z){return"clip"+W._fullLayout._uid+"_columnBoundaryClippath_"+Z.calcdata.key+"_"+Z.specIndex}function c(W){return[].concat.apply([],W.map(function(Z){return Z})).map(function(Z){return Z.__data__})}function b(W,Z,ie){var te=W.selectAll("."+w.cn.scrollbarKit).data(_.repeat,_.keyFun);te.enter().append("g").classed(w.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),te.each(function(oe){var ue=oe.scrollbarState;ue.totalHeight=function(ce){var de=ce.rowBlocks;return D(de,de.length-1)+(de.length?G(de[de.length-1],1/0):1)}(oe),ue.scrollableAreaHeight=oe.groupHeight-M(oe),ue.currentlyVisibleHeight=Math.min(ue.totalHeight,ue.scrollableAreaHeight),ue.ratio=ue.currentlyVisibleHeight/ue.totalHeight,ue.barLength=Math.max(ue.ratio*ue.currentlyVisibleHeight,w.goldenRatio*w.scrollbarWidth),ue.barWiggleRoom=ue.currentlyVisibleHeight-ue.barLength,ue.wiggleRoom=Math.max(0,ue.totalHeight-ue.scrollableAreaHeight),ue.topY=ue.barWiggleRoom===0?0:oe.scrollY/ue.wiggleRoom*ue.barWiggleRoom,ue.bottomY=ue.topY+ue.barLength,ue.dragMultiplier=ue.wiggleRoom/ue.barWiggleRoom}).attr("transform",function(oe){var ue=oe.width+w.scrollbarWidth/2+w.scrollbarOffset;return t(ue,M(oe))});var J=te.selectAll("."+w.cn.scrollbar).data(_.repeat,_.keyFun);J.enter().append("g").classed(w.cn.scrollbar,!0);var X=J.selectAll("."+w.cn.scrollbarSlider).data(_.repeat,_.keyFun);X.enter().append("g").classed(w.cn.scrollbarSlider,!0),X.attr("transform",function(oe){return t(0,oe.scrollbarState.topY||0)});var ee=X.selectAll("."+w.cn.scrollbarGlyph).data(_.repeat,_.keyFun);ee.enter().append("line").classed(w.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",w.scrollbarWidth).attr("stroke-linecap","round").attr("y1",w.scrollbarWidth/2),ee.attr("y2",function(oe){return oe.scrollbarState.barLength-w.scrollbarWidth/2}).attr("stroke-opacity",function(oe){return oe.columnDragInProgress||!oe.scrollbarState.barWiggleRoom||ie?0:.4}),ee.transition().delay(0).duration(0),ee.transition().delay(w.scrollbarHideDelay).duration(w.scrollbarHideDuration).attr("stroke-opacity",0);var re=J.selectAll("."+w.cn.scrollbarCaptureZone).data(_.repeat,_.keyFun);re.enter().append("line").classed(w.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",w.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",function(oe){var ue=k.event.y,ce=this.getBoundingClientRect(),de=oe.scrollbarState,me=ue-ce.top,_e=k.scale.linear().domain([0,de.scrollableAreaHeight]).range([0,de.totalHeight]).clamp(!0);de.topY<=me&&me<=de.bottomY||C(Z,W,null,_e(me-de.barLength/2))(oe)}).call(k.behavior.drag().origin(function(oe){return k.event.stopPropagation(),oe.scrollbarState.scrollbarScrollInProgress=!0,oe}).on("drag",C(Z,W)).on("dragend",function(){})),re.attr("y2",function(oe){return oe.scrollbarState.scrollableAreaHeight}),Z._context.staticPlot&&(ee.remove(),re.remove())}function g(W,Z,ie,te){var J=function(ue){var ce=ue.selectAll("."+w.cn.columnCells).data(_.repeat,_.keyFun);return ce.enter().append("g").classed(w.cn.columnCells,!0),ce.exit().remove(),ce}(ie),X=function(ue){var ce=ue.selectAll("."+w.cn.columnCell).data(n.splitToCells,function(de){return de.keyWithinBlock});return ce.enter().append("g").classed(w.cn.columnCell,!0),ce.exit().remove(),ce}(J);(function(ue){ue.each(function(ce,de){var me=ce.calcdata.cells.font,_e=ce.column.specIndex,Se={size:m(me.size,_e,de),color:m(me.color,_e,de),family:m(me.family,_e,de)};ce.rowNumber=ce.key,ce.align=m(ce.calcdata.cells.align,_e,de),ce.cellBorderWidth=m(ce.calcdata.cells.line.width,_e,de),ce.font=Se})})(X);var ee=function(ue){var ce=ue.selectAll("."+w.cn.cellRect).data(_.repeat,function(de){return de.keyWithinBlock});return ce.enter().append("rect").classed(w.cn.cellRect,!0),ce}(X);(function(ue){ue.attr("width",function(ce){return ce.column.columnWidth}).attr("stroke-width",function(ce){return ce.cellBorderWidth}).each(function(ce){var de=k.select(this);a.stroke(de,m(ce.calcdata.cells.line.color,ce.column.specIndex,ce.rowNumber)),a.fill(de,m(ce.calcdata.cells.fill.color,ce.column.specIndex,ce.rowNumber))})})(ee);var re=function(ue){var ce=ue.selectAll("."+w.cn.cellTextHolder).data(_.repeat,function(de){return de.keyWithinBlock});return ce.enter().append("g").classed(w.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),ce}(X),oe=function(ue){var ce=ue.selectAll("."+w.cn.cellText).data(_.repeat,function(de){return de.keyWithinBlock});return ce.enter().append("text").classed(w.cn.cellText,!0).style("cursor",function(){return"auto"}).on("mousedown",function(){k.event.stopPropagation()}),ce}(re);(function(ue){ue.each(function(ce){y.font(k.select(this),ce.font)})})(oe),f(oe,Z,te,W),Y(X)}function f(W,Z,ie,te){W.text(function(J){var X=J.column.specIndex,ee=J.rowNumber,re=J.value,oe=typeof re=="string",ue=oe&&re.match(/<br>/i),ce=!oe||ue;J.mayHaveMarkup=oe&&re.match(/[<&>]/);var de,me=typeof(de=re)=="string"&&de.match(w.latexCheck);J.latex=me;var _e,Se,we=me?"":m(J.calcdata.cells.prefix,X,ee)||"",xe=me?"":m(J.calcdata.cells.suffix,X,ee)||"",De=me?null:m(J.calcdata.cells.format,X,ee)||null,Ee=we+(De?i(De)(J.value):J.value)+xe;if(J.wrappingNeeded=!J.wrapped&&!ce&&!me&&(_e=v(Ee)),J.cellHeightMayIncrease=ue||me||J.mayHaveMarkup||(_e===void 0?v(Ee):_e),J.needsConvertToTspans=J.mayHaveMarkup||J.wrappingNeeded||J.latex,J.wrappingNeeded){var Me=(w.wrapSplitCharacter===" "?Ee.replace(/<a href=/gi,"<a_href="):Ee).split(w.wrapSplitCharacter),he=w.wrapSplitCharacter===" "?Me.map(function(fe){return fe.replace(/<a_href=/gi,"<a href=")}):Me;J.fragments=he.map(function(fe){return{text:fe,width:null}}),J.fragments.push({fragment:w.wrapSpacer,width:null}),Se=he.join(w.lineBreaker)+w.lineBreaker+w.wrapSpacer}else delete J.fragments,Se=Ee;return Se}).attr("dy",function(J){return J.needsConvertToTspans?0:"0.75em"}).each(function(J){var X=this,ee=k.select(X),re=J.wrappingNeeded?O:z;J.needsConvertToTspans?h.convertToTspans(ee,te,re(ie,X,Z,te,J)):k.select(X.parentNode).attr("transform",function(oe){return t(B(oe),w.cellPad)}).attr("text-anchor",function(oe){return{left:"start",center:"middle",right:"end"}[oe.align]})})}function v(W){return W.indexOf(w.wrapSplitCharacter)!==-1}function m(W,Z,ie){if(Array.isArray(W)){var te=W[Math.min(Z,W.length-1)];return Array.isArray(te)?te[Math.min(ie,te.length-1)]:te}return W}function x(W,Z,ie){W.transition().ease(w.releaseTransitionEase).duration(w.releaseTransitionDuration).attr("transform",t(Z.x,ie))}function T(W){return W.type==="cells"}function d(W){return W.type==="header"}function M(W){return(W.rowBlocks.length?W.rowBlocks[0].auxiliaryBlocks:[]).reduce(function(Z,ie){return Z+G(ie,1/0)},0)}function A(W,Z,ie){var te=c(Z)[0];if(te!==void 0){var J=te.rowBlocks,X=te.calcdata,ee=D(J,J.length),re=te.calcdata.groupHeight-M(te),oe=X.scrollY=Math.max(0,Math.min(ee-re,X.scrollY)),ue=function(ce,de,me){for(var _e=[],Se=0,we=0;we<ce.length;we++){for(var xe=ce[we],De=xe.rows,Ee=0,Me=0;Me<De.length;Me++)Ee+=De[Me].rowHeight;xe.allRowsHeight=Ee,de<Se+Ee&&de+me>Se&&_e.push(we),Se+=Ee}return _e}(J,oe,re);ue.length===1&&(ue[0]===J.length-1?ue.unshift(ue[0]-1):ue.push(ue[0]+1)),ue[0]%2&&ue.reverse(),Z.each(function(ce,de){ce.page=ue[de],ce.scrollY=oe}),Z.attr("transform",function(ce){var de=D(ce.rowBlocks,ce.page)-ce.scrollY;return t(0,de)}),W&&(P(W,ie,Z,ue,te.prevPages,te,0),P(W,ie,Z,ue,te.prevPages,te,1),b(ie,W))}}function C(W,Z,ie,te){return function(J){var X=J.calcdata?J.calcdata:J,ee=Z.filter(function(ce){return X.key===ce.key}),re=ie||X.scrollbarState.dragMultiplier,oe=X.scrollY;X.scrollY=te===void 0?X.scrollY+re*k.event.dy:te;var ue=ee.selectAll("."+w.cn.yColumn).selectAll("."+w.cn.columnBlock).filter(T);return A(W,ue,ee),X.scrollY===oe}}function P(W,Z,ie,te,J,X,ee){te[ee]!==J[ee]&&(clearTimeout(X.currentRepaint[ee]),X.currentRepaint[ee]=setTimeout(function(){var re=ie.filter(function(oe,ue){return ue===ee&&te[ue]!==J[ue]});g(W,Z,re,ie),J[ee]=te[ee]}))}function O(W,Z,ie,te){return function(){var J=k.select(Z.parentNode);J.each(function(X){var ee=X.fragments;J.selectAll("tspan.line").each(function(Se,we){ee[we].width=this.getComputedTextLength()});var re,oe,ue=ee[ee.length-1].width,ce=ee.slice(0,-1),de=[],me=0,_e=X.column.columnWidth-2*w.cellPad;for(X.value="";ce.length;)me+(oe=(re=ce.shift()).width+ue)>_e&&(X.value+=de.join(w.wrapSpacer)+w.lineBreaker,de=[],me=0),de.push(re.text),me+=oe;me&&(X.value+=de.join(w.wrapSpacer)),X.wrapped=!0}),J.selectAll("tspan.line").remove(),f(J.select("."+w.cn.cellText),ie,W,te),k.select(Z.parentNode.parentNode).call(Y)}}function z(W,Z,ie,te,J){return function(){if(!J.settledY){var X=k.select(Z.parentNode),ee=j(J),re=J.key-ee.firstRowIndex,oe=ee.rows[re].rowHeight,ue=J.cellHeightMayIncrease?Z.parentNode.getBoundingClientRect().height+2*w.cellPad:oe,ce=Math.max(ue,oe);ce-ee.rows[re].rowHeight&&(ee.rows[re].rowHeight=ce,W.selectAll("."+w.cn.columnCell).call(Y),A(null,W.filter(T),0),b(ie,te,!0)),X.attr("transform",function(){var de=this,me=de.parentNode.getBoundingClientRect(),_e=k.select(de.parentNode).select("."+w.cn.cellRect).node().getBoundingClientRect(),Se=de.transform.baseVal.consolidate(),we=_e.top-me.top+(Se?Se.matrix.f:w.cellPad);return t(B(J,k.select(de.parentNode).select("."+w.cn.cellTextHolder).node().getBoundingClientRect().width),we)}),J.settledY=!0}}}function B(W,Z){switch(W.align){case"left":default:return w.cellPad;case"right":return W.column.columnWidth-(Z||0)-w.cellPad;case"center":return(W.column.columnWidth-(Z||0))/2}}function Y(W){W.attr("transform",function(Z){var ie=Z.rowBlocks[0].auxiliaryBlocks.reduce(function(J,X){return J+G(X,1/0)},0),te=G(j(Z),Z.key);return t(0,te+ie)}).selectAll("."+w.cn.cellRect).attr("height",function(Z){return(ie=j(Z),te=Z.key,ie.rows[te-ie.firstRowIndex]).rowHeight;var ie,te})}function D(W,Z){for(var ie=0,te=Z-1;te>=0;te--)ie+=V(W[te]);return ie}function G(W,Z){for(var ie=0,te=0;te<W.rows.length&&W.rows[te].rowIndex<Z;te++)ie+=W.rows[te].rowHeight;return ie}function V(W){var Z=W.allRowsHeight;if(Z!==void 0)return Z;for(var ie=0,te=0;te<W.rows.length;te++)ie+=W.rows[te].rowHeight;return W.allRowsHeight=ie,ie}function j(W){return W.rowBlocks[W.page]}R.exports=function(W,Z){var ie=!W._context.staticPlot,te=W._fullLayout._paper.selectAll("."+w.cn.table).data(Z.map(function(xe){var De=_.unwrap(xe).trace;return r(W,De)}),_.keyFun);te.exit().remove(),te.enter().append("g").classed(w.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"),te.attr("width",function(xe){return xe.width+xe.size.l+xe.size.r}).attr("height",function(xe){return xe.height+xe.size.t+xe.size.b}).attr("transform",function(xe){return t(xe.translateX,xe.translateY)});var J=te.selectAll("."+w.cn.tableControlView).data(_.repeat,_.keyFun),X=J.enter().append("g").classed(w.cn.tableControlView,!0).style("box-sizing","content-box");if(ie){var ee="onwheel"in document?"wheel":"mousewheel";X.on("mousemove",function(xe){J.filter(function(De){return xe===De}).call(b,W)}).on(ee,function(xe){if(!xe.scrollbarState.wheeling){xe.scrollbarState.wheeling=!0;var De=xe.scrollY+k.event.deltaY;C(W,J,null,De)(xe)||(k.event.stopPropagation(),k.event.preventDefault()),xe.scrollbarState.wheeling=!1}}).call(b,W,!0)}J.attr("transform",function(xe){return t(xe.size.l,xe.size.t)});var re=J.selectAll("."+w.cn.scrollBackground).data(_.repeat,_.keyFun);re.enter().append("rect").classed(w.cn.scrollBackground,!0).attr("fill","none"),re.attr("width",function(xe){return xe.width}).attr("height",function(xe){return xe.height}),J.each(function(xe){y.setClipUrl(k.select(this),u(W,xe),W)});var oe=J.selectAll("."+w.cn.yColumn).data(function(xe){return xe.columns},_.keyFun);oe.enter().append("g").classed(w.cn.yColumn,!0),oe.exit().remove(),oe.attr("transform",function(xe){return t(xe.x,0)}),ie&&oe.call(k.behavior.drag().origin(function(xe){return x(k.select(this),xe,-w.uplift),l(this),xe.calcdata.columnDragInProgress=!0,b(J.filter(function(De){return xe.calcdata.key===De.key}),W),xe}).on("drag",function(xe){var De=k.select(this),Ee=function(Me){return(xe===Me?k.event.x:Me.x)+Me.columnWidth/2};xe.x=Math.max(-w.overdrag,Math.min(xe.calcdata.width+w.overdrag-xe.columnWidth,k.event.x)),c(oe).filter(function(Me){return Me.calcdata.key===xe.calcdata.key}).sort(function(Me,he){return Ee(Me)-Ee(he)}).forEach(function(Me,he){Me.xIndex=he,Me.x=xe===Me?Me.x:Me.xScale(Me)}),oe.filter(function(Me){return xe!==Me}).transition().ease(w.transitionEase).duration(w.transitionDuration).attr("transform",function(Me){return t(Me.x,0)}),De.call(o).attr("transform",t(xe.x,-w.uplift))}).on("dragend",function(xe){var De=k.select(this),Ee=xe.calcdata;xe.x=xe.xScale(xe),xe.calcdata.columnDragInProgress=!1,x(De,xe,0),function(Me,he,fe){var ae=he.gdColumnsOriginalOrder;he.gdColumns.sort(function(be,Ie){return fe[ae.indexOf(be)]-fe[ae.indexOf(Ie)]}),he.columnorder=fe,Me.emit("plotly_restyle")}(W,Ee,Ee.columns.map(function(Me){return Me.xIndex}))})),oe.each(function(xe){y.setClipUrl(k.select(this),p(W,xe),W)});var ue=oe.selectAll("."+w.cn.columnBlock).data(n.splitToPanels,_.keyFun);ue.enter().append("g").classed(w.cn.columnBlock,!0).attr("id",function(xe){return xe.key}),ue.style("cursor",function(xe){return xe.dragHandle?"ew-resize":xe.calcdata.scrollbarState.barWiggleRoom?"ns-resize":"default"});var ce=ue.filter(d),de=ue.filter(T);ie&&de.call(k.behavior.drag().origin(function(xe){return k.event.stopPropagation(),xe}).on("drag",C(W,J,-1)).on("dragend",function(){})),g(W,J,ce,ue),g(W,J,de,ue);var me=J.selectAll("."+w.cn.scrollAreaClip).data(_.repeat,_.keyFun);me.enter().append("clipPath").classed(w.cn.scrollAreaClip,!0).attr("id",function(xe){return u(W,xe)});var _e=me.selectAll("."+w.cn.scrollAreaClipRect).data(_.repeat,_.keyFun);_e.enter().append("rect").classed(w.cn.scrollAreaClipRect,!0).attr("x",-w.overdrag).attr("y",-w.uplift).attr("fill","none"),_e.attr("width",function(xe){return xe.width+2*w.overdrag}).attr("height",function(xe){return xe.height+w.uplift}),oe.selectAll("."+w.cn.columnBoundary).data(_.repeat,_.keyFun).enter().append("g").classed(w.cn.columnBoundary,!0);var Se=oe.selectAll("."+w.cn.columnBoundaryClippath).data(_.repeat,_.keyFun);Se.enter().append("clipPath").classed(w.cn.columnBoundaryClippath,!0),Se.attr("id",function(xe){return p(W,xe)});var we=Se.selectAll("."+w.cn.columnBoundaryRect).data(_.repeat,_.keyFun);we.enter().append("rect").classed(w.cn.columnBoundaryRect,!0).attr("fill","none"),we.attr("width",function(xe){return xe.columnWidth+2*s(xe)}).attr("height",function(xe){return xe.calcdata.height+2*s(xe)+w.uplift}).attr("x",function(xe){return-s(xe)}).attr("y",function(xe){return-s(xe)}),A(null,de,J)}},45802:function(R,E,e){var w=e(5386).fF,k=e(5386).si,i=e(50693),_=e(27670).Y,y=e(34e3),h=e(57564),l=e(43473),t=e(1426).extendFlat,o=e(79952).u;R.exports={labels:h.labels,parents:h.parents,values:h.values,branchvalues:h.branchvalues,count:h.count,level:h.level,maxdepth:h.maxdepth,tiling:{packing:{valType:"enumerated",values:["squarify","binary","dice","slice","slice-dice","dice-slice"],dflt:"squarify",editType:"plot"},squarifyratio:{valType:"number",min:1,dflt:1,editType:"plot"},flip:{valType:"flaglist",flags:["x","y"],dflt:"",editType:"plot"},pad:{valType:"number",min:0,dflt:3,editType:"plot"},editType:"calc"},marker:t({pad:{t:{valType:"number",min:0,editType:"plot"},l:{valType:"number",min:0,editType:"plot"},r:{valType:"number",min:0,editType:"plot"},b:{valType:"number",min:0,editType:"plot"},editType:"calc"},colors:h.marker.colors,pattern:o,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style"},line:h.marker.line,cornerradius:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},i("marker",{colorAttr:"colors",anim:!1})),pathbar:{visible:{valType:"boolean",dflt:!0,editType:"plot"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},edgeshape:{valType:"enumerated",values:[">","<","|","/","\\"],dflt:">",editType:"plot"},thickness:{valType:"number",min:12,editType:"plot"},textfont:t({},y.textfont,{}),editType:"calc"},text:y.text,textinfo:h.textinfo,texttemplate:k({editType:"plot"},{keys:l.eventDataKeys.concat(["label","value"])}),hovertext:y.hovertext,hoverinfo:h.hoverinfo,hovertemplate:w({},{keys:l.eventDataKeys}),textfont:y.textfont,insidetextfont:y.insidetextfont,outsidetextfont:t({},y.outsidetextfont,{}),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"},sort:y.sort,root:h.root,domain:_({name:"treemap",trace:!0,editType:"calc"})}},78018:function(R,E,e){var w=e(74875);E.name="treemap",E.plot=function(k,i,_,y){w.plotBasePlot(E.name,k,i,_,y)},E.clean=function(k,i,_,y){w.cleanBasePlot(E.name,k,i,_,y)}},65039:function(R,E,e){var w=e(52147);E.y=function(k,i){return w.calc(k,i)},E.T=function(k){return w._runCrossTraceCalc("treemap",k)}},43473:function(R){R.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}},91174:function(R,E,e){var w=e(71828),k=e(45802),i=e(7901),_=e(27670).c,y=e(90769).handleText,h=e(97313).TEXTPAD,l=e(37434).handleMarkerDefaults,t=e(21081),o=t.hasColorscale,r=t.handleDefaults;R.exports=function(n,a,s,u){function p(T,d){return w.coerce(n,a,k,T,d)}var c=p("labels"),b=p("parents");if(c&&c.length&&b&&b.length){var g=p("values");g&&g.length?p("branchvalues"):p("count"),p("level"),p("maxdepth"),p("tiling.packing")==="squarify"&&p("tiling.squarifyratio"),p("tiling.flip"),p("tiling.pad");var f=p("text");p("texttemplate"),a.texttemplate||p("textinfo",Array.isArray(f)?"text+label":"label"),p("hovertext"),p("hovertemplate");var v=p("pathbar.visible");y(n,a,u,p,"auto",{hasPathbar:v,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),p("textposition");var m=a.textposition.indexOf("bottom")!==-1;l(n,a,u,p),(a._hasColorscale=o(n,"marker","colors")||(n.marker||{}).coloraxis)?r(n,a,u,p,{prefix:"marker.",cLetter:"c"}):p("marker.depthfade",!(a.marker.colors||[]).length);var x=2*a.textfont.size;p("marker.pad.t",m?x/4:x),p("marker.pad.l",x/4),p("marker.pad.r",x/4),p("marker.pad.b",m?x:x/4),p("marker.cornerradius"),a._hovered={marker:{line:{width:2,color:i.contrast(u.paper_bgcolor)}}},v&&(p("pathbar.thickness",a.pathbar.textfont.size+2*h),p("pathbar.side"),p("pathbar.edgeshape")),p("sort"),p("root.color"),_(a,u,p),a._length=null}else a.visible=!1}},80694:function(R,E,e){var w=e(39898),k=e(2791),i=e(72597).clearMinTextSize,_=e(16688).resizeText,y=e(46650);R.exports=function(h,l,t,o,r){var n,a,s=r.type,u=r.drawDescendants,p=h._fullLayout,c=p["_"+s+"layer"],b=!t;i(s,p),(n=c.selectAll("g.trace."+s).data(l,function(g){return g[0].trace.uid})).enter().append("g").classed("trace",!0).classed(s,!0),n.order(),!p.uniformtext.mode&&k.hasTransition(t)?(o&&(a=o()),w.transition().duration(t.duration).ease(t.easing).each("end",function(){a&&a()}).each("interrupt",function(){a&&a()}).each(function(){c.selectAll("g.trace").each(function(g){y(h,g,this,t,u)})})):(n.each(function(g){y(h,g,this,t,u)}),p.uniformtext.mode&&_(h,c.selectAll(".trace"),s)),b&&n.exit().remove()}},66209:function(R,E,e){var w=e(39898),k=e(71828),i=e(91424),_=e(63893),y=e(37210),h=e(96362).styleOne,l=e(43473),t=e(2791),o=e(83523),r=!0;R.exports=function(n,a,s,u,p){var c=p.barDifY,b=p.width,g=p.height,f=p.viewX,v=p.viewY,m=p.pathSlice,x=p.toMoveInsideSlice,T=p.strTransform,d=p.hasTransition,M=p.handleSlicesExit,A=p.makeUpdateSliceInterpolator,C=p.makeUpdateTextInterpolator,P={},O=n._context.staticPlot,z=n._fullLayout,B=a[0],Y=B.trace,D=B.hierarchy,G=b/Y._entryDepth,V=t.listPath(s.data,"id"),j=y(D.copy(),[b,g],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();(j=j.filter(function(Z){var ie=V.indexOf(Z.data.id);return ie!==-1&&(Z.x0=G*ie,Z.x1=G*(ie+1),Z.y0=c,Z.y1=c+g,Z.onPathbar=!0,!0)})).reverse(),(u=u.data(j,t.getPtId)).enter().append("g").classed("pathbar",!0),M(u,r,P,[b,g],m),u.order();var W=u;d&&(W=W.transition().each("end",function(){var Z=w.select(this);t.setSliceCursor(Z,n,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})})),W.each(function(Z){Z._x0=f(Z.x0),Z._x1=f(Z.x1),Z._y0=v(Z.y0),Z._y1=v(Z.y1),Z._hoverX=f(Z.x1-Math.min(b,g)/2),Z._hoverY=v(Z.y1-g/2);var ie=w.select(this),te=k.ensureSingle(ie,"path","surface",function(re){re.style("pointer-events",O?"none":"all")});d?te.transition().attrTween("d",function(re){var oe=A(re,r,P,[b,g]);return function(ue){return m(oe(ue))}}):te.attr("d",m),ie.call(o,s,n,a,{styleOne:h,eventDataKeys:l.eventDataKeys,transitionTime:l.CLICK_TRANSITION_TIME,transitionEasing:l.CLICK_TRANSITION_EASING}).call(t.setSliceCursor,n,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:n._transitioning}),te.call(h,Z,Y,n,{hovered:!1}),Z._text=(t.getPtLabel(Z)||"").split("<br>").join(" ")||"";var J=k.ensureSingle(ie,"g","slicetext"),X=k.ensureSingle(J,"text","",function(re){re.attr("data-notex",1)}),ee=k.ensureUniformFontSize(n,t.determineTextFont(Y,Z,z.font,{onPathbar:!0}));X.text(Z._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(i.font,ee).call(_.convertToTspans,n),Z.textBB=i.bBox(X.node()),Z.transform=x(Z,{fontSize:ee.size,onPathbar:!0}),Z.transform.fontSize=ee.size,d?X.transition().attrTween("transform",function(re){var oe=C(re,r,P,[b,g]);return function(ue){return T(oe(ue))}}):X.attr("transform",T(Z))})}},52583:function(R,E,e){var w=e(39898),k=e(71828),i=e(91424),_=e(63893),y=e(37210),h=e(96362).styleOne,l=e(43473),t=e(2791),o=e(83523),r=e(24714).formatSliceLabel,n=!1;R.exports=function(a,s,u,p,c){var b=c.width,g=c.height,f=c.viewX,v=c.viewY,m=c.pathSlice,x=c.toMoveInsideSlice,T=c.strTransform,d=c.hasTransition,M=c.handleSlicesExit,A=c.makeUpdateSliceInterpolator,C=c.makeUpdateTextInterpolator,P=c.prevEntry,O=a._context.staticPlot,z=a._fullLayout,B=s[0].trace,Y=B.textposition.indexOf("left")!==-1,D=B.textposition.indexOf("right")!==-1,G=B.textposition.indexOf("bottom")!==-1,V=!G&&!B.marker.pad.t||G&&!B.marker.pad.b,j=y(u,[b,g],{packing:B.tiling.packing,squarifyratio:B.tiling.squarifyratio,flipX:B.tiling.flip.indexOf("x")>-1,flipY:B.tiling.flip.indexOf("y")>-1,pad:{inner:B.tiling.pad,top:B.marker.pad.t,left:B.marker.pad.l,right:B.marker.pad.r,bottom:B.marker.pad.b}}).descendants(),W=1/0,Z=-1/0;j.forEach(function(ee){var re=ee.depth;re>=B._maxDepth?(ee.x0=ee.x1=(ee.x0+ee.x1)/2,ee.y0=ee.y1=(ee.y0+ee.y1)/2):(W=Math.min(W,re),Z=Math.max(Z,re))}),p=p.data(j,t.getPtId),B._maxVisibleLayers=isFinite(Z)?Z-W+1:0,p.enter().append("g").classed("slice",!0),M(p,n,{},[b,g],m),p.order();var ie=null;if(d&&P){var te=t.getPtId(P);p.each(function(ee){ie===null&&t.getPtId(ee)===te&&(ie={x0:ee.x0,x1:ee.x1,y0:ee.y0,y1:ee.y1})})}var J=function(){return ie||{x0:0,x1:b,y0:0,y1:g}},X=p;return d&&(X=X.transition().each("end",function(){var ee=w.select(this);t.setSliceCursor(ee,a,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),X.each(function(ee){var re=t.isHeader(ee,B);ee._x0=f(ee.x0),ee._x1=f(ee.x1),ee._y0=v(ee.y0),ee._y1=v(ee.y1),ee._hoverX=f(ee.x1-B.marker.pad.r),ee._hoverY=v(G?ee.y1-B.marker.pad.b/2:ee.y0+B.marker.pad.t/2);var oe=w.select(this),ue=k.ensureSingle(oe,"path","surface",function(_e){_e.style("pointer-events",O?"none":"all")});d?ue.transition().attrTween("d",function(_e){var Se=A(_e,n,J(),[b,g]);return function(we){return m(Se(we))}}):ue.attr("d",m),oe.call(o,u,a,s,{styleOne:h,eventDataKeys:l.eventDataKeys,transitionTime:l.CLICK_TRANSITION_TIME,transitionEasing:l.CLICK_TRANSITION_EASING}).call(t.setSliceCursor,a,{isTransitioning:a._transitioning}),ue.call(h,ee,B,a,{hovered:!1}),ee.x0===ee.x1||ee.y0===ee.y1?ee._text="":ee._text=re?V?"":t.getPtLabel(ee)||"":r(ee,u,B,s,z)||"";var ce=k.ensureSingle(oe,"g","slicetext"),de=k.ensureSingle(ce,"text","",function(_e){_e.attr("data-notex",1)}),me=k.ensureUniformFontSize(a,t.determineTextFont(B,ee,z.font));de.text(ee._text||" ").classed("slicetext",!0).attr("text-anchor",D?"end":Y||re?"start":"middle").call(i.font,me).call(_.convertToTspans,a),ee.textBB=i.bBox(de.node()),ee.transform=x(ee,{fontSize:me.size,isHeader:re}),ee.transform.fontSize=me.size,d?de.transition().attrTween("transform",function(_e){var Se=C(_e,n,J(),[b,g]);return function(we){return T(Se(we))}}):de.attr("transform",T(ee))}),ie}},14102:function(R){R.exports=function E(e,w,k){var i;k.swapXY&&(i=e.x0,e.x0=e.y0,e.y0=i,i=e.x1,e.x1=e.y1,e.y1=i),k.flipX&&(i=e.x0,e.x0=w[0]-e.x1,e.x1=w[0]-i),k.flipY&&(i=e.y0,e.y0=w[1]-e.y1,e.y1=w[1]-i);var _=e.children;if(_)for(var y=0;y<_.length;y++)E(_[y],w,k)}},70954:function(R,E,e){R.exports={moduleType:"trace",name:"treemap",basePlotModule:e(78018),categories:[],animatable:!0,attributes:e(45802),layoutAttributes:e(55479),supplyDefaults:e(91174),supplyLayoutDefaults:e(77182),calc:e(65039).y,crossTraceCalc:e(65039).T,plot:e(5893),style:e(96362).style,colorbar:e(4898),meta:{}}},55479:function(R){R.exports={treemapcolorway:{valType:"colorlist",editType:"calc"},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc"}}},77182:function(R,E,e){var w=e(71828),k=e(55479);R.exports=function(i,_){function y(h,l){return w.coerce(i,_,k,h,l)}y("treemapcolorway",_.colorway),y("extendtreemapcolors")}},37210:function(R,E,e){var w=e(674),k=e(14102);R.exports=function(i,_,y){var h,l=y.flipX,t=y.flipY,o=y.packing==="dice-slice",r=y.pad[t?"bottom":"top"],n=y.pad[l?"right":"left"],a=y.pad[l?"left":"right"],s=y.pad[t?"top":"bottom"];o&&(h=n,n=r,r=h,h=a,a=s,s=h);var u=w.treemap().tile(function(p,c){switch(p){case"squarify":return w.treemapSquarify.ratio(c);case"binary":return w.treemapBinary;case"dice":return w.treemapDice;case"slice":return w.treemapSlice;default:return w.treemapSliceDice}}(y.packing,y.squarifyratio)).paddingInner(y.pad.inner).paddingLeft(n).paddingRight(a).paddingTop(r).paddingBottom(s).size(o?[_[1],_[0]]:_)(i);return(o||l||t)&&k(u,_,{swapXY:o,flipX:l,flipY:t}),u}},5893:function(R,E,e){var w=e(80694),k=e(52583);R.exports=function(i,_,y,h){return w(i,_,y,h,{type:"treemap",drawDescendants:k})}},46650:function(R,E,e){var w=e(39898),k=e(81684).sX,i=e(2791),_=e(71828),y=e(97313).TEXTPAD,h=e(17295).toMoveInsideBar,l=e(72597).recordMinTextSize,t=e(43473),o=e(66209);function r(n){return i.isHierarchyRoot(n)?"":i.getPtId(n)}R.exports=function(n,a,s,u,p){var c=n._fullLayout,b=a[0],g=b.trace,f=g.type==="icicle",v=b.hierarchy,m=i.findEntryWithLevel(v,g.level),x=w.select(s),T=x.selectAll("g.pathbar"),d=x.selectAll("g.slice");if(!m)return T.remove(),void d.remove();var M=i.isHierarchyRoot(m),A=!c.uniformtext.mode&&i.hasTransition(u),C=i.getMaxDepth(g),P=c._size,O=g.domain,z=P.w*(O.x[1]-O.x[0]),B=P.h*(O.y[1]-O.y[0]),Y=z,D=g.pathbar.thickness,G=g.marker.line.width+t.gapWithPathbar,V=g.pathbar.visible?g.pathbar.side.indexOf("bottom")>-1?B+G:-(D+G):0,j={x0:Y,x1:Y,y0:V,y1:V+D},W=function(Ae,ze,Ue){var Ve=g.tiling.pad,Ye=function(nt){return nt-Ve<=ze.x0},$e=function(nt){return nt+Ve>=ze.x1},rt=function(nt){return nt-Ve<=ze.y0},ht=function(nt){return nt+Ve>=ze.y1};return Ae.x0===ze.x0&&Ae.x1===ze.x1&&Ae.y0===ze.y0&&Ae.y1===ze.y1?{x0:Ae.x0,x1:Ae.x1,y0:Ae.y0,y1:Ae.y1}:{x0:Ye(Ae.x0-Ve)?0:$e(Ae.x0-Ve)?Ue[0]:Ae.x0,x1:Ye(Ae.x1+Ve)?0:$e(Ae.x1+Ve)?Ue[0]:Ae.x1,y0:rt(Ae.y0-Ve)?0:ht(Ae.y0-Ve)?Ue[1]:Ae.y0,y1:rt(Ae.y1+Ve)?0:ht(Ae.y1+Ve)?Ue[1]:Ae.y1}},Z=null,ie={},te={},J=null,X=function(Ae,ze){return ze?ie[r(Ae)]:te[r(Ae)]};b.hasMultipleRoots&&M&&C++,g._maxDepth=C,g._backgroundColor=c.paper_bgcolor,g._entryDepth=m.data.depth,g._atRootLevel=M;var ee=-z/2+P.l+P.w*(O.x[1]+O.x[0])/2,re=-B/2+P.t+P.h*(1-(O.y[1]+O.y[0])/2),oe=function(Ae){return ee+Ae},ue=function(Ae){return re+Ae},ce=ue(0),de=oe(0),me=function(Ae){return de+Ae},_e=function(Ae){return ce+Ae};function Se(Ae,ze){return Ae+","+ze}var we=me(0),xe=function(Ae){Ae.x=Math.max(we,Ae.x)},De=g.pathbar.edgeshape,Ee=g[f?"tiling":"marker"].pad,Me=function(Ae){return g.textposition.indexOf(Ae)!==-1},he=Me("top"),fe=Me("left"),ae=Me("right"),be=Me("bottom"),Ie=function(Ae,ze){var Ue=Ae.x0,Ve=Ae.x1,Ye=Ae.y0,$e=Ae.y1,rt=Ae.textBB,ht=he||ze.isHeader&&!be?"start":be?"end":"middle",nt=Me("right"),bt=Me("left")||ze.onPathbar?-1:nt?1:0;if(ze.isHeader){if((Ue+=(f?Ee:Ee.l)-y)>=(Ve-=(f?Ee:Ee.r)-y)){var wt=(Ue+Ve)/2;Ue=wt,Ve=wt}var ut;be?Ye<(ut=$e-(f?Ee:Ee.b))&&ut<$e&&(Ye=ut):Ye<(ut=Ye+(f?Ee:Ee.t))&&ut<$e&&($e=ut)}var lt=h(Ue,Ve,Ye,$e,rt,{isHorizontal:!1,constrained:!0,angle:0,anchor:ht,leftToRight:bt});return lt.fontSize=ze.fontSize,lt.targetX=oe(lt.targetX),lt.targetY=ue(lt.targetY),isNaN(lt.targetX)||isNaN(lt.targetY)?{}:(Ue!==Ve&&Ye!==$e&&l(g.type,lt,c),{scale:lt.scale,rotate:lt.rotate,textX:lt.textX,textY:lt.textY,anchorX:lt.anchorX,anchorY:lt.anchorY,targetX:lt.targetX,targetY:lt.targetY})},Te=function(Ae,ze){for(var Ue,Ve=0,Ye=Ae;!Ue&&Ve<C;)Ve++,(Ye=Ye.parent)?Ue=X(Ye,ze):Ve=C;return Ue||{}},Ne=function(Ae,ze,Ue,Ve,Ye){var $e,rt=X(Ae,ze);if(rt)$e=rt;else if(ze)$e=j;else if(Z)if(Ae.parent){var ht=J||Ue;ht&&!ze?$e=W(Ae,ht,Ve):($e={},_.extendFlat($e,Te(Ae,ze)))}else $e=_.extendFlat({},Ae),f&&(Ye.orientation==="h"?Ye.flipX?$e.x0=Ae.x1:$e.x1=0:Ye.flipY?$e.y0=Ae.y1:$e.y1=0);else $e={};return k($e,{x0:Ae.x0,x1:Ae.x1,y0:Ae.y0,y1:Ae.y1})},qe=function(Ae,ze,Ue,Ve){var Ye=X(Ae,ze),$e={},rt=function(nt,bt,wt,ut){if(bt)return ie[r(v)]||j;var lt=te[g.level]||wt;return function(Tt){return Tt.data.depth-m.data.depth<C}(nt)?W(nt,lt,ut):{}}(Ae,ze,Ue,Ve);_.extendFlat($e,{transform:Ie({x0:rt.x0,x1:rt.x1,y0:rt.y0,y1:rt.y1,textBB:Ae.textBB,_text:Ae._text},{isHeader:i.isHeader(Ae,g)})}),Ye?$e=Ye:Ae.parent&&_.extendFlat($e,Te(Ae,ze));var ht=Ae.transform;return Ae.x0!==Ae.x1&&Ae.y0!==Ae.y1&&l(g.type,ht,c),k($e,{transform:{scale:ht.scale,rotate:ht.rotate,textX:ht.textX,textY:ht.textY,anchorX:ht.anchorX,anchorY:ht.anchorY,targetX:ht.targetX,targetY:ht.targetY}})},ve=function(Ae,ze,Ue,Ve,Ye){var $e=Ve[0],rt=Ve[1];A?Ae.exit().transition().each(function(){var ht=w.select(this);ht.select("path.surface").transition().attrTween("d",function(nt){var bt=function(wt,ut,lt,Tt){var Et,St=X(wt,ut);if(ut)Et=j;else{var Ft=X(m,ut);Et=Ft?W(wt,Ft,Tt):{}}return k(St,Et)}(nt,ze,0,[$e,rt]);return function(wt){return Ye(bt(wt))}}),ht.select("g.slicetext").attr("opacity",0)}).remove():Ae.exit().remove()},Ce=function(Ae){var ze=Ae.transform;return Ae.x0!==Ae.x1&&Ae.y0!==Ae.y1&&l(g.type,ze,c),_.getTextTransform({textX:ze.textX,textY:ze.textY,anchorX:ze.anchorX,anchorY:ze.anchorY,targetX:ze.targetX,targetY:ze.targetY,scale:ze.scale,rotate:ze.rotate})};A&&(T.each(function(Ae){ie[r(Ae)]={x0:Ae.x0,x1:Ae.x1,y0:Ae.y0,y1:Ae.y1},Ae.transform&&(ie[r(Ae)].transform={textX:Ae.transform.textX,textY:Ae.transform.textY,anchorX:Ae.transform.anchorX,anchorY:Ae.transform.anchorY,targetX:Ae.transform.targetX,targetY:Ae.transform.targetY,scale:Ae.transform.scale,rotate:Ae.transform.rotate})}),d.each(function(Ae){te[r(Ae)]={x0:Ae.x0,x1:Ae.x1,y0:Ae.y0,y1:Ae.y1},Ae.transform&&(te[r(Ae)].transform={textX:Ae.transform.textX,textY:Ae.transform.textY,anchorX:Ae.transform.anchorX,anchorY:Ae.transform.anchorY,targetX:Ae.transform.targetX,targetY:Ae.transform.targetY,scale:Ae.transform.scale,rotate:Ae.transform.rotate}),!Z&&i.isEntry(Ae)&&(Z=Ae)})),J=p(n,a,m,d,{width:z,height:B,viewX:oe,viewY:ue,pathSlice:function(Ae){var ze=oe(Ae.x0),Ue=oe(Ae.x1),Ve=ue(Ae.y0),Ye=ue(Ae.y1),$e=Ue-ze,rt=Ye-Ve;if(!$e||!rt)return"";var ht=g.marker.cornerradius||0,nt=Math.min(ht,$e/2,rt/2);nt&&Ae.data&&Ae.data.data&&Ae.data.data.label&&(he&&(nt=Math.min(nt,Ee.t)),fe&&(nt=Math.min(nt,Ee.l)),ae&&(nt=Math.min(nt,Ee.r)),be&&(nt=Math.min(nt,Ee.b)));var bt=function(wt,ut){return nt?"a"+Se(nt,nt)+" 0 0 1 "+Se(wt,ut):""};return"M"+Se(ze,Ve+nt)+bt(nt,-nt)+"L"+Se(Ue-nt,Ve)+bt(nt,nt)+"L"+Se(Ue,Ye-nt)+bt(-nt,nt)+"L"+Se(ze+nt,Ye)+bt(-nt,-nt)+"Z"},toMoveInsideSlice:Ie,prevEntry:Z,makeUpdateSliceInterpolator:Ne,makeUpdateTextInterpolator:qe,handleSlicesExit:ve,hasTransition:A,strTransform:Ce}),g.pathbar.visible?o(n,a,m,T,{barDifY:V,width:Y,height:D,viewX:me,viewY:_e,pathSlice:function(Ae){var ze=me(Math.max(Math.min(Ae.x0,Ae.x0),0)),Ue=me(Math.min(Math.max(Ae.x1,Ae.x1),Y)),Ve=_e(Ae.y0),Ye=_e(Ae.y1),$e=D/2,rt={},ht={};rt.x=ze,ht.x=Ue,rt.y=ht.y=(Ve+Ye)/2;var nt={x:ze,y:Ve},bt={x:Ue,y:Ve},wt={x:Ue,y:Ye},ut={x:ze,y:Ye};return De===">"?(nt.x-=$e,bt.x-=$e,wt.x-=$e,ut.x-=$e):De==="/"?(wt.x-=$e,ut.x-=$e,rt.x-=$e/2,ht.x-=$e/2):De==="\\"?(nt.x-=$e,bt.x-=$e,rt.x-=$e/2,ht.x-=$e/2):De==="<"&&(rt.x-=$e,ht.x-=$e),xe(nt),xe(ut),xe(rt),xe(bt),xe(wt),xe(ht),"M"+Se(nt.x,nt.y)+"L"+Se(bt.x,bt.y)+"L"+Se(ht.x,ht.y)+"L"+Se(wt.x,wt.y)+"L"+Se(ut.x,ut.y)+"L"+Se(rt.x,rt.y)+"Z"},toMoveInsideSlice:Ie,makeUpdateSliceInterpolator:Ne,makeUpdateTextInterpolator:qe,handleSlicesExit:ve,hasTransition:A,strTransform:Ce}):T.remove()}},96362:function(R,E,e){var w=e(39898),k=e(7901),i=e(71828),_=e(2791),y=e(72597).resizeText,h=e(43467);function l(t,o,r,n,a){var s,u,p=(a||{}).hovered,c=o.data.data,b=c.i,g=c.color,f=_.isHierarchyRoot(o),v=1;if(p)s=r._hovered.marker.line.color,u=r._hovered.marker.line.width;else if(f&&g===r.root.color)v=100,s="rgba(0,0,0,0)",u=0;else if(s=i.castOption(r,b,"marker.line.color")||k.defaultLine,u=i.castOption(r,b,"marker.line.width")||0,!r._hasColorscale&&!o.onPathbar){var m=r.marker.depthfade;if(m){var x,T=k.combine(k.addOpacity(r._backgroundColor,.75),g);if(m===!0){var d=_.getMaxDepth(r);x=isFinite(d)?_.isLeaf(o)?0:r._maxVisibleLayers-(o.data.depth-r._entryDepth):o.data.height+1}else x=o.data.depth-r._entryDepth,r._atRootLevel||x++;if(x>0)for(var M=0;M<x;M++){var A=.5*M/x;g=k.combine(k.addOpacity(T,A),g)}}}t.call(h,o,r,n,g).style("stroke-width",u).call(k.stroke,s).style("opacity",v)}R.exports={style:function(t){var o=t._fullLayout._treemaplayer.selectAll(".trace");y(t,o,"treemap"),o.each(function(r){var n=w.select(this),a=r[0].trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(s){w.select(this).call(l,s,a,t,{hovered:!1})})})},styleOne:l}},68875:function(R,E,e){var w=e(53522),k=e(1426).extendFlat,i=e(12663).axisHoverFormat;R.exports={y:w.y,x:w.x,x0:w.x0,y0:w.y0,xhoverformat:i("x"),yhoverformat:i("y"),name:k({},w.name,{}),orientation:k({},w.orientation,{}),bandwidth:{valType:"number",min:0,editType:"calc"},scalegroup:{valType:"string",dflt:"",editType:"calc"},scalemode:{valType:"enumerated",values:["width","count"],dflt:"width",editType:"calc"},spanmode:{valType:"enumerated",values:["soft","hard","manual"],dflt:"soft",editType:"calc"},span:{valType:"info_array",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}],editType:"calc"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,dflt:2,editType:"style"},editType:"plot"},fillcolor:w.fillcolor,points:k({},w.boxpoints,{}),jitter:k({},w.jitter,{}),pointpos:k({},w.pointpos,{}),width:k({},w.width,{}),marker:w.marker,text:w.text,hovertext:w.hovertext,hovertemplate:w.hovertemplate,quartilemethod:w.quartilemethod,box:{visible:{valType:"boolean",dflt:!1,editType:"plot"},width:{valType:"number",min:0,max:1,dflt:.25,editType:"plot"},fillcolor:{valType:"color",editType:"style"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"style"},editType:"plot"},meanline:{visible:{valType:"boolean",dflt:!1,editType:"plot"},color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"plot"},side:{valType:"enumerated",values:["both","positive","negative"],dflt:"both",editType:"calc"},offsetgroup:w.offsetgroup,alignmentgroup:w.alignmentgroup,selected:w.selected,unselected:w.unselected,hoveron:{valType:"flaglist",flags:["violins","points","kde"],dflt:"violins+points+kde",extras:["all"],editType:"style"}}},38603:function(R,E,e){var w=e(71828),k=e(89298),i=e(48518),_=e(60168),y=e(50606).BADNUM;function h(t,o,r){var n=o.max-o.min;if(!n)return t.bandwidth?t.bandwidth:0;if(t.bandwidth)return Math.max(t.bandwidth,n/1e4);var a=r.length,s=w.stdev(r,a-1,o.mean);return Math.max(function(u,p,c){return 1.059*Math.min(p,c/1.349)*Math.pow(u,-.2)}(a,s,o.q3-o.q1),n/100)}function l(t,o,r,n){var a,s=t.spanmode,u=t.span||[],p=[o.min,o.max],c=[o.min-2*n,o.max+2*n];function b(f){var v=u[f],m=r.type==="multicategory"?r.r2c(v):r.d2c(v,0,t[o.valLetter+"calendar"]);return m===y?c[f]:m}var g={type:"linear",range:a=s==="soft"?c:s==="hard"?p:[b(0),b(1)]};return k.setConvert(g),g.cleanRange(),a}R.exports=function(t,o){var r=i(t,o);if(r[0].t.empty)return r;for(var n=t._fullLayout,a=k.getFromId(t,o[o.orientation==="h"?"xaxis":"yaxis"]),s=1/0,u=-1/0,p=0,c=0,b=0;b<r.length;b++){var g=r[b],f=g.pts.map(_.extractVal),v=g.bandwidth=h(o,g,f),m=g.span=l(o,g,a,v);if(g.min===g.max&&v===0)m=g.span=[g.min,g.max],g.density=[{v:1,t:m[0]}],g.bandwidth=v,p=Math.max(p,1);else{var x=m[1]-m[0],T=Math.ceil(x/(v/3)),d=x/T;if(!isFinite(d)||!isFinite(T))return w.error("Something went wrong with computing the violin span"),r[0].t.empty=!0,r;var M=_.makeKDE(g,o,f);g.density=new Array(T);for(var A=0,C=m[0];C<m[1]+d/2;A++,C+=d){var P=M(C);g.density[A]={v:P,t:C},p=Math.max(p,P)}}c=Math.max(c,f.length),s=Math.min(s,m[0]),u=Math.max(u,m[1])}var O=k.findExtremes(a,[s,u],{padded:!0});if(o._extremes[a._id]=O,o.width)r[0].t.maxKDE=p;else{var z=n._violinScaleGroupStats,B=o.scalegroup,Y=z[B];Y?(Y.maxKDE=Math.max(Y.maxKDE,p),Y.maxCount=Math.max(Y.maxCount,c)):z[B]={maxKDE:p,maxCount:c}}return r[0].t.labels.kde=w._(t,"kde:"),r}},86403:function(R,E,e){var w=e(37188).setPositionOffset,k=["v","h"];R.exports=function(i,_){for(var y=i.calcdata,h=_.xaxis,l=_.yaxis,t=0;t<k.length;t++){for(var o=k[t],r=o==="h"?l:h,n=[],a=0;a<y.length;a++){var s=y[a],u=s[0].t,p=s[0].trace;p.visible!==!0||p.type!=="violin"||u.empty||p.orientation!==o||p.xaxis!==h._id||p.yaxis!==l._id||n.push(a)}w("violin",i,n,r)}}},15899:function(R,E,e){var w=e(71828),k=e(7901),i=e(36411),_=e(68875);R.exports=function(y,h,l,t){function o(x,T){return w.coerce(y,h,_,x,T)}function r(x,T){return w.coerce2(y,h,_,x,T)}if(i.handleSampleDefaults(y,h,o,t),h.visible!==!1){o("bandwidth"),o("side"),o("width")||(o("scalegroup",h.name),o("scalemode"));var n,a=o("span");Array.isArray(a)&&(n="manual"),o("spanmode",n);var s=o("line.color",(y.marker||{}).color||l),u=o("line.width"),p=o("fillcolor",k.addOpacity(h.line.color,.5));i.handlePointsDefaults(y,h,o,{prefix:""});var c=r("box.width"),b=r("box.fillcolor",p),g=r("box.line.color",s),f=r("box.line.width",u);o("box.visible",!!(c||b||g||f))||(h.box={visible:!1});var v=r("meanline.color",s),m=r("meanline.width",u);o("meanline.visible",!!(v||m))||(h.meanline={visible:!1}),o("quartilemethod")}}},60168:function(R,E,e){var w=e(71828),k=function(i){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*i*i)};E.makeKDE=function(i,_,y){var h=y.length,l=k,t=i.bandwidth,o=1/(h*t);return function(r){for(var n=0,a=0;a<h;a++)n+=l((r-y[a])/t);return o*n}},E.getPositionOnKdePath=function(i,_,y){var h,l;_.orientation==="h"?(h="y",l="x"):(h="x",l="y");var t=w.findPointOnPath(i.path,y,l,{pathLength:i.pathLength}),o=i.posCenterPx,r=t[h];return[r,_.side==="both"?2*o-r:o]},E.getKdeValue=function(i,_,y){var h=i.pts.map(E.extractVal);return E.makeKDE(i,_,h)(y)/i.posDensityScale},E.extractVal=function(i){return i.v}},57634:function(R,E,e){var w=e(7901),k=e(71828),i=e(89298),_=e(41868),y=e(60168);R.exports=function(h,l,t,o,r){r||(r={});var n,a,s=r.hoverLayer,u=h.cd,p=u[0].trace,c=p.hoveron,b=c.indexOf("violins")!==-1,g=c.indexOf("kde")!==-1,f=[];if(b||g){var v=_.hoverOnBoxes(h,l,t,o);if(g&&v.length>0){var m,x,T,d,M,A=h.xa,C=h.ya;p.orientation==="h"?(M=l,m="y",T=C,x="x",d=A):(M=t,m="x",T=A,x="y",d=C);var P=u[h.index];if(M>=P.span[0]&&M<=P.span[1]){var O=k.extendFlat({},h),z=d.c2p(M,!0),B=y.getKdeValue(P,p,M),Y=y.getPositionOnKdePath(P,p,z),D=T._offset,G=T._length;O[m+"0"]=Y[0],O[m+"1"]=Y[1],O[x+"0"]=O[x+"1"]=z,O[x+"Label"]=x+": "+i.hoverLabelText(d,M,p[x+"hoverformat"])+", "+u[0].t.labels.kde+" "+B.toFixed(3);for(var V=0,j=0;j<v.length;j++)if(v[j].attr==="med"){V=j;break}O.spikeDistance=v[V].spikeDistance;var W=m+"Spike";O[W]=v[V][W],v[V].spikeDistance=void 0,v[V][W]=void 0,O.hovertemplate=!1,f.push(O),(a={})[m+"1"]=k.constrain(D+Y[0],D,D+G),a[m+"2"]=k.constrain(D+Y[1],D,D+G),a[x+"1"]=a[x+"2"]=d._offset+z}}b&&(f=f.concat(v))}c.indexOf("points")!==-1&&(n=_.hoverOnPoints(h,l,t));var Z=s.selectAll(".violinline-"+p.uid).data(a?[0]:[]);return Z.enter().append("line").classed("violinline-"+p.uid,!0).attr("stroke-width",1.5),Z.exit().remove(),Z.attr(a).call(w.stroke,h.color),o==="closest"?n?[n]:f:(n&&f.push(n),f)}},47462:function(R,E,e){R.exports={attributes:e(68875),layoutAttributes:e(9228),supplyDefaults:e(15899),crossTraceDefaults:e(36411).crossTraceDefaults,supplyLayoutDefaults:e(33598),calc:e(38603),crossTraceCalc:e(86403),plot:e(28443),style:e(31847),styleOnSelect:e(16296).styleOnSelect,hoverPoints:e(57634),selectPoints:e(24626),moduleType:"trace",name:"violin",basePlotModule:e(93612),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","violinLayout","zoomScale"],meta:{}}},9228:function(R,E,e){var w=e(40094),k=e(71828).extendFlat;R.exports={violinmode:k({},w.boxmode,{}),violingap:k({},w.boxgap,{}),violingroupgap:k({},w.boxgroupgap,{})}},33598:function(R,E,e){var w=e(71828),k=e(9228),i=e(4199);R.exports=function(_,y,h){i._supply(_,y,h,function(l,t){return w.coerce(_,y,k,l,t)},"violin")}},28443:function(R,E,e){var w=e(39898),k=e(71828),i=e(91424),_=e(86047),y=e(34621),h=e(60168);R.exports=function(l,t,o,r){var n=l._context.staticPlot,a=l._fullLayout,s=t.xaxis,u=t.yaxis;function p(c,b){var g=y(c,{xaxis:s,yaxis:u,trace:b,connectGaps:!0,baseTolerance:.75,shape:"spline",simplify:!0,linearized:!0});return i.smoothopen(g[0],1)}k.makeTraceGroups(r,o,"trace violins").each(function(c){var b=w.select(this),g=c[0],f=g.t,v=g.trace;if(v.visible!==!0||f.empty)b.remove();else{var m=f.bPos,x=f.bdPos,T=t[f.valLetter+"axis"],d=t[f.posLetter+"axis"],M=v.side==="both",A=M||v.side==="positive",C=M||v.side==="negative",P=b.selectAll("path.violin").data(k.identity);P.enter().append("path").style("vector-effect",n?"none":"non-scaling-stroke").attr("class","violin"),P.exit().remove(),P.each(function(j){var W,Z,ie,te,J,X,ee,re,oe=w.select(this),ue=j.density,ce=ue.length,de=d.c2l(j.pos+m,!0),me=d.l2p(de);if(v.width)W=f.maxKDE/x;else{var _e=a._violinScaleGroupStats[v.scalegroup];W=v.scalemode==="count"?_e.maxKDE/x*(_e.maxCount/j.pts.length):_e.maxKDE/x}if(A){for(ee=new Array(ce),J=0;J<ce;J++)(re=ee[J]={})[f.posLetter]=de+ue[J].v/W,re[f.valLetter]=T.c2l(ue[J].t,!0);Z=p(ee,v)}if(C){for(ee=new Array(ce),X=0,J=ce-1;X<ce;X++,J--)(re=ee[X]={})[f.posLetter]=de-ue[J].v/W,re[f.valLetter]=T.c2l(ue[J].t,!0);ie=p(ee,v)}if(M)te=Z+"L"+ie.substr(1)+"Z";else{var Se=[me,T.c2p(ue[0].t)],we=[me,T.c2p(ue[ce-1].t)];v.orientation==="h"&&(Se.reverse(),we.reverse()),te=A?"M"+Se+"L"+Z.substr(1)+"L"+we:"M"+we+"L"+ie.substr(1)+"L"+Se}oe.attr("d",te),j.posCenterPx=me,j.posDensityScale=W*x,j.path=oe.node(),j.pathLength=j.path.getTotalLength()/(M?2:1)});var O,z,B,Y=v.box,D=Y.width,G=(Y.line||{}).width;M?(O=x*D,z=0):A?(O=[0,x*D/2],z=G*{x:1,y:-1}[f.posLetter]):(O=[x*D/2,0],z=G*{x:-1,y:1}[f.posLetter]),_.plotBoxAndWhiskers(b,{pos:d,val:T},v,{bPos:m,bdPos:O,bPosPxOffset:z}),_.plotBoxMean(b,{pos:d,val:T},v,{bPos:m,bdPos:O,bPosPxOffset:z}),!v.box.visible&&v.meanline.visible&&(B=k.identity);var V=b.selectAll("path.meanline").data(B||[]);V.enter().append("path").attr("class","meanline").style("fill","none").style("vector-effect",n?"none":"non-scaling-stroke"),V.exit().remove(),V.each(function(j){var W=T.c2p(j.mean,!0),Z=h.getPositionOnKdePath(j,v,W);w.select(this).attr("d",v.orientation==="h"?"M"+W+","+Z[0]+"V"+Z[1]:"M"+Z[0]+","+W+"H"+Z[1])}),_.plotPoints(b,{x:s,y:u},v,f)}})}},31847:function(R,E,e){var w=e(39898),k=e(7901),i=e(16296).stylePoints;R.exports=function(_){var y=w.select(_).selectAll("g.trace.violins");y.style("opacity",function(h){return h[0].trace.opacity}),y.each(function(h){var l=h[0].trace,t=w.select(this),o=l.box||{},r=o.line||{},n=l.meanline||{},a=n.width;t.selectAll("path.violin").style("stroke-width",l.line.width+"px").call(k.stroke,l.line.color).call(k.fill,l.fillcolor),t.selectAll("path.box").style("stroke-width",r.width+"px").call(k.stroke,r.color).call(k.fill,o.fillcolor);var s={"stroke-width":a+"px","stroke-dasharray":2*a+"px,"+a+"px"};t.selectAll("path.mean").style(s).call(k.stroke,n.color),t.selectAll("path.meanline").style(s).call(k.stroke,n.color),i(t,l,_)})}},16336:function(R,E,e){var w=e(50693),k=e(16249),i=e(54532),_=e(9012),y=e(1426).extendFlat,h=e(30962).overrideAll,l=R.exports=h(y({x:k.x,y:k.y,z:k.z,value:k.value,isomin:k.isomin,isomax:k.isomax,surface:k.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:k.slices,caps:k.caps,text:k.text,hovertext:k.hovertext,xhoverformat:k.xhoverformat,yhoverformat:k.yhoverformat,zhoverformat:k.zhoverformat,valuehoverformat:k.valuehoverformat,hovertemplate:k.hovertemplate},w("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:k.colorbar,opacity:k.opacity,opacityscale:i.opacityscale,lightposition:k.lightposition,lighting:k.lighting,flatshading:k.flatshading,contour:k.contour,hoverinfo:y({},_.hoverinfo),showlegend:y({},_.showlegend,{dflt:!1})}),"calc","nested");l.x.editType=l.y.editType=l.z.editType=l.value.editType="calc+clearAxisTypes",l.transforms=void 0},64809:function(R,E,e){var w=e(9330).gl_mesh3d,k=e(81697).parseColorScale,i=e(78614),_=e(21081).extractOpts,y=e(90060),h=e(22674).findNearestOnAxis,l=e(22674).generateIsoMeshes;function t(r,n,a){this.scene=r,this.uid=a,this.mesh=n,this.name="",this.data=null,this.showContour=!1}var o=t.prototype;o.handlePick=function(r){if(r.object===this.mesh){var n=r.data.index,a=this.data._meshX[n],s=this.data._meshY[n],u=this.data._meshZ[n],p=this.data._Ys.length,c=this.data._Zs.length,b=h(a,this.data._Xs).id,g=h(s,this.data._Ys).id,f=h(u,this.data._Zs).id,v=r.index=f+c*g+c*p*b;r.traceCoordinate=[this.data._meshX[v],this.data._meshY[v],this.data._meshZ[v],this.data._value[v]];var m=this.data.hovertext||this.data.text;return Array.isArray(m)&&m[v]!==void 0?r.textLabel=m[v]:m&&(r.textLabel=m),!0}},o.update=function(r){var n=this.scene,a=n.fullSceneLayout;function s(c,b,g,f){return b.map(function(v){return c.d2l(v,0,f)*g})}this.data=l(r);var u={positions:y(s(a.xaxis,r._meshX,n.dataScale[0],r.xcalendar),s(a.yaxis,r._meshY,n.dataScale[1],r.ycalendar),s(a.zaxis,r._meshZ,n.dataScale[2],r.zcalendar)),cells:y(r._meshI,r._meshJ,r._meshK),lightPosition:[r.lightposition.x,r.lightposition.y,r.lightposition.z],ambient:r.lighting.ambient,diffuse:r.lighting.diffuse,specular:r.lighting.specular,roughness:r.lighting.roughness,fresnel:r.lighting.fresnel,vertexNormalsEpsilon:r.lighting.vertexnormalsepsilon,faceNormalsEpsilon:r.lighting.facenormalsepsilon,opacity:r.opacity,opacityscale:r.opacityscale,contourEnable:r.contour.show,contourColor:i(r.contour.color).slice(0,3),contourWidth:r.contour.width,useFacetNormals:r.flatshading},p=_(r);u.vertexIntensity=r._meshIntensity,u.vertexIntensityBounds=[p.min,p.max],u.colormap=k(r),this.mesh.update(u)},o.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()},R.exports=function(r,n){var a=r.glplot.gl,s=w({gl:a}),u=new t(r,s,n.uid);return s._trace=u,u.update(n),r.glplot.add(s),u}},47651:function(R,E,e){var w=e(71828),k=e(16336),i=e(82738).supplyIsoDefaults,_=e(91831).opacityscaleDefaults;R.exports=function(y,h,l,t){function o(r,n){return w.coerce(y,h,k,r,n)}i(y,h,l,t,o),_(y,h,t,o)}},17659:function(R,E,e){R.exports={attributes:e(16336),supplyDefaults:e(47651),calc:e(56959),colorbar:{min:"cmin",max:"cmax"},plot:e(64809),moduleType:"trace",name:"volume",basePlotModule:e(58547),categories:["gl3d","showLegend"],meta:{}}},43037:function(R,E,e){var w=e(1486),k=e(82196).line,i=e(9012),_=e(12663).axisHoverFormat,y=e(5386).fF,h=e(5386).si,l=e(48334),t=e(1426).extendFlat,o=e(7901);function r(n){return{marker:{color:t({},w.marker.color,{arrayOk:!1,editType:"style"}),line:{color:t({},w.marker.line.color,{arrayOk:!1,editType:"style"}),width:t({},w.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}R.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:w.x,x0:w.x0,dx:w.dx,y:w.y,y0:w.y0,dy:w.dy,xperiod:w.xperiod,yperiod:w.yperiod,xperiod0:w.xperiod0,yperiod0:w.yperiod0,xperiodalignment:w.xperiodalignment,yperiodalignment:w.yperiodalignment,xhoverformat:_("x"),yhoverformat:_("y"),hovertext:w.hovertext,hovertemplate:y({},{keys:l.eventDataKeys}),hoverinfo:t({},i.hoverinfo,{flags:["name","x","y","text","initial","delta","final"]}),textinfo:{valType:"flaglist",flags:["label","text","initial","delta","final"],extras:["none"],editType:"plot",arrayOk:!1},texttemplate:h({editType:"plot"},{keys:l.eventDataKeys.concat(["label"])}),text:w.text,textposition:w.textposition,insidetextanchor:w.insidetextanchor,textangle:w.textangle,textfont:w.textfont,insidetextfont:w.insidetextfont,outsidetextfont:w.outsidetextfont,constraintext:w.constraintext,cliponaxis:w.cliponaxis,orientation:w.orientation,offset:w.offset,width:w.width,increasing:r(),decreasing:r(),totals:r(),connector:{line:{color:t({},k.color,{dflt:o.defaultLine}),width:t({},k.width,{editType:"plot"}),dash:k.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:w.offsetgroup,alignmentgroup:w.alignmentgroup}},52752:function(R,E,e){var w=e(89298),k=e(42973),i=e(71828).mergeArray,_=e(66279),y=e(50606).BADNUM;function h(t){return t==="a"||t==="absolute"}function l(t){return t==="t"||t==="total"}R.exports=function(t,o){var r,n,a,s,u,p,c=w.getFromId(t,o.xaxis||"x"),b=w.getFromId(t,o.yaxis||"y");o.orientation==="h"?(r=c.makeCalcdata(o,"x"),a=b.makeCalcdata(o,"y"),s=k(o,b,"y",a),u=!!o.yperiodalignment,p="y"):(r=b.makeCalcdata(o,"y"),a=c.makeCalcdata(o,"x"),s=k(o,c,"x",a),u=!!o.xperiodalignment,p="x"),n=s.vals;for(var g,f=Math.min(n.length,r.length),v=new Array(f),m=0,x=!1,T=0;T<f;T++){var d=r[T]||0,M=!1;(r[T]!==y||l(o.measure[T])||h(o.measure[T]))&&T+1<f&&(r[T+1]!==y||l(o.measure[T+1])||h(o.measure[T+1]))&&(M=!0);var A=v[T]={i:T,p:n[T],s:d,rawS:d,cNext:M};h(o.measure[T])?(m=A.s,A.isSum=!0,A.dir="totals",A.s=m):l(o.measure[T])?(A.isSum=!0,A.dir="totals",A.s=m):(A.isSum=!1,A.dir=A.rawS<0?"decreasing":"increasing",g=A.s,A.s=m+g,m+=g),A.dir==="totals"&&(x=!0),u&&(v[T].orig_p=a[T],v[T][p+"End"]=s.ends[T],v[T][p+"Start"]=s.starts[T]),o.ids&&(A.id=String(o.ids[T])),A.v=(o.base||0)+m}return v.length&&(v[0].hasTotals=x),i(o.text,v,"tx"),i(o.hovertext,v,"htx"),_(v,o),v}},48334:function(R){R.exports={eventDataKeys:["initial","delta","final"]}},70766:function(R,E,e){var w=e(11661).setGroupPositions;R.exports=function(k,i){var _,y,h=k._fullLayout,l=k._fullData,t=k.calcdata,o=i.xaxis,r=i.yaxis,n=[],a=[],s=[];for(y=0;y<l.length;y++){var u=l[y];u.visible===!0&&u.xaxis===o._id&&u.yaxis===r._id&&u.type==="waterfall"&&(_=t[y],u.orientation==="h"?s.push(_):a.push(_),n.push(_))}var p={mode:h.waterfallmode,norm:h.waterfallnorm,gap:h.waterfallgap,groupgap:h.waterfallgroupgap};for(w(k,o,r,a,p),w(k,r,o,s,p),y=0;y<n.length;y++){_=n[y];for(var c=0;c<_.length;c++){var b=_[c];b.isSum===!1&&(b.s0+=c===0?0:_[c-1].s),c+1<_.length&&(_[c].nextP0=_[c+1].p0,_[c].nextS0=_[c+1].s0)}}}},83266:function(R,E,e){var w=e(71828),k=e(26125),i=e(90769).handleText,_=e(67513),y=e(73927),h=e(43037),l=e(7901),t=e(22372),o=t.INCREASING.COLOR,r=t.DECREASING.COLOR;function n(a,s,u){a(s+".marker.color",u),a(s+".marker.line.color",l.defaultLine),a(s+".marker.line.width")}R.exports={supplyDefaults:function(a,s,u,p){function c(g,f){return w.coerce(a,s,h,g,f)}if(_(a,s,p,c)){y(a,s,p,c),c("xhoverformat"),c("yhoverformat"),c("measure"),c("orientation",s.x&&!s.y?"h":"v"),c("base"),c("offset"),c("width"),c("text"),c("hovertext"),c("hovertemplate");var b=c("textposition");i(a,s,p,c,b,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),s.textposition!=="none"&&(c("texttemplate"),s.texttemplate||c("textinfo")),n(c,"increasing",o),n(c,"decreasing",r),n(c,"totals","#4499FF"),c("connector.visible")&&(c("connector.mode"),c("connector.line.width")&&(c("connector.line.color"),c("connector.line.dash")))}else s.visible=!1},crossTraceDefaults:function(a,s){var u,p;function c(g){return w.coerce(p._input,p,h,g)}if(s.waterfallmode==="group")for(var b=0;b<a.length;b++)u=(p=a[b])._input,k(u,p,s,c)}}},58593:function(R){R.exports=function(E,e){return E.x="xVal"in e?e.xVal:e.x,E.y="yVal"in e?e.yVal:e.y,"initial"in e&&(E.initial=e.initial),"delta"in e&&(E.delta=e.delta),"final"in e&&(E.final=e.final),e.xa&&(E.xaxis=e.xa),e.ya&&(E.yaxis=e.ya),E}},61326:function(R,E,e){var w=e(89298).hoverLabelText,k=e(7901).opacity,i=e(95423).hoverOnBars,_=e(22372),y=_.INCREASING.SYMBOL,h=_.DECREASING.SYMBOL;R.exports=function(l,t,o,r,n){var a=i(l,t,o,r,n);if(a){var s=a.cd,u=s[0].trace,p=u.orientation==="h",c=p?"x":"y",b=p?l.xa:l.ya,g=s[a.index],f=g.isSum?g.b+g.s:g.rawS;a.initial=g.b+g.s-f,a.delta=f,a.final=a.initial+a.delta;var v=A(Math.abs(a.delta));a.deltaLabel=f<0?"("+v+")":v,a.finalLabel=A(a.final),a.initialLabel=A(a.initial);var m=g.hi||u.hoverinfo,x=[];if(m&&m!=="none"&&m!=="skip"){var T=m==="all",d=m.split("+"),M=function(C){return T||d.indexOf(C)!==-1};g.isSum||(!M("final")||M(p?"x":"y")||x.push(a.finalLabel),M("delta")&&(f<0?x.push(a.deltaLabel+" "+h):x.push(a.deltaLabel+" "+y)),M("initial")&&x.push("Initial: "+a.initialLabel))}return x.length&&(a.extraText=x.join("<br>")),a.color=function(C,P){var O=C[P.dir].marker,z=O.color,B=O.line.color,Y=O.line.width;return k(z)?z:k(B)&&Y?B:void 0}(u,g),[a]}function A(C){return w(b,C,u[c+"hoverformat"])}}},19990:function(R,E,e){R.exports={attributes:e(43037),layoutAttributes:e(13494),supplyDefaults:e(83266).supplyDefaults,crossTraceDefaults:e(83266).crossTraceDefaults,supplyLayoutDefaults:e(5176),calc:e(52752),crossTraceCalc:e(70766),plot:e(30436),style:e(55750).style,hoverPoints:e(61326),eventData:e(58593),selectPoints:e(81974),moduleType:"trace",name:"waterfall",basePlotModule:e(93612),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}},13494:function(R){R.exports={waterfallmode:{valType:"enumerated",values:["group","overlay"],dflt:"group",editType:"calc"},waterfallgap:{valType:"number",min:0,max:1,editType:"calc"},waterfallgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}},5176:function(R,E,e){var w=e(71828),k=e(13494);R.exports=function(i,_,y){var h=!1;function l(r,n){return w.coerce(i,_,k,r,n)}for(var t=0;t<y.length;t++){var o=y[t];if(o.visible&&o.type==="waterfall"){h=!0;break}}h&&(l("waterfallmode"),l("waterfallgap",.2),l("waterfallgroupgap"))}},30436:function(R,E,e){var w=e(39898),k=e(71828),i=e(91424),_=e(50606).BADNUM,y=e(17295),h=e(72597).clearMinTextSize;R.exports=function(l,t,o,r){var n=l._fullLayout;h("waterfall",n),y.plot(l,t,o,r,{mode:n.waterfallmode,norm:n.waterfallmode,gap:n.waterfallgap,groupgap:n.waterfallgroupgap}),function(a,s,u,p){var c=s.xaxis,b=s.yaxis;k.makeTraceGroups(p,u,"trace bars").each(function(g){var f=w.select(this),v=g[0].trace,m=k.ensureSingle(f,"g","lines");if(v.connector&&v.connector.visible){var x=v.orientation==="h",T=v.connector.mode,d=m.selectAll("g.line").data(k.identity);d.enter().append("g").classed("line",!0),d.exit().remove();var M=d.size();d.each(function(A,C){if(C===M-1||A.cNext){var P=function(Y,D,G,V){var j=[],W=[],Z=V?D:G,ie=V?G:D;return j[0]=Z.c2p(Y.s0,!0),W[0]=ie.c2p(Y.p0,!0),j[1]=Z.c2p(Y.s1,!0),W[1]=ie.c2p(Y.p1,!0),j[2]=Z.c2p(Y.nextS0,!0),W[2]=ie.c2p(Y.nextP0,!0),V?[j,W]:[W,j]}(A,c,b,x),O=P[0],z=P[1],B="";O[0]!==_&&z[0]!==_&&O[1]!==_&&z[1]!==_&&(T==="spanning"&&!A.isSum&&C>0&&(B+=x?"M"+O[0]+","+z[1]+"V"+z[0]:"M"+O[1]+","+z[0]+"H"+O[0]),T!=="between"&&(A.isSum||C<M-1)&&(B+=x?"M"+O[1]+","+z[0]+"V"+z[1]:"M"+O[0]+","+z[1]+"H"+O[1]),O[2]!==_&&z[2]!==_&&(B+=x?"M"+O[1]+","+z[1]+"V"+z[2]:"M"+O[1]+","+z[1]+"H"+O[2])),B===""&&(B="M0,0Z"),k.ensureSingle(w.select(this),"path").attr("d",B).call(i.setClipUrl,s.layerClipId,a)}})}else m.remove()})}(l,t,o,r)}},55750:function(R,E,e){var w=e(39898),k=e(91424),i=e(7901),_=e(37822).DESELECTDIM,y=e(16688),h=e(72597).resizeText,l=y.styleTextPoints;R.exports={style:function(t,o,r){var n=r||w.select(t).selectAll("g.waterfalllayer").selectAll("g.trace");h(t,n,"waterfall"),n.style("opacity",function(a){return a[0].trace.opacity}),n.each(function(a){var s=w.select(this),u=a[0].trace;s.selectAll(".point > path").each(function(p){if(!p.isBlank){var c=u[p.dir].marker;w.select(this).call(i.fill,c.color).call(i.stroke,c.line.color).call(k.dashLine,c.line.dash,c.line.width).style("opacity",u.selectedpoints&&!p.selected?_:1)}}),l(s,u,t),s.selectAll(".lines").each(function(){var p=u.connector.line;k.lineGroupStyle(w.select(this).selectAll("path"),p.width,p.color,p.dash)})})}}},82887:function(R,E,e){var w=e(89298),k=e(71828),i=e(86281),_=e(79344).p,y=e(50606).BADNUM;E.moduleType="transform",E.name="aggregate";var h=E.attributes={enabled:{valType:"boolean",dflt:!0,editType:"calc"},groups:{valType:"string",strict:!0,noBlank:!0,arrayOk:!0,dflt:"x",editType:"calc"},aggregations:{_isLinkedToArray:"aggregation",target:{valType:"string",editType:"calc"},func:{valType:"enumerated",values:["count","sum","avg","median","mode","rms","stddev","min","max","first","last","change","range"],dflt:"first",editType:"calc"},funcmode:{valType:"enumerated",values:["sample","population"],dflt:"sample",editType:"calc"},enabled:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"},editType:"calc"},l=h.aggregations;function t(a,s,u,p){if(p.enabled){for(var c=p.target,b=k.nestedProperty(s,c),g=b.get(),f=function(x,T){var d=x.func,M=T.d2c,A=T.c2d;switch(d){case"count":return o;case"first":return r;case"last":return n;case"sum":return function(C,P){for(var O=0,z=0;z<P.length;z++){var B=M(C[P[z]]);B!==y&&(O+=B)}return A(O)};case"avg":return function(C,P){for(var O=0,z=0,B=0;B<P.length;B++){var Y=M(C[P[B]]);Y!==y&&(O+=Y,z++)}return z?A(O/z):y};case"min":return function(C,P){for(var O=1/0,z=0;z<P.length;z++){var B=M(C[P[z]]);B!==y&&(O=Math.min(O,B))}return O===1/0?y:A(O)};case"max":return function(C,P){for(var O=-1/0,z=0;z<P.length;z++){var B=M(C[P[z]]);B!==y&&(O=Math.max(O,B))}return O===-1/0?y:A(O)};case"range":return function(C,P){for(var O=1/0,z=-1/0,B=0;B<P.length;B++){var Y=M(C[P[B]]);Y!==y&&(O=Math.min(O,Y),z=Math.max(z,Y))}return z===-1/0||O===1/0?y:A(z-O)};case"change":return function(C,P){var O=M(C[P[0]]),z=M(C[P[P.length-1]]);return O===y||z===y?y:A(z-O)};case"median":return function(C,P){for(var O=[],z=0;z<P.length;z++){var B=M(C[P[z]]);B!==y&&O.push(B)}if(!O.length)return y;O.sort(k.sorterAsc);var Y=(O.length-1)/2;return A((O[Math.floor(Y)]+O[Math.ceil(Y)])/2)};case"mode":return function(C,P){for(var O={},z=0,B=y,Y=0;Y<P.length;Y++){var D=M(C[P[Y]]);if(D!==y){var G=O[D]=(O[D]||0)+1;G>z&&(z=G,B=D)}}return z?A(B):y};case"rms":return function(C,P){for(var O=0,z=0,B=0;B<P.length;B++){var Y=M(C[P[B]]);Y!==y&&(O+=Y*Y,z++)}return z?A(Math.sqrt(O/z)):y};case"stddev":return function(C,P){var O,z=0,B=0,Y=1,D=y;for(O=0;O<P.length&&D===y;O++)D=M(C[P[O]]);if(D===y)return y;for(;O<P.length;O++){var G=M(C[P[O]]);if(G!==y){var V=G-D;z+=V,B+=V*V,Y++}}var j=x.funcmode==="sample"?Y-1:Y;return j?Math.sqrt((B-z*z/Y)/j):0}}}(p,w.getDataConversions(a,s,c,g)),v=new Array(u.length),m=0;m<u.length;m++)v[m]=f(g,u[m]);b.set(v),p.func==="count"&&k.pushUnique(s._arrayAttrs,c)}}function o(a,s){return s.length}function r(a,s){return a[s[0]]}function n(a,s){return a[s[s.length-1]]}E.supplyDefaults=function(a,s){var u,p={};function c(A,C){return k.coerce(a,p,h,A,C)}if(!c("enabled"))return p;var b=i.findArrayAttributes(s),g={};for(u=0;u<b.length;u++)g[b[u]]=1;var f=c("groups");if(!Array.isArray(f)){if(!g[f])return p.enabled=!1,p;g[f]=0}var v,m=a.aggregations||[],x=p.aggregations=new Array(m.length);function T(A,C){return k.coerce(m[u],v,l,A,C)}for(u=0;u<m.length;u++){v={_index:u};var d=T("target"),M=T("func");T("enabled")&&d&&(g[d]||M==="count"&&g[d]===void 0)?(M==="stddev"&&T("funcmode"),g[d]=0,x[u]=v):x[u]={enabled:!1,_index:u}}for(u=0;u<b.length;u++)g[b[u]]&&x.push({target:b[u],func:l.func.dflt,enabled:!0,_index:-1});return p},E.calcTransform=function(a,s,u){if(u.enabled){var p=u.groups,c=k.getTargetArray(s,{target:p});if(c){var b,g,f,v,m={},x={},T=[],d=_(s.transforms,u),M=c.length;for(s._length&&(M=Math.min(M,s._length)),b=0;b<M;b++)(f=m[g=c[b]])===void 0?(m[g]=T.length,v=[b],T.push(v),x[m[g]]=d(b)):(T[f].push(b),x[m[g]]=(x[m[g]]||[]).concat(d(b)));u._indexToPoints=x;var A=u.aggregations;for(b=0;b<A.length;b++)t(a,s,T,A[b]);typeof p=="string"&&t(a,s,T,{target:p,func:"first",enabled:!0}),s._length=T.length}}}},14382:function(R,E,e){var w=e(71828),k=e(73972),i=e(89298),_=e(79344).p,y=e(74808),h=y.COMPARISON_OPS,l=y.INTERVAL_OPS,t=y.SET_OPS;E.moduleType="transform",E.name="filter",E.attributes={enabled:{valType:"boolean",dflt:!0,editType:"calc"},target:{valType:"string",strict:!0,noBlank:!0,arrayOk:!0,dflt:"x",editType:"calc"},operation:{valType:"enumerated",values:[].concat(h).concat(l).concat(t),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},preservegaps:{valType:"boolean",dflt:!1,editType:"calc"},editType:"calc"},E.supplyDefaults=function(o){var r={};function n(u,p){return w.coerce(o,r,E.attributes,u,p)}if(n("enabled")){var a=n("target");if(w.isArrayOrTypedArray(a)&&a.length===0)return r.enabled=!1,r;n("preservegaps"),n("operation"),n("value");var s=k.getComponentMethod("calendars","handleDefaults");s(o,r,"valuecalendar",null),s(o,r,"targetcalendar",null)}return r},E.calcTransform=function(o,r,n){if(n.enabled){var a=w.getTargetArray(r,n);if(a){var s=n.target,u=a.length;r._length&&(u=Math.min(u,r._length));var p=n.targetcalendar,c=r._arrayAttrs,b=n.preservegaps;if(typeof s=="string"){var g=w.nestedProperty(r,s+"calendar").get();g&&(p=g)}var f,v,m=function(P,O,z){var B=P.operation,Y=P.value,D=Array.isArray(Y);function G(Z){return Z.indexOf(B)!==-1}var V,j=function(Z){return O(Z,0,P.valuecalendar)},W=function(Z){return O(Z,0,z)};switch(G(h)?V=j(D?Y[0]:Y):G(l)?V=D?[j(Y[0]),j(Y[1])]:[j(Y),j(Y)]:G(t)&&(V=D?Y.map(j):[j(Y)]),B){case"=":return function(Z){return W(Z)===V};case"!=":return function(Z){return W(Z)!==V};case"<":return function(Z){return W(Z)<V};case"<=":return function(Z){return W(Z)<=V};case">":return function(Z){return W(Z)>V};case">=":return function(Z){return W(Z)>=V};case"[]":return function(Z){var ie=W(Z);return ie>=V[0]&&ie<=V[1]};case"()":return function(Z){var ie=W(Z);return ie>V[0]&&ie<V[1]};case"[)":return function(Z){var ie=W(Z);return ie>=V[0]&&ie<V[1]};case"(]":return function(Z){var ie=W(Z);return ie>V[0]&&ie<=V[1]};case"][":return function(Z){var ie=W(Z);return ie<=V[0]||ie>=V[1]};case")(":return function(Z){var ie=W(Z);return ie<V[0]||ie>V[1]};case"](":return function(Z){var ie=W(Z);return ie<=V[0]||ie>V[1]};case")[":return function(Z){var ie=W(Z);return ie<V[0]||ie>=V[1]};case"{}":return function(Z){return V.indexOf(W(Z))!==-1};case"}{":return function(Z){return V.indexOf(W(Z))===-1}}}(n,i.getDataToCoordFunc(o,r,s,a),p),x={},T={},d=0;b?(f=function(P){x[P.astr]=w.extendDeep([],P.get()),P.set(new Array(u))},v=function(P,O){var z=x[P.astr][O];P.get()[O]=z}):(f=function(P){x[P.astr]=w.extendDeep([],P.get()),P.set([])},v=function(P,O){var z=x[P.astr][O];P.get().push(z)}),C(f);for(var M=_(r.transforms,n),A=0;A<u;A++)m(a[A])?(C(v,A),T[d++]=M(A)):b&&d++;n._indexToPoints=T,r._length=d}}function C(P,O){for(var z=0;z<c.length;z++)P(w.nestedProperty(r,c[z]),O)}}},43102:function(R,E,e){var w=e(71828),k=e(86281),i=e(74875),_=e(79344).p;function y(h,l){var t,o,r,n,a,s,u,p,c,b,g=l.transform,f=l.transformIndex,v=h.transforms[f].groups,m=_(h.transforms,g);if(!w.isArrayOrTypedArray(v)||v.length===0)return[h];var x=w.filterUnique(v),T=new Array(x.length),d=v.length,M=k.findArrayAttributes(h),A=g.styles||[],C={};for(t=0;t<A.length;t++)C[A[t].target]=A[t].value;g.styles&&(b=w.keyedContainer(g,"styles","target","value.name"));var P={},O={};for(t=0;t<x.length;t++){P[s=x[t]]=t,O[s]=0,(u=T[t]=w.extendDeepNoArrays({},h))._group=s,u.transforms[f]._indexToPoints={};var z=null;for(b&&(z=b.get(s)),u.name=z||z===""?z:w.templateString(g.nameformat,{trace:h.name,group:s}),p=u.transforms,u.transforms=[],o=0;o<p.length;o++)u.transforms[o]=w.extendDeepNoArrays({},p[o]);for(o=0;o<M.length;o++)w.nestedProperty(u,M[o]).set([])}for(r=0;r<M.length;r++){for(n=M[r],o=0,c=[];o<x.length;o++)c[o]=w.nestedProperty(T[o],n).get();for(a=w.nestedProperty(h,n).get(),o=0;o<d;o++)c[P[v[o]]].push(a[o])}for(o=0;o<d;o++)(u=T[P[v[o]]]).transforms[f]._indexToPoints[O[v[o]]]=m(o),O[v[o]]++;for(t=0;t<x.length;t++)s=x[t],u=T[t],i.clearExpandedTraceDefaultColors(u),u=w.extendDeepNoArrays(u,C[s]||{});return T}E.moduleType="transform",E.name="groupby",E.attributes={enabled:{valType:"boolean",dflt:!0,editType:"calc"},groups:{valType:"data_array",dflt:[],editType:"calc"},nameformat:{valType:"string",editType:"calc"},styles:{_isLinkedToArray:"style",target:{valType:"string",editType:"calc"},value:{valType:"any",dflt:{},editType:"calc",_compareAsJSON:!0},editType:"calc"},editType:"calc"},E.supplyDefaults=function(h,l,t){var o,r={};function n(c,b){return w.coerce(h,r,E.attributes,c,b)}if(!n("enabled"))return r;n("groups"),n("nameformat",t._dataLength>1?"%{group} (%{trace})":"%{group}");var a=h.styles,s=r.styles=[];if(a)for(o=0;o<a.length;o++){var u=s[o]={};w.coerce(a[o],s[o],E.attributes.styles,"target");var p=w.coerce(a[o],s[o],E.attributes.styles,"value");w.isPlainObject(p)?u.value=w.extendDeep({},p):p&&delete u.value}return r},E.transform=function(h,l){var t,o,r,n=[];for(o=0;o<h.length;o++)for(t=y(h[o],l),r=0;r<t.length;r++)n.push(t[r]);return n}},79344:function(R,E){E.p=function(e,w){for(var k,i,_=0;_<e.length&&(k=e[_])!==w;_++)k._indexToPoints&&k.enabled!==!1&&(i=k._indexToPoints);var y=i?function(h){return i[h]}:function(h){return[h]};return y}},32275:function(R,E,e){var w=e(71828),k=e(89298),i=e(79344).p,_=e(50606).BADNUM;E.moduleType="transform",E.name="sort",E.attributes={enabled:{valType:"boolean",dflt:!0,editType:"calc"},target:{valType:"string",strict:!0,noBlank:!0,arrayOk:!0,dflt:"x",editType:"calc"},order:{valType:"enumerated",values:["ascending","descending"],dflt:"ascending",editType:"calc"},editType:"calc"},E.supplyDefaults=function(y){var h={};function l(t,o){return w.coerce(y,h,E.attributes,t,o)}return l("enabled")&&(l("target"),l("order")),h},E.calcTransform=function(y,h,l){if(l.enabled){var t=w.getTargetArray(h,l);if(t){var o=l.target,r=t.length;h._length&&(r=Math.min(r,h._length));var n,a,s=h._arrayAttrs,u=function(v,m,x,T){var d,M=new Array(T),A=new Array(T);for(d=0;d<T;d++)M[d]={v:m[d],i:d};for(M.sort(function(C,P){switch(C.order){case"ascending":return function(O,z){var B=P(O.v),Y=P(z.v);return B===_?1:Y===_?-1:B-Y};case"descending":return function(O,z){var B=P(O.v),Y=P(z.v);return B===_?1:Y===_?-1:Y-B}}}(v,x)),d=0;d<T;d++)A[d]=M[d].i;return A}(l,t,k.getDataToCoordFunc(y,h,o,t),r),p=i(h.transforms,l),c={};for(n=0;n<s.length;n++){var b=w.nestedProperty(h,s[n]),g=b.get(),f=new Array(r);for(a=0;a<r;a++)f[a]=g[u[a]];b.set(f)}for(a=0;a<r;a++)c[a]=p(u[a]);l._indexToPoints=c,h._length=r}}}},11506:function(R,E){E.version="2.24.2"},9330:function(R,E,e){var w,k=e(90386);w=function(){return function(){var i={7386:function(h,l,t){h.exports={alpha_shape:t(2350),convex_hull:t(5537),delaunay_triangulate:t(4419),gl_cone3d:t(1140),gl_error3d:t(3110),gl_heatmap2d:t(6386),gl_line3d:t(6086),gl_mesh3d:t(8116),gl_plot2d:t(2117),gl_plot3d:t(1059),gl_pointcloud2d:t(8271),gl_scatter3d:t(2182),gl_select_box:t(6623),gl_spikes2d:t(3050),gl_streamtube3d:t(7307),gl_surface3d:t(3754),ndarray:t(5050),ndarray_linear_interpolate:t(3581)}},2146:function(h,l,t){function o(ve,Ce){for(var Ae=0;Ae<Ce.length;Ae++){var ze=Ce[Ae];ze.enumerable=ze.enumerable||!1,ze.configurable=!0,"value"in ze&&(ze.writable=!0),Object.defineProperty(ve,ze.key,ze)}}function r(ve,Ce){return r=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Ae,ze){return Ae.__proto__=ze,Ae},r(ve,Ce)}function n(ve){if(ve===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return ve}function a(ve){return a=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(Ce){return Ce.__proto__||Object.getPrototypeOf(Ce)},a(ve)}function s(ve){return s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Ce){return typeof Ce}:function(Ce){return Ce&&typeof Symbol=="function"&&Ce.constructor===Symbol&&Ce!==Symbol.prototype?"symbol":typeof Ce},s(ve)}var u=t(3910),p=t(3187),c=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;l.lW=f,l.h2=50;var b=2147483647;function g(ve){if(ve>b)throw new RangeError('The value "'+ve+'" is invalid for option "size"');var Ce=new Uint8Array(ve);return Object.setPrototypeOf(Ce,f.prototype),Ce}function f(ve,Ce,Ae){if(typeof ve=="number"){if(typeof Ce=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return x(ve)}return v(ve,Ce,Ae)}function v(ve,Ce,Ae){if(typeof ve=="string")return function(Ve,Ye){if(typeof Ye=="string"&&Ye!==""||(Ye="utf8"),!f.isEncoding(Ye))throw new TypeError("Unknown encoding: "+Ye);var $e=0|A(Ve,Ye),rt=g($e),ht=rt.write(Ve,Ye);return ht!==$e&&(rt=rt.slice(0,ht)),rt}(ve,Ce);if(ArrayBuffer.isView(ve))return function(Ve){if(be(Ve,Uint8Array)){var Ye=new Uint8Array(Ve);return d(Ye.buffer,Ye.byteOffset,Ye.byteLength)}return T(Ve)}(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 "+s(ve));if(be(ve,ArrayBuffer)||ve&&be(ve.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(be(ve,SharedArrayBuffer)||ve&&be(ve.buffer,SharedArrayBuffer)))return d(ve,Ce,Ae);if(typeof ve=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var ze=ve.valueOf&&ve.valueOf();if(ze!=null&&ze!==ve)return f.from(ze,Ce,Ae);var Ue=function(Ve){if(f.isBuffer(Ve)){var Ye=0|M(Ve.length),$e=g(Ye);return $e.length===0||Ve.copy($e,0,0,Ye),$e}return Ve.length!==void 0?typeof Ve.length!="number"||Ie(Ve.length)?g(0):T(Ve):Ve.type==="Buffer"&&Array.isArray(Ve.data)?T(Ve.data):void 0}(ve);if(Ue)return Ue;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof ve[Symbol.toPrimitive]=="function")return f.from(ve[Symbol.toPrimitive]("string"),Ce,Ae);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+s(ve))}function m(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 x(ve){return m(ve),g(ve<0?0:0|M(ve))}function T(ve){for(var Ce=ve.length<0?0:0|M(ve.length),Ae=g(Ce),ze=0;ze<Ce;ze+=1)Ae[ze]=255&ve[ze];return Ae}function d(ve,Ce,Ae){if(Ce<0||ve.byteLength<Ce)throw new RangeError('"offset" is outside of buffer bounds');if(ve.byteLength<Ce+(Ae||0))throw new RangeError('"length" is outside of buffer bounds');var ze;return ze=Ce===void 0&&Ae===void 0?new Uint8Array(ve):Ae===void 0?new Uint8Array(ve,Ce):new Uint8Array(ve,Ce,Ae),Object.setPrototypeOf(ze,f.prototype),ze}function M(ve){if(ve>=b)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+b.toString(16)+" bytes");return 0|ve}function A(ve,Ce){if(f.isBuffer(ve))return ve.length;if(ArrayBuffer.isView(ve)||be(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 '+s(ve));var Ae=ve.length,ze=arguments.length>2&&arguments[2]===!0;if(!ze&&Ae===0)return 0;for(var Ue=!1;;)switch(Ce){case"ascii":case"latin1":case"binary":return Ae;case"utf8":case"utf-8":return he(ve).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*Ae;case"hex":return Ae>>>1;case"base64":return fe(ve).length;default:if(Ue)return ze?-1:he(ve).length;Ce=(""+Ce).toLowerCase(),Ue=!0}}function C(ve,Ce,Ae){var ze=!1;if((Ce===void 0||Ce<0)&&(Ce=0),Ce>this.length||((Ae===void 0||Ae>this.length)&&(Ae=this.length),Ae<=0)||(Ae>>>=0)<=(Ce>>>=0))return"";for(ve||(ve="utf8");;)switch(ve){case"hex":return J(this,Ce,Ae);case"utf8":case"utf-8":return W(this,Ce,Ae);case"ascii":return ie(this,Ce,Ae);case"latin1":case"binary":return te(this,Ce,Ae);case"base64":return j(this,Ce,Ae);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return X(this,Ce,Ae);default:if(ze)throw new TypeError("Unknown encoding: "+ve);ve=(ve+"").toLowerCase(),ze=!0}}function P(ve,Ce,Ae){var ze=ve[Ce];ve[Ce]=ve[Ae],ve[Ae]=ze}function O(ve,Ce,Ae,ze,Ue){if(ve.length===0)return-1;if(typeof Ae=="string"?(ze=Ae,Ae=0):Ae>2147483647?Ae=2147483647:Ae<-2147483648&&(Ae=-2147483648),Ie(Ae=+Ae)&&(Ae=Ue?0:ve.length-1),Ae<0&&(Ae=ve.length+Ae),Ae>=ve.length){if(Ue)return-1;Ae=ve.length-1}else if(Ae<0){if(!Ue)return-1;Ae=0}if(typeof Ce=="string"&&(Ce=f.from(Ce,ze)),f.isBuffer(Ce))return Ce.length===0?-1:z(ve,Ce,Ae,ze,Ue);if(typeof Ce=="number")return Ce&=255,typeof Uint8Array.prototype.indexOf=="function"?Ue?Uint8Array.prototype.indexOf.call(ve,Ce,Ae):Uint8Array.prototype.lastIndexOf.call(ve,Ce,Ae):z(ve,[Ce],Ae,ze,Ue);throw new TypeError("val must be string, number or Buffer")}function z(ve,Ce,Ae,ze,Ue){var Ve,Ye=1,$e=ve.length,rt=Ce.length;if(ze!==void 0&&((ze=String(ze).toLowerCase())==="ucs2"||ze==="ucs-2"||ze==="utf16le"||ze==="utf-16le")){if(ve.length<2||Ce.length<2)return-1;Ye=2,$e/=2,rt/=2,Ae/=2}function ht(ut,lt){return Ye===1?ut[lt]:ut.readUInt16BE(lt*Ye)}if(Ue){var nt=-1;for(Ve=Ae;Ve<$e;Ve++)if(ht(ve,Ve)===ht(Ce,nt===-1?0:Ve-nt)){if(nt===-1&&(nt=Ve),Ve-nt+1===rt)return nt*Ye}else nt!==-1&&(Ve-=Ve-nt),nt=-1}else for(Ae+rt>$e&&(Ae=$e-rt),Ve=Ae;Ve>=0;Ve--){for(var bt=!0,wt=0;wt<rt;wt++)if(ht(ve,Ve+wt)!==ht(Ce,wt)){bt=!1;break}if(bt)return Ve}return-1}function B(ve,Ce,Ae,ze){Ae=Number(Ae)||0;var Ue=ve.length-Ae;ze?(ze=Number(ze))>Ue&&(ze=Ue):ze=Ue;var Ve,Ye=Ce.length;for(ze>Ye/2&&(ze=Ye/2),Ve=0;Ve<ze;++Ve){var $e=parseInt(Ce.substr(2*Ve,2),16);if(Ie($e))return Ve;ve[Ae+Ve]=$e}return Ve}function Y(ve,Ce,Ae,ze){return ae(he(Ce,ve.length-Ae),ve,Ae,ze)}function D(ve,Ce,Ae,ze){return ae(function(Ue){for(var Ve=[],Ye=0;Ye<Ue.length;++Ye)Ve.push(255&Ue.charCodeAt(Ye));return Ve}(Ce),ve,Ae,ze)}function G(ve,Ce,Ae,ze){return ae(fe(Ce),ve,Ae,ze)}function V(ve,Ce,Ae,ze){return ae(function(Ue,Ve){for(var Ye,$e,rt,ht=[],nt=0;nt<Ue.length&&!((Ve-=2)<0);++nt)$e=(Ye=Ue.charCodeAt(nt))>>8,rt=Ye%256,ht.push(rt),ht.push($e);return ht}(Ce,ve.length-Ae),ve,Ae,ze)}function j(ve,Ce,Ae){return Ce===0&&Ae===ve.length?u.fromByteArray(ve):u.fromByteArray(ve.slice(Ce,Ae))}function W(ve,Ce,Ae){Ae=Math.min(ve.length,Ae);for(var ze=[],Ue=Ce;Ue<Ae;){var Ve=ve[Ue],Ye=null,$e=Ve>239?4:Ve>223?3:Ve>191?2:1;if(Ue+$e<=Ae){var rt=void 0,ht=void 0,nt=void 0,bt=void 0;switch($e){case 1:Ve<128&&(Ye=Ve);break;case 2:(192&(rt=ve[Ue+1]))==128&&(bt=(31&Ve)<<6|63&rt)>127&&(Ye=bt);break;case 3:rt=ve[Ue+1],ht=ve[Ue+2],(192&rt)==128&&(192&ht)==128&&(bt=(15&Ve)<<12|(63&rt)<<6|63&ht)>2047&&(bt<55296||bt>57343)&&(Ye=bt);break;case 4:rt=ve[Ue+1],ht=ve[Ue+2],nt=ve[Ue+3],(192&rt)==128&&(192&ht)==128&&(192&nt)==128&&(bt=(15&Ve)<<18|(63&rt)<<12|(63&ht)<<6|63&nt)>65535&&bt<1114112&&(Ye=bt)}}Ye===null?(Ye=65533,$e=1):Ye>65535&&(Ye-=65536,ze.push(Ye>>>10&1023|55296),Ye=56320|1023&Ye),ze.push(Ye),Ue+=$e}return function(wt){var ut=wt.length;if(ut<=Z)return String.fromCharCode.apply(String,wt);for(var lt="",Tt=0;Tt<ut;)lt+=String.fromCharCode.apply(String,wt.slice(Tt,Tt+=Z));return lt}(ze)}f.TYPED_ARRAY_SUPPORT=function(){try{var ve=new Uint8Array(1),Ce={foo:function(){return 42}};return Object.setPrototypeOf(Ce,Uint8Array.prototype),Object.setPrototypeOf(ve,Ce),ve.foo()===42}catch{return!1}}(),f.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."),Object.defineProperty(f.prototype,"parent",{enumerable:!0,get:function(){if(f.isBuffer(this))return this.buffer}}),Object.defineProperty(f.prototype,"offset",{enumerable:!0,get:function(){if(f.isBuffer(this))return this.byteOffset}}),f.poolSize=8192,f.from=function(ve,Ce,Ae){return v(ve,Ce,Ae)},Object.setPrototypeOf(f.prototype,Uint8Array.prototype),Object.setPrototypeOf(f,Uint8Array),f.alloc=function(ve,Ce,Ae){return function(ze,Ue,Ve){return m(ze),ze<=0?g(ze):Ue!==void 0?typeof Ve=="string"?g(ze).fill(Ue,Ve):g(ze).fill(Ue):g(ze)}(ve,Ce,Ae)},f.allocUnsafe=function(ve){return x(ve)},f.allocUnsafeSlow=function(ve){return x(ve)},f.isBuffer=function(ve){return ve!=null&&ve._isBuffer===!0&&ve!==f.prototype},f.compare=function(ve,Ce){if(be(ve,Uint8Array)&&(ve=f.from(ve,ve.offset,ve.byteLength)),be(Ce,Uint8Array)&&(Ce=f.from(Ce,Ce.offset,Ce.byteLength)),!f.isBuffer(ve)||!f.isBuffer(Ce))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(ve===Ce)return 0;for(var Ae=ve.length,ze=Ce.length,Ue=0,Ve=Math.min(Ae,ze);Ue<Ve;++Ue)if(ve[Ue]!==Ce[Ue]){Ae=ve[Ue],ze=Ce[Ue];break}return Ae<ze?-1:ze<Ae?1:0},f.isEncoding=function(ve){switch(String(ve).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},f.concat=function(ve,Ce){if(!Array.isArray(ve))throw new TypeError('"list" argument must be an Array of Buffers');if(ve.length===0)return f.alloc(0);var Ae;if(Ce===void 0)for(Ce=0,Ae=0;Ae<ve.length;++Ae)Ce+=ve[Ae].length;var ze=f.allocUnsafe(Ce),Ue=0;for(Ae=0;Ae<ve.length;++Ae){var Ve=ve[Ae];if(be(Ve,Uint8Array))Ue+Ve.length>ze.length?(f.isBuffer(Ve)||(Ve=f.from(Ve)),Ve.copy(ze,Ue)):Uint8Array.prototype.set.call(ze,Ve,Ue);else{if(!f.isBuffer(Ve))throw new TypeError('"list" argument must be an Array of Buffers');Ve.copy(ze,Ue)}Ue+=Ve.length}return ze},f.byteLength=A,f.prototype._isBuffer=!0,f.prototype.swap16=function(){var ve=this.length;if(ve%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var Ce=0;Ce<ve;Ce+=2)P(this,Ce,Ce+1);return this},f.prototype.swap32=function(){var ve=this.length;if(ve%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var Ce=0;Ce<ve;Ce+=4)P(this,Ce,Ce+3),P(this,Ce+1,Ce+2);return this},f.prototype.swap64=function(){var ve=this.length;if(ve%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var Ce=0;Ce<ve;Ce+=8)P(this,Ce,Ce+7),P(this,Ce+1,Ce+6),P(this,Ce+2,Ce+5),P(this,Ce+3,Ce+4);return this},f.prototype.toString=function(){var ve=this.length;return ve===0?"":arguments.length===0?W(this,0,ve):C.apply(this,arguments)},f.prototype.toLocaleString=f.prototype.toString,f.prototype.equals=function(ve){if(!f.isBuffer(ve))throw new TypeError("Argument must be a Buffer");return this===ve||f.compare(this,ve)===0},f.prototype.inspect=function(){var ve="",Ce=l.h2;return ve=this.toString("hex",0,Ce).replace(/(.{2})/g,"$1 ").trim(),this.length>Ce&&(ve+=" ... "),"<Buffer "+ve+">"},c&&(f.prototype[c]=f.prototype.inspect),f.prototype.compare=function(ve,Ce,Ae,ze,Ue){if(be(ve,Uint8Array)&&(ve=f.from(ve,ve.offset,ve.byteLength)),!f.isBuffer(ve))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+s(ve));if(Ce===void 0&&(Ce=0),Ae===void 0&&(Ae=ve?ve.length:0),ze===void 0&&(ze=0),Ue===void 0&&(Ue=this.length),Ce<0||Ae>ve.length||ze<0||Ue>this.length)throw new RangeError("out of range index");if(ze>=Ue&&Ce>=Ae)return 0;if(ze>=Ue)return-1;if(Ce>=Ae)return 1;if(this===ve)return 0;for(var Ve=(Ue>>>=0)-(ze>>>=0),Ye=(Ae>>>=0)-(Ce>>>=0),$e=Math.min(Ve,Ye),rt=this.slice(ze,Ue),ht=ve.slice(Ce,Ae),nt=0;nt<$e;++nt)if(rt[nt]!==ht[nt]){Ve=rt[nt],Ye=ht[nt];break}return Ve<Ye?-1:Ye<Ve?1:0},f.prototype.includes=function(ve,Ce,Ae){return this.indexOf(ve,Ce,Ae)!==-1},f.prototype.indexOf=function(ve,Ce,Ae){return O(this,ve,Ce,Ae,!0)},f.prototype.lastIndexOf=function(ve,Ce,Ae){return O(this,ve,Ce,Ae,!1)},f.prototype.write=function(ve,Ce,Ae,ze){if(Ce===void 0)ze="utf8",Ae=this.length,Ce=0;else if(Ae===void 0&&typeof Ce=="string")ze=Ce,Ae=this.length,Ce=0;else{if(!isFinite(Ce))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");Ce>>>=0,isFinite(Ae)?(Ae>>>=0,ze===void 0&&(ze="utf8")):(ze=Ae,Ae=void 0)}var Ue=this.length-Ce;if((Ae===void 0||Ae>Ue)&&(Ae=Ue),ve.length>0&&(Ae<0||Ce<0)||Ce>this.length)throw new RangeError("Attempt to write outside buffer bounds");ze||(ze="utf8");for(var Ve=!1;;)switch(ze){case"hex":return B(this,ve,Ce,Ae);case"utf8":case"utf-8":return Y(this,ve,Ce,Ae);case"ascii":case"latin1":case"binary":return D(this,ve,Ce,Ae);case"base64":return G(this,ve,Ce,Ae);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return V(this,ve,Ce,Ae);default:if(Ve)throw new TypeError("Unknown encoding: "+ze);ze=(""+ze).toLowerCase(),Ve=!0}},f.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var Z=4096;function ie(ve,Ce,Ae){var ze="";Ae=Math.min(ve.length,Ae);for(var Ue=Ce;Ue<Ae;++Ue)ze+=String.fromCharCode(127&ve[Ue]);return ze}function te(ve,Ce,Ae){var ze="";Ae=Math.min(ve.length,Ae);for(var Ue=Ce;Ue<Ae;++Ue)ze+=String.fromCharCode(ve[Ue]);return ze}function J(ve,Ce,Ae){var ze=ve.length;(!Ce||Ce<0)&&(Ce=0),(!Ae||Ae<0||Ae>ze)&&(Ae=ze);for(var Ue="",Ve=Ce;Ve<Ae;++Ve)Ue+=Te[ve[Ve]];return Ue}function X(ve,Ce,Ae){for(var ze=ve.slice(Ce,Ae),Ue="",Ve=0;Ve<ze.length-1;Ve+=2)Ue+=String.fromCharCode(ze[Ve]+256*ze[Ve+1]);return Ue}function ee(ve,Ce,Ae){if(ve%1!=0||ve<0)throw new RangeError("offset is not uint");if(ve+Ce>Ae)throw new RangeError("Trying to access beyond buffer length")}function re(ve,Ce,Ae,ze,Ue,Ve){if(!f.isBuffer(ve))throw new TypeError('"buffer" argument must be a Buffer instance');if(Ce>Ue||Ce<Ve)throw new RangeError('"value" argument is out of bounds');if(Ae+ze>ve.length)throw new RangeError("Index out of range")}function oe(ve,Ce,Ae,ze,Ue){xe(Ce,ze,Ue,ve,Ae,7);var Ve=Number(Ce&BigInt(4294967295));ve[Ae++]=Ve,Ve>>=8,ve[Ae++]=Ve,Ve>>=8,ve[Ae++]=Ve,Ve>>=8,ve[Ae++]=Ve;var Ye=Number(Ce>>BigInt(32)&BigInt(4294967295));return ve[Ae++]=Ye,Ye>>=8,ve[Ae++]=Ye,Ye>>=8,ve[Ae++]=Ye,Ye>>=8,ve[Ae++]=Ye,Ae}function ue(ve,Ce,Ae,ze,Ue){xe(Ce,ze,Ue,ve,Ae,7);var Ve=Number(Ce&BigInt(4294967295));ve[Ae+7]=Ve,Ve>>=8,ve[Ae+6]=Ve,Ve>>=8,ve[Ae+5]=Ve,Ve>>=8,ve[Ae+4]=Ve;var Ye=Number(Ce>>BigInt(32)&BigInt(4294967295));return ve[Ae+3]=Ye,Ye>>=8,ve[Ae+2]=Ye,Ye>>=8,ve[Ae+1]=Ye,Ye>>=8,ve[Ae]=Ye,Ae+8}function ce(ve,Ce,Ae,ze,Ue,Ve){if(Ae+ze>ve.length)throw new RangeError("Index out of range");if(Ae<0)throw new RangeError("Index out of range")}function de(ve,Ce,Ae,ze,Ue){return Ce=+Ce,Ae>>>=0,Ue||ce(ve,0,Ae,4),p.write(ve,Ce,Ae,ze,23,4),Ae+4}function me(ve,Ce,Ae,ze,Ue){return Ce=+Ce,Ae>>>=0,Ue||ce(ve,0,Ae,8),p.write(ve,Ce,Ae,ze,52,8),Ae+8}f.prototype.slice=function(ve,Ce){var Ae=this.length;(ve=~~ve)<0?(ve+=Ae)<0&&(ve=0):ve>Ae&&(ve=Ae),(Ce=Ce===void 0?Ae:~~Ce)<0?(Ce+=Ae)<0&&(Ce=0):Ce>Ae&&(Ce=Ae),Ce<ve&&(Ce=ve);var ze=this.subarray(ve,Ce);return Object.setPrototypeOf(ze,f.prototype),ze},f.prototype.readUintLE=f.prototype.readUIntLE=function(ve,Ce,Ae){ve>>>=0,Ce>>>=0,Ae||ee(ve,Ce,this.length);for(var ze=this[ve],Ue=1,Ve=0;++Ve<Ce&&(Ue*=256);)ze+=this[ve+Ve]*Ue;return ze},f.prototype.readUintBE=f.prototype.readUIntBE=function(ve,Ce,Ae){ve>>>=0,Ce>>>=0,Ae||ee(ve,Ce,this.length);for(var ze=this[ve+--Ce],Ue=1;Ce>0&&(Ue*=256);)ze+=this[ve+--Ce]*Ue;return ze},f.prototype.readUint8=f.prototype.readUInt8=function(ve,Ce){return ve>>>=0,Ce||ee(ve,1,this.length),this[ve]},f.prototype.readUint16LE=f.prototype.readUInt16LE=function(ve,Ce){return ve>>>=0,Ce||ee(ve,2,this.length),this[ve]|this[ve+1]<<8},f.prototype.readUint16BE=f.prototype.readUInt16BE=function(ve,Ce){return ve>>>=0,Ce||ee(ve,2,this.length),this[ve]<<8|this[ve+1]},f.prototype.readUint32LE=f.prototype.readUInt32LE=function(ve,Ce){return ve>>>=0,Ce||ee(ve,4,this.length),(this[ve]|this[ve+1]<<8|this[ve+2]<<16)+16777216*this[ve+3]},f.prototype.readUint32BE=f.prototype.readUInt32BE=function(ve,Ce){return ve>>>=0,Ce||ee(ve,4,this.length),16777216*this[ve]+(this[ve+1]<<16|this[ve+2]<<8|this[ve+3])},f.prototype.readBigUInt64LE=Ne(function(ve){De(ve>>>=0,"offset");var Ce=this[ve],Ae=this[ve+7];Ce!==void 0&&Ae!==void 0||Ee(ve,this.length-8);var ze=Ce+this[++ve]*Math.pow(2,8)+this[++ve]*Math.pow(2,16)+this[++ve]*Math.pow(2,24),Ue=this[++ve]+this[++ve]*Math.pow(2,8)+this[++ve]*Math.pow(2,16)+Ae*Math.pow(2,24);return BigInt(ze)+(BigInt(Ue)<<BigInt(32))}),f.prototype.readBigUInt64BE=Ne(function(ve){De(ve>>>=0,"offset");var Ce=this[ve],Ae=this[ve+7];Ce!==void 0&&Ae!==void 0||Ee(ve,this.length-8);var ze=Ce*Math.pow(2,24)+this[++ve]*Math.pow(2,16)+this[++ve]*Math.pow(2,8)+this[++ve],Ue=this[++ve]*Math.pow(2,24)+this[++ve]*Math.pow(2,16)+this[++ve]*Math.pow(2,8)+Ae;return(BigInt(ze)<<BigInt(32))+BigInt(Ue)}),f.prototype.readIntLE=function(ve,Ce,Ae){ve>>>=0,Ce>>>=0,Ae||ee(ve,Ce,this.length);for(var ze=this[ve],Ue=1,Ve=0;++Ve<Ce&&(Ue*=256);)ze+=this[ve+Ve]*Ue;return ze>=(Ue*=128)&&(ze-=Math.pow(2,8*Ce)),ze},f.prototype.readIntBE=function(ve,Ce,Ae){ve>>>=0,Ce>>>=0,Ae||ee(ve,Ce,this.length);for(var ze=Ce,Ue=1,Ve=this[ve+--ze];ze>0&&(Ue*=256);)Ve+=this[ve+--ze]*Ue;return Ve>=(Ue*=128)&&(Ve-=Math.pow(2,8*Ce)),Ve},f.prototype.readInt8=function(ve,Ce){return ve>>>=0,Ce||ee(ve,1,this.length),128&this[ve]?-1*(255-this[ve]+1):this[ve]},f.prototype.readInt16LE=function(ve,Ce){ve>>>=0,Ce||ee(ve,2,this.length);var Ae=this[ve]|this[ve+1]<<8;return 32768&Ae?4294901760|Ae:Ae},f.prototype.readInt16BE=function(ve,Ce){ve>>>=0,Ce||ee(ve,2,this.length);var Ae=this[ve+1]|this[ve]<<8;return 32768&Ae?4294901760|Ae:Ae},f.prototype.readInt32LE=function(ve,Ce){return ve>>>=0,Ce||ee(ve,4,this.length),this[ve]|this[ve+1]<<8|this[ve+2]<<16|this[ve+3]<<24},f.prototype.readInt32BE=function(ve,Ce){return ve>>>=0,Ce||ee(ve,4,this.length),this[ve]<<24|this[ve+1]<<16|this[ve+2]<<8|this[ve+3]},f.prototype.readBigInt64LE=Ne(function(ve){De(ve>>>=0,"offset");var Ce=this[ve],Ae=this[ve+7];Ce!==void 0&&Ae!==void 0||Ee(ve,this.length-8);var ze=this[ve+4]+this[ve+5]*Math.pow(2,8)+this[ve+6]*Math.pow(2,16)+(Ae<<24);return(BigInt(ze)<<BigInt(32))+BigInt(Ce+this[++ve]*Math.pow(2,8)+this[++ve]*Math.pow(2,16)+this[++ve]*Math.pow(2,24))}),f.prototype.readBigInt64BE=Ne(function(ve){De(ve>>>=0,"offset");var Ce=this[ve],Ae=this[ve+7];Ce!==void 0&&Ae!==void 0||Ee(ve,this.length-8);var ze=(Ce<<24)+this[++ve]*Math.pow(2,16)+this[++ve]*Math.pow(2,8)+this[++ve];return(BigInt(ze)<<BigInt(32))+BigInt(this[++ve]*Math.pow(2,24)+this[++ve]*Math.pow(2,16)+this[++ve]*Math.pow(2,8)+Ae)}),f.prototype.readFloatLE=function(ve,Ce){return ve>>>=0,Ce||ee(ve,4,this.length),p.read(this,ve,!0,23,4)},f.prototype.readFloatBE=function(ve,Ce){return ve>>>=0,Ce||ee(ve,4,this.length),p.read(this,ve,!1,23,4)},f.prototype.readDoubleLE=function(ve,Ce){return ve>>>=0,Ce||ee(ve,8,this.length),p.read(this,ve,!0,52,8)},f.prototype.readDoubleBE=function(ve,Ce){return ve>>>=0,Ce||ee(ve,8,this.length),p.read(this,ve,!1,52,8)},f.prototype.writeUintLE=f.prototype.writeUIntLE=function(ve,Ce,Ae,ze){ve=+ve,Ce>>>=0,Ae>>>=0,ze||re(this,ve,Ce,Ae,Math.pow(2,8*Ae)-1,0);var Ue=1,Ve=0;for(this[Ce]=255&ve;++Ve<Ae&&(Ue*=256);)this[Ce+Ve]=ve/Ue&255;return Ce+Ae},f.prototype.writeUintBE=f.prototype.writeUIntBE=function(ve,Ce,Ae,ze){ve=+ve,Ce>>>=0,Ae>>>=0,ze||re(this,ve,Ce,Ae,Math.pow(2,8*Ae)-1,0);var Ue=Ae-1,Ve=1;for(this[Ce+Ue]=255&ve;--Ue>=0&&(Ve*=256);)this[Ce+Ue]=ve/Ve&255;return Ce+Ae},f.prototype.writeUint8=f.prototype.writeUInt8=function(ve,Ce,Ae){return ve=+ve,Ce>>>=0,Ae||re(this,ve,Ce,1,255,0),this[Ce]=255&ve,Ce+1},f.prototype.writeUint16LE=f.prototype.writeUInt16LE=function(ve,Ce,Ae){return ve=+ve,Ce>>>=0,Ae||re(this,ve,Ce,2,65535,0),this[Ce]=255&ve,this[Ce+1]=ve>>>8,Ce+2},f.prototype.writeUint16BE=f.prototype.writeUInt16BE=function(ve,Ce,Ae){return ve=+ve,Ce>>>=0,Ae||re(this,ve,Ce,2,65535,0),this[Ce]=ve>>>8,this[Ce+1]=255&ve,Ce+2},f.prototype.writeUint32LE=f.prototype.writeUInt32LE=function(ve,Ce,Ae){return ve=+ve,Ce>>>=0,Ae||re(this,ve,Ce,4,4294967295,0),this[Ce+3]=ve>>>24,this[Ce+2]=ve>>>16,this[Ce+1]=ve>>>8,this[Ce]=255&ve,Ce+4},f.prototype.writeUint32BE=f.prototype.writeUInt32BE=function(ve,Ce,Ae){return ve=+ve,Ce>>>=0,Ae||re(this,ve,Ce,4,4294967295,0),this[Ce]=ve>>>24,this[Ce+1]=ve>>>16,this[Ce+2]=ve>>>8,this[Ce+3]=255&ve,Ce+4},f.prototype.writeBigUInt64LE=Ne(function(ve){return oe(this,ve,arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))}),f.prototype.writeBigUInt64BE=Ne(function(ve){return ue(this,ve,arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))}),f.prototype.writeIntLE=function(ve,Ce,Ae,ze){if(ve=+ve,Ce>>>=0,!ze){var Ue=Math.pow(2,8*Ae-1);re(this,ve,Ce,Ae,Ue-1,-Ue)}var Ve=0,Ye=1,$e=0;for(this[Ce]=255&ve;++Ve<Ae&&(Ye*=256);)ve<0&&$e===0&&this[Ce+Ve-1]!==0&&($e=1),this[Ce+Ve]=(ve/Ye>>0)-$e&255;return Ce+Ae},f.prototype.writeIntBE=function(ve,Ce,Ae,ze){if(ve=+ve,Ce>>>=0,!ze){var Ue=Math.pow(2,8*Ae-1);re(this,ve,Ce,Ae,Ue-1,-Ue)}var Ve=Ae-1,Ye=1,$e=0;for(this[Ce+Ve]=255&ve;--Ve>=0&&(Ye*=256);)ve<0&&$e===0&&this[Ce+Ve+1]!==0&&($e=1),this[Ce+Ve]=(ve/Ye>>0)-$e&255;return Ce+Ae},f.prototype.writeInt8=function(ve,Ce,Ae){return ve=+ve,Ce>>>=0,Ae||re(this,ve,Ce,1,127,-128),ve<0&&(ve=255+ve+1),this[Ce]=255&ve,Ce+1},f.prototype.writeInt16LE=function(ve,Ce,Ae){return ve=+ve,Ce>>>=0,Ae||re(this,ve,Ce,2,32767,-32768),this[Ce]=255&ve,this[Ce+1]=ve>>>8,Ce+2},f.prototype.writeInt16BE=function(ve,Ce,Ae){return ve=+ve,Ce>>>=0,Ae||re(this,ve,Ce,2,32767,-32768),this[Ce]=ve>>>8,this[Ce+1]=255&ve,Ce+2},f.prototype.writeInt32LE=function(ve,Ce,Ae){return ve=+ve,Ce>>>=0,Ae||re(this,ve,Ce,4,2147483647,-2147483648),this[Ce]=255&ve,this[Ce+1]=ve>>>8,this[Ce+2]=ve>>>16,this[Ce+3]=ve>>>24,Ce+4},f.prototype.writeInt32BE=function(ve,Ce,Ae){return ve=+ve,Ce>>>=0,Ae||re(this,ve,Ce,4,2147483647,-2147483648),ve<0&&(ve=4294967295+ve+1),this[Ce]=ve>>>24,this[Ce+1]=ve>>>16,this[Ce+2]=ve>>>8,this[Ce+3]=255&ve,Ce+4},f.prototype.writeBigInt64LE=Ne(function(ve){return oe(this,ve,arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),f.prototype.writeBigInt64BE=Ne(function(ve){return ue(this,ve,arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),f.prototype.writeFloatLE=function(ve,Ce,Ae){return de(this,ve,Ce,!0,Ae)},f.prototype.writeFloatBE=function(ve,Ce,Ae){return de(this,ve,Ce,!1,Ae)},f.prototype.writeDoubleLE=function(ve,Ce,Ae){return me(this,ve,Ce,!0,Ae)},f.prototype.writeDoubleBE=function(ve,Ce,Ae){return me(this,ve,Ce,!1,Ae)},f.prototype.copy=function(ve,Ce,Ae,ze){if(!f.isBuffer(ve))throw new TypeError("argument should be a Buffer");if(Ae||(Ae=0),ze||ze===0||(ze=this.length),Ce>=ve.length&&(Ce=ve.length),Ce||(Ce=0),ze>0&&ze<Ae&&(ze=Ae),ze===Ae||ve.length===0||this.length===0)return 0;if(Ce<0)throw new RangeError("targetStart out of bounds");if(Ae<0||Ae>=this.length)throw new RangeError("Index out of range");if(ze<0)throw new RangeError("sourceEnd out of bounds");ze>this.length&&(ze=this.length),ve.length-Ce<ze-Ae&&(ze=ve.length-Ce+Ae);var Ue=ze-Ae;return this===ve&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(Ce,Ae,ze):Uint8Array.prototype.set.call(ve,this.subarray(Ae,ze),Ce),Ue},f.prototype.fill=function(ve,Ce,Ae,ze){if(typeof ve=="string"){if(typeof Ce=="string"?(ze=Ce,Ce=0,Ae=this.length):typeof Ae=="string"&&(ze=Ae,Ae=this.length),ze!==void 0&&typeof ze!="string")throw new TypeError("encoding must be a string");if(typeof ze=="string"&&!f.isEncoding(ze))throw new TypeError("Unknown encoding: "+ze);if(ve.length===1){var Ue=ve.charCodeAt(0);(ze==="utf8"&&Ue<128||ze==="latin1")&&(ve=Ue)}}else typeof ve=="number"?ve&=255:typeof ve=="boolean"&&(ve=Number(ve));if(Ce<0||this.length<Ce||this.length<Ae)throw new RangeError("Out of range index");if(Ae<=Ce)return this;var Ve;if(Ce>>>=0,Ae=Ae===void 0?this.length:Ae>>>0,ve||(ve=0),typeof ve=="number")for(Ve=Ce;Ve<Ae;++Ve)this[Ve]=ve;else{var Ye=f.isBuffer(ve)?ve:f.from(ve,ze),$e=Ye.length;if($e===0)throw new TypeError('The value "'+ve+'" is invalid for argument "value"');for(Ve=0;Ve<Ae-Ce;++Ve)this[Ve+Ce]=Ye[Ve%$e]}return this};var _e={};function Se(ve,Ce,Ae){_e[ve]=function(ze){(function(nt,bt){if(typeof bt!="function"&&bt!==null)throw new TypeError("Super expression must either be null or a function");nt.prototype=Object.create(bt&&bt.prototype,{constructor:{value:nt,writable:!0,configurable:!0}}),Object.defineProperty(nt,"prototype",{writable:!1}),bt&&r(nt,bt)})(ht,ze);var Ue,Ve,Ye,$e,rt=(Ye=ht,$e=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}(),function(){var nt,bt=a(Ye);if($e){var wt=a(this).constructor;nt=Reflect.construct(bt,arguments,wt)}else nt=bt.apply(this,arguments);return function(ut,lt){if(lt&&(s(lt)==="object"||typeof lt=="function"))return lt;if(lt!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return n(ut)}(this,nt)});function ht(){var nt;return function(bt,wt){if(!(bt instanceof wt))throw new TypeError("Cannot call a class as a function")}(this,ht),nt=rt.call(this),Object.defineProperty(n(nt),"message",{value:Ce.apply(n(nt),arguments),writable:!0,configurable:!0}),nt.name="".concat(nt.name," [").concat(ve,"]"),nt.stack,delete nt.name,nt}return Ue=ht,(Ve=[{key:"code",get:function(){return ve},set:function(nt){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:nt,writable:!0})}},{key:"toString",value:function(){return"".concat(this.name," [").concat(ve,"]: ").concat(this.message)}}])&&o(Ue.prototype,Ve),Object.defineProperty(Ue,"prototype",{writable:!1}),ht}(Ae)}function we(ve){for(var Ce="",Ae=ve.length,ze=ve[0]==="-"?1:0;Ae>=ze+4;Ae-=3)Ce="_".concat(ve.slice(Ae-3,Ae)).concat(Ce);return"".concat(ve.slice(0,Ae)).concat(Ce)}function xe(ve,Ce,Ae,ze,Ue,Ve){if(ve>Ae||ve<Ce){var Ye,$e=typeof Ce=="bigint"?"n":"";throw Ye=Ve>3?Ce===0||Ce===BigInt(0)?">= 0".concat($e," and < 2").concat($e," ** ").concat(8*(Ve+1)).concat($e):">= -(2".concat($e," ** ").concat(8*(Ve+1)-1).concat($e,") and < 2 ** ")+"".concat(8*(Ve+1)-1).concat($e):">= ".concat(Ce).concat($e," and <= ").concat(Ae).concat($e),new _e.ERR_OUT_OF_RANGE("value",Ye,ve)}(function(rt,ht,nt){De(ht,"offset"),rt[ht]!==void 0&&rt[ht+nt]!==void 0||Ee(ht,rt.length-(nt+1))})(ze,Ue,Ve)}function De(ve,Ce){if(typeof ve!="number")throw new _e.ERR_INVALID_ARG_TYPE(Ce,"number",ve)}function Ee(ve,Ce,Ae){throw Math.floor(ve)!==ve?(De(ve,Ae),new _e.ERR_OUT_OF_RANGE(Ae||"offset","an integer",ve)):Ce<0?new _e.ERR_BUFFER_OUT_OF_BOUNDS:new _e.ERR_OUT_OF_RANGE(Ae||"offset",">= ".concat(Ae?1:0," and <= ").concat(Ce),ve)}Se("ERR_BUFFER_OUT_OF_BOUNDS",function(ve){return ve?"".concat(ve," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"},RangeError),Se("ERR_INVALID_ARG_TYPE",function(ve,Ce){return'The "'.concat(ve,'" argument must be of type number. Received type ').concat(s(Ce))},TypeError),Se("ERR_OUT_OF_RANGE",function(ve,Ce,Ae){var ze='The value of "'.concat(ve,'" is out of range.'),Ue=Ae;return Number.isInteger(Ae)&&Math.abs(Ae)>Math.pow(2,32)?Ue=we(String(Ae)):typeof Ae=="bigint"&&(Ue=String(Ae),(Ae>Math.pow(BigInt(2),BigInt(32))||Ae<-Math.pow(BigInt(2),BigInt(32)))&&(Ue=we(Ue)),Ue+="n"),ze+" It must be ".concat(Ce,". Received ").concat(Ue)},RangeError);var Me=/[^+/0-9A-Za-z-_]/g;function he(ve,Ce){var Ae;Ce=Ce||1/0;for(var ze=ve.length,Ue=null,Ve=[],Ye=0;Ye<ze;++Ye){if((Ae=ve.charCodeAt(Ye))>55295&&Ae<57344){if(!Ue){if(Ae>56319){(Ce-=3)>-1&&Ve.push(239,191,189);continue}if(Ye+1===ze){(Ce-=3)>-1&&Ve.push(239,191,189);continue}Ue=Ae;continue}if(Ae<56320){(Ce-=3)>-1&&Ve.push(239,191,189),Ue=Ae;continue}Ae=65536+(Ue-55296<<10|Ae-56320)}else Ue&&(Ce-=3)>-1&&Ve.push(239,191,189);if(Ue=null,Ae<128){if((Ce-=1)<0)break;Ve.push(Ae)}else if(Ae<2048){if((Ce-=2)<0)break;Ve.push(Ae>>6|192,63&Ae|128)}else if(Ae<65536){if((Ce-=3)<0)break;Ve.push(Ae>>12|224,Ae>>6&63|128,63&Ae|128)}else{if(!(Ae<1114112))throw new Error("Invalid code point");if((Ce-=4)<0)break;Ve.push(Ae>>18|240,Ae>>12&63|128,Ae>>6&63|128,63&Ae|128)}}return Ve}function fe(ve){return u.toByteArray(function(Ce){if((Ce=(Ce=Ce.split("=")[0]).trim().replace(Me,"")).length<2)return"";for(;Ce.length%4!=0;)Ce+="=";return Ce}(ve))}function ae(ve,Ce,Ae,ze){var Ue;for(Ue=0;Ue<ze&&!(Ue+Ae>=Ce.length||Ue>=ve.length);++Ue)Ce[Ue+Ae]=ve[Ue];return Ue}function be(ve,Ce){return ve instanceof Ce||ve!=null&&ve.constructor!=null&&ve.constructor.name!=null&&ve.constructor.name===Ce.name}function Ie(ve){return ve!=ve}var Te=function(){for(var ve="0123456789abcdef",Ce=new Array(256),Ae=0;Ae<16;++Ae)for(var ze=16*Ae,Ue=0;Ue<16;++Ue)Ce[ze+Ue]=ve[Ae]+ve[Ue];return Ce}();function Ne(ve){return typeof BigInt>"u"?qe:ve}function qe(){throw new Error("BigInt not supported")}},2321:function(h){h.exports=r,h.exports.isMobile=r,h.exports.default=r;var l=/(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,t=/CrOS/,o=/android|ipad|playbook|silk/i;function r(n){n||(n={});var a=n.ua;if(a||typeof navigator>"u"||(a=navigator.userAgent),a&&a.headers&&typeof a.headers["user-agent"]=="string"&&(a=a.headers["user-agent"]),typeof a!="string")return!1;var s=l.test(a)&&!t.test(a)||!!n.tablet&&o.test(a);return!s&&n.tablet&&n.featureDetect&&navigator&&navigator.maxTouchPoints>1&&a.indexOf("Macintosh")!==-1&&a.indexOf("Safari")!==-1&&(s=!0),s}},3910:function(h,l){l.byteLength=function(p){var c=s(p),b=c[0],g=c[1];return 3*(b+g)/4-g},l.toByteArray=function(p){var c,b,g=s(p),f=g[0],v=g[1],m=new r(function(d,M,A){return 3*(M+A)/4-A}(0,f,v)),x=0,T=v>0?f-4:f;for(b=0;b<T;b+=4)c=o[p.charCodeAt(b)]<<18|o[p.charCodeAt(b+1)]<<12|o[p.charCodeAt(b+2)]<<6|o[p.charCodeAt(b+3)],m[x++]=c>>16&255,m[x++]=c>>8&255,m[x++]=255&c;return v===2&&(c=o[p.charCodeAt(b)]<<2|o[p.charCodeAt(b+1)]>>4,m[x++]=255&c),v===1&&(c=o[p.charCodeAt(b)]<<10|o[p.charCodeAt(b+1)]<<4|o[p.charCodeAt(b+2)]>>2,m[x++]=c>>8&255,m[x++]=255&c),m},l.fromByteArray=function(p){for(var c,b=p.length,g=b%3,f=[],v=16383,m=0,x=b-g;m<x;m+=v)f.push(u(p,m,m+v>x?x:m+v));return g===1?(c=p[b-1],f.push(t[c>>2]+t[c<<4&63]+"==")):g===2&&(c=(p[b-2]<<8)+p[b-1],f.push(t[c>>10]+t[c>>4&63]+t[c<<2&63]+"=")),f.join("")};for(var t=[],o=[],r=typeof Uint8Array<"u"?Uint8Array:Array,n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",a=0;a<64;++a)t[a]=n[a],o[n.charCodeAt(a)]=a;function s(p){var c=p.length;if(c%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var b=p.indexOf("=");return b===-1&&(b=c),[b,b===c?0:4-b%4]}function u(p,c,b){for(var g,f,v=[],m=c;m<b;m+=3)g=(p[m]<<16&16711680)+(p[m+1]<<8&65280)+(255&p[m+2]),v.push(t[(f=g)>>18&63]+t[f>>12&63]+t[f>>6&63]+t[63&f]);return v.join("")}o["-".charCodeAt(0)]=62,o["_".charCodeAt(0)]=63},3187:function(h,l){l.read=function(t,o,r,n,a){var s,u,p=8*a-n-1,c=(1<<p)-1,b=c>>1,g=-7,f=r?a-1:0,v=r?-1:1,m=t[o+f];for(f+=v,s=m&(1<<-g)-1,m>>=-g,g+=p;g>0;s=256*s+t[o+f],f+=v,g-=8);for(u=s&(1<<-g)-1,s>>=-g,g+=n;g>0;u=256*u+t[o+f],f+=v,g-=8);if(s===0)s=1-b;else{if(s===c)return u?NaN:1/0*(m?-1:1);u+=Math.pow(2,n),s-=b}return(m?-1:1)*u*Math.pow(2,s-n)},l.write=function(t,o,r,n,a,s){var u,p,c,b=8*s-a-1,g=(1<<b)-1,f=g>>1,v=a===23?Math.pow(2,-24)-Math.pow(2,-77):0,m=n?0:s-1,x=n?1:-1,T=o<0||o===0&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(p=isNaN(o)?1:0,u=g):(u=Math.floor(Math.log(o)/Math.LN2),o*(c=Math.pow(2,-u))<1&&(u--,c*=2),(o+=u+f>=1?v/c:v*Math.pow(2,1-f))*c>=2&&(u++,c/=2),u+f>=g?(p=0,u=g):u+f>=1?(p=(o*c-1)*Math.pow(2,a),u+=f):(p=o*Math.pow(2,f-1)*Math.pow(2,a),u=0));a>=8;t[r+m]=255&p,m+=x,p/=256,a-=8);for(u=u<<a|p,b+=a;b>0;t[r+m]=255&u,m+=x,u/=256,b-=8);t[r+m-x]|=128*T}},1152:function(h,l,t){h.exports=function(u){var p=(u=u||{}).eye||[0,0,1],c=u.center||[0,0,0],b=u.up||[0,1,0],g=u.distanceLimits||[0,1/0],f=u.mode||"turntable",v=o(),m=r(),x=n();return v.setDistanceLimits(g[0],g[1]),v.lookAt(0,p,c,b),m.setDistanceLimits(g[0],g[1]),m.lookAt(0,p,c,b),x.setDistanceLimits(g[0],g[1]),x.lookAt(0,p,c,b),new a({turntable:v,orbit:m,matrix:x},f)};var o=t(3440),r=t(7774),n=t(9298);function a(u,p){this._controllerNames=Object.keys(u),this._controllerList=this._controllerNames.map(function(c){return u[c]}),this._mode=p,this._active=u[p],this._active||(this._mode="turntable",this._active=u.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 s=a.prototype;s.flush=function(u){for(var p=this._controllerList,c=0;c<p.length;++c)p[c].flush(u)},s.idle=function(u){for(var p=this._controllerList,c=0;c<p.length;++c)p[c].idle(u)},s.lookAt=function(u,p,c,b){for(var g=this._controllerList,f=0;f<g.length;++f)g[f].lookAt(u,p,c,b)},s.rotate=function(u,p,c,b){for(var g=this._controllerList,f=0;f<g.length;++f)g[f].rotate(u,p,c,b)},s.pan=function(u,p,c,b){for(var g=this._controllerList,f=0;f<g.length;++f)g[f].pan(u,p,c,b)},s.translate=function(u,p,c,b){for(var g=this._controllerList,f=0;f<g.length;++f)g[f].translate(u,p,c,b)},s.setMatrix=function(u,p){for(var c=this._controllerList,b=0;b<c.length;++b)c[b].setMatrix(u,p)},s.setDistanceLimits=function(u,p){for(var c=this._controllerList,b=0;b<c.length;++b)c[b].setDistanceLimits(u,p)},s.setDistance=function(u,p){for(var c=this._controllerList,b=0;b<c.length;++b)c[b].setDistance(u,p)},s.recalcMatrix=function(u){this._active.recalcMatrix(u)},s.getDistance=function(u){return this._active.getDistance(u)},s.getDistanceLimits=function(u){return this._active.getDistanceLimits(u)},s.lastT=function(){return this._active.lastT()},s.setMode=function(u){if(u!==this._mode){var p=this._controllerNames.indexOf(u);if(!(p<0)){var c=this._active,b=this._controllerList[p],g=Math.max(c.lastT(),b.lastT());c.recalcMatrix(g),b.setMatrix(g,c.computedMatrix),this._active=b,this._mode=u,this.computedMatrix=this._active.computedMatrix,this.computedEye=this._active.computedEye,this.computedUp=this._active.computedUp,this.computedCenter=this._active.computedCenter,this.computedRadius=this._active.computedRadius}}},s.getMode=function(){return this._mode}},8126:function(h,l,t){var o=typeof WeakMap>"u"?t(5346):WeakMap,r=t(5827),n=t(2944),a=new o;h.exports=function(s){var u=a.get(s),p=u&&(u._triangleBuffer.handle||u._triangleBuffer.buffer);if(!p||!s.isBuffer(p)){var c=r(s,new Float32Array([-1,-1,-1,4,4,-1]));(u=n(s,[{buffer:c,type:s.FLOAT,size:2}]))._triangleBuffer=c,a.set(s,u)}u.bind(),s.drawArrays(s.TRIANGLES,0,3),u.unbind()}},8008:function(h,l,t){var o=t(4930);h.exports=function(r,n,a){n=typeof n=="number"?n:1,a=a||": ";var s=r.split(/\r?\n/),u=String(s.length+n-1).length;return s.map(function(p,c){var b=c+n,g=String(b).length;return o(b,u-g)+a+p}).join(`
|
||
`)}},2153:function(h,l,t){h.exports=function(n){var a=n.length;if(a===0)return[];if(a===1)return[0];for(var s=n[0].length,u=[n[0]],p=[0],c=1;c<a;++c)if(u.push(n[c]),r(u,s)){if(p.push(c),p.length===s+1)return p}else u.pop();return p};var o=t(417);function r(n,a){for(var s=new Array(a+1),u=0;u<n.length;++u)s[u]=n[u];for(u=0;u<=n.length;++u){for(var p=n.length;p<=a;++p){for(var c=new Array(a),b=0;b<a;++b)c[b]=Math.pow(p+1-u,b);s[p]=c}if(o.apply(void 0,s))return!0}return!1}},4653:function(h,l,t){h.exports=function(n,a){return o(a).filter(function(s){for(var u=new Array(s.length),p=0;p<s.length;++p)u[p]=a[s[p]];return r(u)*n<1})};var o=t(4419),r=t(1778)},2350:function(h,l,t){h.exports=function(n,a){return r(o(n,a))};var o=t(4653),r=t(8691)},7896:function(h){h.exports=function(l){return atob(l)}},957:function(h,l,t){h.exports=function(n,a){for(var s=a.length,u=new Array(s+1),p=0;p<s;++p){for(var c=new Array(s+1),b=0;b<=s;++b)c[b]=n[b][p];u[p]=c}for(u[s]=new Array(s+1),p=0;p<=s;++p)u[s][p]=1;var g=new Array(s+1);for(p=0;p<s;++p)g[p]=a[p];g[s]=1;var f=o(u,g),v=r(f[s+1]);v===0&&(v=1);var m=new Array(s+1);for(p=0;p<=s;++p)m[p]=r(f[p])/v;return m};var o=t(6606);function r(n){for(var a=0,s=0;s<n.length;++s)a+=n[s];return a}},1539:function(h,l,t){var o=t(8524);h.exports=function(r,n){return o(r[0].mul(n[1]).add(n[0].mul(r[1])),r[1].mul(n[1]))}},8846:function(h){h.exports=function(l,t){return l[0].mul(t[1]).cmp(t[0].mul(l[1]))}},9189:function(h,l,t){var o=t(8524);h.exports=function(r,n){return o(r[0].mul(n[1]),r[1].mul(n[0]))}},5125:function(h,l,t){var o=t(234),r=t(3218),n=t(5514),a=t(2813),s=t(8524),u=t(9189);h.exports=function p(c,b){if(o(c))return b?u(c,p(b)):[c[0].clone(),c[1].clone()];var g,f,v=0;if(r(c))g=c.clone();else if(typeof c=="string")g=a(c);else{if(c===0)return[n(0),n(1)];if(c===Math.floor(c))g=n(c);else{for(;c!==Math.floor(c);)c*=Math.pow(2,256),v-=256;g=n(c)}}if(o(b))g.mul(b[1]),f=b[0].clone();else if(r(b))f=b.clone();else if(typeof b=="string")f=a(b);else if(b)if(b===Math.floor(b))f=n(b);else{for(;b!==Math.floor(b);)b*=Math.pow(2,256),v+=256;f=n(b)}else f=n(1);return v>0?g=g.ushln(v):v<0&&(f=f.ushln(-v)),s(g,f)}},234:function(h,l,t){var o=t(3218);h.exports=function(r){return Array.isArray(r)&&r.length===2&&o(r[0])&&o(r[1])}},4275:function(h,l,t){var o=t(1928);h.exports=function(r){return r.cmp(new o(0))}},9958:function(h,l,t){var o=t(4275);h.exports=function(r){var n=r.length,a=r.words,s=0;if(n===1)s=a[0];else if(n===2)s=a[0]+67108864*a[1];else for(var u=0;u<n;u++)s+=a[u]*Math.pow(67108864,u);return o(r)*s}},1112:function(h,l,t){var o=t(8362),r=t(2288).countTrailingZeros;h.exports=function(n){var a=r(o.lo(n));if(a<32)return a;var s=r(o.hi(n));return s>20?52:s+32}},3218:function(h,l,t){t(1928),h.exports=function(o){return o&&typeof o=="object"&&!!o.words}},5514:function(h,l,t){var o=t(1928),r=t(8362);h.exports=function(n){var a=r.exponent(n);return a<52?new o(n):new o(n*Math.pow(2,52-a)).ushln(a-52)}},8524:function(h,l,t){var o=t(5514),r=t(4275);h.exports=function(n,a){var s=r(n),u=r(a);if(s===0)return[o(0),o(1)];if(u===0)return[o(0),o(0)];u<0&&(n=n.neg(),a=a.neg());var p=n.gcd(a);return p.cmpn(1)?[n.div(p),a.div(p)]:[n,a]}},2813:function(h,l,t){var o=t(1928);h.exports=function(r){return new o(r)}},3962:function(h,l,t){var o=t(8524);h.exports=function(r,n){return o(r[0].mul(n[0]),r[1].mul(n[1]))}},4951:function(h,l,t){var o=t(4275);h.exports=function(r){return o(r[0])*o(r[1])}},4354:function(h,l,t){var o=t(8524);h.exports=function(r,n){return o(r[0].mul(n[1]).sub(r[1].mul(n[0])),r[1].mul(n[1]))}},7999:function(h,l,t){var o=t(9958),r=t(1112);h.exports=function(n){var a=n[0],s=n[1];if(a.cmpn(0)===0)return 0;var u=a.abs().divmod(s.abs()),p=u.div,c=o(p),b=u.mod,g=a.negative!==s.negative?-1:1;if(b.cmpn(0)===0)return g*c;if(c){var f=r(c)+4;return g*(c+(m=o(b.ushln(f).divRound(s)))*Math.pow(2,-f))}var v=s.bitLength()-b.bitLength()+53,m=o(b.ushln(v).divRound(s));return v<1023?g*m*Math.pow(2,-v):g*(m*=Math.pow(2,-1023))*Math.pow(2,1023-v)}},5070:function(h){function l(s,u,p,c,b){for(var g=b+1;c<=b;){var f=c+b>>>1,v=s[f];(p!==void 0?p(v,u):v-u)>=0?(g=f,b=f-1):c=f+1}return g}function t(s,u,p,c,b){for(var g=b+1;c<=b;){var f=c+b>>>1,v=s[f];(p!==void 0?p(v,u):v-u)>0?(g=f,b=f-1):c=f+1}return g}function o(s,u,p,c,b){for(var g=c-1;c<=b;){var f=c+b>>>1,v=s[f];(p!==void 0?p(v,u):v-u)<0?(g=f,c=f+1):b=f-1}return g}function r(s,u,p,c,b){for(var g=c-1;c<=b;){var f=c+b>>>1,v=s[f];(p!==void 0?p(v,u):v-u)<=0?(g=f,c=f+1):b=f-1}return g}function n(s,u,p,c,b){for(;c<=b;){var g=c+b>>>1,f=s[g],v=p!==void 0?p(f,u):f-u;if(v===0)return g;v<=0?c=g+1:b=g-1}return-1}function a(s,u,p,c,b,g){return typeof p=="function"?g(s,u,p,c===void 0?0:0|c,b===void 0?s.length-1:0|b):g(s,u,void 0,p===void 0?0:0|p,c===void 0?s.length-1:0|c)}h.exports={ge:function(s,u,p,c,b){return a(s,u,p,c,b,l)},gt:function(s,u,p,c,b){return a(s,u,p,c,b,t)},lt:function(s,u,p,c,b){return a(s,u,p,c,b,o)},le:function(s,u,p,c,b){return a(s,u,p,c,b,r)},eq:function(s,u,p,c,b){return a(s,u,p,c,b,n)}}},2288:function(h,l){function t(r){var n=32;return(r&=-r)&&n--,65535&r&&(n-=16),16711935&r&&(n-=8),252645135&r&&(n-=4),858993459&r&&(n-=2),1431655765&r&&(n-=1),n}l.INT_BITS=32,l.INT_MAX=2147483647,l.INT_MIN=-2147483648,l.sign=function(r){return(r>0)-(r<0)},l.abs=function(r){var n=r>>31;return(r^n)-n},l.min=function(r,n){return n^(r^n)&-(r<n)},l.max=function(r,n){return r^(r^n)&-(r<n)},l.isPow2=function(r){return!(r&r-1||!r)},l.log2=function(r){var n,a;return n=(r>65535)<<4,n|=a=((r>>>=n)>255)<<3,n|=a=((r>>>=a)>15)<<2,(n|=a=((r>>>=a)>3)<<1)|(r>>>=a)>>1},l.log10=function(r){return r>=1e9?9:r>=1e8?8:r>=1e7?7:r>=1e6?6:r>=1e5?5:r>=1e4?4:r>=1e3?3:r>=100?2:r>=10?1:0},l.popCount=function(r){return 16843009*((r=(858993459&(r-=r>>>1&1431655765))+(r>>>2&858993459))+(r>>>4)&252645135)>>>24},l.countTrailingZeros=t,l.nextPow2=function(r){return r+=r===0,--r,r|=r>>>1,r|=r>>>2,r|=r>>>4,1+((r|=r>>>8)|r>>>16)},l.prevPow2=function(r){return r|=r>>>1,r|=r>>>2,r|=r>>>4,r|=r>>>8,(r|=r>>>16)-(r>>>1)},l.parity=function(r){return r^=r>>>16,r^=r>>>8,r^=r>>>4,27030>>>(r&=15)&1};var o=new Array(256);(function(r){for(var n=0;n<256;++n){var a=n,s=n,u=7;for(a>>>=1;a;a>>>=1)s<<=1,s|=1&a,--u;r[n]=s<<u&255}})(o),l.reverse=function(r){return o[255&r]<<24|o[r>>>8&255]<<16|o[r>>>16&255]<<8|o[r>>>24&255]},l.interleave2=function(r,n){return(r=1431655765&((r=858993459&((r=252645135&((r=16711935&((r&=65535)|r<<8))|r<<4))|r<<2))|r<<1))|(n=1431655765&((n=858993459&((n=252645135&((n=16711935&((n&=65535)|n<<8))|n<<4))|n<<2))|n<<1))<<1},l.deinterleave2=function(r,n){return(r=65535&((r=16711935&((r=252645135&((r=858993459&((r=r>>>n&1431655765)|r>>>1))|r>>>2))|r>>>4))|r>>>16))<<16>>16},l.interleave3=function(r,n,a){return r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2),(r|=(n=1227133513&((n=3272356035&((n=251719695&((n=4278190335&((n&=1023)|n<<16))|n<<8))|n<<4))|n<<2))<<1)|(a=1227133513&((a=3272356035&((a=251719695&((a=4278190335&((a&=1023)|a<<16))|a<<8))|a<<4))|a<<2))<<2},l.deinterleave3=function(r,n){return(r=1023&((r=4278190335&((r=251719695&((r=3272356035&((r=r>>>n&1227133513)|r>>>2))|r>>>4))|r>>>8))|r>>>16))<<22>>22},l.nextCombination=function(r){var n=r|r-1;return n+1|(~n&-~n)-1>>>t(r)+1}},1928:function(h,l,t){(function(o,r){function n(D,G){if(!D)throw new Error(G||"Assertion failed")}function a(D,G){D.super_=G;var V=function(){};V.prototype=G.prototype,D.prototype=new V,D.prototype.constructor=D}function s(D,G,V){if(s.isBN(D))return D;this.negative=0,this.words=null,this.length=0,this.red=null,D!==null&&(G!=="le"&&G!=="be"||(V=G,G=10),this._init(D||0,G||10,V||"be"))}var u;typeof o=="object"?o.exports=s:r.BN=s,s.BN=s,s.wordSize=26;try{u=typeof window<"u"&&window.Buffer!==void 0?window.Buffer:t(6601).Buffer}catch{}function p(D,G){var V=D.charCodeAt(G);return V>=65&&V<=70?V-55:V>=97&&V<=102?V-87:V-48&15}function c(D,G,V){var j=p(D,V);return V-1>=G&&(j|=p(D,V-1)<<4),j}function b(D,G,V,j){for(var W=0,Z=Math.min(D.length,V),ie=G;ie<Z;ie++){var te=D.charCodeAt(ie)-48;W*=j,W+=te>=49?te-49+10:te>=17?te-17+10:te}return W}s.isBN=function(D){return D instanceof s||D!==null&&typeof D=="object"&&D.constructor.wordSize===s.wordSize&&Array.isArray(D.words)},s.max=function(D,G){return D.cmp(G)>0?D:G},s.min=function(D,G){return D.cmp(G)<0?D:G},s.prototype._init=function(D,G,V){if(typeof D=="number")return this._initNumber(D,G,V);if(typeof D=="object")return this._initArray(D,G,V);G==="hex"&&(G=16),n(G===(0|G)&&G>=2&&G<=36);var j=0;(D=D.toString().replace(/\s+/g,""))[0]==="-"&&(j++,this.negative=1),j<D.length&&(G===16?this._parseHex(D,j,V):(this._parseBase(D,G,j),V==="le"&&this._initArray(this.toArray(),G,V)))},s.prototype._initNumber=function(D,G,V){D<0&&(this.negative=1,D=-D),D<67108864?(this.words=[67108863&D],this.length=1):D<4503599627370496?(this.words=[67108863&D,D/67108864&67108863],this.length=2):(n(D<9007199254740992),this.words=[67108863&D,D/67108864&67108863,1],this.length=3),V==="le"&&this._initArray(this.toArray(),G,V)},s.prototype._initArray=function(D,G,V){if(n(typeof D.length=="number"),D.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(D.length/3),this.words=new Array(this.length);for(var j=0;j<this.length;j++)this.words[j]=0;var W,Z,ie=0;if(V==="be")for(j=D.length-1,W=0;j>=0;j-=3)Z=D[j]|D[j-1]<<8|D[j-2]<<16,this.words[W]|=Z<<ie&67108863,this.words[W+1]=Z>>>26-ie&67108863,(ie+=24)>=26&&(ie-=26,W++);else if(V==="le")for(j=0,W=0;j<D.length;j+=3)Z=D[j]|D[j+1]<<8|D[j+2]<<16,this.words[W]|=Z<<ie&67108863,this.words[W+1]=Z>>>26-ie&67108863,(ie+=24)>=26&&(ie-=26,W++);return this.strip()},s.prototype._parseHex=function(D,G,V){this.length=Math.ceil((D.length-G)/6),this.words=new Array(this.length);for(var j=0;j<this.length;j++)this.words[j]=0;var W,Z=0,ie=0;if(V==="be")for(j=D.length-1;j>=G;j-=2)W=c(D,G,j)<<Z,this.words[ie]|=67108863&W,Z>=18?(Z-=18,ie+=1,this.words[ie]|=W>>>26):Z+=8;else for(j=(D.length-G)%2==0?G+1:G;j<D.length;j+=2)W=c(D,G,j)<<Z,this.words[ie]|=67108863&W,Z>=18?(Z-=18,ie+=1,this.words[ie]|=W>>>26):Z+=8;this.strip()},s.prototype._parseBase=function(D,G,V){this.words=[0],this.length=1;for(var j=0,W=1;W<=67108863;W*=G)j++;j--,W=W/G|0;for(var Z=D.length-V,ie=Z%j,te=Math.min(Z,Z-ie)+V,J=0,X=V;X<te;X+=j)J=b(D,X,X+j,G),this.imuln(W),this.words[0]+J<67108864?this.words[0]+=J:this._iaddn(J);if(ie!==0){var ee=1;for(J=b(D,X,D.length,G),X=0;X<ie;X++)ee*=G;this.imuln(ee),this.words[0]+J<67108864?this.words[0]+=J:this._iaddn(J)}this.strip()},s.prototype.copy=function(D){D.words=new Array(this.length);for(var G=0;G<this.length;G++)D.words[G]=this.words[G];D.length=this.length,D.negative=this.negative,D.red=this.red},s.prototype.clone=function(){var D=new s(null);return this.copy(D),D},s.prototype._expand=function(D){for(;this.length<D;)this.words[this.length++]=0;return this},s.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},s.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},s.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var g=["","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"],f=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],v=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];function m(D,G,V){V.negative=G.negative^D.negative;var j=D.length+G.length|0;V.length=j,j=j-1|0;var W=0|D.words[0],Z=0|G.words[0],ie=W*Z,te=67108863&ie,J=ie/67108864|0;V.words[0]=te;for(var X=1;X<j;X++){for(var ee=J>>>26,re=67108863&J,oe=Math.min(X,G.length-1),ue=Math.max(0,X-D.length+1);ue<=oe;ue++){var ce=X-ue|0;ee+=(ie=(W=0|D.words[ce])*(Z=0|G.words[ue])+re)/67108864|0,re=67108863&ie}V.words[X]=0|re,J=0|ee}return J!==0?V.words[X]=0|J:V.length--,V.strip()}s.prototype.toString=function(D,G){var V;if(G=0|G||1,(D=D||10)===16||D==="hex"){V="";for(var j=0,W=0,Z=0;Z<this.length;Z++){var ie=this.words[Z],te=(16777215&(ie<<j|W)).toString(16);V=(W=ie>>>24-j&16777215)!=0||Z!==this.length-1?g[6-te.length]+te+V:te+V,(j+=2)>=26&&(j-=26,Z--)}for(W!==0&&(V=W.toString(16)+V);V.length%G!=0;)V="0"+V;return this.negative!==0&&(V="-"+V),V}if(D===(0|D)&&D>=2&&D<=36){var J=f[D],X=v[D];V="";var ee=this.clone();for(ee.negative=0;!ee.isZero();){var re=ee.modn(X).toString(D);V=(ee=ee.idivn(X)).isZero()?re+V:g[J-re.length]+re+V}for(this.isZero()&&(V="0"+V);V.length%G!=0;)V="0"+V;return this.negative!==0&&(V="-"+V),V}n(!1,"Base should be between 2 and 36")},s.prototype.toNumber=function(){var D=this.words[0];return this.length===2?D+=67108864*this.words[1]:this.length===3&&this.words[2]===1?D+=4503599627370496+67108864*this.words[1]:this.length>2&&n(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-D:D},s.prototype.toJSON=function(){return this.toString(16)},s.prototype.toBuffer=function(D,G){return n(u!==void 0),this.toArrayLike(u,D,G)},s.prototype.toArray=function(D,G){return this.toArrayLike(Array,D,G)},s.prototype.toArrayLike=function(D,G,V){var j=this.byteLength(),W=V||Math.max(1,j);n(j<=W,"byte array longer than desired length"),n(W>0,"Requested array length <= 0"),this.strip();var Z,ie,te=G==="le",J=new D(W),X=this.clone();if(te){for(ie=0;!X.isZero();ie++)Z=X.andln(255),X.iushrn(8),J[ie]=Z;for(;ie<W;ie++)J[ie]=0}else{for(ie=0;ie<W-j;ie++)J[ie]=0;for(ie=0;!X.isZero();ie++)Z=X.andln(255),X.iushrn(8),J[W-ie-1]=Z}return J},Math.clz32?s.prototype._countBits=function(D){return 32-Math.clz32(D)}:s.prototype._countBits=function(D){var G=D,V=0;return G>=4096&&(V+=13,G>>>=13),G>=64&&(V+=7,G>>>=7),G>=8&&(V+=4,G>>>=4),G>=2&&(V+=2,G>>>=2),V+G},s.prototype._zeroBits=function(D){if(D===0)return 26;var G=D,V=0;return!(8191&G)&&(V+=13,G>>>=13),!(127&G)&&(V+=7,G>>>=7),!(15&G)&&(V+=4,G>>>=4),!(3&G)&&(V+=2,G>>>=2),!(1&G)&&V++,V},s.prototype.bitLength=function(){var D=this.words[this.length-1],G=this._countBits(D);return 26*(this.length-1)+G},s.prototype.zeroBits=function(){if(this.isZero())return 0;for(var D=0,G=0;G<this.length;G++){var V=this._zeroBits(this.words[G]);if(D+=V,V!==26)break}return D},s.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},s.prototype.toTwos=function(D){return this.negative!==0?this.abs().inotn(D).iaddn(1):this.clone()},s.prototype.fromTwos=function(D){return this.testn(D-1)?this.notn(D).iaddn(1).ineg():this.clone()},s.prototype.isNeg=function(){return this.negative!==0},s.prototype.neg=function(){return this.clone().ineg()},s.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},s.prototype.iuor=function(D){for(;this.length<D.length;)this.words[this.length++]=0;for(var G=0;G<D.length;G++)this.words[G]=this.words[G]|D.words[G];return this.strip()},s.prototype.ior=function(D){return n((this.negative|D.negative)==0),this.iuor(D)},s.prototype.or=function(D){return this.length>D.length?this.clone().ior(D):D.clone().ior(this)},s.prototype.uor=function(D){return this.length>D.length?this.clone().iuor(D):D.clone().iuor(this)},s.prototype.iuand=function(D){var G;G=this.length>D.length?D:this;for(var V=0;V<G.length;V++)this.words[V]=this.words[V]&D.words[V];return this.length=G.length,this.strip()},s.prototype.iand=function(D){return n((this.negative|D.negative)==0),this.iuand(D)},s.prototype.and=function(D){return this.length>D.length?this.clone().iand(D):D.clone().iand(this)},s.prototype.uand=function(D){return this.length>D.length?this.clone().iuand(D):D.clone().iuand(this)},s.prototype.iuxor=function(D){var G,V;this.length>D.length?(G=this,V=D):(G=D,V=this);for(var j=0;j<V.length;j++)this.words[j]=G.words[j]^V.words[j];if(this!==G)for(;j<G.length;j++)this.words[j]=G.words[j];return this.length=G.length,this.strip()},s.prototype.ixor=function(D){return n((this.negative|D.negative)==0),this.iuxor(D)},s.prototype.xor=function(D){return this.length>D.length?this.clone().ixor(D):D.clone().ixor(this)},s.prototype.uxor=function(D){return this.length>D.length?this.clone().iuxor(D):D.clone().iuxor(this)},s.prototype.inotn=function(D){n(typeof D=="number"&&D>=0);var G=0|Math.ceil(D/26),V=D%26;this._expand(G),V>0&&G--;for(var j=0;j<G;j++)this.words[j]=67108863&~this.words[j];return V>0&&(this.words[j]=~this.words[j]&67108863>>26-V),this.strip()},s.prototype.notn=function(D){return this.clone().inotn(D)},s.prototype.setn=function(D,G){n(typeof D=="number"&&D>=0);var V=D/26|0,j=D%26;return this._expand(V+1),this.words[V]=G?this.words[V]|1<<j:this.words[V]&~(1<<j),this.strip()},s.prototype.iadd=function(D){var G,V,j;if(this.negative!==0&&D.negative===0)return this.negative=0,G=this.isub(D),this.negative^=1,this._normSign();if(this.negative===0&&D.negative!==0)return D.negative=0,G=this.isub(D),D.negative=1,G._normSign();this.length>D.length?(V=this,j=D):(V=D,j=this);for(var W=0,Z=0;Z<j.length;Z++)G=(0|V.words[Z])+(0|j.words[Z])+W,this.words[Z]=67108863&G,W=G>>>26;for(;W!==0&&Z<V.length;Z++)G=(0|V.words[Z])+W,this.words[Z]=67108863&G,W=G>>>26;if(this.length=V.length,W!==0)this.words[this.length]=W,this.length++;else if(V!==this)for(;Z<V.length;Z++)this.words[Z]=V.words[Z];return this},s.prototype.add=function(D){var G;return D.negative!==0&&this.negative===0?(D.negative=0,G=this.sub(D),D.negative^=1,G):D.negative===0&&this.negative!==0?(this.negative=0,G=D.sub(this),this.negative=1,G):this.length>D.length?this.clone().iadd(D):D.clone().iadd(this)},s.prototype.isub=function(D){if(D.negative!==0){D.negative=0;var G=this.iadd(D);return D.negative=1,G._normSign()}if(this.negative!==0)return this.negative=0,this.iadd(D),this.negative=1,this._normSign();var V,j,W=this.cmp(D);if(W===0)return this.negative=0,this.length=1,this.words[0]=0,this;W>0?(V=this,j=D):(V=D,j=this);for(var Z=0,ie=0;ie<j.length;ie++)Z=(G=(0|V.words[ie])-(0|j.words[ie])+Z)>>26,this.words[ie]=67108863&G;for(;Z!==0&&ie<V.length;ie++)Z=(G=(0|V.words[ie])+Z)>>26,this.words[ie]=67108863&G;if(Z===0&&ie<V.length&&V!==this)for(;ie<V.length;ie++)this.words[ie]=V.words[ie];return this.length=Math.max(this.length,ie),V!==this&&(this.negative=1),this.strip()},s.prototype.sub=function(D){return this.clone().isub(D)};var x=function(D,G,V){var j,W,Z,ie=D.words,te=G.words,J=V.words,X=0,ee=0|ie[0],re=8191&ee,oe=ee>>>13,ue=0|ie[1],ce=8191&ue,de=ue>>>13,me=0|ie[2],_e=8191&me,Se=me>>>13,we=0|ie[3],xe=8191&we,De=we>>>13,Ee=0|ie[4],Me=8191&Ee,he=Ee>>>13,fe=0|ie[5],ae=8191&fe,be=fe>>>13,Ie=0|ie[6],Te=8191&Ie,Ne=Ie>>>13,qe=0|ie[7],ve=8191&qe,Ce=qe>>>13,Ae=0|ie[8],ze=8191&Ae,Ue=Ae>>>13,Ve=0|ie[9],Ye=8191&Ve,$e=Ve>>>13,rt=0|te[0],ht=8191&rt,nt=rt>>>13,bt=0|te[1],wt=8191&bt,ut=bt>>>13,lt=0|te[2],Tt=8191<,Et=lt>>>13,St=0|te[3],Ft=8191&St,zt=St>>>13,Je=0|te[4],et=8191&Je,Ze=Je>>>13,Qe=0|te[5],st=8191&Qe,ft=Qe>>>13,Be=0|te[6],je=8191&Be,at=Be>>>13,ot=0|te[7],xt=8191&ot,yt=ot>>>13,_t=0|te[8],gt=8191&_t,Ct=_t>>>13,dt=0|te[9],vt=8191&dt,At=dt>>>13;V.negative=D.negative^G.negative,V.length=19;var Bt=(X+(j=Math.imul(re,ht))|0)+((8191&(W=(W=Math.imul(re,nt))+Math.imul(oe,ht)|0))<<13)|0;X=((Z=Math.imul(oe,nt))+(W>>>13)|0)+(Bt>>>26)|0,Bt&=67108863,j=Math.imul(ce,ht),W=(W=Math.imul(ce,nt))+Math.imul(de,ht)|0,Z=Math.imul(de,nt);var jt=(X+(j=j+Math.imul(re,wt)|0)|0)+((8191&(W=(W=W+Math.imul(re,ut)|0)+Math.imul(oe,wt)|0))<<13)|0;X=((Z=Z+Math.imul(oe,ut)|0)+(W>>>13)|0)+(jt>>>26)|0,jt&=67108863,j=Math.imul(_e,ht),W=(W=Math.imul(_e,nt))+Math.imul(Se,ht)|0,Z=Math.imul(Se,nt),j=j+Math.imul(ce,wt)|0,W=(W=W+Math.imul(ce,ut)|0)+Math.imul(de,wt)|0,Z=Z+Math.imul(de,ut)|0;var Ut=(X+(j=j+Math.imul(re,Tt)|0)|0)+((8191&(W=(W=W+Math.imul(re,Et)|0)+Math.imul(oe,Tt)|0))<<13)|0;X=((Z=Z+Math.imul(oe,Et)|0)+(W>>>13)|0)+(Ut>>>26)|0,Ut&=67108863,j=Math.imul(xe,ht),W=(W=Math.imul(xe,nt))+Math.imul(De,ht)|0,Z=Math.imul(De,nt),j=j+Math.imul(_e,wt)|0,W=(W=W+Math.imul(_e,ut)|0)+Math.imul(Se,wt)|0,Z=Z+Math.imul(Se,ut)|0,j=j+Math.imul(ce,Tt)|0,W=(W=W+Math.imul(ce,Et)|0)+Math.imul(de,Tt)|0,Z=Z+Math.imul(de,Et)|0;var tn=(X+(j=j+Math.imul(re,Ft)|0)|0)+((8191&(W=(W=W+Math.imul(re,zt)|0)+Math.imul(oe,Ft)|0))<<13)|0;X=((Z=Z+Math.imul(oe,zt)|0)+(W>>>13)|0)+(tn>>>26)|0,tn&=67108863,j=Math.imul(Me,ht),W=(W=Math.imul(Me,nt))+Math.imul(he,ht)|0,Z=Math.imul(he,nt),j=j+Math.imul(xe,wt)|0,W=(W=W+Math.imul(xe,ut)|0)+Math.imul(De,wt)|0,Z=Z+Math.imul(De,ut)|0,j=j+Math.imul(_e,Tt)|0,W=(W=W+Math.imul(_e,Et)|0)+Math.imul(Se,Tt)|0,Z=Z+Math.imul(Se,Et)|0,j=j+Math.imul(ce,Ft)|0,W=(W=W+Math.imul(ce,zt)|0)+Math.imul(de,Ft)|0,Z=Z+Math.imul(de,zt)|0;var Xt=(X+(j=j+Math.imul(re,et)|0)|0)+((8191&(W=(W=W+Math.imul(re,Ze)|0)+Math.imul(oe,et)|0))<<13)|0;X=((Z=Z+Math.imul(oe,Ze)|0)+(W>>>13)|0)+(Xt>>>26)|0,Xt&=67108863,j=Math.imul(ae,ht),W=(W=Math.imul(ae,nt))+Math.imul(be,ht)|0,Z=Math.imul(be,nt),j=j+Math.imul(Me,wt)|0,W=(W=W+Math.imul(Me,ut)|0)+Math.imul(he,wt)|0,Z=Z+Math.imul(he,ut)|0,j=j+Math.imul(xe,Tt)|0,W=(W=W+Math.imul(xe,Et)|0)+Math.imul(De,Tt)|0,Z=Z+Math.imul(De,Et)|0,j=j+Math.imul(_e,Ft)|0,W=(W=W+Math.imul(_e,zt)|0)+Math.imul(Se,Ft)|0,Z=Z+Math.imul(Se,zt)|0,j=j+Math.imul(ce,et)|0,W=(W=W+Math.imul(ce,Ze)|0)+Math.imul(de,et)|0,Z=Z+Math.imul(de,Ze)|0;var Qt=(X+(j=j+Math.imul(re,st)|0)|0)+((8191&(W=(W=W+Math.imul(re,ft)|0)+Math.imul(oe,st)|0))<<13)|0;X=((Z=Z+Math.imul(oe,ft)|0)+(W>>>13)|0)+(Qt>>>26)|0,Qt&=67108863,j=Math.imul(Te,ht),W=(W=Math.imul(Te,nt))+Math.imul(Ne,ht)|0,Z=Math.imul(Ne,nt),j=j+Math.imul(ae,wt)|0,W=(W=W+Math.imul(ae,ut)|0)+Math.imul(be,wt)|0,Z=Z+Math.imul(be,ut)|0,j=j+Math.imul(Me,Tt)|0,W=(W=W+Math.imul(Me,Et)|0)+Math.imul(he,Tt)|0,Z=Z+Math.imul(he,Et)|0,j=j+Math.imul(xe,Ft)|0,W=(W=W+Math.imul(xe,zt)|0)+Math.imul(De,Ft)|0,Z=Z+Math.imul(De,zt)|0,j=j+Math.imul(_e,et)|0,W=(W=W+Math.imul(_e,Ze)|0)+Math.imul(Se,et)|0,Z=Z+Math.imul(Se,Ze)|0,j=j+Math.imul(ce,st)|0,W=(W=W+Math.imul(ce,ft)|0)+Math.imul(de,st)|0,Z=Z+Math.imul(de,ft)|0;var Gt=(X+(j=j+Math.imul(re,je)|0)|0)+((8191&(W=(W=W+Math.imul(re,at)|0)+Math.imul(oe,je)|0))<<13)|0;X=((Z=Z+Math.imul(oe,at)|0)+(W>>>13)|0)+(Gt>>>26)|0,Gt&=67108863,j=Math.imul(ve,ht),W=(W=Math.imul(ve,nt))+Math.imul(Ce,ht)|0,Z=Math.imul(Ce,nt),j=j+Math.imul(Te,wt)|0,W=(W=W+Math.imul(Te,ut)|0)+Math.imul(Ne,wt)|0,Z=Z+Math.imul(Ne,ut)|0,j=j+Math.imul(ae,Tt)|0,W=(W=W+Math.imul(ae,Et)|0)+Math.imul(be,Tt)|0,Z=Z+Math.imul(be,Et)|0,j=j+Math.imul(Me,Ft)|0,W=(W=W+Math.imul(Me,zt)|0)+Math.imul(he,Ft)|0,Z=Z+Math.imul(he,zt)|0,j=j+Math.imul(xe,et)|0,W=(W=W+Math.imul(xe,Ze)|0)+Math.imul(De,et)|0,Z=Z+Math.imul(De,Ze)|0,j=j+Math.imul(_e,st)|0,W=(W=W+Math.imul(_e,ft)|0)+Math.imul(Se,st)|0,Z=Z+Math.imul(Se,ft)|0,j=j+Math.imul(ce,je)|0,W=(W=W+Math.imul(ce,at)|0)+Math.imul(de,je)|0,Z=Z+Math.imul(de,at)|0;var vn=(X+(j=j+Math.imul(re,xt)|0)|0)+((8191&(W=(W=W+Math.imul(re,yt)|0)+Math.imul(oe,xt)|0))<<13)|0;X=((Z=Z+Math.imul(oe,yt)|0)+(W>>>13)|0)+(vn>>>26)|0,vn&=67108863,j=Math.imul(ze,ht),W=(W=Math.imul(ze,nt))+Math.imul(Ue,ht)|0,Z=Math.imul(Ue,nt),j=j+Math.imul(ve,wt)|0,W=(W=W+Math.imul(ve,ut)|0)+Math.imul(Ce,wt)|0,Z=Z+Math.imul(Ce,ut)|0,j=j+Math.imul(Te,Tt)|0,W=(W=W+Math.imul(Te,Et)|0)+Math.imul(Ne,Tt)|0,Z=Z+Math.imul(Ne,Et)|0,j=j+Math.imul(ae,Ft)|0,W=(W=W+Math.imul(ae,zt)|0)+Math.imul(be,Ft)|0,Z=Z+Math.imul(be,zt)|0,j=j+Math.imul(Me,et)|0,W=(W=W+Math.imul(Me,Ze)|0)+Math.imul(he,et)|0,Z=Z+Math.imul(he,Ze)|0,j=j+Math.imul(xe,st)|0,W=(W=W+Math.imul(xe,ft)|0)+Math.imul(De,st)|0,Z=Z+Math.imul(De,ft)|0,j=j+Math.imul(_e,je)|0,W=(W=W+Math.imul(_e,at)|0)+Math.imul(Se,je)|0,Z=Z+Math.imul(Se,at)|0,j=j+Math.imul(ce,xt)|0,W=(W=W+Math.imul(ce,yt)|0)+Math.imul(de,xt)|0,Z=Z+Math.imul(de,yt)|0;var Tn=(X+(j=j+Math.imul(re,gt)|0)|0)+((8191&(W=(W=W+Math.imul(re,Ct)|0)+Math.imul(oe,gt)|0))<<13)|0;X=((Z=Z+Math.imul(oe,Ct)|0)+(W>>>13)|0)+(Tn>>>26)|0,Tn&=67108863,j=Math.imul(Ye,ht),W=(W=Math.imul(Ye,nt))+Math.imul($e,ht)|0,Z=Math.imul($e,nt),j=j+Math.imul(ze,wt)|0,W=(W=W+Math.imul(ze,ut)|0)+Math.imul(Ue,wt)|0,Z=Z+Math.imul(Ue,ut)|0,j=j+Math.imul(ve,Tt)|0,W=(W=W+Math.imul(ve,Et)|0)+Math.imul(Ce,Tt)|0,Z=Z+Math.imul(Ce,Et)|0,j=j+Math.imul(Te,Ft)|0,W=(W=W+Math.imul(Te,zt)|0)+Math.imul(Ne,Ft)|0,Z=Z+Math.imul(Ne,zt)|0,j=j+Math.imul(ae,et)|0,W=(W=W+Math.imul(ae,Ze)|0)+Math.imul(be,et)|0,Z=Z+Math.imul(be,Ze)|0,j=j+Math.imul(Me,st)|0,W=(W=W+Math.imul(Me,ft)|0)+Math.imul(he,st)|0,Z=Z+Math.imul(he,ft)|0,j=j+Math.imul(xe,je)|0,W=(W=W+Math.imul(xe,at)|0)+Math.imul(De,je)|0,Z=Z+Math.imul(De,at)|0,j=j+Math.imul(_e,xt)|0,W=(W=W+Math.imul(_e,yt)|0)+Math.imul(Se,xt)|0,Z=Z+Math.imul(Se,yt)|0,j=j+Math.imul(ce,gt)|0,W=(W=W+Math.imul(ce,Ct)|0)+Math.imul(de,gt)|0,Z=Z+Math.imul(de,Ct)|0;var dn=(X+(j=j+Math.imul(re,vt)|0)|0)+((8191&(W=(W=W+Math.imul(re,At)|0)+Math.imul(oe,vt)|0))<<13)|0;X=((Z=Z+Math.imul(oe,At)|0)+(W>>>13)|0)+(dn>>>26)|0,dn&=67108863,j=Math.imul(Ye,wt),W=(W=Math.imul(Ye,ut))+Math.imul($e,wt)|0,Z=Math.imul($e,ut),j=j+Math.imul(ze,Tt)|0,W=(W=W+Math.imul(ze,Et)|0)+Math.imul(Ue,Tt)|0,Z=Z+Math.imul(Ue,Et)|0,j=j+Math.imul(ve,Ft)|0,W=(W=W+Math.imul(ve,zt)|0)+Math.imul(Ce,Ft)|0,Z=Z+Math.imul(Ce,zt)|0,j=j+Math.imul(Te,et)|0,W=(W=W+Math.imul(Te,Ze)|0)+Math.imul(Ne,et)|0,Z=Z+Math.imul(Ne,Ze)|0,j=j+Math.imul(ae,st)|0,W=(W=W+Math.imul(ae,ft)|0)+Math.imul(be,st)|0,Z=Z+Math.imul(be,ft)|0,j=j+Math.imul(Me,je)|0,W=(W=W+Math.imul(Me,at)|0)+Math.imul(he,je)|0,Z=Z+Math.imul(he,at)|0,j=j+Math.imul(xe,xt)|0,W=(W=W+Math.imul(xe,yt)|0)+Math.imul(De,xt)|0,Z=Z+Math.imul(De,yt)|0,j=j+Math.imul(_e,gt)|0,W=(W=W+Math.imul(_e,Ct)|0)+Math.imul(Se,gt)|0,Z=Z+Math.imul(Se,Ct)|0;var Yt=(X+(j=j+Math.imul(ce,vt)|0)|0)+((8191&(W=(W=W+Math.imul(ce,At)|0)+Math.imul(de,vt)|0))<<13)|0;X=((Z=Z+Math.imul(de,At)|0)+(W>>>13)|0)+(Yt>>>26)|0,Yt&=67108863,j=Math.imul(Ye,Tt),W=(W=Math.imul(Ye,Et))+Math.imul($e,Tt)|0,Z=Math.imul($e,Et),j=j+Math.imul(ze,Ft)|0,W=(W=W+Math.imul(ze,zt)|0)+Math.imul(Ue,Ft)|0,Z=Z+Math.imul(Ue,zt)|0,j=j+Math.imul(ve,et)|0,W=(W=W+Math.imul(ve,Ze)|0)+Math.imul(Ce,et)|0,Z=Z+Math.imul(Ce,Ze)|0,j=j+Math.imul(Te,st)|0,W=(W=W+Math.imul(Te,ft)|0)+Math.imul(Ne,st)|0,Z=Z+Math.imul(Ne,ft)|0,j=j+Math.imul(ae,je)|0,W=(W=W+Math.imul(ae,at)|0)+Math.imul(be,je)|0,Z=Z+Math.imul(be,at)|0,j=j+Math.imul(Me,xt)|0,W=(W=W+Math.imul(Me,yt)|0)+Math.imul(he,xt)|0,Z=Z+Math.imul(he,yt)|0,j=j+Math.imul(xe,gt)|0,W=(W=W+Math.imul(xe,Ct)|0)+Math.imul(De,gt)|0,Z=Z+Math.imul(De,Ct)|0;var ln=(X+(j=j+Math.imul(_e,vt)|0)|0)+((8191&(W=(W=W+Math.imul(_e,At)|0)+Math.imul(Se,vt)|0))<<13)|0;X=((Z=Z+Math.imul(Se,At)|0)+(W>>>13)|0)+(ln>>>26)|0,ln&=67108863,j=Math.imul(Ye,Ft),W=(W=Math.imul(Ye,zt))+Math.imul($e,Ft)|0,Z=Math.imul($e,zt),j=j+Math.imul(ze,et)|0,W=(W=W+Math.imul(ze,Ze)|0)+Math.imul(Ue,et)|0,Z=Z+Math.imul(Ue,Ze)|0,j=j+Math.imul(ve,st)|0,W=(W=W+Math.imul(ve,ft)|0)+Math.imul(Ce,st)|0,Z=Z+Math.imul(Ce,ft)|0,j=j+Math.imul(Te,je)|0,W=(W=W+Math.imul(Te,at)|0)+Math.imul(Ne,je)|0,Z=Z+Math.imul(Ne,at)|0,j=j+Math.imul(ae,xt)|0,W=(W=W+Math.imul(ae,yt)|0)+Math.imul(be,xt)|0,Z=Z+Math.imul(be,yt)|0,j=j+Math.imul(Me,gt)|0,W=(W=W+Math.imul(Me,Ct)|0)+Math.imul(he,gt)|0,Z=Z+Math.imul(he,Ct)|0;var nn=(X+(j=j+Math.imul(xe,vt)|0)|0)+((8191&(W=(W=W+Math.imul(xe,At)|0)+Math.imul(De,vt)|0))<<13)|0;X=((Z=Z+Math.imul(De,At)|0)+(W>>>13)|0)+(nn>>>26)|0,nn&=67108863,j=Math.imul(Ye,et),W=(W=Math.imul(Ye,Ze))+Math.imul($e,et)|0,Z=Math.imul($e,Ze),j=j+Math.imul(ze,st)|0,W=(W=W+Math.imul(ze,ft)|0)+Math.imul(Ue,st)|0,Z=Z+Math.imul(Ue,ft)|0,j=j+Math.imul(ve,je)|0,W=(W=W+Math.imul(ve,at)|0)+Math.imul(Ce,je)|0,Z=Z+Math.imul(Ce,at)|0,j=j+Math.imul(Te,xt)|0,W=(W=W+Math.imul(Te,yt)|0)+Math.imul(Ne,xt)|0,Z=Z+Math.imul(Ne,yt)|0,j=j+Math.imul(ae,gt)|0,W=(W=W+Math.imul(ae,Ct)|0)+Math.imul(be,gt)|0,Z=Z+Math.imul(be,Ct)|0;var fn=(X+(j=j+Math.imul(Me,vt)|0)|0)+((8191&(W=(W=W+Math.imul(Me,At)|0)+Math.imul(he,vt)|0))<<13)|0;X=((Z=Z+Math.imul(he,At)|0)+(W>>>13)|0)+(fn>>>26)|0,fn&=67108863,j=Math.imul(Ye,st),W=(W=Math.imul(Ye,ft))+Math.imul($e,st)|0,Z=Math.imul($e,ft),j=j+Math.imul(ze,je)|0,W=(W=W+Math.imul(ze,at)|0)+Math.imul(Ue,je)|0,Z=Z+Math.imul(Ue,at)|0,j=j+Math.imul(ve,xt)|0,W=(W=W+Math.imul(ve,yt)|0)+Math.imul(Ce,xt)|0,Z=Z+Math.imul(Ce,yt)|0,j=j+Math.imul(Te,gt)|0,W=(W=W+Math.imul(Te,Ct)|0)+Math.imul(Ne,gt)|0,Z=Z+Math.imul(Ne,Ct)|0;var mn=(X+(j=j+Math.imul(ae,vt)|0)|0)+((8191&(W=(W=W+Math.imul(ae,At)|0)+Math.imul(be,vt)|0))<<13)|0;X=((Z=Z+Math.imul(be,At)|0)+(W>>>13)|0)+(mn>>>26)|0,mn&=67108863,j=Math.imul(Ye,je),W=(W=Math.imul(Ye,at))+Math.imul($e,je)|0,Z=Math.imul($e,at),j=j+Math.imul(ze,xt)|0,W=(W=W+Math.imul(ze,yt)|0)+Math.imul(Ue,xt)|0,Z=Z+Math.imul(Ue,yt)|0,j=j+Math.imul(ve,gt)|0,W=(W=W+Math.imul(ve,Ct)|0)+Math.imul(Ce,gt)|0,Z=Z+Math.imul(Ce,Ct)|0;var xn=(X+(j=j+Math.imul(Te,vt)|0)|0)+((8191&(W=(W=W+Math.imul(Te,At)|0)+Math.imul(Ne,vt)|0))<<13)|0;X=((Z=Z+Math.imul(Ne,At)|0)+(W>>>13)|0)+(xn>>>26)|0,xn&=67108863,j=Math.imul(Ye,xt),W=(W=Math.imul(Ye,yt))+Math.imul($e,xt)|0,Z=Math.imul($e,yt),j=j+Math.imul(ze,gt)|0,W=(W=W+Math.imul(ze,Ct)|0)+Math.imul(Ue,gt)|0,Z=Z+Math.imul(Ue,Ct)|0;var Pn=(X+(j=j+Math.imul(ve,vt)|0)|0)+((8191&(W=(W=W+Math.imul(ve,At)|0)+Math.imul(Ce,vt)|0))<<13)|0;X=((Z=Z+Math.imul(Ce,At)|0)+(W>>>13)|0)+(Pn>>>26)|0,Pn&=67108863,j=Math.imul(Ye,gt),W=(W=Math.imul(Ye,Ct))+Math.imul($e,gt)|0,Z=Math.imul($e,Ct);var Dn=(X+(j=j+Math.imul(ze,vt)|0)|0)+((8191&(W=(W=W+Math.imul(ze,At)|0)+Math.imul(Ue,vt)|0))<<13)|0;X=((Z=Z+Math.imul(Ue,At)|0)+(W>>>13)|0)+(Dn>>>26)|0,Dn&=67108863;var En=(X+(j=Math.imul(Ye,vt))|0)+((8191&(W=(W=Math.imul(Ye,At))+Math.imul($e,vt)|0))<<13)|0;return X=((Z=Math.imul($e,At))+(W>>>13)|0)+(En>>>26)|0,En&=67108863,J[0]=Bt,J[1]=jt,J[2]=Ut,J[3]=tn,J[4]=Xt,J[5]=Qt,J[6]=Gt,J[7]=vn,J[8]=Tn,J[9]=dn,J[10]=Yt,J[11]=ln,J[12]=nn,J[13]=fn,J[14]=mn,J[15]=xn,J[16]=Pn,J[17]=Dn,J[18]=En,X!==0&&(J[19]=X,V.length++),V};function T(D,G,V){return new d().mulp(D,G,V)}function d(D,G){this.x=D,this.y=G}Math.imul||(x=m),s.prototype.mulTo=function(D,G){var V,j=this.length+D.length;return V=this.length===10&&D.length===10?x(this,D,G):j<63?m(this,D,G):j<1024?function(W,Z,ie){ie.negative=Z.negative^W.negative,ie.length=W.length+Z.length;for(var te=0,J=0,X=0;X<ie.length-1;X++){var ee=J;J=0;for(var re=67108863&te,oe=Math.min(X,Z.length-1),ue=Math.max(0,X-W.length+1);ue<=oe;ue++){var ce=X-ue,de=(0|W.words[ce])*(0|Z.words[ue]),me=67108863&de;re=67108863&(me=me+re|0),J+=(ee=(ee=ee+(de/67108864|0)|0)+(me>>>26)|0)>>>26,ee&=67108863}ie.words[X]=re,te=ee,ee=J}return te!==0?ie.words[X]=te:ie.length--,ie.strip()}(this,D,G):T(this,D,G),V},d.prototype.makeRBT=function(D){for(var G=new Array(D),V=s.prototype._countBits(D)-1,j=0;j<D;j++)G[j]=this.revBin(j,V,D);return G},d.prototype.revBin=function(D,G,V){if(D===0||D===V-1)return D;for(var j=0,W=0;W<G;W++)j|=(1&D)<<G-W-1,D>>=1;return j},d.prototype.permute=function(D,G,V,j,W,Z){for(var ie=0;ie<Z;ie++)j[ie]=G[D[ie]],W[ie]=V[D[ie]]},d.prototype.transform=function(D,G,V,j,W,Z){this.permute(Z,D,G,V,j,W);for(var ie=1;ie<W;ie<<=1)for(var te=ie<<1,J=Math.cos(2*Math.PI/te),X=Math.sin(2*Math.PI/te),ee=0;ee<W;ee+=te)for(var re=J,oe=X,ue=0;ue<ie;ue++){var ce=V[ee+ue],de=j[ee+ue],me=V[ee+ue+ie],_e=j[ee+ue+ie],Se=re*me-oe*_e;_e=re*_e+oe*me,me=Se,V[ee+ue]=ce+me,j[ee+ue]=de+_e,V[ee+ue+ie]=ce-me,j[ee+ue+ie]=de-_e,ue!==te&&(Se=J*re-X*oe,oe=J*oe+X*re,re=Se)}},d.prototype.guessLen13b=function(D,G){var V=1|Math.max(G,D),j=1&V,W=0;for(V=V/2|0;V;V>>>=1)W++;return 1<<W+1+j},d.prototype.conjugate=function(D,G,V){if(!(V<=1))for(var j=0;j<V/2;j++){var W=D[j];D[j]=D[V-j-1],D[V-j-1]=W,W=G[j],G[j]=-G[V-j-1],G[V-j-1]=-W}},d.prototype.normalize13b=function(D,G){for(var V=0,j=0;j<G/2;j++){var W=8192*Math.round(D[2*j+1]/G)+Math.round(D[2*j]/G)+V;D[j]=67108863&W,V=W<67108864?0:W/67108864|0}return D},d.prototype.convert13b=function(D,G,V,j){for(var W=0,Z=0;Z<G;Z++)W+=0|D[Z],V[2*Z]=8191&W,W>>>=13,V[2*Z+1]=8191&W,W>>>=13;for(Z=2*G;Z<j;++Z)V[Z]=0;n(W===0),n((-8192&W)==0)},d.prototype.stub=function(D){for(var G=new Array(D),V=0;V<D;V++)G[V]=0;return G},d.prototype.mulp=function(D,G,V){var j=2*this.guessLen13b(D.length,G.length),W=this.makeRBT(j),Z=this.stub(j),ie=new Array(j),te=new Array(j),J=new Array(j),X=new Array(j),ee=new Array(j),re=new Array(j),oe=V.words;oe.length=j,this.convert13b(D.words,D.length,ie,j),this.convert13b(G.words,G.length,X,j),this.transform(ie,Z,te,J,j,W),this.transform(X,Z,ee,re,j,W);for(var ue=0;ue<j;ue++){var ce=te[ue]*ee[ue]-J[ue]*re[ue];J[ue]=te[ue]*re[ue]+J[ue]*ee[ue],te[ue]=ce}return this.conjugate(te,J,j),this.transform(te,J,oe,Z,j,W),this.conjugate(oe,Z,j),this.normalize13b(oe,j),V.negative=D.negative^G.negative,V.length=D.length+G.length,V.strip()},s.prototype.mul=function(D){var G=new s(null);return G.words=new Array(this.length+D.length),this.mulTo(D,G)},s.prototype.mulf=function(D){var G=new s(null);return G.words=new Array(this.length+D.length),T(this,D,G)},s.prototype.imul=function(D){return this.clone().mulTo(D,this)},s.prototype.imuln=function(D){n(typeof D=="number"),n(D<67108864);for(var G=0,V=0;V<this.length;V++){var j=(0|this.words[V])*D,W=(67108863&j)+(67108863&G);G>>=26,G+=j/67108864|0,G+=W>>>26,this.words[V]=67108863&W}return G!==0&&(this.words[V]=G,this.length++),this},s.prototype.muln=function(D){return this.clone().imuln(D)},s.prototype.sqr=function(){return this.mul(this)},s.prototype.isqr=function(){return this.imul(this.clone())},s.prototype.pow=function(D){var G=function(Z){for(var ie=new Array(Z.bitLength()),te=0;te<ie.length;te++){var J=te/26|0,X=te%26;ie[te]=(Z.words[J]&1<<X)>>>X}return ie}(D);if(G.length===0)return new s(1);for(var V=this,j=0;j<G.length&&G[j]===0;j++,V=V.sqr());if(++j<G.length)for(var W=V.sqr();j<G.length;j++,W=W.sqr())G[j]!==0&&(V=V.mul(W));return V},s.prototype.iushln=function(D){n(typeof D=="number"&&D>=0);var G,V=D%26,j=(D-V)/26,W=67108863>>>26-V<<26-V;if(V!==0){var Z=0;for(G=0;G<this.length;G++){var ie=this.words[G]&W,te=(0|this.words[G])-ie<<V;this.words[G]=te|Z,Z=ie>>>26-V}Z&&(this.words[G]=Z,this.length++)}if(j!==0){for(G=this.length-1;G>=0;G--)this.words[G+j]=this.words[G];for(G=0;G<j;G++)this.words[G]=0;this.length+=j}return this.strip()},s.prototype.ishln=function(D){return n(this.negative===0),this.iushln(D)},s.prototype.iushrn=function(D,G,V){var j;n(typeof D=="number"&&D>=0),j=G?(G-G%26)/26:0;var W=D%26,Z=Math.min((D-W)/26,this.length),ie=67108863^67108863>>>W<<W,te=V;if(j-=Z,j=Math.max(0,j),te){for(var J=0;J<Z;J++)te.words[J]=this.words[J];te.length=Z}if(Z!==0)if(this.length>Z)for(this.length-=Z,J=0;J<this.length;J++)this.words[J]=this.words[J+Z];else this.words[0]=0,this.length=1;var X=0;for(J=this.length-1;J>=0&&(X!==0||J>=j);J--){var ee=0|this.words[J];this.words[J]=X<<26-W|ee>>>W,X=ee&ie}return te&&X!==0&&(te.words[te.length++]=X),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},s.prototype.ishrn=function(D,G,V){return n(this.negative===0),this.iushrn(D,G,V)},s.prototype.shln=function(D){return this.clone().ishln(D)},s.prototype.ushln=function(D){return this.clone().iushln(D)},s.prototype.shrn=function(D){return this.clone().ishrn(D)},s.prototype.ushrn=function(D){return this.clone().iushrn(D)},s.prototype.testn=function(D){n(typeof D=="number"&&D>=0);var G=D%26,V=(D-G)/26,j=1<<G;return!(this.length<=V||!(this.words[V]&j))},s.prototype.imaskn=function(D){n(typeof D=="number"&&D>=0);var G=D%26,V=(D-G)/26;if(n(this.negative===0,"imaskn works only with positive numbers"),this.length<=V)return this;if(G!==0&&V++,this.length=Math.min(V,this.length),G!==0){var j=67108863^67108863>>>G<<G;this.words[this.length-1]&=j}return this.strip()},s.prototype.maskn=function(D){return this.clone().imaskn(D)},s.prototype.iaddn=function(D){return n(typeof D=="number"),n(D<67108864),D<0?this.isubn(-D):this.negative!==0?this.length===1&&(0|this.words[0])<D?(this.words[0]=D-(0|this.words[0]),this.negative=0,this):(this.negative=0,this.isubn(D),this.negative=1,this):this._iaddn(D)},s.prototype._iaddn=function(D){this.words[0]+=D;for(var G=0;G<this.length&&this.words[G]>=67108864;G++)this.words[G]-=67108864,G===this.length-1?this.words[G+1]=1:this.words[G+1]++;return this.length=Math.max(this.length,G+1),this},s.prototype.isubn=function(D){if(n(typeof D=="number"),n(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 G=0;G<this.length&&this.words[G]<0;G++)this.words[G]+=67108864,this.words[G+1]-=1;return this.strip()},s.prototype.addn=function(D){return this.clone().iaddn(D)},s.prototype.subn=function(D){return this.clone().isubn(D)},s.prototype.iabs=function(){return this.negative=0,this},s.prototype.abs=function(){return this.clone().iabs()},s.prototype._ishlnsubmul=function(D,G,V){var j,W,Z=D.length+V;this._expand(Z);var ie=0;for(j=0;j<D.length;j++){W=(0|this.words[j+V])+ie;var te=(0|D.words[j])*G;ie=((W-=67108863&te)>>26)-(te/67108864|0),this.words[j+V]=67108863&W}for(;j<this.length-V;j++)ie=(W=(0|this.words[j+V])+ie)>>26,this.words[j+V]=67108863&W;if(ie===0)return this.strip();for(n(ie===-1),ie=0,j=0;j<this.length;j++)ie=(W=-(0|this.words[j])+ie)>>26,this.words[j]=67108863&W;return this.negative=1,this.strip()},s.prototype._wordDiv=function(D,G){var V=(this.length,D.length),j=this.clone(),W=D,Z=0|W.words[W.length-1];(V=26-this._countBits(Z))!=0&&(W=W.ushln(V),j.iushln(V),Z=0|W.words[W.length-1]);var ie,te=j.length-W.length;if(G!=="mod"){(ie=new s(null)).length=te+1,ie.words=new Array(ie.length);for(var J=0;J<ie.length;J++)ie.words[J]=0}var X=j.clone()._ishlnsubmul(W,1,te);X.negative===0&&(j=X,ie&&(ie.words[te]=1));for(var ee=te-1;ee>=0;ee--){var re=67108864*(0|j.words[W.length+ee])+(0|j.words[W.length+ee-1]);for(re=Math.min(re/Z|0,67108863),j._ishlnsubmul(W,re,ee);j.negative!==0;)re--,j.negative=0,j._ishlnsubmul(W,1,ee),j.isZero()||(j.negative^=1);ie&&(ie.words[ee]=re)}return ie&&ie.strip(),j.strip(),G!=="div"&&V!==0&&j.iushrn(V),{div:ie||null,mod:j}},s.prototype.divmod=function(D,G,V){return n(!D.isZero()),this.isZero()?{div:new s(0),mod:new s(0)}:this.negative!==0&&D.negative===0?(Z=this.neg().divmod(D,G),G!=="mod"&&(j=Z.div.neg()),G!=="div"&&(W=Z.mod.neg(),V&&W.negative!==0&&W.iadd(D)),{div:j,mod:W}):this.negative===0&&D.negative!==0?(Z=this.divmod(D.neg(),G),G!=="mod"&&(j=Z.div.neg()),{div:j,mod:Z.mod}):this.negative&D.negative?(Z=this.neg().divmod(D.neg(),G),G!=="div"&&(W=Z.mod.neg(),V&&W.negative!==0&&W.isub(D)),{div:Z.div,mod:W}):D.length>this.length||this.cmp(D)<0?{div:new s(0),mod:this}:D.length===1?G==="div"?{div:this.divn(D.words[0]),mod:null}:G==="mod"?{div:null,mod:new s(this.modn(D.words[0]))}:{div:this.divn(D.words[0]),mod:new s(this.modn(D.words[0]))}:this._wordDiv(D,G);var j,W,Z},s.prototype.div=function(D){return this.divmod(D,"div",!1).div},s.prototype.mod=function(D){return this.divmod(D,"mod",!1).mod},s.prototype.umod=function(D){return this.divmod(D,"mod",!0).mod},s.prototype.divRound=function(D){var G=this.divmod(D);if(G.mod.isZero())return G.div;var V=G.div.negative!==0?G.mod.isub(D):G.mod,j=D.ushrn(1),W=D.andln(1),Z=V.cmp(j);return Z<0||W===1&&Z===0?G.div:G.div.negative!==0?G.div.isubn(1):G.div.iaddn(1)},s.prototype.modn=function(D){n(D<=67108863);for(var G=67108864%D,V=0,j=this.length-1;j>=0;j--)V=(G*V+(0|this.words[j]))%D;return V},s.prototype.idivn=function(D){n(D<=67108863);for(var G=0,V=this.length-1;V>=0;V--){var j=(0|this.words[V])+67108864*G;this.words[V]=j/D|0,G=j%D}return this.strip()},s.prototype.divn=function(D){return this.clone().idivn(D)},s.prototype.egcd=function(D){n(D.negative===0),n(!D.isZero());var G=this,V=D.clone();G=G.negative!==0?G.umod(D):G.clone();for(var j=new s(1),W=new s(0),Z=new s(0),ie=new s(1),te=0;G.isEven()&&V.isEven();)G.iushrn(1),V.iushrn(1),++te;for(var J=V.clone(),X=G.clone();!G.isZero();){for(var ee=0,re=1;!(G.words[0]&re)&&ee<26;++ee,re<<=1);if(ee>0)for(G.iushrn(ee);ee-- >0;)(j.isOdd()||W.isOdd())&&(j.iadd(J),W.isub(X)),j.iushrn(1),W.iushrn(1);for(var oe=0,ue=1;!(V.words[0]&ue)&&oe<26;++oe,ue<<=1);if(oe>0)for(V.iushrn(oe);oe-- >0;)(Z.isOdd()||ie.isOdd())&&(Z.iadd(J),ie.isub(X)),Z.iushrn(1),ie.iushrn(1);G.cmp(V)>=0?(G.isub(V),j.isub(Z),W.isub(ie)):(V.isub(G),Z.isub(j),ie.isub(W))}return{a:Z,b:ie,gcd:V.iushln(te)}},s.prototype._invmp=function(D){n(D.negative===0),n(!D.isZero());var G=this,V=D.clone();G=G.negative!==0?G.umod(D):G.clone();for(var j,W=new s(1),Z=new s(0),ie=V.clone();G.cmpn(1)>0&&V.cmpn(1)>0;){for(var te=0,J=1;!(G.words[0]&J)&&te<26;++te,J<<=1);if(te>0)for(G.iushrn(te);te-- >0;)W.isOdd()&&W.iadd(ie),W.iushrn(1);for(var X=0,ee=1;!(V.words[0]&ee)&&X<26;++X,ee<<=1);if(X>0)for(V.iushrn(X);X-- >0;)Z.isOdd()&&Z.iadd(ie),Z.iushrn(1);G.cmp(V)>=0?(G.isub(V),W.isub(Z)):(V.isub(G),Z.isub(W))}return(j=G.cmpn(1)===0?W:Z).cmpn(0)<0&&j.iadd(D),j},s.prototype.gcd=function(D){if(this.isZero())return D.abs();if(D.isZero())return this.abs();var G=this.clone(),V=D.clone();G.negative=0,V.negative=0;for(var j=0;G.isEven()&&V.isEven();j++)G.iushrn(1),V.iushrn(1);for(;;){for(;G.isEven();)G.iushrn(1);for(;V.isEven();)V.iushrn(1);var W=G.cmp(V);if(W<0){var Z=G;G=V,V=Z}else if(W===0||V.cmpn(1)===0)break;G.isub(V)}return V.iushln(j)},s.prototype.invm=function(D){return this.egcd(D).a.umod(D)},s.prototype.isEven=function(){return(1&this.words[0])==0},s.prototype.isOdd=function(){return(1&this.words[0])==1},s.prototype.andln=function(D){return this.words[0]&D},s.prototype.bincn=function(D){n(typeof D=="number");var G=D%26,V=(D-G)/26,j=1<<G;if(this.length<=V)return this._expand(V+1),this.words[V]|=j,this;for(var W=j,Z=V;W!==0&&Z<this.length;Z++){var ie=0|this.words[Z];W=(ie+=W)>>>26,ie&=67108863,this.words[Z]=ie}return W!==0&&(this.words[Z]=W,this.length++),this},s.prototype.isZero=function(){return this.length===1&&this.words[0]===0},s.prototype.cmpn=function(D){var G,V=D<0;if(this.negative!==0&&!V)return-1;if(this.negative===0&&V)return 1;if(this.strip(),this.length>1)G=1;else{V&&(D=-D),n(D<=67108863,"Number is too big");var j=0|this.words[0];G=j===D?0:j<D?-1:1}return this.negative!==0?0|-G:G},s.prototype.cmp=function(D){if(this.negative!==0&&D.negative===0)return-1;if(this.negative===0&&D.negative!==0)return 1;var G=this.ucmp(D);return this.negative!==0?0|-G:G},s.prototype.ucmp=function(D){if(this.length>D.length)return 1;if(this.length<D.length)return-1;for(var G=0,V=this.length-1;V>=0;V--){var j=0|this.words[V],W=0|D.words[V];if(j!==W){j<W?G=-1:j>W&&(G=1);break}}return G},s.prototype.gtn=function(D){return this.cmpn(D)===1},s.prototype.gt=function(D){return this.cmp(D)===1},s.prototype.gten=function(D){return this.cmpn(D)>=0},s.prototype.gte=function(D){return this.cmp(D)>=0},s.prototype.ltn=function(D){return this.cmpn(D)===-1},s.prototype.lt=function(D){return this.cmp(D)===-1},s.prototype.lten=function(D){return this.cmpn(D)<=0},s.prototype.lte=function(D){return this.cmp(D)<=0},s.prototype.eqn=function(D){return this.cmpn(D)===0},s.prototype.eq=function(D){return this.cmp(D)===0},s.red=function(D){return new B(D)},s.prototype.toRed=function(D){return n(!this.red,"Already a number in reduction context"),n(this.negative===0,"red works only with positives"),D.convertTo(this)._forceRed(D)},s.prototype.fromRed=function(){return n(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},s.prototype._forceRed=function(D){return this.red=D,this},s.prototype.forceRed=function(D){return n(!this.red,"Already a number in reduction context"),this._forceRed(D)},s.prototype.redAdd=function(D){return n(this.red,"redAdd works only with red numbers"),this.red.add(this,D)},s.prototype.redIAdd=function(D){return n(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,D)},s.prototype.redSub=function(D){return n(this.red,"redSub works only with red numbers"),this.red.sub(this,D)},s.prototype.redISub=function(D){return n(this.red,"redISub works only with red numbers"),this.red.isub(this,D)},s.prototype.redShl=function(D){return n(this.red,"redShl works only with red numbers"),this.red.shl(this,D)},s.prototype.redMul=function(D){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,D),this.red.mul(this,D)},s.prototype.redIMul=function(D){return n(this.red,"redMul works only with red numbers"),this.red._verify2(this,D),this.red.imul(this,D)},s.prototype.redSqr=function(){return n(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},s.prototype.redISqr=function(){return n(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},s.prototype.redSqrt=function(){return n(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},s.prototype.redInvm=function(){return n(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},s.prototype.redNeg=function(){return n(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},s.prototype.redPow=function(D){return n(this.red&&!D.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,D)};var M={k256:null,p224:null,p192:null,p25519:null};function A(D,G){this.name=D,this.p=new s(G,16),this.n=this.p.bitLength(),this.k=new s(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}function C(){A.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}function P(){A.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}function O(){A.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}function z(){A.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}function B(D){if(typeof D=="string"){var G=s._prime(D);this.m=G.p,this.prime=G}else n(D.gtn(1),"modulus must be greater than 1"),this.m=D,this.prime=null}function Y(D){B.call(this,D),this.shift=this.m.bitLength(),this.shift%26!=0&&(this.shift+=26-this.shift%26),this.r=new s(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)}A.prototype._tmp=function(){var D=new s(null);return D.words=new Array(Math.ceil(this.n/13)),D},A.prototype.ireduce=function(D){var G,V=D;do this.split(V,this.tmp),G=(V=(V=this.imulK(V)).iadd(this.tmp)).bitLength();while(G>this.n);var j=G<this.n?-1:V.ucmp(this.p);return j===0?(V.words[0]=0,V.length=1):j>0?V.isub(this.p):V.strip!==void 0?V.strip():V._strip(),V},A.prototype.split=function(D,G){D.iushrn(this.n,0,G)},A.prototype.imulK=function(D){return D.imul(this.k)},a(C,A),C.prototype.split=function(D,G){for(var V=4194303,j=Math.min(D.length,9),W=0;W<j;W++)G.words[W]=D.words[W];if(G.length=j,D.length<=9)return D.words[0]=0,void(D.length=1);var Z=D.words[9];for(G.words[G.length++]=Z&V,W=10;W<D.length;W++){var ie=0|D.words[W];D.words[W-10]=(ie&V)<<4|Z>>>22,Z=ie}Z>>>=22,D.words[W-10]=Z,Z===0&&D.length>10?D.length-=10:D.length-=9},C.prototype.imulK=function(D){D.words[D.length]=0,D.words[D.length+1]=0,D.length+=2;for(var G=0,V=0;V<D.length;V++){var j=0|D.words[V];G+=977*j,D.words[V]=67108863&G,G=64*j+(G/67108864|0)}return D.words[D.length-1]===0&&(D.length--,D.words[D.length-1]===0&&D.length--),D},a(P,A),a(O,A),a(z,A),z.prototype.imulK=function(D){for(var G=0,V=0;V<D.length;V++){var j=19*(0|D.words[V])+G,W=67108863&j;j>>>=26,D.words[V]=W,G=j}return G!==0&&(D.words[D.length++]=G),D},s._prime=function(D){if(M[D])return M[D];var G;if(D==="k256")G=new C;else if(D==="p224")G=new P;else if(D==="p192")G=new O;else{if(D!=="p25519")throw new Error("Unknown prime "+D);G=new z}return M[D]=G,G},B.prototype._verify1=function(D){n(D.negative===0,"red works only with positives"),n(D.red,"red works only with red numbers")},B.prototype._verify2=function(D,G){n((D.negative|G.negative)==0,"red works only with positives"),n(D.red&&D.red===G.red,"red works only with red numbers")},B.prototype.imod=function(D){return this.prime?this.prime.ireduce(D)._forceRed(this):D.umod(this.m)._forceRed(this)},B.prototype.neg=function(D){return D.isZero()?D.clone():this.m.sub(D)._forceRed(this)},B.prototype.add=function(D,G){this._verify2(D,G);var V=D.add(G);return V.cmp(this.m)>=0&&V.isub(this.m),V._forceRed(this)},B.prototype.iadd=function(D,G){this._verify2(D,G);var V=D.iadd(G);return V.cmp(this.m)>=0&&V.isub(this.m),V},B.prototype.sub=function(D,G){this._verify2(D,G);var V=D.sub(G);return V.cmpn(0)<0&&V.iadd(this.m),V._forceRed(this)},B.prototype.isub=function(D,G){this._verify2(D,G);var V=D.isub(G);return V.cmpn(0)<0&&V.iadd(this.m),V},B.prototype.shl=function(D,G){return this._verify1(D),this.imod(D.ushln(G))},B.prototype.imul=function(D,G){return this._verify2(D,G),this.imod(D.imul(G))},B.prototype.mul=function(D,G){return this._verify2(D,G),this.imod(D.mul(G))},B.prototype.isqr=function(D){return this.imul(D,D.clone())},B.prototype.sqr=function(D){return this.mul(D,D)},B.prototype.sqrt=function(D){if(D.isZero())return D.clone();var G=this.m.andln(3);if(n(G%2==1),G===3){var V=this.m.add(new s(1)).iushrn(2);return this.pow(D,V)}for(var j=this.m.subn(1),W=0;!j.isZero()&&j.andln(1)===0;)W++,j.iushrn(1);n(!j.isZero());var Z=new s(1).toRed(this),ie=Z.redNeg(),te=this.m.subn(1).iushrn(1),J=this.m.bitLength();for(J=new s(2*J*J).toRed(this);this.pow(J,te).cmp(ie)!==0;)J.redIAdd(ie);for(var X=this.pow(J,j),ee=this.pow(D,j.addn(1).iushrn(1)),re=this.pow(D,j),oe=W;re.cmp(Z)!==0;){for(var ue=re,ce=0;ue.cmp(Z)!==0;ce++)ue=ue.redSqr();n(ce<oe);var de=this.pow(X,new s(1).iushln(oe-ce-1));ee=ee.redMul(de),X=de.redSqr(),re=re.redMul(X),oe=ce}return ee},B.prototype.invm=function(D){var G=D._invmp(this.m);return G.negative!==0?(G.negative=0,this.imod(G).redNeg()):this.imod(G)},B.prototype.pow=function(D,G){if(G.isZero())return new s(1).toRed(this);if(G.cmpn(1)===0)return D.clone();var V=new Array(16);V[0]=new s(1).toRed(this),V[1]=D;for(var j=2;j<V.length;j++)V[j]=this.mul(V[j-1],D);var W=V[0],Z=0,ie=0,te=G.bitLength()%26;for(te===0&&(te=26),j=G.length-1;j>=0;j--){for(var J=G.words[j],X=te-1;X>=0;X--){var ee=J>>X&1;W!==V[0]&&(W=this.sqr(W)),ee!==0||Z!==0?(Z<<=1,Z|=ee,(++ie==4||j===0&&X===0)&&(W=this.mul(W,V[Z]),ie=0,Z=0)):ie=0}te=26}return W},B.prototype.convertTo=function(D){var G=D.umod(this.m);return G===D?G.clone():G},B.prototype.convertFrom=function(D){var G=D.clone();return G.red=null,G},s.mont=function(D){return new Y(D)},a(Y,B),Y.prototype.convertTo=function(D){return this.imod(D.ushln(this.shift))},Y.prototype.convertFrom=function(D){var G=this.imod(D.mul(this.rinv));return G.red=null,G},Y.prototype.imul=function(D,G){if(D.isZero()||G.isZero())return D.words[0]=0,D.length=1,D;var V=D.imul(G),j=V.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),W=V.isub(j).iushrn(this.shift),Z=W;return W.cmp(this.m)>=0?Z=W.isub(this.m):W.cmpn(0)<0&&(Z=W.iadd(this.m)),Z._forceRed(this)},Y.prototype.mul=function(D,G){if(D.isZero()||G.isZero())return new s(0)._forceRed(this);var V=D.mul(G),j=V.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),W=V.isub(j).iushrn(this.shift),Z=W;return W.cmp(this.m)>=0?Z=W.isub(this.m):W.cmpn(0)<0&&(Z=W.iadd(this.m)),Z._forceRed(this)},Y.prototype.invm=function(D){return this.imod(D._invmp(this.m).mul(this.r2))._forceRed(this)}})(h=t.nmd(h),this)},2692:function(h){h.exports=function(l){var t,o,r,n=l.length,a=0;for(t=0;t<n;++t)a+=l[t].length;var s=new Array(a),u=0;for(t=0;t<n;++t){var p=l[t],c=p.length;for(o=0;o<c;++o){var b=s[u++]=new Array(c-1),g=0;for(r=0;r<c;++r)r!==o&&(b[g++]=p[r]);if(1&o){var f=b[1];b[1]=b[0],b[0]=f}}}return s}},2569:function(h,l,t){h.exports=function(b,g,f){switch(arguments.length){case 1:return o=[],p(v=b,v,c,!0),o;case 2:return typeof g=="function"?p(b,b,g,!0):function(m,x){return o=[],p(m,x,c,!1),o}(b,g);case 3:return p(b,g,f,!1);default:throw new Error("box-intersect: Invalid arguments")}var v};var o,r=t(5306),n=t(1390),a=t(2337);function s(b,g){for(var f=0;f<b;++f)if(!(g[f]<=g[f+b]))return!0;return!1}function u(b,g,f,v){for(var m=0,x=0,T=0,d=b.length;T<d;++T){var M=b[T];if(!s(g,M)){for(var A=0;A<2*g;++A)f[m++]=M[A];v[x++]=T}}return x}function p(b,g,f,v){var m=b.length,x=g.length;if(!(m<=0||x<=0)){var T=b[0].length>>>1;if(!(T<=0)){var d,M=r.mallocDouble(2*T*m),A=r.mallocInt32(m);if((m=u(b,T,M,A))>0){if(T===1&&v)n.init(m),d=n.sweepComplete(T,f,0,m,M,A,0,m,M,A);else{var C=r.mallocDouble(2*T*x),P=r.mallocInt32(x);(x=u(g,T,C,P))>0&&(n.init(m+x),d=T===1?n.sweepBipartite(T,f,0,m,M,A,0,x,C,P):a(T,f,v,m,M,A,x,C,P),r.free(C),r.free(P))}r.free(M),r.free(A)}return d}}}function c(b,g){o.push([b,g])}},7333:function(h,l){function t(o){return o?function(r,n,a,s,u,p,c,b,g,f,v){return u-s>g-b?function(m,x,T,d,M,A,C,P,O,z,B){for(var Y=2*m,D=d,G=Y*d;D<M;++D,G+=Y){var V=A[x+G],j=A[x+G+m],W=C[D];e:for(var Z=P,ie=Y*P;Z<O;++Z,ie+=Y){var te=z[x+ie],J=z[x+ie+m],X=B[Z];if(!(J<V||j<te)){for(var ee=x+1;ee<m;++ee){var re=A[ee+G],oe=A[ee+m+G],ue=z[ee+ie],ce=z[ee+m+ie];if(oe<ue||ce<re)continue e}var de=T(W,X);if(de!==void 0)return de}}}}(r,n,a,s,u,p,c,b,g,f,v):function(m,x,T,d,M,A,C,P,O,z,B){for(var Y=2*m,D=P,G=Y*P;D<O;++D,G+=Y){var V=z[x+G],j=z[x+G+m],W=B[D];e:for(var Z=d,ie=Y*d;Z<M;++Z,ie+=Y){var te=A[x+ie],J=A[x+ie+m],X=C[Z];if(!(j<te||J<V)){for(var ee=x+1;ee<m;++ee){var re=A[ee+ie],oe=A[ee+m+ie],ue=z[ee+G],ce=z[ee+m+G];if(oe<ue||ce<re)continue e}var de=T(X,W);if(de!==void 0)return de}}}}(r,n,a,s,u,p,c,b,g,f,v)}:function(r,n,a,s,u,p,c,b,g,f,v,m){return p-u>f-g?s?function(x,T,d,M,A,C,P,O,z,B,Y){for(var D=2*x,G=M,V=D*M;G<A;++G,V+=D){var j=C[T+V],W=C[T+V+x],Z=P[G];e:for(var ie=O,te=D*O;ie<z;++ie,te+=D){var J=B[T+te],X=Y[ie];if(!(J<=j||W<J)){for(var ee=T+1;ee<x;++ee){var re=C[ee+V],oe=C[ee+x+V],ue=B[ee+te],ce=B[ee+x+te];if(oe<ue||ce<re)continue e}var de=d(X,Z);if(de!==void 0)return de}}}}(r,n,a,u,p,c,b,g,f,v,m):function(x,T,d,M,A,C,P,O,z,B,Y){for(var D=2*x,G=M,V=D*M;G<A;++G,V+=D){var j=C[T+V],W=C[T+V+x],Z=P[G];e:for(var ie=O,te=D*O;ie<z;++ie,te+=D){var J=B[T+te],X=Y[ie];if(!(J<j||W<J)){for(var ee=T+1;ee<x;++ee){var re=C[ee+V],oe=C[ee+x+V],ue=B[ee+te],ce=B[ee+x+te];if(oe<ue||ce<re)continue e}var de=d(Z,X);if(de!==void 0)return de}}}}(r,n,a,u,p,c,b,g,f,v,m):s?function(x,T,d,M,A,C,P,O,z,B,Y){for(var D=2*x,G=O,V=D*O;G<z;++G,V+=D){var j=B[T+V],W=Y[G];e:for(var Z=M,ie=D*M;Z<A;++Z,ie+=D){var te=C[T+ie],J=C[T+ie+x],X=P[Z];if(!(j<=te||J<j)){for(var ee=T+1;ee<x;++ee){var re=C[ee+ie],oe=C[ee+x+ie],ue=B[ee+V],ce=B[ee+x+V];if(oe<ue||ce<re)continue e}var de=d(W,X);if(de!==void 0)return de}}}}(r,n,a,u,p,c,b,g,f,v,m):function(x,T,d,M,A,C,P,O,z,B,Y){for(var D=2*x,G=O,V=D*O;G<z;++G,V+=D){var j=B[T+V],W=Y[G];e:for(var Z=M,ie=D*M;Z<A;++Z,ie+=D){var te=C[T+ie],J=C[T+ie+x],X=P[Z];if(!(j<te||J<j)){for(var ee=T+1;ee<x;++ee){var re=C[ee+ie],oe=C[ee+x+ie],ue=B[ee+V],ce=B[ee+x+V];if(oe<ue||ce<re)continue e}var de=d(X,W);if(de!==void 0)return de}}}}(r,n,a,u,p,c,b,g,f,v,m)}}l.partial=t(!1),l.full=t(!0)},2337:function(h,l,t){h.exports=function(D,G,V,j,W,Z,ie,te,J){(function(Ue,Ve){var Ye=8*r.log2(Ve+1)*(Ue+1)|0,$e=r.nextPow2(A*Ye);P.length<$e&&(o.free(P),P=o.mallocInt32($e));var rt=r.nextPow2(C*Ye);O.length<rt&&(o.free(O),O=o.mallocDouble(rt))})(D,j+ie);var X,ee=0,re=2*D;for(z(ee++,0,0,j,0,ie,V?16:0,-1/0,1/0),V||z(ee++,0,0,ie,0,j,1,-1/0,1/0);ee>0;){var oe=(ee-=1)*A,ue=P[oe],ce=P[oe+1],de=P[oe+2],me=P[oe+3],_e=P[oe+4],Se=P[oe+5],we=ee*C,xe=O[we],De=O[we+1],Ee=1&Se,Me=!!(16&Se),he=W,fe=Z,ae=te,be=J;if(Ee&&(he=te,fe=J,ae=W,be=Z),!(2&Se&&ce>=(de=x(D,ue,ce,de,he,fe,De))||4&Se&&(ce=T(D,ue,ce,de,he,fe,xe))>=de)){var Ie=de-ce,Te=_e-me;if(Me){if(D*Ie*(Ie+Te)<f){if((X=u.scanComplete(D,ue,G,ce,de,he,fe,me,_e,ae,be))!==void 0)return X;continue}}else{if(D*Math.min(Ie,Te)<b){if((X=a(D,ue,G,Ee,ce,de,he,fe,me,_e,ae,be))!==void 0)return X;continue}if(D*Ie*Te<g){if((X=u.scanBipartite(D,ue,G,Ee,ce,de,he,fe,me,_e,ae,be))!==void 0)return X;continue}}var Ne=v(D,ue,ce,de,he,fe,xe,De);if(ce<Ne)if(D*(Ne-ce)<b){if((X=s(D,ue+1,G,ce,Ne,he,fe,me,_e,ae,be))!==void 0)return X}else if(ue===D-2){if((X=Ee?u.sweepBipartite(D,G,me,_e,ae,be,ce,Ne,he,fe):u.sweepBipartite(D,G,ce,Ne,he,fe,me,_e,ae,be))!==void 0)return X}else z(ee++,ue+1,ce,Ne,me,_e,Ee,-1/0,1/0),z(ee++,ue+1,me,_e,ce,Ne,1^Ee,-1/0,1/0);if(Ne<de){var qe=p(D,ue,me,_e,ae,be),ve=ae[re*qe+ue],Ce=m(D,ue,qe,_e,ae,be,ve);if(Ce<_e&&z(ee++,ue,Ne,de,Ce,_e,(4|Ee)+(Me?16:0),ve,De),me<qe&&z(ee++,ue,Ne,de,me,qe,(2|Ee)+(Me?16:0),xe,ve),qe+1===Ce){if((X=Me?Y(D,ue,G,Ne,de,he,fe,qe,ae,be[qe]):B(D,ue,G,Ee,Ne,de,he,fe,qe,ae,be[qe]))!==void 0)return X}else if(qe<Ce){var Ae;if(Me){if(Ne<(Ae=d(D,ue,Ne,de,he,fe,ve))){var ze=m(D,ue,Ne,Ae,he,fe,ve);if(ue===D-2){if(Ne<ze&&(X=u.sweepComplete(D,G,Ne,ze,he,fe,qe,Ce,ae,be))!==void 0||ze<Ae&&(X=u.sweepBipartite(D,G,ze,Ae,he,fe,qe,Ce,ae,be))!==void 0)return X}else Ne<ze&&z(ee++,ue+1,Ne,ze,qe,Ce,16,-1/0,1/0),ze<Ae&&(z(ee++,ue+1,ze,Ae,qe,Ce,0,-1/0,1/0),z(ee++,ue+1,qe,Ce,ze,Ae,1,-1/0,1/0))}}else Ne<(Ae=Ee?M(D,ue,Ne,de,he,fe,ve):d(D,ue,Ne,de,he,fe,ve))&&(ue===D-2?X=Ee?u.sweepBipartite(D,G,qe,Ce,ae,be,Ne,Ae,he,fe):u.sweepBipartite(D,G,Ne,Ae,he,fe,qe,Ce,ae,be):(z(ee++,ue+1,Ne,Ae,qe,Ce,Ee,-1/0,1/0),z(ee++,ue+1,qe,Ce,Ne,Ae,1^Ee,-1/0,1/0)))}}}}};var o=t(5306),r=t(2288),n=t(7333),a=n.partial,s=n.full,u=t(1390),p=t(2464),c=t(122),b=128,g=1<<22,f=1<<22,v=c("!(lo>=p0)&&!(p1>=hi)"),m=c("lo===p0"),x=c("lo<p0"),T=c("hi<=p0"),d=c("lo<=p0&&p0<=hi"),M=c("lo<p0&&p0<=hi"),A=6,C=2,P=o.mallocInt32(1024),O=o.mallocDouble(1024);function z(D,G,V,j,W,Z,ie,te,J){var X=A*D;P[X]=G,P[X+1]=V,P[X+2]=j,P[X+3]=W,P[X+4]=Z,P[X+5]=ie;var ee=C*D;O[ee]=te,O[ee+1]=J}function B(D,G,V,j,W,Z,ie,te,J,X,ee){var re=2*D,oe=J*re,ue=X[oe+G];e:for(var ce=W,de=W*re;ce<Z;++ce,de+=re){var me=ie[de+G],_e=ie[de+G+D];if(!(ue<me||_e<ue||j&&ue===me)){for(var Se,we=te[ce],xe=G+1;xe<D;++xe){me=ie[de+xe],_e=ie[de+xe+D];var De=X[oe+xe],Ee=X[oe+xe+D];if(_e<De||Ee<me)continue e}if((Se=j?V(ee,we):V(we,ee))!==void 0)return Se}}}function Y(D,G,V,j,W,Z,ie,te,J,X){var ee=2*D,re=te*ee,oe=J[re+G];e:for(var ue=j,ce=j*ee;ue<W;++ue,ce+=ee){var de=ie[ue];if(de!==X){var me=Z[ce+G],_e=Z[ce+G+D];if(!(oe<me||_e<oe)){for(var Se=G+1;Se<D;++Se){me=Z[ce+Se],_e=Z[ce+Se+D];var we=J[re+Se],xe=J[re+Se+D];if(_e<we||xe<me)continue e}var De=V(de,X);if(De!==void 0)return De}}}}},2464:function(h,l,t){h.exports=function(a,s,u,p,c,b){if(p<=u+1)return u;for(var g=u,f=p,v=p+u>>>1,m=2*a,x=v,T=c[m*v+s];g<f;){if(f-g<r){n(a,s,g,f,c,b),T=c[m*v+s];break}var d=f-g,M=Math.random()*d+g|0,A=c[m*M+s],C=Math.random()*d+g|0,P=c[m*C+s],O=Math.random()*d+g|0,z=c[m*O+s];A<=P?z>=P?(x=C,T=P):A>=z?(x=M,T=A):(x=O,T=z):P>=z?(x=C,T=P):z>=A?(x=M,T=A):(x=O,T=z);for(var B=m*(f-1),Y=m*x,D=0;D<m;++D,++B,++Y){var G=c[B];c[B]=c[Y],c[Y]=G}var V=b[f-1];for(b[f-1]=b[x],b[x]=V,B=m*(f-1),Y=m*(x=o(a,s,g,f-1,c,b,T)),D=0;D<m;++D,++B,++Y)G=c[B],c[B]=c[Y],c[Y]=G;if(V=b[f-1],b[f-1]=b[x],b[x]=V,v<x){for(f=x-1;g<f&&c[m*(f-1)+s]===T;)f-=1;f+=1}else{if(!(x<v))break;for(g=x+1;g<f&&c[m*g+s]===T;)g+=1}}return o(a,s,u,v,c,b,c[m*v+s])};var o=t(122)("lo<p0"),r=8;function n(a,s,u,p,c,b){for(var g=2*a,f=g*(u+1)+s,v=u+1;v<p;++v,f+=g)for(var m=c[f],x=v,T=g*(v-1);x>u&&c[T+s]>m;--x,T-=g){for(var d=T,M=T+g,A=0;A<g;++A,++d,++M){var C=c[d];c[d]=c[M],c[M]=C}var P=b[x];b[x]=b[x-1],b[x-1]=P}}},122:function(h){h.exports=function(t){return l[t]};var l={"lo===p0":function(t,o,r,n,a,s,u){for(var p=2*t,c=p*r,b=c,g=r,f=o,v=r;n>v;++v,c+=p)if(a[c+f]===u)if(g===v)g+=1,b+=p;else{for(var m=0;p>m;++m){var x=a[c+m];a[c+m]=a[b],a[b++]=x}var T=s[v];s[v]=s[g],s[g++]=T}return g},"lo<p0":function(t,o,r,n,a,s,u){for(var p=2*t,c=p*r,b=c,g=r,f=o,v=r;n>v;++v,c+=p)if(a[c+f]<u)if(g===v)g+=1,b+=p;else{for(var m=0;p>m;++m){var x=a[c+m];a[c+m]=a[b],a[b++]=x}var T=s[v];s[v]=s[g],s[g++]=T}return g},"lo<=p0":function(t,o,r,n,a,s,u){for(var p=2*t,c=p*r,b=c,g=r,f=t+o,v=r;n>v;++v,c+=p)if(a[c+f]<=u)if(g===v)g+=1,b+=p;else{for(var m=0;p>m;++m){var x=a[c+m];a[c+m]=a[b],a[b++]=x}var T=s[v];s[v]=s[g],s[g++]=T}return g},"hi<=p0":function(t,o,r,n,a,s,u){for(var p=2*t,c=p*r,b=c,g=r,f=t+o,v=r;n>v;++v,c+=p)if(a[c+f]<=u)if(g===v)g+=1,b+=p;else{for(var m=0;p>m;++m){var x=a[c+m];a[c+m]=a[b],a[b++]=x}var T=s[v];s[v]=s[g],s[g++]=T}return g},"lo<p0&&p0<=hi":function(t,o,r,n,a,s,u){for(var p=2*t,c=p*r,b=c,g=r,f=o,v=t+o,m=r;n>m;++m,c+=p){var x=a[c+f],T=a[c+v];if(x<u&&u<=T)if(g===m)g+=1,b+=p;else{for(var d=0;p>d;++d){var M=a[c+d];a[c+d]=a[b],a[b++]=M}var A=s[m];s[m]=s[g],s[g++]=A}}return g},"lo<=p0&&p0<=hi":function(t,o,r,n,a,s,u){for(var p=2*t,c=p*r,b=c,g=r,f=o,v=t+o,m=r;n>m;++m,c+=p){var x=a[c+f],T=a[c+v];if(x<=u&&u<=T)if(g===m)g+=1,b+=p;else{for(var d=0;p>d;++d){var M=a[c+d];a[c+d]=a[b],a[b++]=M}var A=s[m];s[m]=s[g],s[g++]=A}}return g},"!(lo>=p0)&&!(p1>=hi)":function(t,o,r,n,a,s,u,p){for(var c=2*t,b=c*r,g=b,f=r,v=o,m=t+o,x=r;n>x;++x,b+=c){var T=a[b+v],d=a[b+m];if(!(T>=u||p>=d))if(f===x)f+=1,g+=c;else{for(var M=0;c>M;++M){var A=a[b+M];a[b+M]=a[g],a[g++]=A}var C=s[x];s[x]=s[f],s[f++]=C}}return f}}},309:function(h){h.exports=function(c,b){b<=4*l?t(0,b-1,c):p(0,b-1,c)};var l=32;function t(c,b,g){for(var f=2*(c+1),v=c+1;v<=b;++v){for(var m=g[f++],x=g[f++],T=v,d=f-2;T-- >c;){var M=g[d-2],A=g[d-1];if(M<m||M===m&&A<x)break;g[d]=M,g[d+1]=A,d-=2}g[d]=m,g[d+1]=x}}function o(c,b,g){b*=2;var f=g[c*=2],v=g[c+1];g[c]=g[b],g[c+1]=g[b+1],g[b]=f,g[b+1]=v}function r(c,b,g){b*=2,g[c*=2]=g[b],g[c+1]=g[b+1]}function n(c,b,g,f){b*=2,g*=2;var v=f[c*=2],m=f[c+1];f[c]=f[b],f[c+1]=f[b+1],f[b]=f[g],f[b+1]=f[g+1],f[g]=v,f[g+1]=m}function a(c,b,g,f,v){b*=2,v[c*=2]=v[b],v[b]=g,v[c+1]=v[b+1],v[b+1]=f}function s(c,b,g){b*=2;var f=g[c*=2],v=g[b];return!(f<v)&&(f!==v||g[c+1]>g[b+1])}function u(c,b,g,f){var v=f[c*=2];return v<b||v===b&&f[c+1]<g}function p(c,b,g){var f=(b-c+1)/6|0,v=c+f,m=b-f,x=c+b>>1,T=x-f,d=x+f,M=v,A=T,C=x,P=d,O=m,z=c+1,B=b-1,Y=0;s(M,A,g)&&(Y=M,M=A,A=Y),s(P,O,g)&&(Y=P,P=O,O=Y),s(M,C,g)&&(Y=M,M=C,C=Y),s(A,C,g)&&(Y=A,A=C,C=Y),s(M,P,g)&&(Y=M,M=P,P=Y),s(C,P,g)&&(Y=C,C=P,P=Y),s(A,O,g)&&(Y=A,A=O,O=Y),s(A,C,g)&&(Y=A,A=C,C=Y),s(P,O,g)&&(Y=P,P=O,O=Y);for(var D=g[2*A],G=g[2*A+1],V=g[2*P],j=g[2*P+1],W=2*M,Z=2*C,ie=2*O,te=2*v,J=2*x,X=2*m,ee=0;ee<2;++ee){var re=g[W+ee],oe=g[Z+ee],ue=g[ie+ee];g[te+ee]=re,g[J+ee]=oe,g[X+ee]=ue}r(T,c,g),r(d,b,g);for(var ce=z;ce<=B;++ce)if(u(ce,D,G,g))ce!==z&&o(ce,z,g),++z;else if(!u(ce,V,j,g))for(;;){if(u(B,V,j,g)){u(B,D,G,g)?(n(ce,z,B,g),++z,--B):(o(ce,B,g),--B);break}if(--B<ce)break}a(c,z-1,D,G,g),a(b,B+1,V,j,g),z-2-c<=l?t(c,z-2,g):p(c,z-2,g),b-(B+2)<=l?t(B+2,b,g):p(B+2,b,g),B-z<=l?t(z,B,g):p(z,B,g)}},1390:function(h,l,t){h.exports={init:function(T){var d=r.nextPow2(T);u.length<d&&(o.free(u),u=o.mallocInt32(d)),p.length<d&&(o.free(p),p=o.mallocInt32(d)),c.length<d&&(o.free(c),c=o.mallocInt32(d)),b.length<d&&(o.free(b),b=o.mallocInt32(d)),g.length<d&&(o.free(g),g=o.mallocInt32(d)),f.length<d&&(o.free(f),f=o.mallocInt32(d));var M=8*d;v.length<M&&(o.free(v),v=o.mallocDouble(M))},sweepBipartite:function(T,d,M,A,C,P,O,z,B,Y){for(var D=0,G=2*T,V=T-1,j=G-1,W=M;W<A;++W){var Z=P[W],ie=G*W;v[D++]=C[ie+V],v[D++]=-(Z+1),v[D++]=C[ie+j],v[D++]=Z}for(W=O;W<z;++W){Z=Y[W]+a;var te=G*W;v[D++]=B[te+V],v[D++]=-Z,v[D++]=B[te+j],v[D++]=Z}var J=D>>>1;n(v,J);var X=0,ee=0;for(W=0;W<J;++W){var re=0|v[2*W+1];if(re>=a)m(c,b,ee--,re=re-a|0);else if(re>=0)m(u,p,X--,re);else if(re<=-a){re=-re-a|0;for(var oe=0;oe<X;++oe)if((ue=d(u[oe],re))!==void 0)return ue;x(c,b,ee++,re)}else{for(re=-re-1|0,oe=0;oe<ee;++oe){var ue;if((ue=d(re,c[oe]))!==void 0)return ue}x(u,p,X++,re)}}},sweepComplete:function(T,d,M,A,C,P,O,z,B,Y){for(var D=0,G=2*T,V=T-1,j=G-1,W=M;W<A;++W){var Z=P[W]+1<<1,ie=G*W;v[D++]=C[ie+V],v[D++]=-Z,v[D++]=C[ie+j],v[D++]=Z}for(W=O;W<z;++W){Z=Y[W]+1<<1;var te=G*W;v[D++]=B[te+V],v[D++]=1|-Z,v[D++]=B[te+j],v[D++]=1|Z}var J=D>>>1;n(v,J);var X=0,ee=0,re=0;for(W=0;W<J;++W){var oe=0|v[2*W+1],ue=1&oe;if(W<J-1&&oe>>1==v[2*W+3]>>1&&(ue=2,W+=1),oe<0){for(var ce=-(oe>>1)-1,de=0;de<re;++de)if((me=d(g[de],ce))!==void 0)return me;if(ue!==0){for(de=0;de<X;++de)if((me=d(u[de],ce))!==void 0)return me}if(ue!==1)for(de=0;de<ee;++de){var me;if((me=d(c[de],ce))!==void 0)return me}ue===0?x(u,p,X++,ce):ue===1?x(c,b,ee++,ce):ue===2&&x(g,f,re++,ce)}else ce=(oe>>1)-1,ue===0?m(u,p,X--,ce):ue===1?m(c,b,ee--,ce):ue===2&&m(g,f,re--,ce)}},scanBipartite:function(T,d,M,A,C,P,O,z,B,Y,D,G){var V=0,j=2*T,W=d,Z=d+T,ie=1,te=1;A?te=a:ie=a;for(var J=C;J<P;++J){var X=J+ie,ee=j*J;v[V++]=O[ee+W],v[V++]=-X,v[V++]=O[ee+Z],v[V++]=X}for(J=B;J<Y;++J){X=J+te;var re=j*J;v[V++]=D[re+W],v[V++]=-X}var oe=V>>>1;n(v,oe);var ue=0;for(J=0;J<oe;++J){var ce=0|v[2*J+1];if(ce<0){var de=!1;if((X=-ce)>=a?(de=!A,X-=a):(de=!!A,X-=1),de)x(u,p,ue++,X);else{var me=G[X],_e=j*X,Se=D[_e+d+1],we=D[_e+d+1+T];e:for(var xe=0;xe<ue;++xe){var De=u[xe],Ee=j*De;if(!(we<O[Ee+d+1]||O[Ee+d+1+T]<Se)){for(var Me=d+2;Me<T;++Me)if(D[_e+Me+T]<O[Ee+Me]||O[Ee+Me+T]<D[_e+Me])continue e;var he,fe=z[De];if((he=A?M(me,fe):M(fe,me))!==void 0)return he}}}}else m(u,p,ue--,ce-ie)}},scanComplete:function(T,d,M,A,C,P,O,z,B,Y,D){for(var G=0,V=2*T,j=d,W=d+T,Z=A;Z<C;++Z){var ie=Z+a,te=V*Z;v[G++]=P[te+j],v[G++]=-ie,v[G++]=P[te+W],v[G++]=ie}for(Z=z;Z<B;++Z){ie=Z+1;var J=V*Z;v[G++]=Y[J+j],v[G++]=-ie}var X=G>>>1;n(v,X);var ee=0;for(Z=0;Z<X;++Z){var re=0|v[2*Z+1];if(re<0)if((ie=-re)>=a)u[ee++]=ie-a;else{var oe=D[ie-=1],ue=V*ie,ce=Y[ue+d+1],de=Y[ue+d+1+T];e:for(var me=0;me<ee;++me){var _e=u[me],Se=O[_e];if(Se===oe)break;var we=V*_e;if(!(de<P[we+d+1]||P[we+d+1+T]<ce)){for(var xe=d+2;xe<T;++xe)if(Y[ue+xe+T]<P[we+xe]||P[we+xe+T]<Y[ue+xe])continue e;var De=M(Se,oe);if(De!==void 0)return De}}}else{for(ie=re-a,me=ee-1;me>=0;--me)if(u[me]===ie){for(xe=me+1;xe<ee;++xe)u[xe-1]=u[xe];break}--ee}}}};var o=t(5306),r=t(2288),n=t(309),a=1<<28,s=1024,u=o.mallocInt32(s),p=o.mallocInt32(s),c=o.mallocInt32(s),b=o.mallocInt32(s),g=o.mallocInt32(s),f=o.mallocInt32(s),v=o.mallocDouble(8192);function m(T,d,M,A){var C=d[A],P=T[M-1];T[C]=P,d[P]=C}function x(T,d,M,A){T[M]=A,d[A]=M}},7761:function(h,l,t){var o=t(9971),r=t(743),n=t(2161),a=t(7098);function s(c){return[Math.min(c[0],c[1]),Math.max(c[0],c[1])]}function u(c,b){return c[0]-b[0]||c[1]-b[1]}function p(c,b,g){return b in c?c[b]:g}h.exports=function(c,b,g){Array.isArray(b)?(g=g||{},b=b||[]):(g=b||{},b=[]);var f=!!p(g,"delaunay",!0),v=!!p(g,"interior",!0),m=!!p(g,"exterior",!0),x=!!p(g,"infinity",!1);if(!v&&!m||c.length===0)return[];var T=o(c,b);if(f||v!==m||x){for(var d=r(c.length,function(C){return C.map(s).sort(u)}(b)),M=0;M<T.length;++M){var A=T[M];d.addTriangle(A[0],A[1],A[2])}return f&&n(c,d),m?v?x?a(d,0,x):d.cells():a(d,1,x):a(d,-1)}return T}},2161:function(h,l,t){var o=t(2227)[4];function r(n,a,s,u,p,c){var b=a.opposite(u,p);if(!(b<0)){if(p<u){var g=u;u=p,p=g,g=c,c=b,b=g}a.isConstraint(u,p)||o(n[u],n[p],n[c],n[b])<0&&s.push(u,p)}}t(5070),h.exports=function(n,a){for(var s=[],u=n.length,p=a.stars,c=0;c<u;++c)for(var b=p[c],g=1;g<b.length;g+=2)if(!((x=b[g])<c||a.isConstraint(c,x))){for(var f=b[g-1],v=-1,m=1;m<b.length;m+=2)if(b[m-1]===x){v=b[m];break}v<0||o(n[c],n[x],n[f],n[v])<0&&s.push(c,x)}for(;s.length>0;){for(var x=s.pop(),T=(f=-1,v=-1,b=p[c=s.pop()],1);T<b.length;T+=2){var d=b[T-1],M=b[T];d===x?v=M:M===x&&(f=d)}f<0||v<0||o(n[c],n[x],n[f],n[v])>=0||(a.flip(c,x),r(n,a,s,f,c,v),r(n,a,s,c,v,f),r(n,a,s,v,x,f),r(n,a,s,x,f,v))}}},7098:function(h,l,t){var o,r=t(5070);function n(s,u,p,c,b,g,f){this.cells=s,this.neighbor=u,this.flags=c,this.constraint=p,this.active=b,this.next=g,this.boundary=f}function a(s,u){return s[0]-u[0]||s[1]-u[1]||s[2]-u[2]}h.exports=function(s,u,p){var c=function(O,z){for(var B=O.cells(),Y=B.length,D=0;D<Y;++D){var G=(re=B[D])[0],V=re[1],j=re[2];V<j?V<G&&(re[0]=V,re[1]=j,re[2]=G):j<G&&(re[0]=j,re[1]=G,re[2]=V)}B.sort(a);var W=new Array(Y);for(D=0;D<W.length;++D)W[D]=0;var Z=[],ie=[],te=new Array(3*Y),J=new Array(3*Y),X=null;z&&(X=[]);var ee=new n(B,te,J,W,Z,ie,X);for(D=0;D<Y;++D)for(var re=B[D],oe=0;oe<3;++oe){G=re[oe],V=re[(oe+1)%3];var ue=te[3*D+oe]=ee.locate(V,G,O.opposite(V,G)),ce=J[3*D+oe]=O.isConstraint(G,V);ue<0&&(ce?ie.push(D):(Z.push(D),W[D]=1),z&&X.push([V,G,-1]))}return ee}(s,p);if(u===0)return p?c.cells.concat(c.boundary):c.cells;for(var b=1,g=c.active,f=c.next,v=c.flags,m=c.cells,x=c.constraint,T=c.neighbor;g.length>0||f.length>0;){for(;g.length>0;){var d=g.pop();if(v[d]!==-b){v[d]=b,m[d];for(var M=0;M<3;++M){var A=T[3*d+M];A>=0&&v[A]===0&&(x[3*d+M]?f.push(A):(g.push(A),v[A]=b))}}}var C=f;f=g,g=C,f.length=0,b=-b}var P=function(O,z,B){for(var Y=0,D=0;D<O.length;++D)z[D]===B&&(O[Y++]=O[D]);return O.length=Y,O}(m,v,u);return p?P.concat(c.boundary):P},n.prototype.locate=(o=[0,0,0],function(s,u,p){var c=s,b=u,g=p;return u<p?u<s&&(c=u,b=p,g=s):p<s&&(c=p,b=s,g=u),c<0?-1:(o[0]=c,o[1]=b,o[2]=g,r.eq(this.cells,o,a))})},9971:function(h,l,t){var o=t(5070),r=t(417)[3];function n(f,v,m,x,T){this.a=f,this.b=v,this.idx=m,this.lowerIds=x,this.upperIds=T}function a(f,v,m,x){this.a=f,this.b=v,this.type=m,this.idx=x}function s(f,v){var m=f.a[0]-v.a[0]||f.a[1]-v.a[1]||f.type-v.type;return m||(f.type!==0&&(m=r(f.a,f.b,v.b))?m:f.idx-v.idx)}function u(f,v){return r(f.a,f.b,v)}function p(f,v,m,x,T){for(var d=o.lt(v,x,u),M=o.gt(v,x,u),A=d;A<M;++A){for(var C=v[A],P=C.lowerIds,O=P.length;O>1&&r(m[P[O-2]],m[P[O-1]],x)>0;)f.push([P[O-1],P[O-2],T]),O-=1;P.length=O,P.push(T);var z=C.upperIds;for(O=z.length;O>1&&r(m[z[O-2]],m[z[O-1]],x)<0;)f.push([z[O-2],z[O-1],T]),O-=1;z.length=O,z.push(T)}}function c(f,v){var m;return(m=f.a[0]<v.a[0]?r(f.a,f.b,v.a):r(v.b,v.a,f.a))?m:(m=v.b[0]<f.b[0]?r(f.a,f.b,v.b):r(v.b,v.a,f.b))||f.idx-v.idx}function b(f,v,m){var x=o.le(f,m,c),T=f[x],d=T.upperIds,M=d[d.length-1];T.upperIds=[M],f.splice(x+1,0,new n(m.a,m.b,m.idx,[M],d))}function g(f,v,m){var x=m.a;m.a=m.b,m.b=x;var T=o.eq(f,m,c),d=f[T];f[T-1].upperIds=d.upperIds,f.splice(T,1)}h.exports=function(f,v){for(var m=f.length,x=v.length,T=[],d=0;d<m;++d)T.push(new a(f[d],null,0,d));for(d=0;d<x;++d){var M=v[d],A=f[M[0]],C=f[M[1]];A[0]<C[0]?T.push(new a(A,C,2,d),new a(C,A,1,d)):A[0]>C[0]&&T.push(new a(C,A,2,d),new a(A,C,1,d))}T.sort(s);for(var P=T[0].a[0]-(1+Math.abs(T[0].a[0]))*Math.pow(2,-52),O=[new n([P,1],[P,0],-1,[],[])],z=[],B=(d=0,T.length);d<B;++d){var Y=T[d],D=Y.type;D===0?p(z,O,f,Y.a,Y.idx):D===2?b(O,0,Y):g(O,0,Y)}return z}},743:function(h,l,t){var o=t(5070);function r(s,u){this.stars=s,this.edges=u}h.exports=function(s,u){for(var p=new Array(s),c=0;c<s;++c)p[c]=[];return new r(p,u)};var n=r.prototype;function a(s,u,p){for(var c=1,b=s.length;c<b;c+=2)if(s[c-1]===u&&s[c]===p)return s[c-1]=s[b-2],s[c]=s[b-1],void(s.length=b-2)}n.isConstraint=function(){var s=[0,0];function u(p,c){return p[0]-c[0]||p[1]-c[1]}return function(p,c){return s[0]=Math.min(p,c),s[1]=Math.max(p,c),o.eq(this.edges,s,u)>=0}}(),n.removeTriangle=function(s,u,p){var c=this.stars;a(c[s],u,p),a(c[u],p,s),a(c[p],s,u)},n.addTriangle=function(s,u,p){var c=this.stars;c[s].push(u,p),c[u].push(p,s),c[p].push(s,u)},n.opposite=function(s,u){for(var p=this.stars[u],c=1,b=p.length;c<b;c+=2)if(p[c]===s)return p[c-1];return-1},n.flip=function(s,u){var p=this.opposite(s,u),c=this.opposite(u,s);this.removeTriangle(s,u,p),this.removeTriangle(u,s,c),this.addTriangle(s,c,p),this.addTriangle(u,p,c)},n.edges=function(){for(var s=this.stars,u=[],p=0,c=s.length;p<c;++p)for(var b=s[p],g=0,f=b.length;g<f;g+=2)u.push([b[g],b[g+1]]);return u},n.cells=function(){for(var s=this.stars,u=[],p=0,c=s.length;p<c;++p)for(var b=s[p],g=0,f=b.length;g<f;g+=2){var v=b[g],m=b[g+1];p<Math.min(v,m)&&u.push([p,v,m])}return u}},9887:function(h){h.exports=function(l){for(var t=1,o=1;o<l.length;++o)for(var r=0;r<o;++r)if(l[o]<l[r])t=-t;else if(l[r]===l[o])return 0;return t}},9243:function(h,l,t){var o=t(3094),r=t(6606);function n(u,p){for(var c=0,b=u.length,g=0;g<b;++g)c+=u[g]*p[g];return c}function a(u){var p=u.length;if(p===0)return[];u[0].length;var c=o([u.length+1,u.length+1],1),b=o([u.length+1],1);c[p][p]=0;for(var g=0;g<p;++g){for(var f=0;f<=g;++f)c[f][g]=c[g][f]=2*n(u[g],u[f]);b[g]=n(u[g],u[g])}var v=r(c,b),m=0,x=v[p+1];for(g=0;g<x.length;++g)m+=x[g];var T=new Array(p);for(g=0;g<p;++g){x=v[g];var d=0;for(f=0;f<x.length;++f)d+=x[f];T[g]=d/m}return T}function s(u){if(u.length===0)return[];for(var p=u[0].length,c=o([p]),b=a(u),g=0;g<u.length;++g)for(var f=0;f<p;++f)c[f]+=u[g][f]*b[g];return c}s.barycenetric=a,h.exports=s},1778:function(h,l,t){h.exports=function(r){for(var n=o(r),a=0,s=0;s<r.length;++s)for(var u=r[s],p=0;p<n.length;++p)a+=Math.pow(u[p]-n[p],2);return Math.sqrt(a/r.length)};var o=t(9243)},197:function(h,l,t){h.exports=function(M,A,C){var P;if(C){P=A;for(var O=new Array(A.length),z=0;z<A.length;++z){var B=A[z];O[z]=[B[0],B[1],C[z]]}A=O}for(var Y=function(D,G,V){var j=v(D,[],f(D));return T(G,j,V),!!j}(M,A,!!C);d(M,A,!!C);)Y=!0;if(C&&Y)for(P.length=0,C.length=0,z=0;z<A.length;++z)B=A[z],P.push([B[0],B[1]]),C.push(B[2]);return Y};var o=t(1731),r=t(2569),n=t(4434),a=t(5125),s=t(8846),u=t(7999),p=t(2826),c=t(8551),b=t(5528);function g(M){var A=u(M);return[c(A,-1/0),c(A,1/0)]}function f(M){for(var A=new Array(M.length),C=0;C<M.length;++C){var P=M[C];A[C]=[c(P[0],-1/0),c(P[1],-1/0),c(P[0],1/0),c(P[1],1/0)]}return A}function v(M,A,C){for(var P=A.length,O=new o(P),z=[],B=0;B<A.length;++B){var Y=A[B],D=g(Y[0]),G=g(Y[1]);z.push([c(D[0],-1/0),c(G[0],-1/0),c(D[1],1/0),c(G[1],1/0)])}r(z,function(ie,te){O.link(ie,te)});var V=!0,j=new Array(P);for(B=0;B<P;++B)(Z=O.find(B))!==B&&(V=!1,M[Z]=[Math.min(M[B][0],M[Z][0]),Math.min(M[B][1],M[Z][1])]);if(V)return null;var W=0;for(B=0;B<P;++B){var Z;(Z=O.find(B))===B?(j[B]=W,M[W++]=M[B]):j[B]=-1}for(M.length=W,B=0;B<P;++B)j[B]<0&&(j[B]=j[O.find(B)]);return j}function m(M,A){return M[0]-A[0]||M[1]-A[1]}function x(M,A){return M[0]-A[0]||M[1]-A[1]||(M[2]<A[2]?-1:M[2]>A[2]?1:0)}function T(M,A,C){if(M.length!==0){if(A)for(var P=0;P<M.length;++P){var O=A[(B=M[P])[0]],z=A[B[1]];B[0]=Math.min(O,z),B[1]=Math.max(O,z)}else for(P=0;P<M.length;++P){var B;O=(B=M[P])[0],z=B[1],B[0]=Math.min(O,z),B[1]=Math.max(O,z)}C?M.sort(x):M.sort(m);var Y=1;for(P=1;P<M.length;++P){var D=M[P-1],G=M[P];(G[0]!==D[0]||G[1]!==D[1]||C&&G[2]!==D[2])&&(M[Y++]=G)}M.length=Y}}function d(M,A,C){var P=function(D,G){for(var V=new Array(G.length),j=0;j<G.length;++j){var W=G[j],Z=D[W[0]],ie=D[W[1]];V[j]=[c(Math.min(Z[0],ie[0]),-1/0),c(Math.min(Z[1],ie[1]),-1/0),c(Math.max(Z[0],ie[0]),1/0),c(Math.max(Z[1],ie[1]),1/0)]}return V}(M,A),O=function(D,G,V){var j=[];return r(V,function(W,Z){var ie=G[W],te=G[Z];if(ie[0]!==te[0]&&ie[0]!==te[1]&&ie[1]!==te[0]&&ie[1]!==te[1]){var J=D[ie[0]],X=D[ie[1]],ee=D[te[0]],re=D[te[1]];n(J,X,ee,re)&&j.push([W,Z])}}),j}(M,A,P),z=function(D,G,V,j){var W=[];return r(V,j,function(Z,ie){var te=G[Z];if(te[0]!==ie&&te[1]!==ie){var J=D[ie],X=D[te[0]],ee=D[te[1]];n(X,ee,J,J)&&W.push([Z,ie])}}),W}(M,A,P,f(M)),B=function(D,G,V,j,W){var Z,ie,te=D.map(function(he){return[a(he[0]),a(he[1])]});for(Z=0;Z<V.length;++Z){var J=V[Z];ie=J[0];var X=J[1],ee=G[ie],re=G[X],oe=b(p(D[ee[0]]),p(D[ee[1]]),p(D[re[0]]),p(D[re[1]]));if(oe){var ue=D.length;D.push([u(oe[0]),u(oe[1])]),te.push(oe),j.push([ie,ue],[X,ue])}}for(j.sort(function(he,fe){if(he[0]!==fe[0])return he[0]-fe[0];var ae=te[he[1]],be=te[fe[1]];return s(ae[0],be[0])||s(ae[1],be[1])}),Z=j.length-1;Z>=0;--Z){var ce=G[ie=(Ee=j[Z])[0]],de=ce[0],me=ce[1],_e=D[de],Se=D[me];if((_e[0]-Se[0]||_e[1]-Se[1])<0){var we=de;de=me,me=we}ce[0]=de;var xe,De=ce[1]=Ee[1];for(W&&(xe=ce[2]);Z>0&&j[Z-1][0]===ie;){var Ee,Me=(Ee=j[--Z])[1];W?G.push([De,Me,xe]):G.push([De,Me]),De=Me}W?G.push([De,me,xe]):G.push([De,me])}return te}(M,A,O,z,C),Y=v(M,B);return T(A,Y,C),!!Y||O.length>0||z.length>0}},5528:function(h,l,t){h.exports=function(b,g,f,v){var m=s(g,b),x=s(v,f),T=c(m,x);if(a(T)===0)return null;var d=c(x,s(b,f)),M=r(d,T),A=p(m,M);return u(b,A)};var o=t(3962),r=t(9189),n=t(4354),a=t(4951),s=t(6695),u=t(7584),p=t(4469);function c(b,g){return n(o(b[0],g[1]),o(b[1],g[0]))}},5692:function(h){h.exports={jet:[{index:0,rgb:[0,0,131]},{index:.125,rgb:[0,60,170]},{index:.375,rgb:[5,255,255]},{index:.625,rgb:[255,255,0]},{index:.875,rgb:[250,0,0]},{index:1,rgb:[128,0,0]}],hsv:[{index:0,rgb:[255,0,0]},{index:.169,rgb:[253,255,2]},{index:.173,rgb:[247,255,2]},{index:.337,rgb:[0,252,4]},{index:.341,rgb:[0,252,10]},{index:.506,rgb:[1,249,255]},{index:.671,rgb:[2,0,253]},{index:.675,rgb:[8,0,253]},{index:.839,rgb:[255,0,251]},{index:.843,rgb:[255,0,245]},{index:1,rgb:[255,0,6]}],hot:[{index:0,rgb:[0,0,0]},{index:.3,rgb:[230,0,0]},{index:.6,rgb:[255,210,0]},{index:1,rgb:[255,255,255]}],spring:[{index:0,rgb:[255,0,255]},{index:1,rgb:[255,255,0]}],summer:[{index:0,rgb:[0,128,102]},{index:1,rgb:[255,255,102]}],autumn:[{index:0,rgb:[255,0,0]},{index:1,rgb:[255,255,0]}],winter:[{index:0,rgb:[0,0,255]},{index:1,rgb:[0,255,128]}],bone:[{index:0,rgb:[0,0,0]},{index:.376,rgb:[84,84,116]},{index:.753,rgb:[169,200,200]},{index:1,rgb:[255,255,255]}],copper:[{index:0,rgb:[0,0,0]},{index:.804,rgb:[255,160,102]},{index:1,rgb:[255,199,127]}],greys:[{index:0,rgb:[0,0,0]},{index:1,rgb:[255,255,255]}],yignbu:[{index:0,rgb:[8,29,88]},{index:.125,rgb:[37,52,148]},{index:.25,rgb:[34,94,168]},{index:.375,rgb:[29,145,192]},{index:.5,rgb:[65,182,196]},{index:.625,rgb:[127,205,187]},{index:.75,rgb:[199,233,180]},{index:.875,rgb:[237,248,217]},{index:1,rgb:[255,255,217]}],greens:[{index:0,rgb:[0,68,27]},{index:.125,rgb:[0,109,44]},{index:.25,rgb:[35,139,69]},{index:.375,rgb:[65,171,93]},{index:.5,rgb:[116,196,118]},{index:.625,rgb:[161,217,155]},{index:.75,rgb:[199,233,192]},{index:.875,rgb:[229,245,224]},{index:1,rgb:[247,252,245]}],yiorrd:[{index:0,rgb:[128,0,38]},{index:.125,rgb:[189,0,38]},{index:.25,rgb:[227,26,28]},{index:.375,rgb:[252,78,42]},{index:.5,rgb:[253,141,60]},{index:.625,rgb:[254,178,76]},{index:.75,rgb:[254,217,118]},{index:.875,rgb:[255,237,160]},{index:1,rgb:[255,255,204]}],bluered:[{index:0,rgb:[0,0,255]},{index:1,rgb:[255,0,0]}],rdbu:[{index:0,rgb:[5,10,172]},{index:.35,rgb:[106,137,247]},{index:.5,rgb:[190,190,190]},{index:.6,rgb:[220,170,132]},{index:.7,rgb:[230,145,90]},{index:1,rgb:[178,10,28]}],picnic:[{index:0,rgb:[0,0,255]},{index:.1,rgb:[51,153,255]},{index:.2,rgb:[102,204,255]},{index:.3,rgb:[153,204,255]},{index:.4,rgb:[204,204,255]},{index:.5,rgb:[255,255,255]},{index:.6,rgb:[255,204,255]},{index:.7,rgb:[255,153,255]},{index:.8,rgb:[255,102,204]},{index:.9,rgb:[255,102,102]},{index:1,rgb:[255,0,0]}],rainbow:[{index:0,rgb:[150,0,90]},{index:.125,rgb:[0,0,200]},{index:.25,rgb:[0,25,255]},{index:.375,rgb:[0,152,255]},{index:.5,rgb:[44,255,150]},{index:.625,rgb:[151,255,0]},{index:.75,rgb:[255,234,0]},{index:.875,rgb:[255,111,0]},{index:1,rgb:[255,0,0]}],portland:[{index:0,rgb:[12,51,131]},{index:.25,rgb:[10,136,186]},{index:.5,rgb:[242,211,56]},{index:.75,rgb:[242,143,56]},{index:1,rgb:[217,30,30]}],blackbody:[{index:0,rgb:[0,0,0]},{index:.2,rgb:[230,0,0]},{index:.4,rgb:[230,210,0]},{index:.7,rgb:[255,255,255]},{index:1,rgb:[160,200,255]}],earth:[{index:0,rgb:[0,0,130]},{index:.1,rgb:[0,180,180]},{index:.2,rgb:[40,210,40]},{index:.4,rgb:[230,230,50]},{index:.6,rgb:[120,70,20]},{index:1,rgb:[255,255,255]}],electric:[{index:0,rgb:[0,0,0]},{index:.15,rgb:[30,0,100]},{index:.4,rgb:[120,0,100]},{index:.6,rgb:[160,90,0]},{index:.8,rgb:[230,200,0]},{index:1,rgb:[255,250,220]}],alpha:[{index:0,rgb:[255,255,255,0]},{index:1,rgb:[255,255,255,1]}],viridis:[{index:0,rgb:[68,1,84]},{index:.13,rgb:[71,44,122]},{index:.25,rgb:[59,81,139]},{index:.38,rgb:[44,113,142]},{index:.5,rgb:[33,144,141]},{index:.63,rgb:[39,173,129]},{index:.75,rgb:[92,200,99]},{index:.88,rgb:[170,220,50]},{index:1,rgb:[253,231,37]}],inferno:[{index:0,rgb:[0,0,4]},{index:.13,rgb:[31,12,72]},{index:.25,rgb:[85,15,109]},{index:.38,rgb:[136,34,106]},{index:.5,rgb:[186,54,85]},{index:.63,rgb:[227,89,51]},{index:.75,rgb:[249,140,10]},{index:.88,rgb:[249,201,50]},{index:1,rgb:[252,255,164]}],magma:[{index:0,rgb:[0,0,4]},{index:.13,rgb:[28,16,68]},{index:.25,rgb:[79,18,123]},{index:.38,rgb:[129,37,129]},{index:.5,rgb:[181,54,122]},{index:.63,rgb:[229,80,100]},{index:.75,rgb:[251,135,97]},{index:.88,rgb:[254,194,135]},{index:1,rgb:[252,253,191]}],plasma:[{index:0,rgb:[13,8,135]},{index:.13,rgb:[75,3,161]},{index:.25,rgb:[125,3,168]},{index:.38,rgb:[168,34,150]},{index:.5,rgb:[203,70,121]},{index:.63,rgb:[229,107,93]},{index:.75,rgb:[248,148,65]},{index:.88,rgb:[253,195,40]},{index:1,rgb:[240,249,33]}],warm:[{index:0,rgb:[125,0,179]},{index:.13,rgb:[172,0,187]},{index:.25,rgb:[219,0,170]},{index:.38,rgb:[255,0,130]},{index:.5,rgb:[255,63,74]},{index:.63,rgb:[255,123,0]},{index:.75,rgb:[234,176,0]},{index:.88,rgb:[190,228,0]},{index:1,rgb:[147,255,0]}],cool:[{index:0,rgb:[125,0,179]},{index:.13,rgb:[116,0,218]},{index:.25,rgb:[98,74,237]},{index:.38,rgb:[68,146,231]},{index:.5,rgb:[0,204,197]},{index:.63,rgb:[0,247,146]},{index:.75,rgb:[0,255,88]},{index:.88,rgb:[40,255,8]},{index:1,rgb:[147,255,0]}],"rainbow-soft":[{index:0,rgb:[125,0,179]},{index:.1,rgb:[199,0,180]},{index:.2,rgb:[255,0,121]},{index:.3,rgb:[255,108,0]},{index:.4,rgb:[222,194,0]},{index:.5,rgb:[150,255,0]},{index:.6,rgb:[0,255,55]},{index:.7,rgb:[0,246,150]},{index:.8,rgb:[50,167,222]},{index:.9,rgb:[103,51,235]},{index:1,rgb:[124,0,186]}],bathymetry:[{index:0,rgb:[40,26,44]},{index:.13,rgb:[59,49,90]},{index:.25,rgb:[64,76,139]},{index:.38,rgb:[63,110,151]},{index:.5,rgb:[72,142,158]},{index:.63,rgb:[85,174,163]},{index:.75,rgb:[120,206,163]},{index:.88,rgb:[187,230,172]},{index:1,rgb:[253,254,204]}],cdom:[{index:0,rgb:[47,15,62]},{index:.13,rgb:[87,23,86]},{index:.25,rgb:[130,28,99]},{index:.38,rgb:[171,41,96]},{index:.5,rgb:[206,67,86]},{index:.63,rgb:[230,106,84]},{index:.75,rgb:[242,149,103]},{index:.88,rgb:[249,193,135]},{index:1,rgb:[254,237,176]}],chlorophyll:[{index:0,rgb:[18,36,20]},{index:.13,rgb:[25,63,41]},{index:.25,rgb:[24,91,59]},{index:.38,rgb:[13,119,72]},{index:.5,rgb:[18,148,80]},{index:.63,rgb:[80,173,89]},{index:.75,rgb:[132,196,122]},{index:.88,rgb:[175,221,162]},{index:1,rgb:[215,249,208]}],density:[{index:0,rgb:[54,14,36]},{index:.13,rgb:[89,23,80]},{index:.25,rgb:[110,45,132]},{index:.38,rgb:[120,77,178]},{index:.5,rgb:[120,113,213]},{index:.63,rgb:[115,151,228]},{index:.75,rgb:[134,185,227]},{index:.88,rgb:[177,214,227]},{index:1,rgb:[230,241,241]}],"freesurface-blue":[{index:0,rgb:[30,4,110]},{index:.13,rgb:[47,14,176]},{index:.25,rgb:[41,45,236]},{index:.38,rgb:[25,99,212]},{index:.5,rgb:[68,131,200]},{index:.63,rgb:[114,156,197]},{index:.75,rgb:[157,181,203]},{index:.88,rgb:[200,208,216]},{index:1,rgb:[241,237,236]}],"freesurface-red":[{index:0,rgb:[60,9,18]},{index:.13,rgb:[100,17,27]},{index:.25,rgb:[142,20,29]},{index:.38,rgb:[177,43,27]},{index:.5,rgb:[192,87,63]},{index:.63,rgb:[205,125,105]},{index:.75,rgb:[216,162,148]},{index:.88,rgb:[227,199,193]},{index:1,rgb:[241,237,236]}],oxygen:[{index:0,rgb:[64,5,5]},{index:.13,rgb:[106,6,15]},{index:.25,rgb:[144,26,7]},{index:.38,rgb:[168,64,3]},{index:.5,rgb:[188,100,4]},{index:.63,rgb:[206,136,11]},{index:.75,rgb:[220,174,25]},{index:.88,rgb:[231,215,44]},{index:1,rgb:[248,254,105]}],par:[{index:0,rgb:[51,20,24]},{index:.13,rgb:[90,32,35]},{index:.25,rgb:[129,44,34]},{index:.38,rgb:[159,68,25]},{index:.5,rgb:[182,99,19]},{index:.63,rgb:[199,134,22]},{index:.75,rgb:[212,171,35]},{index:.88,rgb:[221,210,54]},{index:1,rgb:[225,253,75]}],phase:[{index:0,rgb:[145,105,18]},{index:.13,rgb:[184,71,38]},{index:.25,rgb:[186,58,115]},{index:.38,rgb:[160,71,185]},{index:.5,rgb:[110,97,218]},{index:.63,rgb:[50,123,164]},{index:.75,rgb:[31,131,110]},{index:.88,rgb:[77,129,34]},{index:1,rgb:[145,105,18]}],salinity:[{index:0,rgb:[42,24,108]},{index:.13,rgb:[33,50,162]},{index:.25,rgb:[15,90,145]},{index:.38,rgb:[40,118,137]},{index:.5,rgb:[59,146,135]},{index:.63,rgb:[79,175,126]},{index:.75,rgb:[120,203,104]},{index:.88,rgb:[193,221,100]},{index:1,rgb:[253,239,154]}],temperature:[{index:0,rgb:[4,35,51]},{index:.13,rgb:[23,51,122]},{index:.25,rgb:[85,59,157]},{index:.38,rgb:[129,79,143]},{index:.5,rgb:[175,95,130]},{index:.63,rgb:[222,112,101]},{index:.75,rgb:[249,146,66]},{index:.88,rgb:[249,196,65]},{index:1,rgb:[232,250,91]}],turbidity:[{index:0,rgb:[34,31,27]},{index:.13,rgb:[65,50,41]},{index:.25,rgb:[98,69,52]},{index:.38,rgb:[131,89,57]},{index:.5,rgb:[161,112,59]},{index:.63,rgb:[185,140,66]},{index:.75,rgb:[202,174,88]},{index:.88,rgb:[216,209,126]},{index:1,rgb:[233,246,171]}],"velocity-blue":[{index:0,rgb:[17,32,64]},{index:.13,rgb:[35,52,116]},{index:.25,rgb:[29,81,156]},{index:.38,rgb:[31,113,162]},{index:.5,rgb:[50,144,169]},{index:.63,rgb:[87,173,176]},{index:.75,rgb:[149,196,189]},{index:.88,rgb:[203,221,211]},{index:1,rgb:[254,251,230]}],"velocity-green":[{index:0,rgb:[23,35,19]},{index:.13,rgb:[24,64,38]},{index:.25,rgb:[11,95,45]},{index:.38,rgb:[39,123,35]},{index:.5,rgb:[95,146,12]},{index:.63,rgb:[152,165,18]},{index:.75,rgb:[201,186,69]},{index:.88,rgb:[233,216,137]},{index:1,rgb:[255,253,205]}],cubehelix:[{index:0,rgb:[0,0,0]},{index:.07,rgb:[22,5,59]},{index:.13,rgb:[60,4,105]},{index:.2,rgb:[109,1,135]},{index:.27,rgb:[161,0,147]},{index:.33,rgb:[210,2,142]},{index:.4,rgb:[251,11,123]},{index:.47,rgb:[255,29,97]},{index:.53,rgb:[255,54,69]},{index:.6,rgb:[255,85,46]},{index:.67,rgb:[255,120,34]},{index:.73,rgb:[255,157,37]},{index:.8,rgb:[241,191,57]},{index:.87,rgb:[224,220,93]},{index:.93,rgb:[218,241,142]},{index:1,rgb:[227,253,198]}]}},9156:function(h,l,t){var o=t(5692),r=t(3578);function n(u){return[u[0]/255,u[1]/255,u[2]/255,u[3]]}function a(u){for(var p,c="#",b=0;b<3;++b)c+=("00"+(p=(p=u[b]).toString(16))).substr(p.length);return c}function s(u){return"rgba("+u.join(",")+")"}h.exports=function(u){var p,c,b,g,f,v,m,x,T,d;if(u||(u={}),x=(u.nshades||72)-1,m=u.format||"hex",(v=u.colormap)||(v="jet"),typeof v=="string"){if(v=v.toLowerCase(),!o[v])throw Error(v+" not a supported colorscale");f=o[v]}else{if(!Array.isArray(v))throw Error("unsupported colormap option",v);f=v.slice()}if(f.length>x+1)throw new Error(v+" map requires nshades to be at least size "+f.length);T=Array.isArray(u.alpha)?u.alpha.length!==2?[1,1]:u.alpha.slice():typeof u.alpha=="number"?[u.alpha,u.alpha]:[1,1],p=f.map(function(O){return Math.round(O.index*x)}),T[0]=Math.min(Math.max(T[0],0),1),T[1]=Math.min(Math.max(T[1],0),1);var M=f.map(function(O,z){var B=f[z].index,Y=f[z].rgb.slice();return Y.length===4&&Y[3]>=0&&Y[3]<=1||(Y[3]=T[0]+(T[1]-T[0])*B),Y}),A=[];for(d=0;d<p.length-1;++d){g=p[d+1]-p[d],c=M[d],b=M[d+1];for(var C=0;C<g;C++){var P=C/g;A.push([Math.round(r(c[0],b[0],P)),Math.round(r(c[1],b[1],P)),Math.round(r(c[2],b[2],P)),r(c[3],b[3],P)])}}return A.push(f[f.length-1].rgb.concat(T[1])),m==="hex"?A=A.map(a):m==="rgbaString"?A=A.map(s):m==="float"&&(A=A.map(n)),A}},9398:function(h,l,t){h.exports=function(p,c,b,g){var f=o(c,b,g);if(f===0){var v=r(o(p,c,b)),m=r(o(p,c,g));if(v===m){if(v===0){var x=u(p,c,b);return x===u(p,c,g)?0:x?1:-1}return 0}return m===0?v>0||u(p,c,g)?-1:1:v===0?m>0||u(p,c,b)?1:-1:r(m-v)}var T=o(p,c,b);return T>0?f>0&&o(p,c,g)>0?1:-1:T<0?f>0||o(p,c,g)>0?1:-1:o(p,c,g)>0||u(p,c,b)?1:-1};var o=t(417),r=t(7538),n=t(87),a=t(2019),s=t(9662);function u(p,c,b){var g=n(p[0],-c[0]),f=n(p[1],-c[1]),v=n(b[0],-c[0]),m=n(b[1],-c[1]),x=s(a(g,v),a(f,m));return x[x.length-1]>=0}},7538:function(h){h.exports=function(l){return l<0?-1:l>0?1:0}},9209:function(h){h.exports=function(o,r){var n=o.length,a=o.length-r.length;if(a)return a;switch(n){case 0:return 0;case 1:return o[0]-r[0];case 2:return o[0]+o[1]-r[0]-r[1]||l(o[0],o[1])-l(r[0],r[1]);case 3:var s=o[0]+o[1],u=r[0]+r[1];if(a=s+o[2]-(u+r[2]))return a;var p=l(o[0],o[1]),c=l(r[0],r[1]);return l(p,o[2])-l(c,r[2])||l(p+o[2],s)-l(c+r[2],u);case 4:var b=o[0],g=o[1],f=o[2],v=o[3],m=r[0],x=r[1],T=r[2],d=r[3];return b+g+f+v-(m+x+T+d)||l(b,g,f,v)-l(m,x,T,d,m)||l(b+g,b+f,b+v,g+f,g+v,f+v)-l(m+x,m+T,m+d,x+T,x+d,T+d)||l(b+g+f,b+g+v,b+f+v,g+f+v)-l(m+x+T,m+x+d,m+T+d,x+T+d);default:for(var M=o.slice().sort(t),A=r.slice().sort(t),C=0;C<n;++C)if(a=M[C]-A[C])return a;return 0}};var l=Math.min;function t(o,r){return o-r}},1284:function(h,l,t){var o=t(9209),r=t(9887);h.exports=function(n,a){return o(n,a)||r(n)-r(a)}},5537:function(h,l,t){var o=t(8950),r=t(8722),n=t(3332);h.exports=function(a){var s=a.length;if(s===0)return[];if(s===1)return[[0]];var u=a[0].length;return u===0?[]:u===1?o(a):u===2?r(a):n(a,u)}},8950:function(h){h.exports=function(l){for(var t=0,o=0,r=1;r<l.length;++r)l[r][0]<l[t][0]&&(t=r),l[r][0]>l[o][0]&&(o=r);return t<o?[[t],[o]]:t>o?[[o],[t]]:[[t]]}},8722:function(h,l,t){h.exports=function(r){var n=o(r),a=n.length;if(a<=2)return[];for(var s=new Array(a),u=n[a-1],p=0;p<a;++p){var c=n[p];s[p]=[u,c],u=c}return s};var o=t(3266)},3332:function(h,l,t){h.exports=function(n,a){try{return o(n,!0)}catch{var s=r(n);if(s.length<=a)return[];var u=function(c,b){for(var g=c.length,f=new Array(g),v=0;v<b.length;++v)f[v]=c[b[v]];var m=b.length;for(v=0;v<g;++v)b.indexOf(v)<0&&(f[m++]=c[v]);return f}(n,s);return function(c,b){for(var g=c.length,f=b.length,v=0;v<g;++v)for(var m=c[v],x=0;x<m.length;++x){var T=m[x];if(T<f)m[x]=b[T];else{T-=f;for(var d=0;d<f;++d)T>=b[d]&&(T+=1);m[x]=T}}return c}(o(u,!0),s)}};var o=t(2183),r=t(2153)},9680:function(h){h.exports=function(l,t,o,r,n,a){var s=n-1,u=n*n,p=s*s,c=(1+2*n)*p,b=n*p,g=u*(3-2*n),f=u*s;if(l.length){a||(a=new Array(l.length));for(var v=l.length-1;v>=0;--v)a[v]=c*l[v]+b*t[v]+g*o[v]+f*r[v];return a}return c*l+b*t+g*o+f*r},h.exports.derivative=function(l,t,o,r,n,a){var s=6*n*n-6*n,u=3*n*n-4*n+1,p=-6*n*n+6*n,c=3*n*n-2*n;if(l.length){a||(a=new Array(l.length));for(var b=l.length-1;b>=0;--b)a[b]=s*l[b]+u*t[b]+p*o[b]+c*r[b];return a}return s*l+u*t+p*o[b]+c*r}},4419:function(h,l,t){var o=t(2183),r=t(1215);function n(s,u){this.point=s,this.index=u}function a(s,u){for(var p=s.point,c=u.point,b=p.length,g=0;g<b;++g){var f=c[g]-p[g];if(f)return f}return 0}h.exports=function(s,u){var p=s.length;if(p===0)return[];var c=s[0].length;if(c<1)return[];if(c===1)return function(B,Y,D){if(B===1)return D?[[-1,0]]:[];var G=Y.map(function(ie,te){return[ie[0],te]});G.sort(function(ie,te){return ie[0]-te[0]});for(var V=new Array(B-1),j=1;j<B;++j){var W=G[j-1],Z=G[j];V[j-1]=[W[1],Z[1]]}return D&&V.push([-1,V[0][1]],[V[B-1][1],-1]),V}(p,s,u);for(var b=new Array(p),g=1,f=0;f<p;++f){for(var v=s[f],m=new Array(c+1),x=0,T=0;T<c;++T){var d=v[T];m[T]=d,x+=d*d}m[c]=x,b[f]=new n(m,f),g=Math.max(x,g)}r(b,a),p=b.length;var M=new Array(p+c+1),A=new Array(p+c+1),C=(c+1)*(c+1)*g,P=new Array(c+1);for(f=0;f<=c;++f)P[f]=0;for(P[c]=C,M[0]=P.slice(),A[0]=-1,f=0;f<=c;++f)(m=P.slice())[f]=1,M[f+1]=m,A[f+1]=-1;for(f=0;f<p;++f){var O=b[f];M[f+c+1]=O.point,A[f+c+1]=O.index}var z=o(M,!1);if(z=u?z.filter(function(B){for(var Y=0,D=0;D<=c;++D){var G=A[B[D]];if(G<0&&++Y>=2)return!1;B[D]=G}return!0}):z.filter(function(B){for(var Y=0;Y<=c;++Y){var D=A[B[Y]];if(D<0)return!1;B[Y]=D}return!0}),1&c)for(f=0;f<z.length;++f)m=(O=z[f])[0],O[0]=O[1],O[1]=m;return z}},8362:function(h){var l=!1;if(typeof Float64Array<"u"){var t=new Float64Array(1),o=new Uint32Array(t.buffer);t[0]=1,l=!0,o[1]===1072693248?(h.exports=function(n){return t[0]=n,[o[0],o[1]]},h.exports.pack=function(n,a){return o[0]=n,o[1]=a,t[0]},h.exports.lo=function(n){return t[0]=n,o[0]},h.exports.hi=function(n){return t[0]=n,o[1]}):o[0]===1072693248?(h.exports=function(n){return t[0]=n,[o[1],o[0]]},h.exports.pack=function(n,a){return o[1]=n,o[0]=a,t[0]},h.exports.lo=function(n){return t[0]=n,o[1]},h.exports.hi=function(n){return t[0]=n,o[0]}):l=!1}if(!l){var r=new Buffer(8);h.exports=function(n){return r.writeDoubleLE(n,0,!0),[r.readUInt32LE(0,!0),r.readUInt32LE(4,!0)]},h.exports.pack=function(n,a){return r.writeUInt32LE(n,0,!0),r.writeUInt32LE(a,4,!0),r.readDoubleLE(0,!0)},h.exports.lo=function(n){return r.writeDoubleLE(n,0,!0),r.readUInt32LE(0,!0)},h.exports.hi=function(n){return r.writeDoubleLE(n,0,!0),r.readUInt32LE(4,!0)}}h.exports.sign=function(n){return h.exports.hi(n)>>>31},h.exports.exponent=function(n){return(h.exports.hi(n)<<1>>>21)-1023},h.exports.fraction=function(n){var a=h.exports.lo(n),s=h.exports.hi(n),u=1048575&s;return 2146435072&s&&(u+=1048576),[a,u]},h.exports.denormalized=function(n){return!(2146435072&h.exports.hi(n))}},3094:function(h){function l(t,o,r){var n=0|t[r];if(n<=0)return[];var a,s=new Array(n);if(r===t.length-1)for(a=0;a<n;++a)s[a]=o;else for(a=0;a<n;++a)s[a]=l(t,o,r+1);return s}h.exports=function(t,o){switch(o===void 0&&(o=0),typeof t){case"number":if(t>0)return function(r,n){var a,s;for(a=new Array(r),s=0;s<r;++s)a[s]=n;return a}(0|t,o);break;case"object":if(typeof t.length=="number")return l(t,o,0)}return[]}},8348:function(h,l,t){h.exports=function(r,n){var a=r.length;if(typeof n!="number"){n=0;for(var s=0;s<a;++s){var u=r[s];n=Math.max(n,u[0],u[1])}n=1+(0|n)}n|=0;var p=new Array(n);for(s=0;s<n;++s)p[s]=[];for(s=0;s<a;++s)p[(u=r[s])[0]].push(u[1]),p[u[1]].push(u[0]);for(var c=0;c<n;++c)o(p[c],function(b,g){return b-g});return p};var o=t(1215)},5795:function(h){h.exports=function(l,t,o){var r=t||0,n=o||1;return[[l[12]+l[0],l[13]+l[1],l[14]+l[2],l[15]+l[3]],[l[12]-l[0],l[13]-l[1],l[14]-l[2],l[15]-l[3]],[l[12]+l[4],l[13]+l[5],l[14]+l[6],l[15]+l[7]],[l[12]-l[4],l[13]-l[5],l[14]-l[6],l[15]-l[7]],[r*l[12]+l[8],r*l[13]+l[9],r*l[14]+l[10],r*l[15]+l[11]],[n*l[12]-l[8],n*l[13]-l[9],n*l[14]-l[10],n*l[15]-l[11]]]}},8444:function(h,l,t){h.exports=function(p,c,b){switch(arguments.length){case 0:return new a([0],[0],0);case 1:return typeof p=="number"?new a(g=u(p),g,0):new a(p,u(p.length),0);case 2:var g;if(typeof c=="number")return new a(p,g=u(p.length),+c);b=0;case 3:if(p.length!==c.length)throw new Error("state and velocity lengths must match");return new a(p,c,b)}};var o=t(9680),r=t(5070);function n(p,c,b){return Math.min(c,Math.max(p,b))}function a(p,c,b){this.dimension=p.length,this.bounds=[new Array(this.dimension),new Array(this.dimension)];for(var g=0;g<this.dimension;++g)this.bounds[0][g]=-1/0,this.bounds[1][g]=1/0;this._state=p.slice().reverse(),this._velocity=c.slice().reverse(),this._time=[b],this._scratch=[p.slice(),p.slice(),p.slice(),p.slice(),p.slice()]}var s=a.prototype;function u(p){for(var c=new Array(p),b=0;b<p;++b)c[b]=0;return c}s.flush=function(p){var c=r.gt(this._time,p)-1;c<=0||(this._time.splice(0,c),this._state.splice(0,c*this.dimension),this._velocity.splice(0,c*this.dimension))},s.curve=function(p){var c=this._time,b=c.length,g=r.le(c,p),f=this._scratch[0],v=this._state,m=this._velocity,x=this.dimension,T=this.bounds;if(g<0)for(var d=x-1,M=0;M<x;++M,--d)f[M]=v[d];else if(g>=b-1){d=v.length-1;var A=p-c[b-1];for(M=0;M<x;++M,--d)f[M]=v[d]+A*m[d]}else{d=x*(g+1)-1;var C=c[g],P=c[g+1]-C||1,O=this._scratch[1],z=this._scratch[2],B=this._scratch[3],Y=this._scratch[4],D=!0;for(M=0;M<x;++M,--d)O[M]=v[d],B[M]=m[d]*P,z[M]=v[d+x],Y[M]=m[d+x]*P,D=D&&O[M]===z[M]&&B[M]===Y[M]&&B[M]===0;if(D)for(M=0;M<x;++M)f[M]=O[M];else o(O,B,z,Y,(p-C)/P,f)}var G=T[0],V=T[1];for(M=0;M<x;++M)f[M]=n(G[M],V[M],f[M]);return f},s.dcurve=function(p){var c=this._time,b=c.length,g=r.le(c,p),f=this._scratch[0],v=this._state,m=this._velocity,x=this.dimension;if(g>=b-1)for(var T=v.length-1,d=(c[b-1],0);d<x;++d,--T)f[d]=m[T];else{T=x*(g+1)-1;var M=c[g],A=c[g+1]-M||1,C=this._scratch[1],P=this._scratch[2],O=this._scratch[3],z=this._scratch[4],B=!0;for(d=0;d<x;++d,--T)C[d]=v[T],O[d]=m[T]*A,P[d]=v[T+x],z[d]=m[T+x]*A,B=B&&C[d]===P[d]&&O[d]===z[d]&&O[d]===0;if(B)for(d=0;d<x;++d)f[d]=0;else for(o.derivative(C,O,P,z,(p-M)/A,f),d=0;d<x;++d)f[d]/=A}return f},s.lastT=function(){var p=this._time;return p[p.length-1]},s.stable=function(){for(var p=this._velocity,c=p.length,b=this.dimension-1;b>=0;--b)if(p[--c])return!1;return!0},s.jump=function(p){var c=this.lastT(),b=this.dimension;if(!(p<c||arguments.length!==b+1)){var g=this._state,f=this._velocity,v=g.length-this.dimension,m=this.bounds,x=m[0],T=m[1];this._time.push(c,p);for(var d=0;d<2;++d)for(var M=0;M<b;++M)g.push(g[v++]),f.push(0);for(this._time.push(p),M=b;M>0;--M)g.push(n(x[M-1],T[M-1],arguments[M])),f.push(0)}},s.push=function(p){var c=this.lastT(),b=this.dimension;if(!(p<c||arguments.length!==b+1)){var g=this._state,f=this._velocity,v=g.length-this.dimension,m=p-c,x=this.bounds,T=x[0],d=x[1],M=m>1e-6?1/m:0;this._time.push(p);for(var A=b;A>0;--A){var C=n(T[A-1],d[A-1],arguments[A]);g.push(C),f.push((C-g[v++])*M)}}},s.set=function(p){var c=this.dimension;if(!(p<this.lastT()||arguments.length!==c+1)){var b=this._state,g=this._velocity,f=this.bounds,v=f[0],m=f[1];this._time.push(p);for(var x=c;x>0;--x)b.push(n(v[x-1],m[x-1],arguments[x])),g.push(0)}},s.move=function(p){var c=this.lastT(),b=this.dimension;if(!(p<=c||arguments.length!==b+1)){var g=this._state,f=this._velocity,v=g.length-this.dimension,m=this.bounds,x=m[0],T=m[1],d=p-c,M=d>1e-6?1/d:0;this._time.push(p);for(var A=b;A>0;--A){var C=arguments[A];g.push(n(x[A-1],T[A-1],g[v++]+C)),f.push(C*M)}}},s.idle=function(p){var c=this.lastT();if(!(p<c)){var b=this.dimension,g=this._state,f=this._velocity,v=g.length-b,m=this.bounds,x=m[0],T=m[1],d=p-c;this._time.push(p);for(var M=b-1;M>=0;--M)g.push(n(x[M],T[M],g[v]+d*f[v])),f.push(0),v+=1}}},7080:function(h){function l(v,m,x,T,d,M){this._color=v,this.key=m,this.value=x,this.left=T,this.right=d,this._count=M}function t(v){return new l(v._color,v.key,v.value,v.left,v.right,v._count)}function o(v,m){return new l(v,m.key,m.value,m.left,m.right,m._count)}function r(v){v._count=1+(v.left?v.left._count:0)+(v.right?v.right._count:0)}function n(v,m){this._compare=v,this.root=m}h.exports=function(v){return new n(v||f,null)};var a=n.prototype;function s(v,m){var x;return m.left&&(x=s(v,m.left))?x:(x=v(m.key,m.value))||(m.right?s(v,m.right):void 0)}function u(v,m,x,T){if(m(v,T.key)<=0){var d;if(T.left&&(d=u(v,m,x,T.left))||(d=x(T.key,T.value)))return d}if(T.right)return u(v,m,x,T.right)}function p(v,m,x,T,d){var M,A=x(v,d.key),C=x(m,d.key);if(A<=0&&(d.left&&(M=p(v,m,x,T,d.left))||C>0&&(M=T(d.key,d.value))))return M;if(C>0&&d.right)return p(v,m,x,T,d.right)}function c(v,m){this.tree=v,this._stack=m}Object.defineProperty(a,"keys",{get:function(){var v=[];return this.forEach(function(m,x){v.push(m)}),v}}),Object.defineProperty(a,"values",{get:function(){var v=[];return this.forEach(function(m,x){v.push(x)}),v}}),Object.defineProperty(a,"length",{get:function(){return this.root?this.root._count:0}}),a.insert=function(v,m){for(var x=this._compare,T=this.root,d=[],M=[];T;){var A=x(v,T.key);d.push(T),M.push(A),T=A<=0?T.left:T.right}d.push(new l(0,v,m,null,null,1));for(var C=d.length-2;C>=0;--C)T=d[C],M[C]<=0?d[C]=new l(T._color,T.key,T.value,d[C+1],T.right,T._count+1):d[C]=new l(T._color,T.key,T.value,T.left,d[C+1],T._count+1);for(C=d.length-1;C>1;--C){var P=d[C-1];if(T=d[C],P._color===1||T._color===1)break;var O=d[C-2];if(O.left===P)if(P.left===T){if(!(z=O.right)||z._color!==0){O._color=0,O.left=P.right,P._color=1,P.right=O,d[C-2]=P,d[C-1]=T,r(O),r(P),C>=3&&((B=d[C-3]).left===O?B.left=P:B.right=P);break}P._color=1,O.right=o(1,z),O._color=0,C-=1}else{if(!(z=O.right)||z._color!==0){P.right=T.left,O._color=0,O.left=T.right,T._color=1,T.left=P,T.right=O,d[C-2]=T,d[C-1]=P,r(O),r(P),r(T),C>=3&&((B=d[C-3]).left===O?B.left=T:B.right=T);break}P._color=1,O.right=o(1,z),O._color=0,C-=1}else if(P.right===T){if(!(z=O.left)||z._color!==0){O._color=0,O.right=P.left,P._color=1,P.left=O,d[C-2]=P,d[C-1]=T,r(O),r(P),C>=3&&((B=d[C-3]).right===O?B.right=P:B.left=P);break}P._color=1,O.left=o(1,z),O._color=0,C-=1}else{var z;if(!(z=O.left)||z._color!==0){var B;P.left=T.right,O._color=0,O.right=T.left,T._color=1,T.right=P,T.left=O,d[C-2]=T,d[C-1]=P,r(O),r(P),r(T),C>=3&&((B=d[C-3]).right===O?B.right=T:B.left=T);break}P._color=1,O.left=o(1,z),O._color=0,C-=1}}return d[0]._color=1,new n(x,d[0])},a.forEach=function(v,m,x){if(this.root)switch(arguments.length){case 1:return s(v,this.root);case 2:return u(m,this._compare,v,this.root);case 3:return this._compare(m,x)>=0?void 0:p(m,x,this._compare,v,this.root)}},Object.defineProperty(a,"begin",{get:function(){for(var v=[],m=this.root;m;)v.push(m),m=m.left;return new c(this,v)}}),Object.defineProperty(a,"end",{get:function(){for(var v=[],m=this.root;m;)v.push(m),m=m.right;return new c(this,v)}}),a.at=function(v){if(v<0)return new c(this,[]);for(var m=this.root,x=[];;){if(x.push(m),m.left){if(v<m.left._count){m=m.left;continue}v-=m.left._count}if(!v)return new c(this,x);if(v-=1,!m.right||v>=m.right._count)break;m=m.right}return new c(this,[])},a.ge=function(v){for(var m=this._compare,x=this.root,T=[],d=0;x;){var M=m(v,x.key);T.push(x),M<=0&&(d=T.length),x=M<=0?x.left:x.right}return T.length=d,new c(this,T)},a.gt=function(v){for(var m=this._compare,x=this.root,T=[],d=0;x;){var M=m(v,x.key);T.push(x),M<0&&(d=T.length),x=M<0?x.left:x.right}return T.length=d,new c(this,T)},a.lt=function(v){for(var m=this._compare,x=this.root,T=[],d=0;x;){var M=m(v,x.key);T.push(x),M>0&&(d=T.length),x=M<=0?x.left:x.right}return T.length=d,new c(this,T)},a.le=function(v){for(var m=this._compare,x=this.root,T=[],d=0;x;){var M=m(v,x.key);T.push(x),M>=0&&(d=T.length),x=M<0?x.left:x.right}return T.length=d,new c(this,T)},a.find=function(v){for(var m=this._compare,x=this.root,T=[];x;){var d=m(v,x.key);if(T.push(x),d===0)return new c(this,T);x=d<=0?x.left:x.right}return new c(this,[])},a.remove=function(v){var m=this.find(v);return m?m.remove():this},a.get=function(v){for(var m=this._compare,x=this.root;x;){var T=m(v,x.key);if(T===0)return x.value;x=T<=0?x.left:x.right}};var b=c.prototype;function g(v,m){v.key=m.key,v.value=m.value,v.left=m.left,v.right=m.right,v._color=m._color,v._count=m._count}function f(v,m){return v<m?-1:v>m?1:0}Object.defineProperty(b,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(b,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),b.clone=function(){return new c(this.tree,this._stack.slice())},b.remove=function(){var v=this._stack;if(v.length===0)return this.tree;var m=new Array(v.length),x=v[v.length-1];m[m.length-1]=new l(x._color,x.key,x.value,x.left,x.right,x._count);for(var T=v.length-2;T>=0;--T)(x=v[T]).left===v[T+1]?m[T]=new l(x._color,x.key,x.value,m[T+1],x.right,x._count):m[T]=new l(x._color,x.key,x.value,x.left,m[T+1],x._count);if((x=m[m.length-1]).left&&x.right){var d=m.length;for(x=x.left;x.right;)m.push(x),x=x.right;var M=m[d-1];for(m.push(new l(x._color,M.key,M.value,x.left,x.right,x._count)),m[d-1].key=x.key,m[d-1].value=x.value,T=m.length-2;T>=d;--T)x=m[T],m[T]=new l(x._color,x.key,x.value,x.left,m[T+1],x._count);m[d-1].left=m[d]}if((x=m[m.length-1])._color===0){var A=m[m.length-2];for(A.left===x?A.left=null:A.right===x&&(A.right=null),m.pop(),T=0;T<m.length;++T)m[T]._count--;return new n(this.tree._compare,m[0])}if(x.left||x.right){for(x.left?g(x,x.left):x.right&&g(x,x.right),x._color=1,T=0;T<m.length-1;++T)m[T]._count--;return new n(this.tree._compare,m[0])}if(m.length===1)return new n(this.tree._compare,null);for(T=0;T<m.length;++T)m[T]._count--;var C=m[m.length-2];return function(P){for(var O,z,B,Y,D=P.length-1;D>=0;--D){if(O=P[D],D===0)return void(O._color=1);if((z=P[D-1]).left===O){if((B=z.right).right&&B.right._color===0)return Y=(B=z.right=t(B)).right=t(B.right),z.right=B.left,B.left=z,B.right=Y,B._color=z._color,O._color=1,z._color=1,Y._color=1,r(z),r(B),D>1&&((G=P[D-2]).left===z?G.left=B:G.right=B),void(P[D-1]=B);if(B.left&&B.left._color===0)return Y=(B=z.right=t(B)).left=t(B.left),z.right=Y.left,B.left=Y.right,Y.left=z,Y.right=B,Y._color=z._color,z._color=1,B._color=1,O._color=1,r(z),r(B),r(Y),D>1&&((G=P[D-2]).left===z?G.left=Y:G.right=Y),void(P[D-1]=Y);if(B._color===1){if(z._color===0)return z._color=1,void(z.right=o(0,B));z.right=o(0,B);continue}B=t(B),z.right=B.left,B.left=z,B._color=z._color,z._color=0,r(z),r(B),D>1&&((G=P[D-2]).left===z?G.left=B:G.right=B),P[D-1]=B,P[D]=z,D+1<P.length?P[D+1]=O:P.push(O),D+=2}else{if((B=z.left).left&&B.left._color===0)return Y=(B=z.left=t(B)).left=t(B.left),z.left=B.right,B.right=z,B.left=Y,B._color=z._color,O._color=1,z._color=1,Y._color=1,r(z),r(B),D>1&&((G=P[D-2]).right===z?G.right=B:G.left=B),void(P[D-1]=B);if(B.right&&B.right._color===0)return Y=(B=z.left=t(B)).right=t(B.right),z.left=Y.right,B.right=Y.left,Y.right=z,Y.left=B,Y._color=z._color,z._color=1,B._color=1,O._color=1,r(z),r(B),r(Y),D>1&&((G=P[D-2]).right===z?G.right=Y:G.left=Y),void(P[D-1]=Y);if(B._color===1){if(z._color===0)return z._color=1,void(z.left=o(0,B));z.left=o(0,B);continue}var G;B=t(B),z.left=B.right,B.right=z,B._color=z._color,z._color=0,r(z),r(B),D>1&&((G=P[D-2]).right===z?G.right=B:G.left=B),P[D-1]=B,P[D]=z,D+1<P.length?P[D+1]=O:P.push(O),D+=2}}}(m),C.left===x?C.left=null:C.right=null,new n(this.tree._compare,m[0])},Object.defineProperty(b,"key",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(b,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(b,"index",{get:function(){var v=0,m=this._stack;if(m.length===0){var x=this.tree.root;return x?x._count:0}m[m.length-1].left&&(v=m[m.length-1].left._count);for(var T=m.length-2;T>=0;--T)m[T+1]===m[T].right&&(++v,m[T].left&&(v+=m[T].left._count));return v},enumerable:!0}),b.next=function(){var v=this._stack;if(v.length!==0){var m=v[v.length-1];if(m.right)for(m=m.right;m;)v.push(m),m=m.left;else for(v.pop();v.length>0&&v[v.length-1].right===m;)m=v[v.length-1],v.pop()}},Object.defineProperty(b,"hasNext",{get:function(){var v=this._stack;if(v.length===0)return!1;if(v[v.length-1].right)return!0;for(var m=v.length-1;m>0;--m)if(v[m-1].left===v[m])return!0;return!1}}),b.update=function(v){var m=this._stack;if(m.length===0)throw new Error("Can't update empty node!");var x=new Array(m.length),T=m[m.length-1];x[x.length-1]=new l(T._color,T.key,v,T.left,T.right,T._count);for(var d=m.length-2;d>=0;--d)(T=m[d]).left===m[d+1]?x[d]=new l(T._color,T.key,T.value,x[d+1],T.right,T._count):x[d]=new l(T._color,T.key,T.value,T.left,x[d+1],T._count);return new n(this.tree._compare,x[0])},b.prev=function(){var v=this._stack;if(v.length!==0){var m=v[v.length-1];if(m.left)for(m=m.left;m;)v.push(m),m=m.right;else for(v.pop();v.length>0&&v[v.length-1].left===m;)m=v[v.length-1],v.pop()}},Object.defineProperty(b,"hasPrev",{get:function(){var v=this._stack;if(v.length===0)return!1;if(v[v.length-1].left)return!0;for(var m=v.length-1;m>0;--m)if(v[m-1].right===v[m])return!0;return!1}})},7453:function(h,l,t){h.exports=function(A,C){var P=new c(A);return P.update(C),P};var o=t(9557),r=t(1681),n=t(1011),a=t(2864),s=t(8468),u=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]);function p(A,C){return A[0]=C[0],A[1]=C[1],A[2]=C[2],A}function c(A){this.gl=A,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.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",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=n(A)}var b=c.prototype;function g(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}b.update=function(A){function C(ie,te,J){if(J in A){var X,ee=A[J],re=this[J];(ie?Array.isArray(ee)&&Array.isArray(ee[0]):Array.isArray(ee))?this[J]=X=[te(ee[0]),te(ee[1]),te(ee[2])]:this[J]=X=[te(ee),te(ee),te(ee)];for(var oe=0;oe<3;++oe)if(X[oe]!==re[oe])return!0}return!1}A=A||{};var P,O=C.bind(this,!1,Number),z=C.bind(this,!1,Boolean),B=C.bind(this,!1,String),Y=C.bind(this,!0,function(ie){if(Array.isArray(ie)){if(ie.length===3)return[+ie[0],+ie[1],+ie[2],1];if(ie.length===4)return[+ie[0],+ie[1],+ie[2],+ie[3]]}return[0,0,0,1]}),D=!1,G=!1;if("bounds"in A)for(var V=A.bounds,j=0;j<2;++j)for(var W=0;W<3;++W)V[j][W]!==this.bounds[j][W]&&(G=!0),this.bounds[j][W]=V[j][W];if("ticks"in A)for(P=A.ticks,D=!0,this.autoTicks=!1,j=0;j<3;++j)this.tickSpacing[j]=0;else O("tickSpacing")&&(this.autoTicks=!0,G=!0);if(this._firstInit&&("ticks"in A||"tickSpacing"in A||(this.autoTicks=!0),G=!0,D=!0,this._firstInit=!1),G&&this.autoTicks&&(P=s.create(this.bounds,this.tickSpacing),D=!0),D){for(j=0;j<3;++j)P[j].sort(function(ie,te){return ie.x-te.x});s.equal(P,this.ticks)?D=!1:this.ticks=P}z("tickEnable"),B("tickFont")&&(D=!0),O("tickSize"),O("tickAngle"),O("tickPad"),Y("tickColor");var Z=B("labels");B("labelFont")&&(Z=!0),z("labelEnable"),O("labelSize"),O("labelPad"),Y("labelColor"),z("lineEnable"),z("lineMirror"),O("lineWidth"),Y("lineColor"),z("lineTickEnable"),z("lineTickMirror"),O("lineTickLength"),O("lineTickWidth"),Y("lineTickColor"),z("gridEnable"),O("gridWidth"),Y("gridColor"),z("zeroEnable"),Y("zeroLineColor"),O("zeroLineWidth"),z("backgroundEnable"),Y("backgroundColor"),this._text?this._text&&(Z||D)&&this._text.update(this.bounds,this.labels,this.labelFont,this.ticks,this.tickFont):this._text=o(this.gl,this.bounds,this.labels,this.labelFont,this.ticks,this.tickFont),this._lines&&D&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=r(this.gl,this.bounds,this.ticks))};var f=[new g,new g,new g];function v(A,C,P,O,z){for(var B=A.primalOffset,Y=A.primalMinor,D=A.mirrorOffset,G=A.mirrorMinor,V=O[C],j=0;j<3;++j)if(C!==j){var W=B,Z=D,ie=Y,te=G;V&1<<j&&(W=D,Z=B,ie=G,te=Y),W[j]=P[0][j],Z[j]=P[1][j],z[j]>0?(ie[j]=-1,te[j]=0):(ie[j]=0,te[j]=1)}}var m=[0,0,0],x={model:u,view:u,projection:u,_ortho:!1};b.isOpaque=function(){return!0},b.isTransparent=function(){return!1},b.drawTransparent=function(A){};var T=[0,0,0],d=[0,0,0],M=[0,0,0];b.draw=function(A){A=A||x;for(var C=this.gl,P=A.model||u,O=A.view||u,z=A.projection||u,B=this.bounds,Y=A._ortho||!1,D=a(P,O,z,B,Y),G=D.cubeEdges,V=D.axis,j=O[12],W=O[13],Z=O[14],ie=O[15],te=(Y?2:1)*this.pixelRatio*(z[3]*j+z[7]*W+z[11]*Z+z[15]*ie)/C.drawingBufferHeight,J=0;J<3;++J)this.lastCubeProps.cubeEdges[J]=G[J],this.lastCubeProps.axis[J]=V[J];var X=f;for(J=0;J<3;++J)v(f[J],J,this.bounds,G,V);C=this.gl;var ee,re,oe,ue=m;for(J=0;J<3;++J)this.backgroundEnable[J]?ue[J]=V[J]:ue[J]=0;for(this._background.draw(P,O,z,B,ue,this.backgroundColor),this._lines.bind(P,O,z,this),J=0;J<3;++J){var ce=[0,0,0];V[J]>0?ce[J]=B[1][J]:ce[J]=B[0][J];for(var de=0;de<2;++de){var me=(J+1+de)%3,_e=(J+1+(1^de))%3;this.gridEnable[me]&&this._lines.drawGrid(me,_e,this.bounds,ce,this.gridColor[me],this.gridWidth[me]*this.pixelRatio)}for(de=0;de<2;++de)me=(J+1+de)%3,_e=(J+1+(1^de))%3,this.zeroEnable[_e]&&Math.min(B[0][_e],B[1][_e])<=0&&Math.max(B[0][_e],B[1][_e])>=0&&this._lines.drawZero(me,_e,this.bounds,ce,this.zeroLineColor[_e],this.zeroLineWidth[_e]*this.pixelRatio)}for(J=0;J<3;++J){this.lineEnable[J]&&this._lines.drawAxisLine(J,this.bounds,X[J].primalOffset,this.lineColor[J],this.lineWidth[J]*this.pixelRatio),this.lineMirror[J]&&this._lines.drawAxisLine(J,this.bounds,X[J].mirrorOffset,this.lineColor[J],this.lineWidth[J]*this.pixelRatio);var Se=p(T,X[J].primalMinor),we=p(d,X[J].mirrorMinor),xe=this.lineTickLength;for(de=0;de<3;++de){var De=te/P[5*de];Se[de]*=xe[de]*De,we[de]*=xe[de]*De}this.lineTickEnable[J]&&this._lines.drawAxisTicks(J,X[J].primalOffset,Se,this.lineTickColor[J],this.lineTickWidth[J]*this.pixelRatio),this.lineTickMirror[J]&&this._lines.drawAxisTicks(J,X[J].mirrorOffset,we,this.lineTickColor[J],this.lineTickWidth[J]*this.pixelRatio)}function Ee(Ie){(oe=[0,0,0])[Ie]=1}function Me(Ie,Te,Ne){var qe=(Ie+1)%3,ve=(Ie+2)%3,Ce=Te[qe],Ae=Te[ve],ze=Ne[qe],Ue=Ne[ve];Ce>0&&Ue>0||Ce>0&&Ue<0||Ce<0&&Ue>0||Ce<0&&Ue<0?Ee(qe):(Ae>0&&ze>0||Ae>0&&ze<0||Ae<0&&ze>0||Ae<0&&ze<0)&&Ee(ve)}for(this._lines.unbind(),this._text.bind(P,O,z,this.pixelRatio),J=0;J<3;++J){var he=X[J].primalMinor,fe=X[J].mirrorMinor,ae=p(M,X[J].primalOffset);for(de=0;de<3;++de)this.lineTickEnable[J]&&(ae[de]+=te*he[de]*Math.max(this.lineTickLength[de],0)/P[5*de]);var be=[0,0,0];if(be[J]=1,this.tickEnable[J]){for(this.tickAngle[J]===-3600?(this.tickAngle[J]=0,this.tickAlign[J]="auto"):this.tickAlign[J]=-1,re=1,(ee=[this.tickAlign[J],.5,re])[0]==="auto"?ee[0]=0:ee[0]=parseInt(""+ee[0]),oe=[0,0,0],Me(J,he,fe),de=0;de<3;++de)ae[de]+=te*he[de]*this.tickPad[de]/P[5*de];this._text.drawTicks(J,this.tickSize[J],this.tickAngle[J],ae,this.tickColor[J],be,oe,ee)}if(this.labelEnable[J]){for(re=0,oe=[0,0,0],this.labels[J].length>4&&(Ee(J),re=1),(ee=[this.labelAlign[J],.5,re])[0]==="auto"?ee[0]=0:ee[0]=parseInt(""+ee[0]),de=0;de<3;++de)ae[de]+=te*he[de]*this.labelPad[de]/P[5*de];ae[J]+=.5*(B[0][J]+B[1][J]),this._text.drawLabel(J,this.labelSize[J],this.labelAngle[J],ae,this.labelColor[J],[0,0,0],oe,ee)}}this._text.unbind()},b.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null}},1011:function(h,l,t){h.exports=function(u){for(var p=[],c=[],b=0,g=0;g<3;++g)for(var f=(g+1)%3,v=(g+2)%3,m=[0,0,0],x=[0,0,0],T=-1;T<=1;T+=2){c.push(b,b+2,b+1,b+1,b+2,b+3),m[g]=T,x[g]=T;for(var d=-1;d<=1;d+=2){m[f]=d;for(var M=-1;M<=1;M+=2)m[v]=M,p.push(m[0],m[1],m[2],x[0],x[1],x[2]),b+=1}var A=f;f=v,v=A}var C=o(u,new Float32Array(p)),P=o(u,new Uint16Array(c),u.ELEMENT_ARRAY_BUFFER),O=r(u,[{buffer:C,type:u.FLOAT,size:3,offset:0,stride:24},{buffer:C,type:u.FLOAT,size:3,offset:12,stride:24}],P),z=n(u);return z.attributes.position.location=0,z.attributes.normal.location=1,new a(u,C,O,z)};var o=t(5827),r=t(2944),n=t(1943).bg;function a(u,p,c,b){this.gl=u,this.buffer=p,this.vao=c,this.shader=b}var s=a.prototype;s.draw=function(u,p,c,b,g,f){for(var v=!1,m=0;m<3;++m)v=v||g[m];if(v){var x=this.gl;x.enable(x.POLYGON_OFFSET_FILL),x.polygonOffset(1,2),this.shader.bind(),this.shader.uniforms={model:u,view:p,projection:c,bounds:b,enable:g,colors:f},this.vao.bind(),this.vao.draw(this.gl.TRIANGLES,36),this.vao.unbind(),x.disable(x.POLYGON_OFFSET_FILL)}},s.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()}},2864:function(h,l,t){h.exports=function(d,M,A,C,P){r(s,M,d),r(s,A,s);for(var O=0,z=0;z<2;++z){c[2]=C[z][2];for(var B=0;B<2;++B){c[1]=C[B][1];for(var Y=0;Y<2;++Y)c[0]=C[Y][0],g(u[O],c,s),O+=1}}var D=-1;for(z=0;z<8;++z){for(var G=u[z][3],V=0;V<3;++V)p[z][V]=u[z][V]/G;P&&(p[z][2]*=-1),G<0&&(D<0||p[z][2]<p[D][2])&&(D=z)}if(D<0){D=0;for(var j=0;j<3;++j){for(var W=(j+2)%3,Z=(j+1)%3,ie=-1,te=-1,J=0;J<2;++J){var X=(re=J<<j)+(J<<W)+(1-J<<Z),ee=re+(1-J<<W)+(J<<Z);a(p[re],p[X],p[ee],b)<0||(J?ie=1:te=1)}if(ie<0||te<0)te>ie&&(D|=1<<j);else{for(J=0;J<2;++J){X=(re=J<<j)+(J<<W)+(1-J<<Z),ee=re+(1-J<<W)+(J<<Z);var re,oe=v([u[re],u[X],u[ee],u[re+(1<<W)+(1<<Z)]]);J?ie=oe:te=oe}te>ie&&(D|=1<<j)}}}var ue=7^D,ce=-1;for(z=0;z<8;++z)z!==D&&z!==ue&&(ce<0||p[ce][1]>p[z][1])&&(ce=z);var de=-1;for(z=0;z<3;++z)(_e=ce^1<<z)!==D&&_e!==ue&&(de<0&&(de=_e),(Z=p[_e])[0]<p[de][0]&&(de=_e));var me=-1;for(z=0;z<3;++z){var _e;(_e=ce^1<<z)!==D&&_e!==ue&&_e!==de&&(me<0&&(me=_e),(Z=p[_e])[0]>p[me][0]&&(me=_e))}var Se=m;Se[0]=Se[1]=Se[2]=0,Se[o.log2(de^ce)]=ce&de,Se[o.log2(ce^me)]=ce&me;var we=7^me;we===D||we===ue?(we=7^de,Se[o.log2(me^we)]=we&me):Se[o.log2(de^we)]=we&de;var xe=x,De=D;for(j=0;j<3;++j)xe[j]=De&1<<j?-1:1;return T};var o=t(2288),r=t(104),n=t(4670),a=t(417),s=new Array(16),u=new Array(8),p=new Array(8),c=new Array(3),b=[0,0,0];function g(d,M,A){for(var C=0;C<4;++C){d[C]=A[12+C];for(var P=0;P<3;++P)d[C]+=M[P]*A[4*P+C]}}(function(){for(var d=0;d<8;++d)u[d]=[1,1,1,1],p[d]=[1,1,1]})();var f=[[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 v(d){for(var M=0;M<f.length;++M)if((d=n.positive(d,f[M])).length<3)return 0;var A=d[0],C=A[0]/A[3],P=A[1]/A[3],O=0;for(M=1;M+1<d.length;++M){var z=d[M],B=d[M+1],Y=z[0]/z[3]-C,D=z[1]/z[3]-P,G=B[0]/B[3]-C,V=B[1]/B[3]-P;O+=Math.abs(Y*V-D*G)}return O}var m=[1,1,1],x=[0,0,0],T={cubeEdges:m,axis:x}},1681:function(h,l,t){h.exports=function(m,x,T){var d=[],M=[0,0,0],A=[0,0,0],C=[0,0,0],P=[0,0,0];d.push(0,0,1,0,1,1,0,0,-1,0,0,-1,0,1,1,0,1,-1);for(var O=0;O<3;++O){for(var z=d.length/3|0,B=0;B<T[O].length;++B){var Y=+T[O][B].x;d.push(Y,0,1,Y,1,1,Y,0,-1,Y,0,-1,Y,1,1,Y,1,-1)}var D=d.length/3|0;M[O]=z,A[O]=D-z,z=d.length/3|0;for(var G=0;G<T[O].length;++G)Y=+T[O][G].x,d.push(Y,0,1,Y,1,1,Y,0,-1,Y,0,-1,Y,1,1,Y,1,-1);D=d.length/3|0,C[O]=z,P[O]=D-z}var V=o(m,new Float32Array(d)),j=r(m,[{buffer:V,type:m.FLOAT,size:3,stride:0,offset:0}]),W=n(m);return W.attributes.position.location=0,new f(m,V,j,W,A,M,P,C)};var o=t(5827),r=t(2944),n=t(1943).j,a=[0,0,0],s=[0,0,0],u=[0,0,0],p=[0,0,0],c=[1,1];function b(m){return m[0]=m[1]=m[2]=0,m}function g(m,x){return m[0]=x[0],m[1]=x[1],m[2]=x[2],m}function f(m,x,T,d,M,A,C,P){this.gl=m,this.vertBuffer=x,this.vao=T,this.shader=d,this.tickCount=M,this.tickOffset=A,this.gridCount=C,this.gridOffset=P}var v=f.prototype;v.bind=function(m,x,T){this.shader.bind(),this.shader.uniforms.model=m,this.shader.uniforms.view=x,this.shader.uniforms.projection=T,c[0]=this.gl.drawingBufferWidth,c[1]=this.gl.drawingBufferHeight,this.shader.uniforms.screenShape=c,this.vao.bind()},v.unbind=function(){this.vao.unbind()},v.drawAxisLine=function(m,x,T,d,M){var A=b(s);this.shader.uniforms.majorAxis=s,A[m]=x[1][m]-x[0][m],this.shader.uniforms.minorAxis=A;var C,P=g(p,T);P[m]+=x[0][m],this.shader.uniforms.offset=P,this.shader.uniforms.lineWidth=M,this.shader.uniforms.color=d,(C=b(u))[(m+2)%3]=1,this.shader.uniforms.screenAxis=C,this.vao.draw(this.gl.TRIANGLES,6),(C=b(u))[(m+1)%3]=1,this.shader.uniforms.screenAxis=C,this.vao.draw(this.gl.TRIANGLES,6)},v.drawAxisTicks=function(m,x,T,d,M){if(this.tickCount[m]){var A=b(a);A[m]=1,this.shader.uniforms.majorAxis=A,this.shader.uniforms.offset=x,this.shader.uniforms.minorAxis=T,this.shader.uniforms.color=d,this.shader.uniforms.lineWidth=M;var C=b(u);C[m]=1,this.shader.uniforms.screenAxis=C,this.vao.draw(this.gl.TRIANGLES,this.tickCount[m],this.tickOffset[m])}},v.drawGrid=function(m,x,T,d,M,A){if(this.gridCount[m]){var C=b(s);C[x]=T[1][x]-T[0][x],this.shader.uniforms.minorAxis=C;var P=g(p,d);P[x]+=T[0][x],this.shader.uniforms.offset=P;var O=b(a);O[m]=1,this.shader.uniforms.majorAxis=O;var z=b(u);z[m]=1,this.shader.uniforms.screenAxis=z,this.shader.uniforms.lineWidth=A,this.shader.uniforms.color=M,this.vao.draw(this.gl.TRIANGLES,this.gridCount[m],this.gridOffset[m])}},v.drawZero=function(m,x,T,d,M,A){var C=b(s);this.shader.uniforms.majorAxis=C,C[m]=T[1][m]-T[0][m],this.shader.uniforms.minorAxis=C;var P=g(p,d);P[m]+=T[0][m],this.shader.uniforms.offset=P;var O=b(u);O[x]=1,this.shader.uniforms.screenAxis=O,this.shader.uniforms.lineWidth=A,this.shader.uniforms.color=M,this.vao.draw(this.gl.TRIANGLES,6)},v.dispose=function(){this.vao.dispose(),this.vertBuffer.dispose(),this.shader.dispose()}},1943:function(h,l,t){var o=t(6832),r=t(5158),n=o([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute vec3 position;
|
||
|
||
uniform mat4 model, view, projection;
|
||
uniform vec3 offset, majorAxis, minorAxis, screenAxis;
|
||
uniform float lineWidth;
|
||
uniform vec2 screenShape;
|
||
|
||
vec3 project(vec3 p) {
|
||
vec4 pp = projection * view * model * vec4(p, 1.0);
|
||
return pp.xyz / max(pp.w, 0.0001);
|
||
}
|
||
|
||
void main() {
|
||
vec3 major = position.x * majorAxis;
|
||
vec3 minor = position.y * minorAxis;
|
||
|
||
vec3 vPosition = major + minor + offset;
|
||
vec3 pPosition = project(vPosition);
|
||
vec3 offset = project(vPosition + screenAxis * position.z);
|
||
|
||
vec2 screen = normalize((offset - pPosition).xy * screenShape) / screenShape;
|
||
|
||
gl_Position = vec4(pPosition + vec3(0.5 * screen * lineWidth, 0), 1.0);
|
||
}
|
||
`]),a=o([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
uniform vec4 color;
|
||
void main() {
|
||
gl_FragColor = color;
|
||
}`]);l.j=function(b){return r(b,n,a,null,[{name:"position",type:"vec3"}])};var s=o([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute vec3 position;
|
||
|
||
uniform mat4 model, view, projection;
|
||
uniform vec3 offset, axis, alignDir, alignOpt;
|
||
uniform float scale, angle, pixelScale;
|
||
uniform vec2 resolution;
|
||
|
||
vec3 project(vec3 p) {
|
||
vec4 pp = projection * view * model * vec4(p, 1.0);
|
||
return pp.xyz / max(pp.w, 0.0001);
|
||
}
|
||
|
||
float computeViewAngle(vec3 a, vec3 b) {
|
||
vec3 A = project(a);
|
||
vec3 B = project(b);
|
||
|
||
return atan(
|
||
(B.y - A.y) * resolution.y,
|
||
(B.x - A.x) * resolution.x
|
||
);
|
||
}
|
||
|
||
const float PI = 3.141592;
|
||
const float TWO_PI = 2.0 * PI;
|
||
const float HALF_PI = 0.5 * PI;
|
||
const float ONE_AND_HALF_PI = 1.5 * PI;
|
||
|
||
int option = int(floor(alignOpt.x + 0.001));
|
||
float hv_ratio = alignOpt.y;
|
||
bool enableAlign = (alignOpt.z != 0.0);
|
||
|
||
float mod_angle(float a) {
|
||
return mod(a, PI);
|
||
}
|
||
|
||
float positive_angle(float a) {
|
||
return mod_angle((a < 0.0) ?
|
||
a + TWO_PI :
|
||
a
|
||
);
|
||
}
|
||
|
||
float look_upwards(float a) {
|
||
float b = positive_angle(a);
|
||
return ((b > 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);
|
||
}`]),u=o([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
uniform vec4 color;
|
||
void main() {
|
||
gl_FragColor = color;
|
||
}`]);l.f=function(b){return r(b,s,u,null,[{name:"position",type:"vec3"}])};var p=o([`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);
|
||
}`]),c=o([`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];
|
||
}`]);l.bg=function(b){return r(b,p,c,null,[{name:"position",type:"vec3"},{name:"normal",type:"vec3"}])}},9557:function(h,l,t){h.exports=function(g,f,v,m,x,T){var d=o(g),M=r(g,[{buffer:d,size:3}]),A=a(g);A.attributes.position.location=0;var C=new p(g,A,d,M);return C.update(f,v,m,x,T),C};var o=t(5827),r=t(2944),n=t(875),a=t(1943).f,s=window||k.global||{},u=s.__TEXT_CACHE||{};function p(g,f,v,m){this.gl=g,this.shader=f,this.buffer=v,this.vao=m,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}s.__TEXT_CACHE={};var c=p.prototype,b=[0,0];c.bind=function(g,f,v,m){this.vao.bind(),this.shader.bind();var x=this.shader.uniforms;x.model=g,x.view=f,x.projection=v,x.pixelScale=m,b[0]=this.gl.drawingBufferWidth,b[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=b},c.unbind=function(){this.vao.unbind()},c.update=function(g,f,v,m,x){var T=[];function d(Y,D,G,V,j,W){var Z=u[G];Z||(Z=u[G]={});var ie=Z[D];ie||(ie=Z[D]=function(de,me){try{return n(de,me)}catch(_e){return console.warn('error vectorizing text:"'+de+'" error:',_e),{cells:[],positions:[]}}}(D,{triangles:!0,font:G,textAlign:"center",textBaseline:"middle",lineSpacing:j,styletags:W}));for(var te=(V||12)/12,J=ie.positions,X=ie.cells,ee=0,re=X.length;ee<re;++ee)for(var oe=X[ee],ue=2;ue>=0;--ue){var ce=J[oe[ue]];T.push(te*ce[0],-te*ce[1],Y)}}for(var M=[0,0,0],A=[0,0,0],C=[0,0,0],P=[0,0,0],O={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},z=0;z<3;++z){C[z]=T.length/3|0,d(.5*(g[0][z]+g[1][z]),f[z],v[z],12,1.25,O),P[z]=(T.length/3|0)-C[z],M[z]=T.length/3|0;for(var B=0;B<m[z].length;++B)m[z][B].text&&d(m[z][B].x,m[z][B].text,m[z][B].font||x,m[z][B].fontSize||12,1.25,O);A[z]=(T.length/3|0)-M[z]}this.buffer.update(T),this.tickOffset=M,this.tickCount=A,this.labelOffset=C,this.labelCount=P},c.drawTicks=function(g,f,v,m,x,T,d,M){this.tickCount[g]&&(this.shader.uniforms.axis=T,this.shader.uniforms.color=x,this.shader.uniforms.angle=v,this.shader.uniforms.scale=f,this.shader.uniforms.offset=m,this.shader.uniforms.alignDir=d,this.shader.uniforms.alignOpt=M,this.vao.draw(this.gl.TRIANGLES,this.tickCount[g],this.tickOffset[g]))},c.drawLabel=function(g,f,v,m,x,T,d,M){this.labelCount[g]&&(this.shader.uniforms.axis=T,this.shader.uniforms.color=x,this.shader.uniforms.angle=v,this.shader.uniforms.scale=f,this.shader.uniforms.offset=m,this.shader.uniforms.alignDir=d,this.shader.uniforms.alignOpt=M,this.vao.draw(this.gl.TRIANGLES,this.labelCount[g],this.labelOffset[g]))},c.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()}},8468:function(h,l){function t(o,r){var n=o+"",a=n.indexOf("."),s=0;a>=0&&(s=n.length-a-1);var u=Math.pow(10,s),p=Math.round(o*r*u),c=p+"";if(c.indexOf("e")>=0)return c;var b=p/u,g=p%u;p<0?(b=0|-Math.ceil(b),g=0|-g):(b=0|Math.floor(b),g|=0);var f=""+b;if(p<0&&(f="-"+f),s){for(var v=""+g;v.length<s;)v="0"+v;return f+"."+v}return f}l.create=function(o,r){for(var n=[],a=0;a<3;++a){for(var s=[],u=(o[0][a],o[1][a],0);u*r[a]<=o[1][a];++u)s.push({x:u*r[a],text:t(r[a],u)});for(u=-1;u*r[a]>=o[0][a];--u)s.push({x:u*r[a],text:t(r[a],u)});n.push(s)}return n},l.equal=function(o,r){for(var n=0;n<3;++n){if(o[n].length!==r[n].length)return!1;for(var a=0;a<o[n].length;++a){var s=o[n][a],u=r[n][a];if(s.x!==u.x||s.text!==u.text||s.font!==u.font||s.fontColor!==u.fontColor||s.fontSize!==u.fontSize||s.dx!==u.dx||s.dy!==u.dy)return!1}}return!0}},2771:function(h,l,t){h.exports=function(T,d,M,A,C){var P=d.model||p,O=d.view||p,z=d.projection||p,B=d._ortho||!1,Y=T.bounds,D=(C=C||n(P,O,z,Y,B)).axis;a(c,O,P),a(c,z,c);for(var G=m,V=0;V<3;++V)G[V].lo=1/0,G[V].hi=-1/0,G[V].pixelsPerDataUnit=1/0;var j=o(s(c,c));s(c,c);for(var W=0;W<3;++W){var Z=(W+1)%3,ie=(W+2)%3,te=x;e:for(V=0;V<2;++V){var J=[];if(D[W]<0!=!!V){te[W]=Y[V][W];for(var X=0;X<2;++X){te[Z]=Y[X^V][Z];for(var ee=0;ee<2;++ee)te[ie]=Y[ee^X^V][ie],J.push(te.slice())}var re=B?5:4;for(X=re;X===re;++X){if(J.length===0)continue e;J=r.positive(J,j[X])}for(X=0;X<J.length;++X){ie=J[X];var oe=v(x,c,ie,M,A);for(ee=0;ee<3;++ee)G[ee].lo=Math.min(G[ee].lo,ie[ee]),G[ee].hi=Math.max(G[ee].hi,ie[ee]),ee!==W&&(G[ee].pixelsPerDataUnit=Math.min(G[ee].pixelsPerDataUnit,Math.abs(oe[ee])))}}}}return G};var o=t(5795),r=t(4670),n=t(2864),a=t(104),s=t(2142),u=t(6342),p=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),c=new Float32Array(16);function b(T,d,M){this.lo=T,this.hi=d,this.pixelsPerDataUnit=M}var g=[0,0,0,1],f=[0,0,0,1];function v(T,d,M,A,C){for(var P=0;P<3;++P){for(var O=g,z=f,B=0;B<3;++B)z[B]=O[B]=M[B];z[3]=O[3]=1,z[P]+=1,u(z,z,d),z[3]<0&&(T[P]=1/0),O[P]-=1,u(O,O,d),O[3]<0&&(T[P]=1/0);var Y=(O[0]/O[3]-z[0]/z[3])*A,D=(O[1]/O[3]-z[1]/z[3])*C;T[P]=.25*Math.sqrt(Y*Y+D*D)}return T}var m=[new b(1/0,-1/0,1/0),new b(1/0,-1/0,1/0),new b(1/0,-1/0,1/0)],x=[0,0,0]},5827:function(h,l,t){var o=t(5306),r=t(7498),n=t(5050),a=["uint8","uint8_clamped","uint16","uint32","int8","int16","int32","float32"];function s(b,g,f,v,m){this.gl=b,this.type=g,this.handle=f,this.length=v,this.usage=m}var u=s.prototype;function p(b,g,f,v,m,x){var T=m.length*m.BYTES_PER_ELEMENT;if(x<0)return b.bufferData(g,m,v),T;if(T+x>f)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return b.bufferSubData(g,x,m),f}function c(b,g){for(var f=o.malloc(b.length,g),v=b.length,m=0;m<v;++m)f[m]=b[m];return f}u.bind=function(){this.gl.bindBuffer(this.type,this.handle)},u.unbind=function(){this.gl.bindBuffer(this.type,null)},u.dispose=function(){this.gl.deleteBuffer(this.handle)},u.update=function(b,g){if(typeof g!="number"&&(g=-1),this.bind(),typeof b=="object"&&b.shape!==void 0){var f=b.dtype;if(a.indexOf(f)<0&&(f="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER&&(f=gl.getExtension("OES_element_index_uint")&&f!=="uint16"?"uint32":"uint16"),f===b.dtype&&function(T,d){for(var M=1,A=d.length-1;A>=0;--A){if(d[A]!==M)return!1;M*=T[A]}return!0}(b.shape,b.stride))b.offset===0&&b.data.length===b.shape[0]?this.length=p(this.gl,this.type,this.length,this.usage,b.data,g):this.length=p(this.gl,this.type,this.length,this.usage,b.data.subarray(b.offset,b.shape[0]),g);else{var v=o.malloc(b.size,f),m=n(v,b.shape);r.assign(m,b),this.length=p(this.gl,this.type,this.length,this.usage,g<0?v:v.subarray(0,b.size),g),o.free(v)}}else if(Array.isArray(b)){var x;x=this.type===this.gl.ELEMENT_ARRAY_BUFFER?c(b,"uint16"):c(b,"float32"),this.length=p(this.gl,this.type,this.length,this.usage,g<0?x:x.subarray(0,b.length),g),o.free(x)}else if(typeof b=="object"&&typeof b.length=="number")this.length=p(this.gl,this.type,this.length,this.usage,b,g);else{if(typeof b!="number"&&b!==void 0)throw new Error("gl-buffer: Invalid data type");if(g>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");(b|=0)<=0&&(b=1),this.gl.bufferData(this.type,0|b,this.usage),this.length=b}},h.exports=function(b,g,f,v){if(f=f||b.ARRAY_BUFFER,v=v||b.DYNAMIC_DRAW,f!==b.ARRAY_BUFFER&&f!==b.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(v!==b.DYNAMIC_DRAW&&v!==b.STATIC_DRAW&&v!==b.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 m=b.createBuffer(),x=new s(b,f,m,0,v);return x.update(g),x}},1140:function(h,l,t){var o=t(2858);h.exports=function(n,a){var s=n.positions,u=n.vectors,p={positions:[],vertexIntensity:[],vertexIntensityBounds:n.vertexIntensityBounds,vectors:[],cells:[],coneOffset:n.coneOffset,colormap:n.colormap};if(n.positions.length===0)return a&&(a[0]=[0,0,0],a[1]=[0,0,0]),p;for(var c=0,b=1/0,g=-1/0,f=1/0,v=-1/0,m=1/0,x=-1/0,T=null,d=null,M=[],A=1/0,C=!1,P=0;P<s.length;P++){var O=s[P];b=Math.min(O[0],b),g=Math.max(O[0],g),f=Math.min(O[1],f),v=Math.max(O[1],v),m=Math.min(O[2],m),x=Math.max(O[2],x);var z=u[P];if(o.length(z)>c&&(c=o.length(z)),P){var B=2*o.distance(T,O)/(o.length(d)+o.length(z));B?(A=Math.min(A,B),C=!1):C=!0}C||(T=O,d=z),M.push(z)}var Y=[b,f,m],D=[g,v,x];a&&(a[0]=Y,a[1]=D),c===0&&(c=1);var G=1/c;isFinite(A)||(A=1),p.vectorScale=A;var V=n.coneSize||.5;n.absoluteConeSize&&(V=n.absoluteConeSize*G),p.coneScale=V,P=0;for(var j=0;P<s.length;P++)for(var W=(O=s[P])[0],Z=O[1],ie=O[2],te=M[P],J=o.length(te)*G,X=0;X<8;X++){p.positions.push([W,Z,ie,j++]),p.positions.push([W,Z,ie,j++]),p.positions.push([W,Z,ie,j++]),p.positions.push([W,Z,ie,j++]),p.positions.push([W,Z,ie,j++]),p.positions.push([W,Z,ie,j++]),p.vectors.push(te),p.vectors.push(te),p.vectors.push(te),p.vectors.push(te),p.vectors.push(te),p.vectors.push(te),p.vertexIntensity.push(J,J,J),p.vertexIntensity.push(J,J,J);var ee=p.positions.length;p.cells.push([ee-6,ee-5,ee-4],[ee-3,ee-2,ee-1])}return p};var r=t(7234);h.exports.createMesh=t(5028),h.exports.createConeMesh=function(n,a){return h.exports.createMesh(n,a,{shaders:r,traceType:"cone"})}},5028:function(h,l,t){var o=t(5158),r=t(5827),n=t(2944),a=t(8931),s=t(104),u=t(7437),p=t(5050),c=t(9156),b=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function g(v,m,x,T,d,M,A,C,P,O,z){this.gl=v,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=m,this.dirty=!0,this.triShader=x,this.pickShader=T,this.trianglePositions=d,this.triangleVectors=M,this.triangleColors=C,this.triangleUVs=P,this.triangleIds=A,this.triangleVAO=O,this.triangleCount=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.traceType=z,this.tubeScale=1,this.coneScale=2,this.vectorScale=1,this.coneOffset=.25,this._model=b,this._view=b,this._projection=b,this._resolution=[1,1]}var f=g.prototype;f.isOpaque=function(){return this.opacity>=1},f.isTransparent=function(){return this.opacity<1},f.pickSlots=1,f.setPickBase=function(v){this.pickId=v},f.update=function(v){v=v||{};var m=this.gl;this.dirty=!0,"lightPosition"in v&&(this.lightPosition=v.lightPosition),"opacity"in v&&(this.opacity=v.opacity),"ambient"in v&&(this.ambientLight=v.ambient),"diffuse"in v&&(this.diffuseLight=v.diffuse),"specular"in v&&(this.specularLight=v.specular),"roughness"in v&&(this.roughness=v.roughness),"fresnel"in v&&(this.fresnel=v.fresnel),v.tubeScale!==void 0&&(this.tubeScale=v.tubeScale),v.vectorScale!==void 0&&(this.vectorScale=v.vectorScale),v.coneScale!==void 0&&(this.coneScale=v.coneScale),v.coneOffset!==void 0&&(this.coneOffset=v.coneOffset),v.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=m.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=m.LINEAR,this.texture.setPixels(function(oe){for(var ue=c({colormap:oe,nshades:256,format:"rgba"}),ce=new Uint8Array(1024),de=0;de<256;++de){for(var me=ue[de],_e=0;_e<3;++_e)ce[4*de+_e]=me[_e];ce[4*de+3]=255*me[3]}return p(ce,[256,256,4],[4,0,1])}(v.colormap)),this.texture.generateMipmap());var x=v.cells,T=v.positions,d=v.vectors;if(T&&x&&d){var M=[],A=[],C=[],P=[],O=[];this.cells=x,this.positions=T,this.vectors=d;var z=v.meshColor||[1,1,1,1],B=v.vertexIntensity,Y=1/0,D=-1/0;if(B)if(v.vertexIntensityBounds)Y=+v.vertexIntensityBounds[0],D=+v.vertexIntensityBounds[1];else for(var G=0;G<B.length;++G){var V=B[G];Y=Math.min(Y,V),D=Math.max(D,V)}else for(G=0;G<T.length;++G)V=T[G][2],Y=Math.min(Y,V),D=Math.max(D,V);for(this.intensity=B||function(oe){for(var ue=oe.length,ce=new Array(ue),de=0;de<ue;++de)ce[de]=oe[de][2];return ce}(T),this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],G=0;G<T.length;++G)for(var j=T[G],W=0;W<3;++W)!isNaN(j[W])&&isFinite(j[W])&&(this.bounds[0][W]=Math.min(this.bounds[0][W],j[W]),this.bounds[1][W]=Math.max(this.bounds[1][W],j[W]));var Z=0;e:for(G=0;G<x.length;++G){var ie=x[G];if(ie.length===3){for(W=0;W<3;++W){j=T[J=ie[W]];for(var te=0;te<3;++te)if(isNaN(j[te])||!isFinite(j[te]))continue e}for(W=0;W<3;++W){var J;j=T[J=ie[2-W]],M.push(j[0],j[1],j[2],j[3]);var X=d[J];A.push(X[0],X[1],X[2],X[3]||0);var ee,re=z;re.length===3?C.push(re[0],re[1],re[2],1):C.push(re[0],re[1],re[2],re[3]),ee=B?[(B[J]-Y)/(D-Y),0]:[(j[2]-Y)/(D-Y),0],P.push(ee[0],ee[1]),O.push(G)}Z+=1}}this.triangleCount=Z,this.trianglePositions.update(M),this.triangleVectors.update(A),this.triangleColors.update(C),this.triangleUVs.update(P),this.triangleIds.update(new Uint32Array(O))}},f.drawTransparent=f.draw=function(v){v=v||{};for(var m=this.gl,x=v.model||b,T=v.view||b,d=v.projection||b,M=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],A=0;A<3;++A)M[0][A]=Math.max(M[0][A],this.clipBounds[0][A]),M[1][A]=Math.min(M[1][A],this.clipBounds[1][A]);var C={model:x,view:T,projection:d,inverseModel:b.slice(),clipBounds:M,kambient:this.ambientLight,kdiffuse:this.diffuseLight,kspecular:this.specularLight,roughness:this.roughness,fresnel:this.fresnel,eyePosition:[0,0,0],lightPosition:[0,0,0],opacity:this.opacity,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,texture:0};C.inverseModel=u(C.inverseModel,C.model),m.disable(m.CULL_FACE),this.texture.bind(0);var P=new Array(16);for(s(P,C.view,C.model),s(P,C.projection,P),u(P,P),A=0;A<3;++A)C.eyePosition[A]=P[12+A]/P[15];var O=P[15];for(A=0;A<3;++A)O+=this.lightPosition[A]*P[4*A+3];for(A=0;A<3;++A){for(var z=P[12+A],B=0;B<3;++B)z+=P[4*B+A]*this.lightPosition[B];C.lightPosition[A]=z/O}if(this.triangleCount>0){var Y=this.triShader;Y.bind(),Y.uniforms=C,this.triangleVAO.bind(),m.drawArrays(m.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()}},f.drawPick=function(v){v=v||{};for(var m=this.gl,x=v.model||b,T=v.view||b,d=v.projection||b,M=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],A=0;A<3;++A)M[0][A]=Math.max(M[0][A],this.clipBounds[0][A]),M[1][A]=Math.min(M[1][A],this.clipBounds[1][A]);this._model=[].slice.call(x),this._view=[].slice.call(T),this._projection=[].slice.call(d),this._resolution=[m.drawingBufferWidth,m.drawingBufferHeight];var C={model:x,view:T,projection:d,clipBounds:M,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},P=this.pickShader;P.bind(),P.uniforms=C,this.triangleCount>0&&(this.triangleVAO.bind(),m.drawArrays(m.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind())},f.pick=function(v){if(!v||v.id!==this.pickId)return null;var m=v.value[0]+256*v.value[1]+65536*v.value[2],x=this.cells[m],T=this.positions[x[1]].slice(0,3),d={position:T,dataCoordinate:T,index:Math.floor(x[1]/48)};return this.traceType==="cone"?d.index=Math.floor(x[1]/48):this.traceType==="streamtube"&&(d.intensity=this.intensity[x[1]],d.velocity=this.vectors[x[1]].slice(0,3),d.divergence=this.vectors[x[1]][3],d.index=m),d},f.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()},h.exports=function(v,m,x){var T=x.shaders;arguments.length===1&&(v=(m=v).gl);var d=function(D,G){var V=o(D,G.meshShader.vertex,G.meshShader.fragment,null,G.meshShader.attributes);return V.attributes.position.location=0,V.attributes.color.location=2,V.attributes.uv.location=3,V.attributes.vector.location=4,V}(v,T),M=function(D,G){var V=o(D,G.pickShader.vertex,G.pickShader.fragment,null,G.pickShader.attributes);return V.attributes.position.location=0,V.attributes.id.location=1,V.attributes.vector.location=4,V}(v,T),A=a(v,p(new Uint8Array([255,255,255,255]),[1,1,4]));A.generateMipmap(),A.minFilter=v.LINEAR_MIPMAP_LINEAR,A.magFilter=v.LINEAR;var C=r(v),P=r(v),O=r(v),z=r(v),B=r(v),Y=new g(v,A,d,M,C,P,B,O,z,n(v,[{buffer:C,type:v.FLOAT,size:4},{buffer:B,type:v.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:O,type:v.FLOAT,size:4},{buffer:z,type:v.FLOAT,size:2},{buffer:P,type:v.FLOAT,size:4}]),x.traceType||"cone");return Y.update(m),Y}},7234:function(h,l,t){var o=t(6832),r=o([`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;
|
||
}
|
||
`]),n=o([`#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;
|
||
}
|
||
`]),a=o([`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;
|
||
}
|
||
`]),s=o([`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);
|
||
}`]);l.meshShader={vertex:r,fragment:n,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec3"}]},l.pickShader={vertex:a,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec3"}]}},1950:function(h){h.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"}},6603:function(h,l,t){var o=t(1950);h.exports=function(r){return o[r]}},3110:function(h,l,t){h.exports=function(g){var f=g.gl,v=o(f),m=r(f,[{buffer:v,type:f.FLOAT,size:3,offset:0,stride:40},{buffer:v,type:f.FLOAT,size:4,offset:12,stride:40},{buffer:v,type:f.FLOAT,size:3,offset:28,stride:40}]),x=n(f);x.attributes.position.location=0,x.attributes.color.location=1,x.attributes.offset.location=2;var T=new s(f,v,m,x);return T.update(g),T};var o=t(5827),r=t(2944),n=t(7667),a=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(g,f,v,m){this.gl=g,this.shader=m,this.buffer=f,this.vao=v,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 u=s.prototype;function p(g,f){for(var v=0;v<3;++v)g[0][v]=Math.min(g[0][v],f[v]),g[1][v]=Math.max(g[1][v],f[v])}u.isOpaque=function(){return!this.hasAlpha},u.isTransparent=function(){return this.hasAlpha},u.drawTransparent=u.draw=function(g){var f=this.gl,v=this.shader.uniforms;this.shader.bind();var m=v.view=g.view||a,x=v.projection=g.projection||a;v.model=g.model||a,v.clipBounds=this.clipBounds,v.opacity=this.opacity;var T=m[12],d=m[13],M=m[14],A=m[15],C=(g._ortho?2:1)*this.pixelRatio*(x[3]*T+x[7]*d+x[11]*M+x[15]*A)/f.drawingBufferHeight;this.vao.bind();for(var P=0;P<3;++P)f.lineWidth(this.lineWidth[P]*this.pixelRatio),v.capSize=this.capSize[P]*C,this.lineCount[P]&&f.drawArrays(f.LINES,this.lineOffset[P],this.lineCount[P]);this.vao.unbind()};var c=function(){for(var g=new Array(3),f=0;f<3;++f){for(var v=[],m=1;m<=2;++m)for(var x=-1;x<=1;x+=2){var T=[0,0,0];T[(m+f)%3]=x,v.push(T)}g[f]=v}return g}();function b(g,f,v,m){for(var x=c[m],T=0;T<x.length;++T){var d=x[T];g.push(f[0],f[1],f[2],v[0],v[1],v[2],v[3],d[0],d[1],d[2])}return x.length}u.update=function(g){"lineWidth"in(g=g||{})&&(this.lineWidth=g.lineWidth,Array.isArray(this.lineWidth)||(this.lineWidth=[this.lineWidth,this.lineWidth,this.lineWidth])),"capSize"in g&&(this.capSize=g.capSize,Array.isArray(this.capSize)||(this.capSize=[this.capSize,this.capSize,this.capSize])),this.hasAlpha=!1,"opacity"in g&&(this.opacity=+g.opacity,this.opacity<1&&(this.hasAlpha=!0));var f=g.color||[[0,0,0],[0,0,0],[0,0,0]],v=g.position,m=g.error;if(Array.isArray(f[0])||(f=[f,f,f]),v&&m){var x=[],T=v.length,d=0;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.lineCount=[0,0,0];for(var M=0;M<3;++M){this.lineOffset[M]=d;e:for(var A=0;A<T;++A){for(var C=v[A],P=0;P<3;++P)if(isNaN(C[P])||!isFinite(C[P]))continue e;var O,z=m[A],B=f[M];Array.isArray(B[0])&&(B=f[A]),B.length===3?B=[B[0],B[1],B[2],1]:B.length===4&&(B=[B[0],B[1],B[2],B[3]],!this.hasAlpha&&B[3]<1&&(this.hasAlpha=!0)),isNaN(z[0][M])||isNaN(z[1][M])||(z[0][M]<0&&((O=C.slice())[M]+=z[0][M],x.push(C[0],C[1],C[2],B[0],B[1],B[2],B[3],0,0,0,O[0],O[1],O[2],B[0],B[1],B[2],B[3],0,0,0),p(this.bounds,O),d+=2+b(x,O,B,M)),z[1][M]>0&&((O=C.slice())[M]+=z[1][M],x.push(C[0],C[1],C[2],B[0],B[1],B[2],B[3],0,0,0,O[0],O[1],O[2],B[0],B[1],B[2],B[3],0,0,0),p(this.bounds,O),d+=2+b(x,O,B,M)))}this.lineCount[M]=d-this.lineOffset[M]}this.buffer.update(x)}},u.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()}},7667:function(h,l,t){var o=t(6832),r=t(5158),n=o([`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;
|
||
}`]),a=o([`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;
|
||
}`]);h.exports=function(s){return r(s,n,a,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},4234:function(h,l,t){var o=t(8931);h.exports=function(T,d,M,A){r||(r=T.FRAMEBUFFER_UNSUPPORTED,n=T.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,a=T.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,s=T.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var C=T.getExtension("WEBGL_draw_buffers");if(!u&&C&&function(G,V){var j=G.getParameter(V.MAX_COLOR_ATTACHMENTS_WEBGL);u=new Array(j+1);for(var W=0;W<=j;++W){for(var Z=new Array(j),ie=0;ie<W;++ie)Z[ie]=G.COLOR_ATTACHMENT0+ie;for(ie=W;ie<j;++ie)Z[ie]=G.NONE;u[W]=Z}}(T,C),Array.isArray(d)&&(A=M,M=0|d[1],d=0|d[0]),typeof d!="number")throw new Error("gl-fbo: Missing shape parameter");var P=T.getParameter(T.MAX_RENDERBUFFER_SIZE);if(d<0||d>P||M<0||M>P)throw new Error("gl-fbo: Parameters are too large for FBO");var O=1;if("color"in(A=A||{})){if((O=Math.max(0|A.color,0))<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(O>1){if(!C)throw new Error("gl-fbo: Multiple draw buffer extension not supported");if(O>T.getParameter(C.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+O+" draw buffers")}}var z=T.UNSIGNED_BYTE,B=T.getExtension("OES_texture_float");if(A.float&&O>0){if(!B)throw new Error("gl-fbo: Context does not support floating point textures");z=T.FLOAT}else A.preferFloat&&O>0&&B&&(z=T.FLOAT);var Y=!0;"depth"in A&&(Y=!!A.depth);var D=!1;return"stencil"in A&&(D=!!A.stencil),new v(T,d,M,z,O,Y,D,C)};var r,n,a,s,u=null;function p(T){return[T.getParameter(T.FRAMEBUFFER_BINDING),T.getParameter(T.RENDERBUFFER_BINDING),T.getParameter(T.TEXTURE_BINDING_2D)]}function c(T,d){T.bindFramebuffer(T.FRAMEBUFFER,d[0]),T.bindRenderbuffer(T.RENDERBUFFER,d[1]),T.bindTexture(T.TEXTURE_2D,d[2])}function b(T){switch(T){case r:throw new Error("gl-fbo: Framebuffer unsupported");case n:throw new Error("gl-fbo: Framebuffer incomplete attachment");case a:throw new Error("gl-fbo: Framebuffer incomplete dimensions");case s:throw new Error("gl-fbo: Framebuffer incomplete missing attachment");default:throw new Error("gl-fbo: Framebuffer failed for unspecified reason")}}function g(T,d,M,A,C,P){if(!A)return null;var O=o(T,d,M,C,A);return O.magFilter=T.NEAREST,O.minFilter=T.NEAREST,O.mipSamples=1,O.bind(),T.framebufferTexture2D(T.FRAMEBUFFER,P,T.TEXTURE_2D,O.handle,0),O}function f(T,d,M,A,C){var P=T.createRenderbuffer();return T.bindRenderbuffer(T.RENDERBUFFER,P),T.renderbufferStorage(T.RENDERBUFFER,A,d,M),T.framebufferRenderbuffer(T.FRAMEBUFFER,C,T.RENDERBUFFER,P),P}function v(T,d,M,A,C,P,O,z){this.gl=T,this._shape=[0|d,0|M],this._destroyed=!1,this._ext=z,this.color=new Array(C);for(var B=0;B<C;++B)this.color[B]=null;this._color_rb=null,this.depth=null,this._depth_rb=null,this._colorType=A,this._useDepth=P,this._useStencil=O;var Y=this,D=[0|d,0|M];Object.defineProperties(D,{0:{get:function(){return Y._shape[0]},set:function(G){return Y.width=G}},1:{get:function(){return Y._shape[1]},set:function(G){return Y.height=G}}}),this._shapeVector=D,function(G){var V=p(G.gl),j=G.gl,W=G.handle=j.createFramebuffer(),Z=G._shape[0],ie=G._shape[1],te=G.color.length,J=G._ext,X=G._useStencil,ee=G._useDepth,re=G._colorType;j.bindFramebuffer(j.FRAMEBUFFER,W);for(var oe=0;oe<te;++oe)G.color[oe]=g(j,Z,ie,re,j.RGBA,j.COLOR_ATTACHMENT0+oe);te===0?(G._color_rb=f(j,Z,ie,j.RGBA4,j.COLOR_ATTACHMENT0),J&&J.drawBuffersWEBGL(u[0])):te>1&&J.drawBuffersWEBGL(u[te]);var ue=j.getExtension("WEBGL_depth_texture");ue?X?G.depth=g(j,Z,ie,ue.UNSIGNED_INT_24_8_WEBGL,j.DEPTH_STENCIL,j.DEPTH_STENCIL_ATTACHMENT):ee&&(G.depth=g(j,Z,ie,j.UNSIGNED_SHORT,j.DEPTH_COMPONENT,j.DEPTH_ATTACHMENT)):ee&&X?G._depth_rb=f(j,Z,ie,j.DEPTH_STENCIL,j.DEPTH_STENCIL_ATTACHMENT):ee?G._depth_rb=f(j,Z,ie,j.DEPTH_COMPONENT16,j.DEPTH_ATTACHMENT):X&&(G._depth_rb=f(j,Z,ie,j.STENCIL_INDEX,j.STENCIL_ATTACHMENT));var ce=j.checkFramebufferStatus(j.FRAMEBUFFER);if(ce!==j.FRAMEBUFFER_COMPLETE){for(G._destroyed=!0,j.bindFramebuffer(j.FRAMEBUFFER,null),j.deleteFramebuffer(G.handle),G.handle=null,G.depth&&(G.depth.dispose(),G.depth=null),G._depth_rb&&(j.deleteRenderbuffer(G._depth_rb),G._depth_rb=null),oe=0;oe<G.color.length;++oe)G.color[oe].dispose(),G.color[oe]=null;G._color_rb&&(j.deleteRenderbuffer(G._color_rb),G._color_rb=null),c(j,V),b(ce)}c(j,V)}(this)}var m=v.prototype;function x(T,d,M){if(T._destroyed)throw new Error("gl-fbo: Can't resize destroyed FBO");if(T._shape[0]!==d||T._shape[1]!==M){var A=T.gl,C=A.getParameter(A.MAX_RENDERBUFFER_SIZE);if(d<0||d>C||M<0||M>C)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");T._shape[0]=d,T._shape[1]=M;for(var P=p(A),O=0;O<T.color.length;++O)T.color[O].shape=T._shape;T._color_rb&&(A.bindRenderbuffer(A.RENDERBUFFER,T._color_rb),A.renderbufferStorage(A.RENDERBUFFER,A.RGBA4,T._shape[0],T._shape[1])),T.depth&&(T.depth.shape=T._shape),T._depth_rb&&(A.bindRenderbuffer(A.RENDERBUFFER,T._depth_rb),T._useDepth&&T._useStencil?A.renderbufferStorage(A.RENDERBUFFER,A.DEPTH_STENCIL,T._shape[0],T._shape[1]):T._useDepth?A.renderbufferStorage(A.RENDERBUFFER,A.DEPTH_COMPONENT16,T._shape[0],T._shape[1]):T._useStencil&&A.renderbufferStorage(A.RENDERBUFFER,A.STENCIL_INDEX,T._shape[0],T._shape[1])),A.bindFramebuffer(A.FRAMEBUFFER,T.handle);var z=A.checkFramebufferStatus(A.FRAMEBUFFER);z!==A.FRAMEBUFFER_COMPLETE&&(T.dispose(),c(A,P),b(z)),c(A,P)}}Object.defineProperties(m,{shape:{get:function(){return this._destroyed?[0,0]:this._shapeVector},set:function(T){if(Array.isArray(T)||(T=[0|T,0|T]),T.length!==2)throw new Error("gl-fbo: Shape vector must be length 2");var d=0|T[0],M=0|T[1];return x(this,d,M),[d,M]},enumerable:!1},width:{get:function(){return this._destroyed?0:this._shape[0]},set:function(T){return x(this,T|=0,this._shape[1]),T},enumerable:!1},height:{get:function(){return this._destroyed?0:this._shape[1]},set:function(T){return T|=0,x(this,this._shape[0],T),T},enumerable:!1}}),m.bind=function(){if(!this._destroyed){var T=this.gl;T.bindFramebuffer(T.FRAMEBUFFER,this.handle),T.viewport(0,0,this._shape[0],this._shape[1])}},m.dispose=function(){if(!this._destroyed){this._destroyed=!0;var T=this.gl;T.deleteFramebuffer(this.handle),this.handle=null,this.depth&&(this.depth.dispose(),this.depth=null),this._depth_rb&&(T.deleteRenderbuffer(this._depth_rb),this._depth_rb=null);for(var d=0;d<this.color.length;++d)this.color[d].dispose(),this.color[d]=null;this._color_rb&&(T.deleteRenderbuffer(this._color_rb),this._color_rb=null)}}},3530:function(h,l,t){var o=t(8974).sprintf,r=t(6603),n=t(9365),a=t(8008);h.exports=function(s,u,p){var c=n(u)||"of unknown name (see npm glsl-shader-name)",b="unknown type";p!==void 0&&(b=p===r.FRAGMENT_SHADER?"fragment":"vertex");for(var g=o(`Error compiling %s shader %s:
|
||
`,b,c),f=o("%s%s",g,s),v=s.split(`
|
||
`),m={},x=0;x<v.length;x++){var T=v[x];if(T!==""&&T!=="\0"){var d=parseInt(T.split(":")[2]);if(isNaN(d))throw new Error(o("Could not parse error: %s",T));m[d]=T}}var M=a(u).split(`
|
||
`);for(x=0;x<M.length;x++)if((m[x+3]||m[x+2]||m[x+1])&&(g+=M[x]+`
|
||
`,m[x+1])){var A=m[x+1];A=A.substr(A.split(":",3).join(":").length+1).trim(),g+=o(`^^^ %s
|
||
|
||
`,A)}return{long:g.trim(),short:f.trim()}}},6386:function(h,l,t){h.exports=function(f,v){var m=f.gl,x=new p(f,a(m,u.vertex,u.fragment),a(m,u.pickVertex,u.pickFragment),s(m),s(m),s(m),s(m));return x.update(v),f.addObject(x),x};var o=t(5070),r=t(9560),n=t(5306),a=t(5158),s=t(5827),u=t(1292);function p(f,v,m,x,T,d,M){this.plot=f,this.shader=v,this.pickShader=m,this.positionBuffer=x,this.weightBuffer=T,this.colorBuffer=d,this.idBuffer=M,this.xData=[],this.yData=[],this.shape=[0,0],this.bounds=[1/0,1/0,-1/0,-1/0],this.pickOffset=0}var c,b=p.prototype,g=[0,0,1,0,0,1,1,0,1,1,0,1];b.draw=(c=[1,0,0,0,1,0,0,0,1],function(){var f=this.plot,v=this.shader,m=this.bounds,x=this.numVertices;if(!(x<=0)){var T=f.gl,d=f.dataBox,M=m[2]-m[0],A=m[3]-m[1],C=d[2]-d[0],P=d[3]-d[1];c[0]=2*M/C,c[4]=2*A/P,c[6]=2*(m[0]-d[0])/C-1,c[7]=2*(m[1]-d[1])/P-1,v.bind();var O=v.uniforms;O.viewTransform=c,O.shape=this.shape;var z=v.attributes;this.positionBuffer.bind(),z.position.pointer(),this.weightBuffer.bind(),z.weight.pointer(T.UNSIGNED_BYTE,!1),this.colorBuffer.bind(),z.color.pointer(T.UNSIGNED_BYTE,!0),T.drawArrays(T.TRIANGLES,0,x)}}),b.drawPick=function(){var f=[1,0,0,0,1,0,0,0,1],v=[0,0,0,0];return function(m){var x=this.plot,T=this.pickShader,d=this.bounds,M=this.numVertices;if(!(M<=0)){var A=x.gl,C=x.dataBox,P=d[2]-d[0],O=d[3]-d[1],z=C[2]-C[0],B=C[3]-C[1];f[0]=2*P/z,f[4]=2*O/B,f[6]=2*(d[0]-C[0])/z-1,f[7]=2*(d[1]-C[1])/B-1;for(var Y=0;Y<4;++Y)v[Y]=m>>8*Y&255;this.pickOffset=m,T.bind();var D=T.uniforms;D.viewTransform=f,D.pickOffset=v,D.shape=this.shape;var G=T.attributes;return this.positionBuffer.bind(),G.position.pointer(),this.weightBuffer.bind(),G.weight.pointer(A.UNSIGNED_BYTE,!1),this.idBuffer.bind(),G.pickId.pointer(A.UNSIGNED_BYTE,!1),A.drawArrays(A.TRIANGLES,0,M),m+this.shape[0]*this.shape[1]}}}(),b.pick=function(f,v,m){var x=this.pickOffset,T=this.shape[0]*this.shape[1];if(m<x||m>=x+T)return null;var d=m-x,M=this.xData,A=this.yData;return{object:this,pointId:d,dataCoord:[M[d%this.shape[0]],A[d/this.shape[0]|0]]}},b.update=function(f){var v=(f=f||{}).shape||[0,0],m=f.x||r(v[0]),x=f.y||r(v[1]),T=f.z||new Float32Array(v[0]*v[1]),d=f.zsmooth!==!1;this.xData=m,this.yData=x;var M,A,C,P,O=f.colorLevels||[0],z=f.colorValues||[0,0,0,1],B=O.length,Y=this.bounds;d?(M=Y[0]=m[0],A=Y[1]=x[0],C=Y[2]=m[m.length-1],P=Y[3]=x[x.length-1]):(M=Y[0]=m[0]+(m[1]-m[0])/2,A=Y[1]=x[0]+(x[1]-x[0])/2,C=Y[2]=m[m.length-1]+(m[m.length-1]-m[m.length-2])/2,P=Y[3]=x[x.length-1]+(x[x.length-1]-x[x.length-2])/2);var D=1/(C-M),G=1/(P-A),V=v[0],j=v[1];this.shape=[V,j];var W=(d?(V-1)*(j-1):V*j)*(g.length>>>1);this.numVertices=W;for(var Z=n.mallocUint8(4*W),ie=n.mallocFloat32(2*W),te=n.mallocUint8(2*W),J=n.mallocUint32(W),X=0,ee=d?V-1:V,re=d?j-1:j,oe=0;oe<re;++oe){var ue,ce;d?(ue=G*(x[oe]-A),ce=G*(x[oe+1]-A)):(ue=oe<j-1?G*(x[oe]-(x[oe+1]-x[oe])/2-A):G*(x[oe]-(x[oe]-x[oe-1])/2-A),ce=oe<j-1?G*(x[oe]+(x[oe+1]-x[oe])/2-A):G*(x[oe]+(x[oe]-x[oe-1])/2-A));for(var de=0;de<ee;++de){var me,_e;d?(me=D*(m[de]-M),_e=D*(m[de+1]-M)):(me=de<V-1?D*(m[de]-(m[de+1]-m[de])/2-M):D*(m[de]-(m[de]-m[de-1])/2-M),_e=de<V-1?D*(m[de]+(m[de+1]-m[de])/2-M):D*(m[de]+(m[de]-m[de-1])/2-M));for(var Se=0;Se<g.length;Se+=2){var we,xe,De,Ee,Me=g[Se],he=g[Se+1],fe=T[d?(oe+he)*V+(de+Me):oe*V+de],ae=o.le(O,fe);if(ae<0)we=z[0],xe=z[1],De=z[2],Ee=z[3];else if(ae===B-1)we=z[4*B-4],xe=z[4*B-3],De=z[4*B-2],Ee=z[4*B-1];else{var be=(fe-O[ae])/(O[ae+1]-O[ae]),Ie=1-be,Te=4*ae,Ne=4*(ae+1);we=Ie*z[Te]+be*z[Ne],xe=Ie*z[Te+1]+be*z[Ne+1],De=Ie*z[Te+2]+be*z[Ne+2],Ee=Ie*z[Te+3]+be*z[Ne+3]}Z[4*X]=255*we,Z[4*X+1]=255*xe,Z[4*X+2]=255*De,Z[4*X+3]=255*Ee,ie[2*X]=.5*me+.5*_e,ie[2*X+1]=.5*ue+.5*ce,te[2*X]=Me,te[2*X+1]=he,J[X]=oe*V+de,X+=1}}}this.positionBuffer.update(ie),this.weightBuffer.update(te),this.colorBuffer.update(Z),this.idBuffer.update(J),n.free(ie),n.free(Z),n.free(te),n.free(J)},b.dispose=function(){this.shader.dispose(),this.pickShader.dispose(),this.positionBuffer.dispose(),this.weightBuffer.dispose(),this.colorBuffer.dispose(),this.idBuffer.dispose(),this.plot.removeObject(this)}},1292:function(h,l,t){var o=t(6832);h.exports={fragment:o([`precision lowp float;
|
||
#define GLSLIFY 1
|
||
varying vec4 fragColor;
|
||
void main() {
|
||
gl_FragColor = vec4(fragColor.rgb * fragColor.a, fragColor.a);
|
||
}
|
||
`]),vertex:o([`precision mediump float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute vec2 position;
|
||
attribute vec4 color;
|
||
attribute vec2 weight;
|
||
|
||
uniform vec2 shape;
|
||
uniform mat3 viewTransform;
|
||
|
||
varying vec4 fragColor;
|
||
|
||
void main() {
|
||
vec3 vPosition = viewTransform * vec3( position + (weight-.5)/(shape-1.) , 1.0);
|
||
fragColor = color;
|
||
gl_Position = vec4(vPosition.xy, 0, vPosition.z);
|
||
}
|
||
`]),pickFragment:o([`precision mediump float;
|
||
#define GLSLIFY 1
|
||
|
||
varying vec4 fragId;
|
||
varying vec2 vWeight;
|
||
|
||
uniform vec2 shape;
|
||
uniform vec4 pickOffset;
|
||
|
||
void main() {
|
||
vec2 d = step(.5, vWeight);
|
||
vec4 id = fragId + pickOffset;
|
||
id.x += d.x + d.y*shape.x;
|
||
|
||
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;
|
||
|
||
gl_FragColor = id/255.;
|
||
}
|
||
`]),pickVertex:o([`precision mediump float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute vec2 position;
|
||
attribute vec4 pickId;
|
||
attribute vec2 weight;
|
||
|
||
uniform vec2 shape;
|
||
uniform mat3 viewTransform;
|
||
|
||
varying vec4 fragId;
|
||
varying vec2 vWeight;
|
||
|
||
void main() {
|
||
vWeight = weight;
|
||
|
||
fragId = pickId;
|
||
|
||
vec3 vPosition = viewTransform * vec3( position + (weight-.5)/(shape-1.) , 1.0);
|
||
gl_Position = vec4(vPosition.xy, 0, vPosition.z);
|
||
}
|
||
`])}},248:function(h,l,t){var o=t(6832),r=t(5158),n=o([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute vec3 position, nextPosition;
|
||
attribute float arcLength, lineWidth;
|
||
attribute vec4 color;
|
||
|
||
uniform vec2 screenShape;
|
||
uniform float pixelRatio;
|
||
uniform mat4 model, view, projection;
|
||
|
||
varying vec4 fragColor;
|
||
varying vec3 worldPosition;
|
||
varying float pixelArcLength;
|
||
|
||
vec4 project(vec3 p) {
|
||
return projection * view * model * vec4(p, 1.0);
|
||
}
|
||
|
||
void main() {
|
||
vec4 startPoint = project(position);
|
||
vec4 endPoint = project(nextPosition);
|
||
|
||
vec2 A = startPoint.xy / startPoint.w;
|
||
vec2 B = endPoint.xy / endPoint.w;
|
||
|
||
float clipAngle = atan(
|
||
(B.y - A.y) * screenShape.y,
|
||
(B.x - A.x) * screenShape.x
|
||
);
|
||
|
||
vec2 offset = 0.5 * pixelRatio * lineWidth * vec2(
|
||
sin(clipAngle),
|
||
-cos(clipAngle)
|
||
) / screenShape;
|
||
|
||
gl_Position = vec4(startPoint.xy + startPoint.w * offset, startPoint.zw);
|
||
|
||
worldPosition = position;
|
||
pixelArcLength = arcLength;
|
||
fragColor = color;
|
||
}
|
||
`]),a=o([`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 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;
|
||
}
|
||
`]),s=o([`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);
|
||
}`]),u=[{name:"position",type:"vec3"},{name:"nextPosition",type:"vec3"},{name:"arcLength",type:"float"},{name:"lineWidth",type:"float"},{name:"color",type:"vec4"}];l.createShader=function(p){return r(p,n,a,null,u)},l.createPickShader=function(p){return r(p,n,s,null,u)}},6086:function(h,l,t){h.exports=function(M){var A=M.gl||M.scene&&M.scene.gl,C=b(A);C.attributes.position.location=0,C.attributes.nextPosition.location=1,C.attributes.arcLength.location=2,C.attributes.lineWidth.location=3,C.attributes.color.location=4;var P=g(A);P.attributes.position.location=0,P.attributes.nextPosition.location=1,P.attributes.arcLength.location=2,P.attributes.lineWidth.location=3,P.attributes.color.location=4;for(var O=o(A),z=r(A,[{buffer:O,size:3,offset:0,stride:48},{buffer:O,size:3,offset:12,stride:48},{buffer:O,size:1,offset:24,stride:48},{buffer:O,size:1,offset:28,stride:48},{buffer:O,size:4,offset:32,stride:48}]),B=p(new Array(1024),[256,1,4]),Y=0;Y<1024;++Y)B.data[Y]=255;var D=n(A,B);D.wrap=A.REPEAT;var G=new T(A,C,P,O,z,D);return G.update(M),G};var o=t(5827),r=t(2944),n=t(8931),a=new Uint8Array(4),s=new Float32Array(a.buffer),u=t(5070),p=t(5050),c=t(248),b=c.createShader,g=c.createPickShader,f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function v(M,A){for(var C=0,P=0;P<3;++P){var O=M[P]-A[P];C+=O*O}return Math.sqrt(C)}function m(M){for(var A=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],C=0;C<3;++C)A[0][C]=Math.max(M[0][C],A[0][C]),A[1][C]=Math.min(M[1][C],A[1][C]);return A}function x(M,A,C,P){this.arcLength=M,this.position=A,this.index=C,this.dataCoordinate=P}function T(M,A,C,P,O,z){this.gl=M,this.shader=A,this.pickShader=C,this.buffer=P,this.vao=O,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=z,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var d=T.prototype;d.isTransparent=function(){return this.hasAlpha},d.isOpaque=function(){return!this.hasAlpha},d.pickSlots=1,d.setPickBase=function(M){this.pickId=M},d.drawTransparent=d.draw=function(M){if(this.vertexCount){var A=this.gl,C=this.shader,P=this.vao;C.bind(),C.uniforms={model:M.model||f,view:M.view||f,projection:M.projection||f,clipBounds:m(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[A.drawingBufferWidth,A.drawingBufferHeight],pixelRatio:this.pixelRatio},P.bind(),P.draw(A.TRIANGLE_STRIP,this.vertexCount),P.unbind()}},d.drawPick=function(M){if(this.vertexCount){var A=this.gl,C=this.pickShader,P=this.vao;C.bind(),C.uniforms={model:M.model||f,view:M.view||f,projection:M.projection||f,pickId:this.pickId,clipBounds:m(this.clipBounds),screenShape:[A.drawingBufferWidth,A.drawingBufferHeight],pixelRatio:this.pixelRatio},P.bind(),P.draw(A.TRIANGLE_STRIP,this.vertexCount),P.unbind()}},d.update=function(M){var A,C;this.dirty=!0;var P=!!M.connectGaps;"dashScale"in M&&(this.dashScale=M.dashScale),this.hasAlpha=!1,"opacity"in M&&(this.opacity=+M.opacity,this.opacity<1&&(this.hasAlpha=!0));var O=[],z=[],B=[],Y=0,D=0,G=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],V=M.position||M.positions;if(V){var j=M.color||M.colors||[0,0,0,1],W=M.lineWidth||1,Z=!1;e:for(A=1;A<V.length;++A){var ie,te,J,X=V[A-1],ee=V[A];for(z.push(Y),B.push(X.slice()),C=0;C<3;++C){if(isNaN(X[C])||isNaN(ee[C])||!isFinite(X[C])||!isFinite(ee[C])){if(!P&&O.length>0){for(var re=0;re<24;++re)O.push(O[O.length-12]);D+=2,Z=!0}continue e}G[0][C]=Math.min(G[0][C],X[C],ee[C]),G[1][C]=Math.max(G[1][C],X[C],ee[C])}Array.isArray(j[0])?(ie=j.length>A-1?j[A-1]:j.length>0?j[j.length-1]:[0,0,0,1],te=j.length>A?j[A]:j.length>0?j[j.length-1]:[0,0,0,1]):ie=te=j,ie.length===3&&(ie=[ie[0],ie[1],ie[2],1]),te.length===3&&(te=[te[0],te[1],te[2],1]),!this.hasAlpha&&ie[3]<1&&(this.hasAlpha=!0),J=Array.isArray(W)?W.length>A-1?W[A-1]:W.length>0?W[W.length-1]:[0,0,0,1]:W;var oe=Y;if(Y+=v(X,ee),Z){for(C=0;C<2;++C)O.push(X[0],X[1],X[2],ee[0],ee[1],ee[2],oe,J,ie[0],ie[1],ie[2],ie[3]);D+=2,Z=!1}O.push(X[0],X[1],X[2],ee[0],ee[1],ee[2],oe,J,ie[0],ie[1],ie[2],ie[3],X[0],X[1],X[2],ee[0],ee[1],ee[2],oe,-J,ie[0],ie[1],ie[2],ie[3],ee[0],ee[1],ee[2],X[0],X[1],X[2],Y,-J,te[0],te[1],te[2],te[3],ee[0],ee[1],ee[2],X[0],X[1],X[2],Y,J,te[0],te[1],te[2],te[3]),D+=4}}if(this.buffer.update(O),z.push(Y),B.push(V[V.length-1].slice()),this.bounds=G,this.vertexCount=D,this.points=B,this.arcLength=z,"dashes"in M){var ue=M.dashes.slice();for(ue.unshift(0),A=1;A<ue.length;++A)ue[A]=ue[A-1]+ue[A];var ce=p(new Array(1024),[256,1,4]);for(A=0;A<256;++A){for(C=0;C<4;++C)ce.set(A,0,C,0);1&u.le(ue,ue[ue.length-1]*A/255)?ce.set(A,0,0,0):ce.set(A,0,0,255)}this.texture.setPixels(ce)}},d.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()},d.pick=function(M){if(!M||M.id!==this.pickId)return null;var A=function(V,j,W,Z){return a[0]=0,a[1]=W,a[2]=j,a[3]=V,s[0]}(M.value[0],M.value[1],M.value[2]),C=u.le(this.arcLength,A);if(C<0)return null;if(C===this.arcLength.length-1)return new x(this.arcLength[this.arcLength.length-1],this.points[this.points.length-1].slice(),C);for(var P=this.points[C],O=this.points[Math.min(C+1,this.points.length-1)],z=(A-this.arcLength[C])/(this.arcLength[C+1]-this.arcLength[C]),B=1-z,Y=[0,0,0],D=0;D<3;++D)Y[D]=B*P[D]+z*O[D];var G=Math.min(z<.5?C:C+1,this.points.length-1);return new x(A,Y,G,this.points[G])}},7332:function(h){h.exports=function(l){var t=new Float32Array(16);return t[0]=l[0],t[1]=l[1],t[2]=l[2],t[3]=l[3],t[4]=l[4],t[5]=l[5],t[6]=l[6],t[7]=l[7],t[8]=l[8],t[9]=l[9],t[10]=l[10],t[11]=l[11],t[12]=l[12],t[13]=l[13],t[14]=l[14],t[15]=l[15],t}},9823:function(h){h.exports=function(){var l=new Float32Array(16);return l[0]=1,l[1]=0,l[2]=0,l[3]=0,l[4]=0,l[5]=1,l[6]=0,l[7]=0,l[8]=0,l[9]=0,l[10]=1,l[11]=0,l[12]=0,l[13]=0,l[14]=0,l[15]=1,l}},7787:function(h){h.exports=function(l){var t=l[0],o=l[1],r=l[2],n=l[3],a=l[4],s=l[5],u=l[6],p=l[7],c=l[8],b=l[9],g=l[10],f=l[11],v=l[12],m=l[13],x=l[14],T=l[15];return(t*s-o*a)*(g*T-f*x)-(t*u-r*a)*(b*T-f*m)+(t*p-n*a)*(b*x-g*m)+(o*u-r*s)*(c*T-f*v)-(o*p-n*s)*(c*x-g*v)+(r*p-n*u)*(c*m-b*v)}},5950:function(h){h.exports=function(l,t){var o=t[0],r=t[1],n=t[2],a=t[3],s=o+o,u=r+r,p=n+n,c=o*s,b=r*s,g=r*u,f=n*s,v=n*u,m=n*p,x=a*s,T=a*u,d=a*p;return l[0]=1-g-m,l[1]=b+d,l[2]=f-T,l[3]=0,l[4]=b-d,l[5]=1-c-m,l[6]=v+x,l[7]=0,l[8]=f+T,l[9]=v-x,l[10]=1-c-g,l[11]=0,l[12]=0,l[13]=0,l[14]=0,l[15]=1,l}},7280:function(h){h.exports=function(l,t,o){var r=t[0],n=t[1],a=t[2],s=t[3],u=r+r,p=n+n,c=a+a,b=r*u,g=r*p,f=r*c,v=n*p,m=n*c,x=a*c,T=s*u,d=s*p,M=s*c;return l[0]=1-(v+x),l[1]=g+M,l[2]=f-d,l[3]=0,l[4]=g-M,l[5]=1-(b+x),l[6]=m+T,l[7]=0,l[8]=f+d,l[9]=m-T,l[10]=1-(b+v),l[11]=0,l[12]=o[0],l[13]=o[1],l[14]=o[2],l[15]=1,l}},9947:function(h){h.exports=function(l){return l[0]=1,l[1]=0,l[2]=0,l[3]=0,l[4]=0,l[5]=1,l[6]=0,l[7]=0,l[8]=0,l[9]=0,l[10]=1,l[11]=0,l[12]=0,l[13]=0,l[14]=0,l[15]=1,l}},7437:function(h){h.exports=function(l,t){var o=t[0],r=t[1],n=t[2],a=t[3],s=t[4],u=t[5],p=t[6],c=t[7],b=t[8],g=t[9],f=t[10],v=t[11],m=t[12],x=t[13],T=t[14],d=t[15],M=o*u-r*s,A=o*p-n*s,C=o*c-a*s,P=r*p-n*u,O=r*c-a*u,z=n*c-a*p,B=b*x-g*m,Y=b*T-f*m,D=b*d-v*m,G=g*T-f*x,V=g*d-v*x,j=f*d-v*T,W=M*j-A*V+C*G+P*D-O*Y+z*B;return W?(W=1/W,l[0]=(u*j-p*V+c*G)*W,l[1]=(n*V-r*j-a*G)*W,l[2]=(x*z-T*O+d*P)*W,l[3]=(f*O-g*z-v*P)*W,l[4]=(p*D-s*j-c*Y)*W,l[5]=(o*j-n*D+a*Y)*W,l[6]=(T*C-m*z-d*A)*W,l[7]=(b*z-f*C+v*A)*W,l[8]=(s*V-u*D+c*B)*W,l[9]=(r*D-o*V-a*B)*W,l[10]=(m*O-x*C+d*M)*W,l[11]=(g*C-b*O-v*M)*W,l[12]=(u*Y-s*G-p*B)*W,l[13]=(o*G-r*Y+n*B)*W,l[14]=(x*A-m*P-T*M)*W,l[15]=(b*P-g*A+f*M)*W,l):null}},3012:function(h,l,t){var o=t(9947);h.exports=function(r,n,a,s){var u,p,c,b,g,f,v,m,x,T,d=n[0],M=n[1],A=n[2],C=s[0],P=s[1],O=s[2],z=a[0],B=a[1],Y=a[2];return Math.abs(d-z)<1e-6&&Math.abs(M-B)<1e-6&&Math.abs(A-Y)<1e-6?o(r):(v=d-z,m=M-B,x=A-Y,u=P*(x*=T=1/Math.sqrt(v*v+m*m+x*x))-O*(m*=T),p=O*(v*=T)-C*x,c=C*m-P*v,(T=Math.sqrt(u*u+p*p+c*c))?(u*=T=1/T,p*=T,c*=T):(u=0,p=0,c=0),b=m*c-x*p,g=x*u-v*c,f=v*p-m*u,(T=Math.sqrt(b*b+g*g+f*f))?(b*=T=1/T,g*=T,f*=T):(b=0,g=0,f=0),r[0]=u,r[1]=b,r[2]=v,r[3]=0,r[4]=p,r[5]=g,r[6]=m,r[7]=0,r[8]=c,r[9]=f,r[10]=x,r[11]=0,r[12]=-(u*d+p*M+c*A),r[13]=-(b*d+g*M+f*A),r[14]=-(v*d+m*M+x*A),r[15]=1,r)}},104:function(h){h.exports=function(l,t,o){var r=t[0],n=t[1],a=t[2],s=t[3],u=t[4],p=t[5],c=t[6],b=t[7],g=t[8],f=t[9],v=t[10],m=t[11],x=t[12],T=t[13],d=t[14],M=t[15],A=o[0],C=o[1],P=o[2],O=o[3];return l[0]=A*r+C*u+P*g+O*x,l[1]=A*n+C*p+P*f+O*T,l[2]=A*a+C*c+P*v+O*d,l[3]=A*s+C*b+P*m+O*M,A=o[4],C=o[5],P=o[6],O=o[7],l[4]=A*r+C*u+P*g+O*x,l[5]=A*n+C*p+P*f+O*T,l[6]=A*a+C*c+P*v+O*d,l[7]=A*s+C*b+P*m+O*M,A=o[8],C=o[9],P=o[10],O=o[11],l[8]=A*r+C*u+P*g+O*x,l[9]=A*n+C*p+P*f+O*T,l[10]=A*a+C*c+P*v+O*d,l[11]=A*s+C*b+P*m+O*M,A=o[12],C=o[13],P=o[14],O=o[15],l[12]=A*r+C*u+P*g+O*x,l[13]=A*n+C*p+P*f+O*T,l[14]=A*a+C*c+P*v+O*d,l[15]=A*s+C*b+P*m+O*M,l}},5268:function(h){h.exports=function(l,t,o,r,n,a,s){var u=1/(t-o),p=1/(r-n),c=1/(a-s);return l[0]=-2*u,l[1]=0,l[2]=0,l[3]=0,l[4]=0,l[5]=-2*p,l[6]=0,l[7]=0,l[8]=0,l[9]=0,l[10]=2*c,l[11]=0,l[12]=(t+o)*u,l[13]=(n+r)*p,l[14]=(s+a)*c,l[15]=1,l}},1120:function(h){h.exports=function(l,t,o,r,n){var a=1/Math.tan(t/2),s=1/(r-n);return l[0]=a/o,l[1]=0,l[2]=0,l[3]=0,l[4]=0,l[5]=a,l[6]=0,l[7]=0,l[8]=0,l[9]=0,l[10]=(n+r)*s,l[11]=-1,l[12]=0,l[13]=0,l[14]=2*n*r*s,l[15]=0,l}},4422:function(h){h.exports=function(l,t,o,r){var n,a,s,u,p,c,b,g,f,v,m,x,T,d,M,A,C,P,O,z,B,Y,D,G,V=r[0],j=r[1],W=r[2],Z=Math.sqrt(V*V+j*j+W*W);return Math.abs(Z)<1e-6?null:(V*=Z=1/Z,j*=Z,W*=Z,n=Math.sin(o),s=1-(a=Math.cos(o)),u=t[0],p=t[1],c=t[2],b=t[3],g=t[4],f=t[5],v=t[6],m=t[7],x=t[8],T=t[9],d=t[10],M=t[11],A=V*V*s+a,C=j*V*s+W*n,P=W*V*s-j*n,O=V*j*s-W*n,z=j*j*s+a,B=W*j*s+V*n,Y=V*W*s+j*n,D=j*W*s-V*n,G=W*W*s+a,l[0]=u*A+g*C+x*P,l[1]=p*A+f*C+T*P,l[2]=c*A+v*C+d*P,l[3]=b*A+m*C+M*P,l[4]=u*O+g*z+x*B,l[5]=p*O+f*z+T*B,l[6]=c*O+v*z+d*B,l[7]=b*O+m*z+M*B,l[8]=u*Y+g*D+x*G,l[9]=p*Y+f*D+T*G,l[10]=c*Y+v*D+d*G,l[11]=b*Y+m*D+M*G,t!==l&&(l[12]=t[12],l[13]=t[13],l[14]=t[14],l[15]=t[15]),l)}},6109:function(h){h.exports=function(l,t,o){var r=Math.sin(o),n=Math.cos(o),a=t[4],s=t[5],u=t[6],p=t[7],c=t[8],b=t[9],g=t[10],f=t[11];return t!==l&&(l[0]=t[0],l[1]=t[1],l[2]=t[2],l[3]=t[3],l[12]=t[12],l[13]=t[13],l[14]=t[14],l[15]=t[15]),l[4]=a*n+c*r,l[5]=s*n+b*r,l[6]=u*n+g*r,l[7]=p*n+f*r,l[8]=c*n-a*r,l[9]=b*n-s*r,l[10]=g*n-u*r,l[11]=f*n-p*r,l}},7115:function(h){h.exports=function(l,t,o){var r=Math.sin(o),n=Math.cos(o),a=t[0],s=t[1],u=t[2],p=t[3],c=t[8],b=t[9],g=t[10],f=t[11];return t!==l&&(l[4]=t[4],l[5]=t[5],l[6]=t[6],l[7]=t[7],l[12]=t[12],l[13]=t[13],l[14]=t[14],l[15]=t[15]),l[0]=a*n-c*r,l[1]=s*n-b*r,l[2]=u*n-g*r,l[3]=p*n-f*r,l[8]=a*r+c*n,l[9]=s*r+b*n,l[10]=u*r+g*n,l[11]=p*r+f*n,l}},5240:function(h){h.exports=function(l,t,o){var r=Math.sin(o),n=Math.cos(o),a=t[0],s=t[1],u=t[2],p=t[3],c=t[4],b=t[5],g=t[6],f=t[7];return t!==l&&(l[8]=t[8],l[9]=t[9],l[10]=t[10],l[11]=t[11],l[12]=t[12],l[13]=t[13],l[14]=t[14],l[15]=t[15]),l[0]=a*n+c*r,l[1]=s*n+b*r,l[2]=u*n+g*r,l[3]=p*n+f*r,l[4]=c*n-a*r,l[5]=b*n-s*r,l[6]=g*n-u*r,l[7]=f*n-p*r,l}},3668:function(h){h.exports=function(l,t,o){var r=o[0],n=o[1],a=o[2];return l[0]=t[0]*r,l[1]=t[1]*r,l[2]=t[2]*r,l[3]=t[3]*r,l[4]=t[4]*n,l[5]=t[5]*n,l[6]=t[6]*n,l[7]=t[7]*n,l[8]=t[8]*a,l[9]=t[9]*a,l[10]=t[10]*a,l[11]=t[11]*a,l[12]=t[12],l[13]=t[13],l[14]=t[14],l[15]=t[15],l}},998:function(h){h.exports=function(l,t,o){var r,n,a,s,u,p,c,b,g,f,v,m,x=o[0],T=o[1],d=o[2];return t===l?(l[12]=t[0]*x+t[4]*T+t[8]*d+t[12],l[13]=t[1]*x+t[5]*T+t[9]*d+t[13],l[14]=t[2]*x+t[6]*T+t[10]*d+t[14],l[15]=t[3]*x+t[7]*T+t[11]*d+t[15]):(r=t[0],n=t[1],a=t[2],s=t[3],u=t[4],p=t[5],c=t[6],b=t[7],g=t[8],f=t[9],v=t[10],m=t[11],l[0]=r,l[1]=n,l[2]=a,l[3]=s,l[4]=u,l[5]=p,l[6]=c,l[7]=b,l[8]=g,l[9]=f,l[10]=v,l[11]=m,l[12]=r*x+u*T+g*d+t[12],l[13]=n*x+p*T+f*d+t[13],l[14]=a*x+c*T+v*d+t[14],l[15]=s*x+b*T+m*d+t[15]),l}},2142:function(h){h.exports=function(l,t){if(l===t){var o=t[1],r=t[2],n=t[3],a=t[6],s=t[7],u=t[11];l[1]=t[4],l[2]=t[8],l[3]=t[12],l[4]=o,l[6]=t[9],l[7]=t[13],l[8]=r,l[9]=a,l[11]=t[14],l[12]=n,l[13]=s,l[14]=u}else l[0]=t[0],l[1]=t[4],l[2]=t[8],l[3]=t[12],l[4]=t[1],l[5]=t[5],l[6]=t[9],l[7]=t[13],l[8]=t[2],l[9]=t[6],l[10]=t[10],l[11]=t[14],l[12]=t[3],l[13]=t[7],l[14]=t[11],l[15]=t[15];return l}},4340:function(h,l,t){var o=t(957),r=t(7309);function n(u,p){for(var c=[0,0,0,0],b=0;b<4;++b)for(var g=0;g<4;++g)c[g]+=u[4*b+g]*p[b];return c}function a(u,p,c,b,g){for(var f=n(b,n(c,n(p,[u[0],u[1],u[2],1]))),v=0;v<3;++v)f[v]/=f[3];return[.5*g[0]*(1+f[0]),.5*g[1]*(1-f[1])]}function s(u,p){for(var c=[0,0,0],b=0;b<u.length;++b)for(var g=u[b],f=p[b],v=0;v<3;++v)c[v]+=f*g[v];return c}h.exports=function(u,p,c,b,g,f){if(u.length===1)return[0,u[0].slice()];for(var v=new Array(u.length),m=0;m<u.length;++m)v[m]=a(u[m],c,b,g,f);var x=0,T=1/0;for(m=0;m<v.length;++m){for(var d=0,M=0;M<2;++M)d+=Math.pow(v[m][M]-p[M],2);d<T&&(T=d,x=m)}var A=function(P,O){if(P.length===2){for(var z=0,B=0,Y=0;Y<2;++Y)z+=Math.pow(O[Y]-P[0][Y],2),B+=Math.pow(O[Y]-P[1][Y],2);return(z=Math.sqrt(z))+(B=Math.sqrt(B))<1e-6?[1,0]:[B/(z+B),z/(B+z)]}if(P.length===3){var D=[0,0];return r(P[0],P[1],P[2],O,D),o(P,D)}return[]}(v,p),C=0;for(m=0;m<3;++m){if(A[m]<-.001||A[m]>1.0001)return null;C+=A[m]}return Math.abs(C-1)>.001?null:[x,s(u,A),A]}},2056:function(h,l,t){var o=t(6832),r=o([`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;
|
||
}
|
||
`]),n=o([`#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;
|
||
}
|
||
`]),a=o([`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;
|
||
}`]),s=o([`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;
|
||
}`]),u=o([`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;
|
||
}`]),p=o([`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;
|
||
}`]),c=o([`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;
|
||
}`]),b=o([`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);
|
||
}`]),g=o([`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;
|
||
}`]),f=o([`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);
|
||
}`]),v=o([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
uniform vec3 contourColor;
|
||
|
||
void main() {
|
||
gl_FragColor = vec4(contourColor, 1.0);
|
||
}
|
||
`]);l.meshShader={vertex:r,fragment:n,attributes:[{name:"position",type:"vec3"},{name:"normal",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},l.wireShader={vertex:a,fragment:s,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},l.pointShader={vertex:u,fragment:p,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"pointSize",type:"float"}]},l.pickShader={vertex:c,fragment:b,attributes:[{name:"position",type:"vec3"},{name:"id",type:"vec4"}]},l.pointPickShader={vertex:g,fragment:b,attributes:[{name:"position",type:"vec3"},{name:"pointSize",type:"float"},{name:"id",type:"vec4"}]},l.contourShader={vertex:f,fragment:v,attributes:[{name:"position",type:"vec3"}]}},8116:function(h,l,t){var o=t(5158),r=t(5827),n=t(2944),a=t(8931),s=t(115),u=t(104),p=t(7437),c=t(5050),b=t(9156),g=t(7212),f=t(5306),v=t(2056),m=t(4340),x=v.meshShader,T=v.wireShader,d=v.pointShader,M=v.pickShader,A=v.pointPickShader,C=v.contourShader,P=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function O(j,W,Z,ie,te,J,X,ee,re,oe,ue,ce,de,me,_e,Se,we,xe,De,Ee,Me,he,fe,ae,be,Ie,Te){this.gl=j,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=W,this.dirty=!0,this.triShader=Z,this.lineShader=ie,this.pointShader=te,this.pickShader=J,this.pointPickShader=X,this.contourShader=ee,this.trianglePositions=re,this.triangleColors=ue,this.triangleNormals=de,this.triangleUVs=ce,this.triangleIds=oe,this.triangleVAO=me,this.triangleCount=0,this.lineWidth=1,this.edgePositions=_e,this.edgeColors=we,this.edgeUVs=xe,this.edgeIds=Se,this.edgeVAO=De,this.edgeCount=0,this.pointPositions=Ee,this.pointColors=he,this.pointUVs=fe,this.pointSizes=ae,this.pointIds=Me,this.pointVAO=be,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=Ie,this.contourVAO=Te,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=P,this._view=P,this._projection=P,this._resolution=[1,1]}var z=O.prototype;function B(j,W){if(!W||!W.length)return 1;for(var Z=0;Z<W.length;++Z){if(W.length<2)return 1;if(W[Z][0]===j)return W[Z][1];if(W[Z][0]>j&&Z>0){var ie=(W[Z][0]-j)/(W[Z][0]-W[Z-1][0]);return W[Z][1]*(1-ie)+ie*W[Z-1][1]}}return 1}function Y(j){var W=o(j,d.vertex,d.fragment);return W.attributes.position.location=0,W.attributes.color.location=2,W.attributes.uv.location=3,W.attributes.pointSize.location=4,W}function D(j){var W=o(j,M.vertex,M.fragment);return W.attributes.position.location=0,W.attributes.id.location=1,W}function G(j){var W=o(j,A.vertex,A.fragment);return W.attributes.position.location=0,W.attributes.id.location=1,W.attributes.pointSize.location=4,W}function V(j){var W=o(j,C.vertex,C.fragment);return W.attributes.position.location=0,W}z.isOpaque=function(){return!this.hasAlpha},z.isTransparent=function(){return this.hasAlpha},z.pickSlots=1,z.setPickBase=function(j){this.pickId=j},z.highlight=function(j){if(j&&this.contourEnable){for(var W=g(this.cells,this.intensity,j.intensity),Z=W.cells,ie=W.vertexIds,te=W.vertexWeights,J=Z.length,X=f.mallocFloat32(6*J),ee=0,re=0;re<J;++re)for(var oe=Z[re],ue=0;ue<2;++ue){var ce=oe[0];oe.length===2&&(ce=oe[ue]);for(var de=ie[ce][0],me=ie[ce][1],_e=te[ce],Se=1-_e,we=this.positions[de],xe=this.positions[me],De=0;De<3;++De)X[ee++]=_e*we[De]+Se*xe[De]}this.contourCount=ee/3|0,this.contourPositions.update(X.subarray(0,ee)),f.free(X)}else this.contourCount=0},z.update=function(j){j=j||{};var W=this.gl;this.dirty=!0,"contourEnable"in j&&(this.contourEnable=j.contourEnable),"contourColor"in j&&(this.contourColor=j.contourColor),"lineWidth"in j&&(this.lineWidth=j.lineWidth),"lightPosition"in j&&(this.lightPosition=j.lightPosition),this.hasAlpha=!1,"opacity"in j&&(this.opacity=j.opacity,this.opacity<1&&(this.hasAlpha=!0)),"opacityscale"in j&&(this.opacityscale=j.opacityscale,this.hasAlpha=!0),"ambient"in j&&(this.ambientLight=j.ambient),"diffuse"in j&&(this.diffuseLight=j.diffuse),"specular"in j&&(this.specularLight=j.specular),"roughness"in j&&(this.roughness=j.roughness),"fresnel"in j&&(this.fresnel=j.fresnel),j.texture?(this.texture.dispose(),this.texture=a(W,j.texture)):j.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=W.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=W.LINEAR,this.texture.setPixels(function(St,Ft){for(var zt=b({colormap:St,nshades:256,format:"rgba"}),Je=new Uint8Array(1024),et=0;et<256;++et){for(var Ze=zt[et],Qe=0;Qe<3;++Qe)Je[4*et+Qe]=Ze[Qe];Je[4*et+3]=Ft?255*B(et/255,Ft):255*Ze[3]}return c(Je,[256,256,4],[4,0,1])}(j.colormap,this.opacityscale)),this.texture.generateMipmap());var Z=j.cells,ie=j.positions;if(ie&&Z){var te=[],J=[],X=[],ee=[],re=[],oe=[],ue=[],ce=[],de=[],me=[],_e=[],Se=[],we=[],xe=[];this.cells=Z,this.positions=ie;var De=j.vertexNormals,Ee=j.cellNormals,Me=j.vertexNormalsEpsilon===void 0?1e-6:j.vertexNormalsEpsilon,he=j.faceNormalsEpsilon===void 0?1e-6:j.faceNormalsEpsilon;j.useFacetNormals&&!Ee&&(Ee=s.faceNormals(Z,ie,he)),Ee||De||(De=s.vertexNormals(Z,ie,Me));var fe=j.vertexColors,ae=j.cellColors,be=j.meshColor||[1,1,1,1],Ie=j.vertexUVs,Te=j.vertexIntensity,Ne=j.cellUVs,qe=j.cellIntensity,ve=1/0,Ce=-1/0;if(!Ie&&!Ne)if(Te)if(j.vertexIntensityBounds)ve=+j.vertexIntensityBounds[0],Ce=+j.vertexIntensityBounds[1];else for(var Ae=0;Ae<Te.length;++Ae){var ze=Te[Ae];ve=Math.min(ve,ze),Ce=Math.max(Ce,ze)}else if(qe)if(j.cellIntensityBounds)ve=+j.cellIntensityBounds[0],Ce=+j.cellIntensityBounds[1];else for(Ae=0;Ae<qe.length;++Ae)ze=qe[Ae],ve=Math.min(ve,ze),Ce=Math.max(Ce,ze);else for(Ae=0;Ae<ie.length;++Ae)ze=ie[Ae][2],ve=Math.min(ve,ze),Ce=Math.max(Ce,ze);this.intensity=Te||qe||function(St){for(var Ft=St.length,zt=new Array(Ft),Je=0;Je<Ft;++Je)zt[Je]=St[Je][2];return zt}(ie),this.pickVertex=!(qe||ae);var Ue=j.pointSizes,Ve=j.pointSize||1;for(this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],Ae=0;Ae<ie.length;++Ae)for(var Ye=ie[Ae],$e=0;$e<3;++$e)!isNaN(Ye[$e])&&isFinite(Ye[$e])&&(this.bounds[0][$e]=Math.min(this.bounds[0][$e],Ye[$e]),this.bounds[1][$e]=Math.max(this.bounds[1][$e],Ye[$e]));var rt=0,ht=0,nt=0;e:for(Ae=0;Ae<Z.length;++Ae){var bt=Z[Ae];switch(bt.length){case 1:for(Ye=ie[ut=bt[0]],$e=0;$e<3;++$e)if(isNaN(Ye[$e])||!isFinite(Ye[$e]))continue e;me.push(Ye[0],Ye[1],Ye[2]),lt=fe?fe[ut]:ae?ae[Ae]:be,this.opacityscale&&Te?J.push(lt[0],lt[1],lt[2],this.opacity*B((Te[ut]-ve)/(Ce-ve),this.opacityscale)):lt.length===3?_e.push(lt[0],lt[1],lt[2],this.opacity):(_e.push(lt[0],lt[1],lt[2],lt[3]*this.opacity),lt[3]<1&&(this.hasAlpha=!0)),Tt=Ie?Ie[ut]:Te?[(Te[ut]-ve)/(Ce-ve),0]:Ne?Ne[Ae]:qe?[(qe[Ae]-ve)/(Ce-ve),0]:[(Ye[2]-ve)/(Ce-ve),0],Se.push(Tt[0],Tt[1]),Ue?we.push(Ue[ut]):we.push(Ve),xe.push(Ae),nt+=1;break;case 2:for($e=0;$e<2;++$e){Ye=ie[ut=bt[$e]];for(var wt=0;wt<3;++wt)if(isNaN(Ye[wt])||!isFinite(Ye[wt]))continue e}for($e=0;$e<2;++$e)Ye=ie[ut=bt[$e]],oe.push(Ye[0],Ye[1],Ye[2]),lt=fe?fe[ut]:ae?ae[Ae]:be,this.opacityscale&&Te?J.push(lt[0],lt[1],lt[2],this.opacity*B((Te[ut]-ve)/(Ce-ve),this.opacityscale)):lt.length===3?ue.push(lt[0],lt[1],lt[2],this.opacity):(ue.push(lt[0],lt[1],lt[2],lt[3]*this.opacity),lt[3]<1&&(this.hasAlpha=!0)),Tt=Ie?Ie[ut]:Te?[(Te[ut]-ve)/(Ce-ve),0]:Ne?Ne[Ae]:qe?[(qe[Ae]-ve)/(Ce-ve),0]:[(Ye[2]-ve)/(Ce-ve),0],ce.push(Tt[0],Tt[1]),de.push(Ae);ht+=1;break;case 3:for($e=0;$e<3;++$e)for(Ye=ie[ut=bt[$e]],wt=0;wt<3;++wt)if(isNaN(Ye[wt])||!isFinite(Ye[wt]))continue e;for($e=0;$e<3;++$e){var ut,lt,Tt,Et;Ye=ie[ut=bt[2-$e]],te.push(Ye[0],Ye[1],Ye[2]),(lt=fe?fe[ut]:ae?ae[Ae]:be)?this.opacityscale&&Te?J.push(lt[0],lt[1],lt[2],this.opacity*B((Te[ut]-ve)/(Ce-ve),this.opacityscale)):lt.length===3?J.push(lt[0],lt[1],lt[2],this.opacity):(J.push(lt[0],lt[1],lt[2],lt[3]*this.opacity),lt[3]<1&&(this.hasAlpha=!0)):J.push(.5,.5,.5,1),Tt=Ie?Ie[ut]:Te?[(Te[ut]-ve)/(Ce-ve),0]:Ne?Ne[Ae]:qe?[(qe[Ae]-ve)/(Ce-ve),0]:[(Ye[2]-ve)/(Ce-ve),0],ee.push(Tt[0],Tt[1]),Et=De?De[ut]:Ee[Ae],X.push(Et[0],Et[1],Et[2]),re.push(Ae)}rt+=1}}this.pointCount=nt,this.edgeCount=ht,this.triangleCount=rt,this.pointPositions.update(me),this.pointColors.update(_e),this.pointUVs.update(Se),this.pointSizes.update(we),this.pointIds.update(new Uint32Array(xe)),this.edgePositions.update(oe),this.edgeColors.update(ue),this.edgeUVs.update(ce),this.edgeIds.update(new Uint32Array(de)),this.trianglePositions.update(te),this.triangleColors.update(J),this.triangleUVs.update(ee),this.triangleNormals.update(X),this.triangleIds.update(new Uint32Array(re))}},z.drawTransparent=z.draw=function(j){j=j||{};for(var W=this.gl,Z=j.model||P,ie=j.view||P,te=j.projection||P,J=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],X=0;X<3;++X)J[0][X]=Math.max(J[0][X],this.clipBounds[0][X]),J[1][X]=Math.min(J[1][X],this.clipBounds[1][X]);var ee={model:Z,view:ie,projection:te,inverseModel:P.slice(),clipBounds:J,kambient:this.ambientLight,kdiffuse:this.diffuseLight,kspecular:this.specularLight,roughness:this.roughness,fresnel:this.fresnel,eyePosition:[0,0,0],lightPosition:[0,0,0],contourColor:this.contourColor,texture:0};ee.inverseModel=p(ee.inverseModel,ee.model),W.disable(W.CULL_FACE),this.texture.bind(0);var re=new Array(16);for(u(re,ee.view,ee.model),u(re,ee.projection,re),p(re,re),X=0;X<3;++X)ee.eyePosition[X]=re[12+X]/re[15];var oe,ue=re[15];for(X=0;X<3;++X)ue+=this.lightPosition[X]*re[4*X+3];for(X=0;X<3;++X){for(var ce=re[12+X],de=0;de<3;++de)ce+=re[4*de+X]*this.lightPosition[de];ee.lightPosition[X]=ce/ue}this.triangleCount>0&&((oe=this.triShader).bind(),oe.uniforms=ee,this.triangleVAO.bind(),W.drawArrays(W.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&this.lineWidth>0&&((oe=this.lineShader).bind(),oe.uniforms=ee,this.edgeVAO.bind(),W.lineWidth(this.lineWidth*this.pixelRatio),W.drawArrays(W.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0&&((oe=this.pointShader).bind(),oe.uniforms=ee,this.pointVAO.bind(),W.drawArrays(W.POINTS,0,this.pointCount),this.pointVAO.unbind()),this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0&&((oe=this.contourShader).bind(),oe.uniforms=ee,this.contourVAO.bind(),W.drawArrays(W.LINES,0,this.contourCount),this.contourVAO.unbind())},z.drawPick=function(j){j=j||{};for(var W=this.gl,Z=j.model||P,ie=j.view||P,te=j.projection||P,J=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],X=0;X<3;++X)J[0][X]=Math.max(J[0][X],this.clipBounds[0][X]),J[1][X]=Math.min(J[1][X],this.clipBounds[1][X]);this._model=[].slice.call(Z),this._view=[].slice.call(ie),this._projection=[].slice.call(te),this._resolution=[W.drawingBufferWidth,W.drawingBufferHeight];var ee,re={model:Z,view:ie,projection:te,clipBounds:J,pickId:this.pickId/255};(ee=this.pickShader).bind(),ee.uniforms=re,this.triangleCount>0&&(this.triangleVAO.bind(),W.drawArrays(W.TRIANGLES,0,3*this.triangleCount),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),W.lineWidth(this.lineWidth*this.pixelRatio),W.drawArrays(W.LINES,0,2*this.edgeCount),this.edgeVAO.unbind()),this.pointCount>0&&((ee=this.pointPickShader).bind(),ee.uniforms=re,this.pointVAO.bind(),W.drawArrays(W.POINTS,0,this.pointCount),this.pointVAO.unbind())},z.pick=function(j){if(!j||j.id!==this.pickId)return null;for(var W=j.value[0]+256*j.value[1]+65536*j.value[2],Z=this.cells[W],ie=this.positions,te=new Array(Z.length),J=0;J<Z.length;++J)te[J]=ie[Z[J]];var X=j.coord[0],ee=j.coord[1];if(!this.pickVertex){var re=this.positions[Z[0]],oe=this.positions[Z[1]],ue=this.positions[Z[2]],ce=[(re[0]+oe[0]+ue[0])/3,(re[1]+oe[1]+ue[1])/3,(re[2]+oe[2]+ue[2])/3];return{_cellCenter:!0,position:[X,ee],index:W,cell:Z,cellId:W,intensity:this.intensity[W],dataCoordinate:ce}}var de=m(te,[X*this.pixelRatio,this._resolution[1]-ee*this.pixelRatio],this._model,this._view,this._projection,this._resolution);if(!de)return null;var me=de[2],_e=0;for(J=0;J<Z.length;++J)_e+=me[J]*this.intensity[Z[J]];return{position:de[1],index:Z[de[0]],cell:Z,cellId:W,intensity:_e,dataCoordinate:this.positions[Z[de[0]]]}},z.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.lineShader.dispose(),this.pointShader.dispose(),this.pickShader.dispose(),this.pointPickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleNormals.dispose(),this.triangleIds.dispose(),this.edgeVAO.dispose(),this.edgePositions.dispose(),this.edgeColors.dispose(),this.edgeUVs.dispose(),this.edgeIds.dispose(),this.pointVAO.dispose(),this.pointPositions.dispose(),this.pointColors.dispose(),this.pointUVs.dispose(),this.pointSizes.dispose(),this.pointIds.dispose(),this.contourVAO.dispose(),this.contourPositions.dispose(),this.contourShader.dispose()},h.exports=function(j,W){if(arguments.length===1&&(j=(W=j).gl),!(j.getExtension("OES_standard_derivatives")||j.getExtension("MOZ_OES_standard_derivatives")||j.getExtension("WEBKIT_OES_standard_derivatives")))throw new Error("derivatives not supported");var Z=function(qe){var ve=o(qe,x.vertex,x.fragment);return ve.attributes.position.location=0,ve.attributes.color.location=2,ve.attributes.uv.location=3,ve.attributes.normal.location=4,ve}(j),ie=function(qe){var ve=o(qe,T.vertex,T.fragment);return ve.attributes.position.location=0,ve.attributes.color.location=2,ve.attributes.uv.location=3,ve}(j),te=Y(j),J=D(j),X=G(j),ee=V(j),re=a(j,c(new Uint8Array([255,255,255,255]),[1,1,4]));re.generateMipmap(),re.minFilter=j.LINEAR_MIPMAP_LINEAR,re.magFilter=j.LINEAR;var oe=r(j),ue=r(j),ce=r(j),de=r(j),me=r(j),_e=n(j,[{buffer:oe,type:j.FLOAT,size:3},{buffer:me,type:j.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:ue,type:j.FLOAT,size:4},{buffer:ce,type:j.FLOAT,size:2},{buffer:de,type:j.FLOAT,size:3}]),Se=r(j),we=r(j),xe=r(j),De=r(j),Ee=n(j,[{buffer:Se,type:j.FLOAT,size:3},{buffer:De,type:j.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:we,type:j.FLOAT,size:4},{buffer:xe,type:j.FLOAT,size:2}]),Me=r(j),he=r(j),fe=r(j),ae=r(j),be=r(j),Ie=n(j,[{buffer:Me,type:j.FLOAT,size:3},{buffer:be,type:j.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:he,type:j.FLOAT,size:4},{buffer:fe,type:j.FLOAT,size:2},{buffer:ae,type:j.FLOAT,size:1}]),Te=r(j),Ne=new O(j,re,Z,ie,te,J,X,ee,oe,me,ue,ce,de,_e,Se,De,we,xe,Ee,Me,be,he,fe,ae,Ie,Te,n(j,[{buffer:Te,type:j.FLOAT,size:3}]));return Ne.update(W),Ne}},4554:function(h,l,t){h.exports=function(c){var b=c.gl;return new a(c,o(b,[0,0,0,1,1,0,1,1]),r(b,n.boxVert,n.lineFrag))};var o=t(5827),r=t(5158),n=t(2709);function a(c,b,g){this.plot=c,this.vbo=b,this.shader=g}var s,u,p=a.prototype;p.bind=function(){var c=this.shader;this.vbo.bind(),this.shader.bind(),c.attributes.coord.pointer(),c.uniforms.screenBox=this.plot.screenBox},p.drawBox=(s=[0,0],u=[0,0],function(c,b,g,f,v){var m=this.plot,x=this.shader,T=m.gl;s[0]=c,s[1]=b,u[0]=g,u[1]=f,x.uniforms.lo=s,x.uniforms.hi=u,x.uniforms.color=v,T.drawArrays(T.TRIANGLE_STRIP,0,4)}),p.dispose=function(){this.vbo.dispose(),this.shader.dispose()}},3016:function(h,l,t){h.exports=function(m){var x=m.gl;return new s(m,o(x),r(x,a.gridVert,a.gridFrag),r(x,a.tickVert,a.gridFrag))};var o=t(5827),r=t(5158),n=t(5070),a=t(2709);function s(m,x,T,d){this.plot=m,this.vbo=x,this.shader=T,this.tickShader=d,this.ticks=[[],[]]}function u(m,x){return m-x}var p,c,b,g,f,v=s.prototype;v.draw=(p=[0,0],c=[0,0],b=[0,0],function(){for(var m=this.plot,x=this.vbo,T=this.shader,d=this.ticks,M=m.gl,A=m._tickBounds,C=m.dataBox,P=m.viewBox,O=m.gridLineWidth,z=m.gridLineColor,B=m.gridLineEnable,Y=m.pixelRatio,D=0;D<2;++D){var G=A[D],V=A[D+2]-G,j=.5*(C[D+2]+C[D]),W=C[D+2]-C[D];c[D]=2*V/W,p[D]=2*(G-j)/W}T.bind(),x.bind(),T.attributes.dataCoord.pointer(),T.uniforms.dataShift=p,T.uniforms.dataScale=c;var Z=0;for(D=0;D<2;++D){b[0]=b[1]=0,b[D]=1,T.uniforms.dataAxis=b,T.uniforms.lineWidth=O[D]/(P[D+2]-P[D])*Y,T.uniforms.color=z[D];var ie=6*d[D].length;B[D]&&ie&&M.drawArrays(M.TRIANGLES,Z,ie),Z+=ie}}),v.drawTickMarks=function(){var m=[0,0],x=[0,0],T=[1,0],d=[0,1],M=[0,0],A=[0,0];return function(){for(var C=this.plot,P=this.vbo,O=this.tickShader,z=this.ticks,B=C.gl,Y=C._tickBounds,D=C.dataBox,G=C.viewBox,V=C.pixelRatio,j=C.screenBox,W=j[2]-j[0],Z=j[3]-j[1],ie=G[2]-G[0],te=G[3]-G[1],J=0;J<2;++J){var X=Y[J],ee=Y[J+2]-X,re=.5*(D[J+2]+D[J]),oe=D[J+2]-D[J];x[J]=2*ee/oe,m[J]=2*(X-re)/oe}x[0]*=ie/W,m[0]*=ie/W,x[1]*=te/Z,m[1]*=te/Z,O.bind(),P.bind(),O.attributes.dataCoord.pointer();var ue=O.uniforms;ue.dataShift=m,ue.dataScale=x;var ce=C.tickMarkLength,de=C.tickMarkWidth,me=C.tickMarkColor,_e=6*z[0].length,Se=Math.min(n.ge(z[0],(D[0]-Y[0])/(Y[2]-Y[0]),u),z[0].length),we=Math.min(n.gt(z[0],(D[2]-Y[0])/(Y[2]-Y[0]),u),z[0].length),xe=0+6*Se,De=6*Math.max(0,we-Se),Ee=Math.min(n.ge(z[1],(D[1]-Y[1])/(Y[3]-Y[1]),u),z[1].length),Me=Math.min(n.gt(z[1],(D[3]-Y[1])/(Y[3]-Y[1]),u),z[1].length),he=_e+6*Ee,fe=6*Math.max(0,Me-Ee);M[0]=2*(G[0]-ce[1])/W-1,M[1]=(G[3]+G[1])/Z-1,A[0]=ce[1]*V/W,A[1]=de[1]*V/Z,fe&&(ue.color=me[1],ue.tickScale=A,ue.dataAxis=d,ue.screenOffset=M,B.drawArrays(B.TRIANGLES,he,fe)),M[0]=(G[2]+G[0])/W-1,M[1]=2*(G[1]-ce[0])/Z-1,A[0]=de[0]*V/W,A[1]=ce[0]*V/Z,De&&(ue.color=me[0],ue.tickScale=A,ue.dataAxis=T,ue.screenOffset=M,B.drawArrays(B.TRIANGLES,xe,De)),M[0]=2*(G[2]+ce[3])/W-1,M[1]=(G[3]+G[1])/Z-1,A[0]=ce[3]*V/W,A[1]=de[3]*V/Z,fe&&(ue.color=me[3],ue.tickScale=A,ue.dataAxis=d,ue.screenOffset=M,B.drawArrays(B.TRIANGLES,he,fe)),M[0]=(G[2]+G[0])/W-1,M[1]=2*(G[3]+ce[2])/Z-1,A[0]=de[2]*V/W,A[1]=ce[2]*V/Z,De&&(ue.color=me[2],ue.tickScale=A,ue.dataAxis=T,ue.screenOffset=M,B.drawArrays(B.TRIANGLES,xe,De))}}(),v.update=(g=[1,1,-1,-1,1,-1],f=[1,-1,1,1,-1,-1],function(m){for(var x=m.ticks,T=m.bounds,d=new Float32Array(18*(x[0].length+x[1].length)),M=(this.plot.zeroLineEnable,0),A=[[],[]],C=0;C<2;++C)for(var P=A[C],O=x[C],z=T[C],B=T[C+2],Y=0;Y<O.length;++Y){var D=(O[Y].x-z)/(B-z);P.push(D);for(var G=0;G<6;++G)d[M++]=D,d[M++]=g[G],d[M++]=f[G]}this.ticks=A,this.vbo.update(d)}),v.dispose=function(){this.vbo.dispose(),this.shader.dispose(),this.tickShader.dispose()}},1154:function(h,l,t){h.exports=function(c){var b=c.gl;return new a(c,o(b,[-1,-1,-1,1,1,-1,1,1]),r(b,n.lineVert,n.lineFrag))};var o=t(5827),r=t(5158),n=t(2709);function a(c,b,g){this.plot=c,this.vbo=b,this.shader=g}var s,u,p=a.prototype;p.bind=function(){var c=this.shader;this.vbo.bind(),this.shader.bind(),c.attributes.coord.pointer(),c.uniforms.screenBox=this.plot.screenBox},p.drawLine=(s=[0,0],u=[0,0],function(c,b,g,f,v,m){var x=this.plot,T=this.shader,d=x.gl;s[0]=c,s[1]=b,u[0]=g,u[1]=f,T.uniforms.start=s,T.uniforms.end=u,T.uniforms.width=v*x.pixelRatio,T.uniforms.color=m,d.drawArrays(d.TRIANGLE_STRIP,0,4)}),p.dispose=function(){this.vbo.dispose(),this.shader.dispose()}},2709:function(h,l,t){var o=t(6832),r=o([`precision lowp float;
|
||
#define GLSLIFY 1
|
||
uniform vec4 color;
|
||
void main() {
|
||
gl_FragColor = vec4(color.xyz * color.w, color.w);
|
||
}
|
||
`]);h.exports={lineVert:o([`precision mediump float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute vec2 coord;
|
||
|
||
uniform vec4 screenBox;
|
||
uniform vec2 start, end;
|
||
uniform float width;
|
||
|
||
vec2 perp(vec2 v) {
|
||
return vec2(v.y, -v.x);
|
||
}
|
||
|
||
vec2 screen(vec2 v) {
|
||
return 2.0 * (v - screenBox.xy) / (screenBox.zw - screenBox.xy) - 1.0;
|
||
}
|
||
|
||
void main() {
|
||
vec2 delta = normalize(perp(start - end));
|
||
vec2 offset = mix(start, end, 0.5 * (coord.y+1.0));
|
||
gl_Position = vec4(screen(offset + 0.5 * width * delta * coord.x), 0, 1);
|
||
}
|
||
`]),lineFrag:r,textVert:o([`#define GLSLIFY 1
|
||
attribute vec3 textCoordinate;
|
||
|
||
uniform vec2 dataScale, dataShift, dataAxis, screenOffset, textScale;
|
||
uniform float angle;
|
||
|
||
void main() {
|
||
float dataOffset = textCoordinate.z;
|
||
vec2 glyphOffset = textCoordinate.xy;
|
||
mat2 glyphMatrix = mat2(cos(angle), sin(angle), -sin(angle), cos(angle));
|
||
vec2 screenCoordinate = dataAxis * (dataScale * dataOffset + dataShift) +
|
||
glyphMatrix * glyphOffset * textScale + screenOffset;
|
||
gl_Position = vec4(screenCoordinate, 0, 1);
|
||
}
|
||
`]),textFrag:r,gridVert:o([`precision mediump float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute vec3 dataCoord;
|
||
|
||
uniform vec2 dataAxis, dataShift, dataScale;
|
||
uniform float lineWidth;
|
||
|
||
void main() {
|
||
vec2 pos = dataAxis * (dataScale * dataCoord.x + dataShift);
|
||
pos += 10.0 * dataCoord.y * vec2(dataAxis.y, -dataAxis.x) + dataCoord.z * lineWidth;
|
||
gl_Position = vec4(pos, 0, 1);
|
||
}
|
||
`]),gridFrag:r,boxVert:o([`precision mediump float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute vec2 coord;
|
||
|
||
uniform vec4 screenBox;
|
||
uniform vec2 lo, hi;
|
||
|
||
vec2 screen(vec2 v) {
|
||
return 2.0 * (v - screenBox.xy) / (screenBox.zw - screenBox.xy) - 1.0;
|
||
}
|
||
|
||
void main() {
|
||
gl_Position = vec4(screen(mix(lo, hi, coord)), 0, 1);
|
||
}
|
||
`]),tickVert:o([`precision mediump float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute vec3 dataCoord;
|
||
|
||
uniform vec2 dataAxis, dataShift, dataScale, screenOffset, tickScale;
|
||
|
||
void main() {
|
||
vec2 pos = dataAxis * (dataScale * dataCoord.x + dataShift);
|
||
gl_Position = vec4(pos + tickScale*dataCoord.yz + screenOffset, 0, 1);
|
||
}
|
||
`])}},5613:function(h,l,t){h.exports=function(x){var T=x.gl;return new u(x,o(T),r(T,s.textVert,s.textFrag))};var o=t(5827),r=t(5158),n=t(6946),a=t(5070),s=t(2709);function u(x,T,d){this.plot=x,this.vbo=T,this.shader=d,this.tickOffset=[[],[]],this.tickX=[[],[]],this.labelOffset=[0,0],this.labelCount=[0,0]}var p,c,b,g,f,v,m=u.prototype;m.drawTicks=(p=[0,0],c=[0,0],b=[0,0],function(x){var T=this.plot,d=this.shader,M=this.tickX[x],A=this.tickOffset[x],C=T.gl,P=T.viewBox,O=T.dataBox,z=T.screenBox,B=T.pixelRatio,Y=T.tickEnable,D=T.tickPad,G=T.tickColor,V=T.tickAngle,j=T.labelEnable,W=T.labelPad,Z=T.labelColor,ie=T.labelAngle,te=this.labelOffset[x],J=this.labelCount[x],X=a.lt(M,O[x]),ee=a.le(M,O[x+2]);p[0]=p[1]=0,p[x]=1,c[x]=(P[2+x]+P[x])/(z[2+x]-z[x])-1;var re=2/z[2+(1^x)]-z[1^x];c[1^x]=re*P[1^x]-1,Y[x]&&(c[1^x]-=re*B*D[x],X<ee&&A[ee]>A[X]&&(d.uniforms.dataAxis=p,d.uniforms.screenOffset=c,d.uniforms.color=G[x],d.uniforms.angle=V[x],C.drawArrays(C.TRIANGLES,A[X],A[ee]-A[X]))),j[x]&&J&&(c[1^x]-=re*B*W[x],d.uniforms.dataAxis=b,d.uniforms.screenOffset=c,d.uniforms.color=Z[x],d.uniforms.angle=ie[x],C.drawArrays(C.TRIANGLES,te,J)),c[1^x]=re*P[2+(1^x)]-1,Y[x+2]&&(c[1^x]+=re*B*D[x+2],X<ee&&A[ee]>A[X]&&(d.uniforms.dataAxis=p,d.uniforms.screenOffset=c,d.uniforms.color=G[x+2],d.uniforms.angle=V[x+2],C.drawArrays(C.TRIANGLES,A[X],A[ee]-A[X]))),j[x+2]&&J&&(c[1^x]+=re*B*W[x+2],d.uniforms.dataAxis=b,d.uniforms.screenOffset=c,d.uniforms.color=Z[x+2],d.uniforms.angle=ie[x+2],C.drawArrays(C.TRIANGLES,te,J))}),m.drawTitle=function(){var x=[0,0],T=[0,0];return function(){var d=this.plot,M=this.shader,A=d.gl,C=d.screenBox,P=d.titleCenter,O=d.titleAngle,z=d.titleColor,B=d.pixelRatio;if(this.titleCount){for(var Y=0;Y<2;++Y)T[Y]=2*(P[Y]*B-C[Y])/(C[2+Y]-C[Y])-1;M.bind(),M.uniforms.dataAxis=x,M.uniforms.screenOffset=T,M.uniforms.angle=O,M.uniforms.color=z,A.drawArrays(A.TRIANGLES,this.titleOffset,this.titleCount)}}}(),m.bind=(g=[0,0],f=[0,0],v=[0,0],function(){var x=this.plot,T=this.shader,d=x._tickBounds,M=x.dataBox,A=x.screenBox,C=x.viewBox;T.bind();for(var P=0;P<2;++P){var O=d[P],z=d[P+2]-O,B=.5*(M[P+2]+M[P]),Y=M[P+2]-M[P],D=C[P],G=C[P+2]-D,V=A[P],j=A[P+2]-V;f[P]=2*z/Y*G/j,g[P]=2*(O-B)/Y*G/j}v[1]=2*x.pixelRatio/(A[3]-A[1]),v[0]=v[1]*(A[3]-A[1])/(A[2]-A[0]),T.uniforms.dataScale=f,T.uniforms.dataShift=g,T.uniforms.textScale=v,this.vbo.bind(),T.attributes.textCoordinate.pointer()}),m.update=function(x){var T,d,M,A,C,P=[],O=x.ticks,z=x.bounds;for(C=0;C<2;++C){var B=[Math.floor(P.length/3)],Y=[-1/0],D=O[C];for(T=0;T<D.length;++T){var G=D[T],V=G.x,j=G.text,W=G.font||"sans-serif";A=G.fontSize||12;for(var Z=1/(z[C+2]-z[C]),ie=z[C],te=j.split(`
|
||
`),J=0;J<te.length;J++)for(M=n(W,te[J]).data,d=0;d<M.length;d+=2)P.push(M[d]*A,-M[d+1]*A-J*A*1.2,(V-ie)*Z);B.push(Math.floor(P.length/3)),Y.push(V)}this.tickOffset[C]=B,this.tickX[C]=Y}for(C=0;C<2;++C){for(this.labelOffset[C]=Math.floor(P.length/3),M=n(x.labelFont[C],x.labels[C],{textAlign:"center"}).data,A=x.labelSize[C],T=0;T<M.length;T+=2)P.push(M[T]*A,-M[T+1]*A,0);this.labelCount[C]=Math.floor(P.length/3)-this.labelOffset[C]}for(this.titleOffset=Math.floor(P.length/3),M=n(x.titleFont,x.title).data,A=x.titleSize,T=0;T<M.length;T+=2)P.push(M[T]*A,-M[T+1]*A,0);this.titleCount=Math.floor(P.length/3)-this.titleOffset,this.vbo.update(P)},m.dispose=function(){this.vbo.dispose(),this.shader.dispose()}},2117:function(h,l,t){h.exports=function(g){var f=g.gl,v=new u(f,o(f,[f.drawingBufferWidth,f.drawingBufferHeight]));return v.grid=r(v),v.text=n(v),v.line=a(v),v.box=s(v),v.update(g),v};var o=t(2611),r=t(3016),n=t(5613),a=t(1154),s=t(4554);function u(g,f){this.gl=g,this.pickBuffer=f,this.screenBox=[0,0,g.drawingBufferWidth,g.drawingBufferHeight],this.viewBox=[0,0,0,0],this.dataBox=[-10,-10,10,10],this.gridLineEnable=[!0,!0],this.gridLineWidth=[1,1],this.gridLineColor=[[0,0,0,1],[0,0,0,1]],this.pixelRatio=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.tickPad=[15,15,15,15],this.tickAngle=[0,0,0,0],this.tickEnable=[!0,!0,!0,!0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[15,15,15,15],this.labelAngle=[0,Math.PI/2,0,3*Math.PI/2],this.labelEnable=[!0,!0,!0,!0],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.titleCenter=[0,0],this.titleEnable=!0,this.titleAngle=0,this.titleColor=[0,0,0,1],this.borderColor=[0,0,0,0],this.backgroundColor=[0,0,0,0],this.zeroLineEnable=[!0,!0],this.zeroLineWidth=[4,4],this.zeroLineColor=[[0,0,0,1],[0,0,0,1]],this.borderLineEnable=[!0,!0,!0,!0],this.borderLineWidth=[2,2,2,2],this.borderLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.grid=null,this.text=null,this.line=null,this.box=null,this.objects=[],this.overlays=[],this._tickBounds=[1/0,1/0,-1/0,-1/0],this.static=!1,this.dirty=!1,this.pickDirty=!1,this.pickDelay=120,this.pickRadius=10,this._pickTimeout=null,this._drawPick=this.drawPick.bind(this),this._depthCounter=0}var p=u.prototype;function c(g){for(var f=g.slice(),v=0;v<f.length;++v)f[v]=f[v].slice();return f}function b(g,f){return g.x-f.x}p.setDirty=function(){this.dirty=this.pickDirty=!0},p.setOverlayDirty=function(){this.dirty=!0},p.nextDepthValue=function(){return this._depthCounter++/65536},p.draw=function(){var g=this.gl,f=this.screenBox,v=this.viewBox,m=this.dataBox,x=this.pixelRatio,T=this.grid,d=this.line,M=this.text,A=this.objects;if(this._depthCounter=0,this.pickDirty&&(this._pickTimeout&&clearTimeout(this._pickTimeout),this.pickDirty=!1,this._pickTimeout=setTimeout(this._drawPick,this.pickDelay)),this.dirty){if(this.dirty=!1,g.bindFramebuffer(g.FRAMEBUFFER,null),g.enable(g.SCISSOR_TEST),g.disable(g.DEPTH_TEST),g.depthFunc(g.LESS),g.depthMask(!1),g.enable(g.BLEND),g.blendEquation(g.FUNC_ADD,g.FUNC_ADD),g.blendFunc(g.ONE,g.ONE_MINUS_SRC_ALPHA),this.borderColor){g.scissor(f[0],f[1],f[2]-f[0],f[3]-f[1]);var C=this.borderColor;g.clearColor(C[0]*C[3],C[1]*C[3],C[2]*C[3],C[3]),g.clear(g.COLOR_BUFFER_BIT|g.DEPTH_BUFFER_BIT)}g.scissor(v[0],v[1],v[2]-v[0],v[3]-v[1]),g.viewport(v[0],v[1],v[2]-v[0],v[3]-v[1]);var P=this.backgroundColor;g.clearColor(P[0]*P[3],P[1]*P[3],P[2]*P[3],P[3]),g.clear(g.COLOR_BUFFER_BIT),T.draw();var O=this.zeroLineEnable,z=this.zeroLineColor,B=this.zeroLineWidth;if(O[0]||O[1]){d.bind();for(var Y=0;Y<2;++Y)if(O[Y]&&m[Y]<=0&&m[Y+2]>=0){var D=f[Y]-m[Y]*(f[Y+2]-f[Y])/(m[Y+2]-m[Y]);Y===0?d.drawLine(D,f[1],D,f[3],B[Y],z[Y]):d.drawLine(f[0],D,f[2],D,B[Y],z[Y])}}for(Y=0;Y<A.length;++Y)A[Y].draw();g.viewport(f[0],f[1],f[2]-f[0],f[3]-f[1]),g.scissor(f[0],f[1],f[2]-f[0],f[3]-f[1]),this.grid.drawTickMarks(),d.bind();var G=this.borderLineEnable,V=this.borderLineWidth,j=this.borderLineColor;for(G[1]&&d.drawLine(v[0],v[1]-.5*V[1]*x,v[0],v[3]+.5*V[3]*x,V[1],j[1]),G[0]&&d.drawLine(v[0]-.5*V[0]*x,v[1],v[2]+.5*V[2]*x,v[1],V[0],j[0]),G[3]&&d.drawLine(v[2],v[1]-.5*V[1]*x,v[2],v[3]+.5*V[3]*x,V[3],j[3]),G[2]&&d.drawLine(v[0]-.5*V[0]*x,v[3],v[2]+.5*V[2]*x,v[3],V[2],j[2]),M.bind(),Y=0;Y<2;++Y)M.drawTicks(Y);this.titleEnable&&M.drawTitle();var W=this.overlays;for(Y=0;Y<W.length;++Y)W[Y].draw();g.disable(g.SCISSOR_TEST),g.disable(g.BLEND),g.depthMask(!0)}},p.drawPick=function(){if(!this.static){var g=this.pickBuffer;this.gl,this._pickTimeout=null,g.begin();for(var f=1,v=this.objects,m=0;m<v.length;++m)f=v[m].drawPick(f);g.end()}},p.pick=function(g,f){if(!this.static){var v=this.pixelRatio,m=this.pickPixelRatio,x=this.viewBox,T=0|Math.round((g-x[0]/v)*m),d=0|Math.round((f-x[1]/v)*m),M=this.pickBuffer.query(T,d,this.pickRadius);if(!M)return null;for(var A=M.id+(M.value[0]<<8)+(M.value[1]<<16)+(M.value[2]<<24),C=this.objects,P=0;P<C.length;++P){var O=C[P].pick(T,d,A);if(O)return O}return null}},p.setScreenBox=function(g){var f=this.screenBox,v=this.pixelRatio;f[0]=0|Math.round(g[0]*v),f[1]=0|Math.round(g[1]*v),f[2]=0|Math.round(g[2]*v),f[3]=0|Math.round(g[3]*v),this.setDirty()},p.setDataBox=function(g){var f=this.dataBox;(f[0]!==g[0]||f[1]!==g[1]||f[2]!==g[2]||f[3]!==g[3])&&(f[0]=g[0],f[1]=g[1],f[2]=g[2],f[3]=g[3],this.setDirty())},p.setViewBox=function(g){var f=this.pixelRatio,v=this.viewBox;v[0]=0|Math.round(g[0]*f),v[1]=0|Math.round(g[1]*f),v[2]=0|Math.round(g[2]*f),v[3]=0|Math.round(g[3]*f);var m=this.pickPixelRatio;this.pickBuffer.shape=[0|Math.round((g[2]-g[0])*m),0|Math.round((g[3]-g[1])*m)],this.setDirty()},p.update=function(g){g=g||{};var f=this.gl;this.pixelRatio=g.pixelRatio||1;var v=this.pixelRatio;this.pickPixelRatio=Math.max(v,1),this.setScreenBox(g.screenBox||[0,0,f.drawingBufferWidth/v,f.drawingBufferHeight/v]),this.screenBox,this.setViewBox(g.viewBox||[.125*(this.screenBox[2]-this.screenBox[0])/v,.125*(this.screenBox[3]-this.screenBox[1])/v,.875*(this.screenBox[2]-this.screenBox[0])/v,.875*(this.screenBox[3]-this.screenBox[1])/v]);var m=this.viewBox,x=(m[2]-m[0])/(m[3]-m[1]);this.setDataBox(g.dataBox||[-10,-10/x,10,10/x]),this.borderColor=g.borderColor!==!1&&(g.borderColor||[0,0,0,0]).slice(),this.backgroundColor=(g.backgroundColor||[0,0,0,0]).slice(),this.gridLineEnable=(g.gridLineEnable||[!0,!0]).slice(),this.gridLineWidth=(g.gridLineWidth||[1,1]).slice(),this.gridLineColor=c(g.gridLineColor||[[.5,.5,.5,1],[.5,.5,.5,1]]),this.zeroLineEnable=(g.zeroLineEnable||[!0,!0]).slice(),this.zeroLineWidth=(g.zeroLineWidth||[4,4]).slice(),this.zeroLineColor=c(g.zeroLineColor||[[0,0,0,1],[0,0,0,1]]),this.tickMarkLength=(g.tickMarkLength||[0,0,0,0]).slice(),this.tickMarkWidth=(g.tickMarkWidth||[0,0,0,0]).slice(),this.tickMarkColor=c(g.tickMarkColor||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]),this.titleCenter=(g.titleCenter||[.5*(m[0]+m[2])/v,(m[3]+120)/v]).slice(),this.titleEnable=!("titleEnable"in g)||!!g.titleEnable,this.titleAngle=g.titleAngle||0,this.titleColor=(g.titleColor||[0,0,0,1]).slice(),this.labelPad=(g.labelPad||[15,15,15,15]).slice(),this.labelAngle=(g.labelAngle||[0,Math.PI/2,0,3*Math.PI/2]).slice(),this.labelEnable=(g.labelEnable||[!0,!0,!0,!0]).slice(),this.labelColor=c(g.labelColor||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]),this.tickPad=(g.tickPad||[15,15,15,15]).slice(),this.tickAngle=(g.tickAngle||[0,0,0,0]).slice(),this.tickEnable=(g.tickEnable||[!0,!0,!0,!0]).slice(),this.tickColor=c(g.tickColor||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]),this.borderLineEnable=(g.borderLineEnable||[!0,!0,!0,!0]).slice(),this.borderLineWidth=(g.borderLineWidth||[2,2,2,2]).slice(),this.borderLineColor=c(g.borderLineColor||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]);var T=g.ticks||[[],[]],d=this._tickBounds;d[0]=d[1]=1/0,d[2]=d[3]=-1/0;for(var M=0;M<2;++M){var A=T[M].slice(0);A.length!==0&&(A.sort(b),d[M]=Math.min(d[M],A[0].x),d[M+2]=Math.max(d[M+2],A[A.length-1].x))}this.grid.update({bounds:d,ticks:T}),this.text.update({bounds:d,ticks:T,labels:g.labels||["x","y"],labelSize:g.labelSize||[12,12],labelFont:g.labelFont||["sans-serif","sans-serif"],title:g.title||"",titleSize:g.titleSize||18,titleFont:g.titleFont||"sans-serif"}),this.static=!!g.static,this.setDirty()},p.dispose=function(){this.box.dispose(),this.grid.dispose(),this.text.dispose(),this.line.dispose();for(var g=this.objects.length-1;g>=0;--g)this.objects[g].dispose();for(this.objects.length=0,g=this.overlays.length-1;g>=0;--g)this.overlays[g].dispose();this.overlays.length=0,this.gl=null},p.addObject=function(g){this.objects.indexOf(g)<0&&(this.objects.push(g),this.setDirty())},p.removeObject=function(g){for(var f=this.objects,v=0;v<f.length;++v)if(f[v]===g){f.splice(v,1),this.setDirty();break}},p.addOverlay=function(g){this.overlays.indexOf(g)<0&&(this.overlays.push(g),this.setOverlayDirty())},p.removeOverlay=function(g){for(var f=this.overlays,v=0;v<f.length;++v)if(f[v]===g){f.splice(v,1),this.setOverlayDirty();break}}},4296:function(h,l,t){h.exports=function(p,c){p=p||document.body;var b=[.01,1/0];"distanceLimits"in(c=c||{})&&(b[0]=c.distanceLimits[0],b[1]=c.distanceLimits[1]),"zoomMin"in c&&(b[0]=c.zoomMin),"zoomMax"in c&&(b[1]=c.zoomMax);var g=r({center:c.center||[0,0,0],up:c.up||[0,1,0],eye:c.eye||[0,0,10],mode:c.mode||"orbit",distanceLimits:b}),f=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],v=0,m=p.clientWidth,x=p.clientHeight,T={keyBindingMode:"rotate",enableWheel:!0,view:g,element:p,delay:c.delay||16,rotateSpeed:c.rotateSpeed||1,zoomSpeed:c.zoomSpeed||1,translateSpeed:c.translateSpeed||1,flipX:!!c.flipX,flipY:!!c.flipY,modes:g.modes,_ortho:c._ortho||c.projection&&c.projection.type==="orthographic"||!1,tick:function(){var d=o(),M=this.delay,A=d-2*M;g.idle(d-M),g.recalcMatrix(A),g.flush(d-(100+2*M));for(var C=!0,P=g.computedMatrix,O=0;O<16;++O)C=C&&f[O]===P[O],f[O]=P[O];var z=p.clientWidth===m&&p.clientHeight===x;return m=p.clientWidth,x=p.clientHeight,C?!z:(v=Math.exp(g.computedRadius[0]),!0)},lookAt:function(d,M,A){g.lookAt(g.lastT(),d,M,A)},rotate:function(d,M,A){g.rotate(g.lastT(),d,M,A)},pan:function(d,M,A){g.pan(g.lastT(),d,M,A)},translate:function(d,M,A){g.translate(g.lastT(),d,M,A)}};return Object.defineProperties(T,{matrix:{get:function(){return g.computedMatrix},set:function(d){return g.setMatrix(g.lastT(),d),g.computedMatrix},enumerable:!0},mode:{get:function(){return g.getMode()},set:function(d){var M=g.computedUp.slice(),A=g.computedEye.slice(),C=g.computedCenter.slice();if(g.setMode(d),d==="turntable"){var P=o();g._active.lookAt(P,A,C,M),g._active.lookAt(P+500,A,C,[0,0,1]),g._active.flush(P)}return g.getMode()},enumerable:!0},center:{get:function(){return g.computedCenter},set:function(d){return g.lookAt(g.lastT(),null,d),g.computedCenter},enumerable:!0},eye:{get:function(){return g.computedEye},set:function(d){return g.lookAt(g.lastT(),d),g.computedEye},enumerable:!0},up:{get:function(){return g.computedUp},set:function(d){return g.lookAt(g.lastT(),null,null,d),g.computedUp},enumerable:!0},distance:{get:function(){return v},set:function(d){return g.setDistance(g.lastT(),d),d},enumerable:!0},distanceLimits:{get:function(){return g.getDistanceLimits(b)},set:function(d){return g.setDistanceLimits(d),d},enumerable:!0}}),p.addEventListener("contextmenu",function(d){return d.preventDefault(),!1}),T._lastX=-1,T._lastY=-1,T._lastMods={shift:!1,control:!1,alt:!1,meta:!1},T.enableMouseListeners=function(){function d(M,A,C,P){var O=T.keyBindingMode;if(O!==!1){var z=O==="rotate",B=O==="pan",Y=O==="zoom",D=!!P.control,G=!!P.alt,V=!!P.shift,j=!!(1&M),W=!!(2&M),Z=!!(4&M),ie=1/p.clientHeight,te=ie*(A-T._lastX),J=ie*(C-T._lastY),X=T.flipX?1:-1,ee=T.flipY?1:-1,re=Math.PI*T.rotateSpeed,oe=o();if(T._lastX!==-1&&T._lastY!==-1&&((z&&j&&!D&&!G&&!V||j&&!D&&!G&&V)&&g.rotate(oe,X*re*te,-ee*re*J,0),(B&&j&&!D&&!G&&!V||W||j&&D&&!G&&!V)&&g.pan(oe,-T.translateSpeed*te*v,T.translateSpeed*J*v,0),Y&&j&&!D&&!G&&!V||Z||j&&!D&&G&&!V)){var ue=-T.zoomSpeed*J/window.innerHeight*(oe-g.lastT())*100;g.pan(oe,0,0,v*(Math.exp(ue)-1))}return T._lastX=A,T._lastY=C,T._lastMods=P,!0}}T.mouseListener=n(p,d),p.addEventListener("touchstart",function(M){var A=s(M.changedTouches[0],p);d(0,A[0],A[1],T._lastMods),d(1,A[0],A[1],T._lastMods)},!!u&&{passive:!0}),p.addEventListener("touchmove",function(M){var A=s(M.changedTouches[0],p);d(1,A[0],A[1],T._lastMods),M.preventDefault()},!!u&&{passive:!1}),p.addEventListener("touchend",function(M){d(0,T._lastX,T._lastY,T._lastMods)},!!u&&{passive:!0}),T.wheelListener=a(p,function(M,A){if(T.keyBindingMode!==!1&&T.enableWheel){var C=T.flipX?1:-1,P=T.flipY?1:-1,O=o();if(Math.abs(M)>Math.abs(A))g.rotate(O,0,0,-M*C*Math.PI*T.rotateSpeed/window.innerWidth);else if(!T._ortho){var z=-T.zoomSpeed*P*A/window.innerHeight*(O-g.lastT())/20;g.pan(O,0,0,v*(Math.exp(z)-1))}}},!0)},T.enableMouseListeners(),T};var o=t(8161),r=t(1152),n=t(6145),a=t(6475),s=t(2565),u=t(5233)},8245:function(h,l,t){var o=t(6832),r=t(5158),n=o([`precision mediump float;
|
||
#define GLSLIFY 1
|
||
attribute vec2 position;
|
||
varying vec2 uv;
|
||
void main() {
|
||
uv = position;
|
||
gl_Position = vec4(position, 0, 1);
|
||
}`]),a=o([`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);
|
||
}`]);h.exports=function(s){return r(s,n,a,null,[{name:"position",type:"vec2"}])}},1059:function(h,l,t){var o=t(4296),r=t(7453),n=t(2771),a=t(6496),s=t(2611),u=t(4234),p=t(8126),c=t(6145),b=t(1120),g=t(5268),f=t(8245),v=t(2321)({tablet:!0,featureDetect:!0});function m(){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 x(d){var M=Math.round(Math.log(Math.abs(d))/Math.log(10));if(M<0){var A=Math.round(Math.pow(10,-M));return Math.ceil(d*A)/A}return M>0?(A=Math.round(Math.pow(10,M)),Math.ceil(d/A)*A):Math.ceil(d)}function T(d){return typeof d!="boolean"||d}h.exports={createScene:function(d){(d=d||{}).camera=d.camera||{};var M=d.canvas;M||(M=document.createElement("canvas"),d.container?d.container.appendChild(M):document.body.appendChild(M));var A=d.gl;if(A||(d.glOptions&&(v=!!d.glOptions.preserveDrawingBuffer),A=function(De,Ee){var Me=null;try{(Me=De.getContext("webgl",Ee))||(Me=De.getContext("experimental-webgl",Ee))}catch{return null}return Me}(M,d.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:v})),!A)throw new Error("webgl not supported");var C=d.bounds||[[-10,-10,-10],[10,10,10]],P=new m,O=u(A,A.drawingBufferWidth,A.drawingBufferHeight,{preferFloat:!v}),z=f(A),B=d.cameraObject&&d.cameraObject._ortho===!0||d.camera.projection&&d.camera.projection.type==="orthographic"||!1,Y={eye:d.camera.eye||[2,0,0],center:d.camera.center||[0,0,0],up:d.camera.up||[0,1,0],zoomMin:d.camera.zoomMax||.1,zoomMax:d.camera.zoomMin||100,mode:d.camera.mode||"turntable",_ortho:B},D=d.axes||{},G=r(A,D);G.enable=!D.disable;var V=d.spikes||{},j=a(A,V),W=[],Z=[],ie=[],te=[],J=!0,X=!0,ee={view:null,projection:new Array(16),model:new Array(16),_ortho:!1},re=(X=!0,[A.drawingBufferWidth,A.drawingBufferHeight]),oe=d.cameraObject||o(M,Y),ue={gl:A,contextLost:!1,pixelRatio:d.pixelRatio||1,canvas:M,selection:P,camera:oe,axes:G,axesPixels:null,spikes:j,bounds:C,objects:W,shape:re,aspect:d.aspectRatio||[1,1,1],pickRadius:d.pickRadius||10,zNear:d.zNear||.01,zFar:d.zFar||1e3,fovy:d.fovy||Math.PI/4,clearColor:d.clearColor||[0,0,0,0],autoResize:T(d.autoResize),autoBounds:T(d.autoBounds),autoScale:!!d.autoScale,autoCenter:T(d.autoCenter),clipToBounds:T(d.clipToBounds),snapToData:!!d.snapToData,onselect:d.onselect||null,onrender:d.onrender||null,onclick:d.onclick||null,cameraParams:ee,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(De){this.aspect[0]=De.x,this.aspect[1]=De.y,this.aspect[2]=De.z,X=!0},setBounds:function(De,Ee){this.bounds[0][De]=Ee.min,this.bounds[1][De]=Ee.max},setClearColor:function(De){this.clearColor=De},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)}},ce=[A.drawingBufferWidth/ue.pixelRatio|0,A.drawingBufferHeight/ue.pixelRatio|0];function de(){if(!ue._stopped&&ue.autoResize){var De=M.parentNode,Ee=1,Me=1;De&&De!==document.body?(Ee=De.clientWidth,Me=De.clientHeight):(Ee=window.innerWidth,Me=window.innerHeight);var he=0|Math.ceil(Ee*ue.pixelRatio),fe=0|Math.ceil(Me*ue.pixelRatio);if(he!==M.width||fe!==M.height){M.width=he,M.height=fe;var ae=M.style;ae.position=ae.position||"absolute",ae.left="0px",ae.top="0px",ae.width=Ee+"px",ae.height=Me+"px",J=!0}}}function me(){for(var De=W.length,Ee=te.length,Me=0;Me<Ee;++Me)ie[Me]=0;e:for(Me=0;Me<De;++Me){var he=W[Me],fe=he.pickSlots;if(fe){for(var ae=0;ae<Ee;++ae)if(ie[ae]+fe<255){Z[Me]=ae,he.setPickBase(ie[ae]+1),ie[ae]+=fe;continue e}var be=s(A,re);Z[Me]=Ee,te.push(be),ie.push(fe),he.setPickBase(1),Ee+=1}else Z[Me]=-1}for(;Ee>0&&ie[Ee-1]===0;)ie.pop(),te.pop().dispose()}function _e(){if(ue.contextLost)return!0;A.isContextLost()&&(ue.contextLost=!0,ue.mouseListener.enabled=!1,ue.selection.object=null,ue.oncontextloss&&ue.oncontextloss())}ue.autoResize&&de(),window.addEventListener("resize",de),ue.update=function(De){ue._stopped||(J=!0,X=!0)},ue.add=function(De){ue._stopped||(De.axes=G,W.push(De),Z.push(-1),J=!0,X=!0,me())},ue.remove=function(De){if(!ue._stopped){var Ee=W.indexOf(De);Ee<0||(W.splice(Ee,1),Z.pop(),J=!0,X=!0,me())}},ue.dispose=function(){if(!ue._stopped&&(ue._stopped=!0,window.removeEventListener("resize",de),M.removeEventListener("webglcontextlost",_e),ue.mouseListener.enabled=!1,!ue.contextLost)){G.dispose(),j.dispose();for(var De=0;De<W.length;++De)W[De].dispose();for(O.dispose(),De=0;De<te.length;++De)te[De].dispose();z.dispose(),A=null,G=null,j=null,W=[]}},ue._mouseRotating=!1,ue._prevButtons=0,ue.enableMouseListeners=function(){ue.mouseListener=c(M,function(De,Ee,Me){if(!ue._stopped){var he=te.length,fe=W.length,ae=P.object;P.distance=1/0,P.mouse[0]=Ee,P.mouse[1]=Me,P.object=null,P.screen=null,P.dataCoordinate=P.dataPosition=null;var be=!1;if(De&&ue._prevButtons)ue._mouseRotating=!0;else{ue._mouseRotating&&(X=!0),ue._mouseRotating=!1;for(var Ie=0;Ie<he;++Ie){var Te=te[Ie].query(Ee,ce[1]-Me-1,ue.pickRadius);if(Te){if(Te.distance>P.distance)continue;for(var Ne=0;Ne<fe;++Ne){var qe=W[Ne];if(Z[Ne]===Ie){var ve=qe.pick(Te);ve&&(P.buttons=De,P.screen=Te.coord,P.distance=Te.distance,P.object=qe,P.index=ve.distance,P.dataPosition=ve.position,P.dataCoordinate=ve.dataCoordinate,P.data=ve,be=!0)}}}}}ae&&ae!==P.object&&(ae.highlight&&ae.highlight(null),J=!0),P.object&&(P.object.highlight&&P.object.highlight(P.data),J=!0),(be=be||P.object!==ae)&&ue.onselect&&ue.onselect(P),1&De&&!(1&ue._prevButtons)&&ue.onclick&&ue.onclick(P),ue._prevButtons=De}})},M.addEventListener("webglcontextlost",_e);var Se=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],we=[Se[0].slice(),Se[1].slice()];function xe(){if(!_e()){de();var De=ue.camera.tick();ee.view=ue.camera.matrix,J=J||De,X=X||De,G.pixelRatio=ue.pixelRatio,j.pixelRatio=ue.pixelRatio;var Ee=W.length,Me=Se[0],he=Se[1];Me[0]=Me[1]=Me[2]=1/0,he[0]=he[1]=he[2]=-1/0;for(var fe=0;fe<Ee;++fe){(Ve=W[fe]).pixelRatio=ue.pixelRatio,Ve.axes=ue.axes,J=J||!!Ve.dirty,X=X||!!Ve.dirty;var ae=Ve.bounds;if(ae)for(var be=ae[0],Ie=ae[1],Te=0;Te<3;++Te)Me[Te]=Math.min(Me[Te],be[Te]),he[Te]=Math.max(he[Te],Ie[Te])}var Ne=ue.bounds;if(ue.autoBounds)for(Te=0;Te<3;++Te){if(he[Te]<Me[Te])Me[Te]=-1,he[Te]=1;else{Me[Te]===he[Te]&&(Me[Te]-=1,he[Te]+=1);var qe=.05*(he[Te]-Me[Te]);Me[Te]=Me[Te]-qe,he[Te]=he[Te]+qe}Ne[0][Te]=Me[Te],Ne[1][Te]=he[Te]}var ve=!1;for(Te=0;Te<3;++Te)ve=ve||we[0][Te]!==Ne[0][Te]||we[1][Te]!==Ne[1][Te],we[0][Te]=Ne[0][Te],we[1][Te]=Ne[1][Te];if(X=X||ve,J=J||ve){if(ve){var Ce=[0,0,0];for(fe=0;fe<3;++fe)Ce[fe]=x((Ne[1][fe]-Ne[0][fe])/10);G.autoTicks?G.update({bounds:Ne,tickSpacing:Ce}):G.update({bounds:Ne})}var Ae=A.drawingBufferWidth,ze=A.drawingBufferHeight;for(re[0]=Ae,re[1]=ze,ce[0]=0|Math.max(Ae/ue.pixelRatio,1),ce[1]=0|Math.max(ze/ue.pixelRatio,1),function(Ye,$e){var rt=Ye.bounds,ht=Ye.cameraParams,nt=ht.projection,bt=ht.model,wt=Ye.gl.drawingBufferWidth,ut=Ye.gl.drawingBufferHeight,lt=Ye.zNear,Tt=Ye.zFar,Et=Ye.fovy,St=wt/ut;$e?(g(nt,-St,St,-1,1,lt,Tt),ht._ortho=!0):(b(nt,Et,St,lt,Tt),ht._ortho=!1);for(var Ft=0;Ft<16;++Ft)bt[Ft]=0;bt[15]=1;var zt=0;for(Ft=0;Ft<3;++Ft)zt=Math.max(zt,rt[1][Ft]-rt[0][Ft]);for(Ft=0;Ft<3;++Ft)Ye.autoScale?bt[5*Ft]=Ye.aspect[Ft]/(rt[1][Ft]-rt[0][Ft]):bt[5*Ft]=1/zt,Ye.autoCenter&&(bt[12+Ft]=.5*-bt[5*Ft]*(rt[0][Ft]+rt[1][Ft]))}(ue,B),fe=0;fe<Ee;++fe)(Ve=W[fe]).axesBounds=Ne,ue.clipToBounds&&(Ve.clipBounds=Ne);P.object&&(ue.snapToData?j.position=P.dataCoordinate:j.position=P.dataPosition,j.bounds=Ne),X&&(X=!1,function(){if(!_e()){A.colorMask(!0,!0,!0,!0),A.depthMask(!0),A.disable(A.BLEND),A.enable(A.DEPTH_TEST),A.depthFunc(A.LEQUAL);for(var Ye=W.length,$e=te.length,rt=0;rt<$e;++rt){var ht=te[rt];ht.shape=ce,ht.begin();for(var nt=0;nt<Ye;++nt)if(Z[nt]===rt){var bt=W[nt];bt.drawPick&&(bt.pixelRatio=1,bt.drawPick(ee))}ht.end()}}}()),ue.axesPixels=n(ue.axes,ee,Ae,ze),ue.onrender&&ue.onrender(),A.bindFramebuffer(A.FRAMEBUFFER,null),A.viewport(0,0,Ae,ze),ue.clearRGBA(),A.depthMask(!0),A.colorMask(!0,!0,!0,!0),A.enable(A.DEPTH_TEST),A.depthFunc(A.LEQUAL),A.disable(A.BLEND),A.disable(A.CULL_FACE);var Ue=!1;for(G.enable&&(Ue=Ue||G.isTransparent(),G.draw(ee)),j.axes=G,P.object&&j.draw(ee),A.disable(A.CULL_FACE),fe=0;fe<Ee;++fe)(Ve=W[fe]).axes=G,Ve.pixelRatio=ue.pixelRatio,Ve.isOpaque&&Ve.isOpaque()&&Ve.draw(ee),Ve.isTransparent&&Ve.isTransparent()&&(Ue=!0);if(Ue){for(O.shape=re,O.bind(),A.clear(A.DEPTH_BUFFER_BIT),A.colorMask(!1,!1,!1,!1),A.depthMask(!0),A.depthFunc(A.LESS),G.enable&&G.isTransparent()&&G.drawTransparent(ee),fe=0;fe<Ee;++fe)(Ve=W[fe]).isOpaque&&Ve.isOpaque()&&Ve.draw(ee);for(A.enable(A.BLEND),A.blendEquation(A.FUNC_ADD),A.blendFunc(A.ONE,A.ONE_MINUS_SRC_ALPHA),A.colorMask(!0,!0,!0,!0),A.depthMask(!1),A.clearColor(0,0,0,0),A.clear(A.COLOR_BUFFER_BIT),G.isTransparent()&&G.drawTransparent(ee),fe=0;fe<Ee;++fe){var Ve;(Ve=W[fe]).isTransparent&&Ve.isTransparent()&&Ve.drawTransparent(ee)}A.bindFramebuffer(A.FRAMEBUFFER,null),A.blendFunc(A.ONE,A.ONE_MINUS_SRC_ALPHA),A.disable(A.DEPTH_TEST),z.bind(),O.color[0].bind(0),z.uniforms.accumBuffer=0,p(A),A.disable(A.BLEND)}for(J=!1,fe=0;fe<Ee;++fe)W[fe].dirty=!1}}}return ue.enableMouseListeners(),function De(){ue._stopped||ue.contextLost||(xe(),requestAnimationFrame(De))}(),ue.redraw=function(){ue._stopped||(J=!0,xe())},ue},createCamera:o}},8023:function(h,l,t){var o=t(6832);l.pointVertex=o([`precision mediump float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute vec2 position;
|
||
|
||
uniform mat3 matrix;
|
||
uniform float pointSize;
|
||
uniform float pointCloud;
|
||
|
||
highp float rand(vec2 co) {
|
||
highp float a = 12.9898;
|
||
highp float b = 78.233;
|
||
highp float c = 43758.5453;
|
||
highp float d = dot(co.xy, vec2(a, b));
|
||
highp float e = mod(d, 3.14);
|
||
return fract(sin(e) * c);
|
||
}
|
||
|
||
void main() {
|
||
vec3 hgPosition = matrix * vec3(position, 1);
|
||
gl_Position = vec4(hgPosition.xy, 0, hgPosition.z);
|
||
// if we don't jitter the point size a bit, overall point cloud
|
||
// saturation 'jumps' on zooming, which is disturbing and confusing
|
||
gl_PointSize = pointSize * ((19.5 + rand(position)) / 20.0);
|
||
if(pointCloud != 0.0) { // pointCloud is truthy
|
||
// get the same square surface as circle would be
|
||
gl_PointSize *= 0.886;
|
||
}
|
||
}`]),l.pointFragment=o([`precision mediump float;
|
||
#define GLSLIFY 1
|
||
|
||
uniform vec4 color, borderColor;
|
||
uniform float centerFraction;
|
||
uniform float pointCloud;
|
||
|
||
void main() {
|
||
float radius;
|
||
vec4 baseColor;
|
||
if(pointCloud != 0.0) { // pointCloud is truthy
|
||
if(centerFraction == 1.0) {
|
||
gl_FragColor = color;
|
||
} else {
|
||
gl_FragColor = mix(borderColor, color, centerFraction);
|
||
}
|
||
} else {
|
||
radius = length(2.0 * gl_PointCoord.xy - 1.0);
|
||
if(radius > 1.0) {
|
||
discard;
|
||
}
|
||
baseColor = mix(borderColor, color, step(radius, centerFraction));
|
||
gl_FragColor = vec4(baseColor.rgb * baseColor.a, baseColor.a);
|
||
}
|
||
}
|
||
`]),l.pickVertex=o([`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;
|
||
}
|
||
`]),l.pickFragment=o([`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;
|
||
}
|
||
`])},8271:function(h,l,t){var o=t(5158),r=t(5827),n=t(5306),a=t(8023);function s(b,g,f,v,m){this.plot=b,this.offsetBuffer=g,this.pickBuffer=f,this.shader=v,this.pickShader=m,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}h.exports=function(b,g){var f=b.gl,v=new s(b,r(f),r(f),o(f,a.pointVertex,a.pointFragment),o(f,a.pickVertex,a.pickFragment));return v.update(g),b.addObject(v),v};var u,p,c=s.prototype;c.dispose=function(){this.shader.dispose(),this.pickShader.dispose(),this.offsetBuffer.dispose(),this.pickBuffer.dispose(),this.plot.removeObject(this)},c.update=function(b){var g;function f(A,C){return A in b?b[A]:C}b=b||{},this.sizeMin=f("sizeMin",.5),this.sizeMax=f("sizeMax",20),this.color=f("color",[1,0,0,1]).slice(),this.areaRatio=f("areaRatio",1),this.borderColor=f("borderColor",[0,0,0,1]).slice(),this.blend=f("blend",!1);var v=b.positions.length>>>1,m=b.positions instanceof Float32Array,x=b.idToIndex instanceof Int32Array&&b.idToIndex.length>=v,T=b.positions,d=m?T:n.mallocFloat32(T.length),M=x?b.idToIndex:n.mallocInt32(v);if(m||d.set(T),!x)for(d.set(T),g=0;g<v;g++)M[g]=g;this.points=T,this.offsetBuffer.update(d),this.pickBuffer.update(M),m||n.free(d),x||n.free(M),this.pointCount=v,this.pickOffset=0},c.unifiedDraw=(u=[1,0,0,0,1,0,0,0,1],p=[0,0,0,0],function(b){var g=b!==void 0,f=g?this.pickShader:this.shader,v=this.plot.gl,m=this.plot.dataBox;if(this.pointCount===0)return b;var x=m[2]-m[0],T=m[3]-m[1],d=function(P,O){var z,B=0,Y=P.length>>>1;for(z=0;z<Y;z++){var D=P[2*z],G=P[2*z+1];D>=O[0]&&D<=O[2]&&G>=O[1]&&G<=O[3]&&B++}return B}(this.points,m),M=this.plot.pickPixelRatio*Math.max(Math.min(this.sizeMinCap,this.sizeMin),Math.min(this.sizeMax,this.sizeMax/Math.pow(d,.33333)));u[0]=2/x,u[4]=2/T,u[6]=-2*m[0]/x-1,u[7]=-2*m[1]/T-1,this.offsetBuffer.bind(),f.bind(),f.attributes.position.pointer(),f.uniforms.matrix=u,f.uniforms.color=this.color,f.uniforms.borderColor=this.borderColor,f.uniforms.pointCloud=M<5,f.uniforms.pointSize=M,f.uniforms.centerFraction=Math.min(1,Math.max(0,Math.sqrt(1-this.areaRatio))),g&&(p[0]=255&b,p[1]=b>>8&255,p[2]=b>>16&255,p[3]=b>>24&255,this.pickBuffer.bind(),f.attributes.pickId.pointer(v.UNSIGNED_BYTE),f.uniforms.pickOffset=p,this.pickOffset=b);var A=v.getParameter(v.BLEND),C=v.getParameter(v.DITHER);return A&&!this.blend&&v.disable(v.BLEND),C&&v.disable(v.DITHER),v.drawArrays(v.POINTS,0,this.pointCount),A&&!this.blend&&v.enable(v.BLEND),C&&v.enable(v.DITHER),b+this.pointCount}),c.draw=c.unifiedDraw,c.drawPick=c.unifiedDraw,c.pick=function(b,g,f){var v=this.pickOffset,m=this.pointCount;if(f<v||f>=v+m)return null;var x=f-v,T=this.points;return{object:this,pointId:x,dataCoord:[T[2*x],T[2*x+1]]}}},6093:function(h){h.exports=function(l,t,o,r){var n,a,s,u,p,c=t[0],b=t[1],g=t[2],f=t[3],v=o[0],m=o[1],x=o[2],T=o[3];return(a=c*v+b*m+g*x+f*T)<0&&(a=-a,v=-v,m=-m,x=-x,T=-T),1-a>1e-6?(n=Math.acos(a),s=Math.sin(n),u=Math.sin((1-r)*n)/s,p=Math.sin(r*n)/s):(u=1-r,p=r),l[0]=u*c+p*v,l[1]=u*b+p*m,l[2]=u*g+p*x,l[3]=u*f+p*T,l}},8240:function(h){h.exports=function(l){return l||l===0?l.toString():""}},4123:function(h,l,t){var o=t(875);h.exports=function(n,a,s){var u=r[a];if(u||(u=r[a]={}),n in u)return u[n];var p={textAlign:"center",textBaseline:"middle",lineHeight:1,font:a,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},triangles:!0},c=o(n,p);p.triangles=!1;var b,g,f=o(n,p);if(s&&s!==1){for(b=0;b<c.positions.length;++b)for(g=0;g<c.positions[b].length;++g)c.positions[b][g]/=s;for(b=0;b<f.positions.length;++b)for(g=0;g<f.positions[b].length;++g)f.positions[b][g]/=s}var v=[[1/0,1/0],[-1/0,-1/0]],m=f.positions.length;for(b=0;b<m;++b){var x=f.positions[b];for(g=0;g<2;++g)v[0][g]=Math.min(v[0][g],x[g]),v[1][g]=Math.max(v[1][g],x[g])}return u[n]=[c,f,v]};var r={}},9282:function(h,l,t){var o=t(5158),r=t(6832),n=r([`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 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;
|
||
}
|
||
}`]),a=r([`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;
|
||
}
|
||
}`]),s=r([`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;
|
||
}
|
||
}
|
||
`]),u=r([`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;
|
||
}
|
||
`]),p=r([`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);
|
||
}`]),c=[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"glyph",type:"vec2"},{name:"id",type:"vec4"}],b={vertex:n,fragment:u,attributes:c},g={vertex:a,fragment:u,attributes:c},f={vertex:s,fragment:u,attributes:c},v={vertex:n,fragment:p,attributes:c},m={vertex:a,fragment:p,attributes:c},x={vertex:s,fragment:p,attributes:c};function T(d,M){var A=o(d,M),C=A.attributes;return C.position.location=0,C.color.location=1,C.glyph.location=2,C.id.location=3,A}l.createPerspective=function(d){return T(d,b)},l.createOrtho=function(d){return T(d,g)},l.createProject=function(d){return T(d,f)},l.createPickPerspective=function(d){return T(d,v)},l.createPickOrtho=function(d){return T(d,m)},l.createPickProject=function(d){return T(d,x)}},2182:function(h,l,t){var o=t(3596),r=t(5827),n=t(2944),a=t(5306),s=t(104),u=t(9282),p=t(4123),c=t(8240),b=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function g(Z,ie){var te=Z[0],J=Z[1],X=Z[2],ee=Z[3];return Z[0]=ie[0]*te+ie[4]*J+ie[8]*X+ie[12]*ee,Z[1]=ie[1]*te+ie[5]*J+ie[9]*X+ie[13]*ee,Z[2]=ie[2]*te+ie[6]*J+ie[10]*X+ie[14]*ee,Z[3]=ie[3]*te+ie[7]*J+ie[11]*X+ie[15]*ee,Z}function f(Z,ie,te,J){return g(J,J),g(J,J),g(J,J)}function v(Z,ie){this.index=Z,this.dataCoordinate=this.position=ie}function m(Z){return Z===!0||Z>1?1:Z}function x(Z,ie,te,J,X,ee,re,oe,ue,ce,de,me){this.gl=Z,this.pixelRatio=1,this.shader=ie,this.orthoShader=te,this.projectShader=J,this.pointBuffer=X,this.colorBuffer=ee,this.glyphBuffer=re,this.idBuffer=oe,this.vao=ue,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=ce,this.pickOrthoShader=de,this.pickProjectShader=me,this.points=[],this._selectResult=new v(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}h.exports=function(Z){var ie=Z.gl,te=u.createPerspective(ie),J=u.createOrtho(ie),X=u.createProject(ie),ee=u.createPickPerspective(ie),re=u.createPickOrtho(ie),oe=u.createPickProject(ie),ue=r(ie),ce=r(ie),de=r(ie),me=r(ie),_e=new x(ie,te,J,X,ue,ce,de,me,n(ie,[{buffer:ue,size:3,type:ie.FLOAT},{buffer:ce,size:4,type:ie.FLOAT},{buffer:de,size:2,type:ie.FLOAT},{buffer:me,size:4,type:ie.UNSIGNED_BYTE,normalized:!0}]),ee,re,oe);return _e.update(Z),_e};var T=x.prototype;T.pickSlots=1,T.setPickBase=function(Z){this.pickId=Z},T.isTransparent=function(){if(this.hasAlpha)return!0;for(var Z=0;Z<3;++Z)if(this.axesProject[Z]&&this.projectHasAlpha)return!0;return!1},T.isOpaque=function(){if(!this.hasAlpha)return!0;for(var Z=0;Z<3;++Z)if(this.axesProject[Z]&&!this.projectHasAlpha)return!0;return!1};var d=[0,0],M=[0,0,0],A=[0,0,0],C=[0,0,0,1],P=[0,0,0,1],O=b.slice(),z=[0,0,0],B=[[0,0,0],[0,0,0]];function Y(Z){return Z[0]=Z[1]=Z[2]=0,Z}function D(Z,ie){return Z[0]=ie[0],Z[1]=ie[1],Z[2]=ie[2],Z[3]=1,Z}function G(Z,ie,te,J){return Z[0]=ie[0],Z[1]=ie[1],Z[2]=ie[2],Z[te]=J,Z}var V=[[-1e8,-1e8,-1e8],[1e8,1e8,1e8]];function j(Z,ie,te,J,X,ee,re){var oe=te.gl;if((ee===te.projectHasAlpha||re)&&function(ce,de,me,_e){var Se,we=de.axesProject,xe=de.gl,De=ce.uniforms,Ee=me.model||b,Me=me.view||b,he=me.projection||b,fe=de.axesBounds,ae=function(rt){for(var ht=B,nt=0;nt<2;++nt)for(var bt=0;bt<3;++bt)ht[nt][bt]=Math.max(Math.min(rt[nt][bt],1e8),-1e8);return ht}(de.clipBounds);Se=de.axes&&de.axes.lastCubeProps?de.axes.lastCubeProps.axis:[1,1,1],d[0]=2/xe.drawingBufferWidth,d[1]=2/xe.drawingBufferHeight,ce.bind(),De.view=Me,De.projection=he,De.screenSize=d,De.highlightId=de.highlightId,De.highlightScale=de.highlightScale,De.clipBounds=ae,De.pickGroup=de.pickId/255,De.pixelRatio=_e;for(var be=0;be<3;++be)if(we[be]){De.scale=de.projectScale[be],De.opacity=de.projectOpacity[be];for(var Ie=O,Te=0;Te<16;++Te)Ie[Te]=0;for(Te=0;Te<4;++Te)Ie[5*Te]=1;Ie[5*be]=0,Se[be]<0?Ie[12+be]=fe[0][be]:Ie[12+be]=fe[1][be],s(Ie,Ee,Ie),De.model=Ie;var Ne=(be+1)%3,qe=(be+2)%3,ve=Y(M),Ce=Y(A);ve[Ne]=1,Ce[qe]=1;var Ae=f(0,0,0,D(C,ve)),ze=f(0,0,0,D(P,Ce));if(Math.abs(Ae[1])>Math.abs(ze[1])){var Ue=Ae;Ae=ze,ze=Ue,Ue=ve,ve=Ce,Ce=Ue;var Ve=Ne;Ne=qe,qe=Ve}Ae[0]<0&&(ve[Ne]=-1),ze[1]>0&&(Ce[qe]=-1);var Ye=0,$e=0;for(Te=0;Te<4;++Te)Ye+=Math.pow(Ee[4*Ne+Te],2),$e+=Math.pow(Ee[4*qe+Te],2);ve[Ne]/=Math.sqrt(Ye),Ce[qe]/=Math.sqrt($e),De.axes[0]=ve,De.axes[1]=Ce,De.fragClipBounds[0]=G(z,ae[0],be,-1e8),De.fragClipBounds[1]=G(z,ae[1],be,1e8),de.vao.bind(),de.vao.draw(xe.TRIANGLES,de.vertexCount),de.lineWidth>0&&(xe.lineWidth(de.lineWidth*_e),de.vao.draw(xe.LINES,de.lineVertexCount,de.vertexCount)),de.vao.unbind()}}(ie,te,J,X),ee===te.hasAlpha||re){Z.bind();var ue=Z.uniforms;ue.model=J.model||b,ue.view=J.view||b,ue.projection=J.projection||b,d[0]=2/oe.drawingBufferWidth,d[1]=2/oe.drawingBufferHeight,ue.screenSize=d,ue.highlightId=te.highlightId,ue.highlightScale=te.highlightScale,ue.fragClipBounds=V,ue.clipBounds=te.axes.bounds,ue.opacity=te.opacity,ue.pickGroup=te.pickId/255,ue.pixelRatio=X,te.vao.bind(),te.vao.draw(oe.TRIANGLES,te.vertexCount),te.lineWidth>0&&(oe.lineWidth(te.lineWidth*X),te.vao.draw(oe.LINES,te.lineVertexCount,te.vertexCount)),te.vao.unbind()}}function W(Z,ie,te,J){var X;X=Array.isArray(Z)?ie<Z.length?Z[ie]:void 0:Z,X=c(X);var ee=!0;o(X)&&(X="▼",ee=!1);var re=p(X,te,J);return{mesh:re[0],lines:re[1],bounds:re[2],visible:ee}}T.draw=function(Z){j(this.useOrtho?this.orthoShader:this.shader,this.projectShader,this,Z,this.pixelRatio,!1,!1)},T.drawTransparent=function(Z){j(this.useOrtho?this.orthoShader:this.shader,this.projectShader,this,Z,this.pixelRatio,!0,!1)},T.drawPick=function(Z){j(this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader,this.pickProjectShader,this,Z,1,!0,!0)},T.pick=function(Z){if(!Z||Z.id!==this.pickId)return null;var ie=Z.value[2]+(Z.value[1]<<8)+(Z.value[0]<<16);if(ie>=this.pointCount||ie<0)return null;var te=this.points[ie],J=this._selectResult;J.index=ie;for(var X=0;X<3;++X)J.position[X]=J.dataCoordinate[X]=te[X];return J},T.highlight=function(Z){if(Z){var ie=Z.index,te=255&ie,J=ie>>8&255,X=ie>>16&255;this.highlightId=[te/255,J/255,X/255,0]}else this.highlightId=[1,1,1,1]},T.update=function(Z){if("perspective"in(Z=Z||{})&&(this.useOrtho=!Z.perspective),"orthographic"in Z&&(this.useOrtho=!!Z.orthographic),"lineWidth"in Z&&(this.lineWidth=Z.lineWidth),"project"in Z)if(Array.isArray(Z.project))this.axesProject=Z.project;else{var ie=!!Z.project;this.axesProject=[ie,ie,ie]}if("projectScale"in Z)if(Array.isArray(Z.projectScale))this.projectScale=Z.projectScale.slice();else{var te=+Z.projectScale;this.projectScale=[te,te,te]}if(this.projectHasAlpha=!1,"projectOpacity"in Z){Array.isArray(Z.projectOpacity)?this.projectOpacity=Z.projectOpacity.slice():(te=+Z.projectOpacity,this.projectOpacity=[te,te,te]);for(var J=0;J<3;++J)this.projectOpacity[J]=m(this.projectOpacity[J]),this.projectOpacity[J]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,"opacity"in Z&&(this.opacity=m(Z.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var X,ee,re=Z.position,oe=Z.font||"normal",ue=Z.alignment||[0,0];if(ue.length===2)X=ue[0],ee=ue[1];else for(X=[],ee=[],J=0;J<ue.length;++J)X[J]=ue[J][0],ee[J]=ue[J][1];var ce=[1/0,1/0,1/0],de=[-1/0,-1/0,-1/0],me=Z.glyph,_e=Z.color,Se=Z.size,we=Z.angle,xe=Z.lineColor,De=-1,Ee=0,Me=0,he=0;if(re.length){he=re.length;e:for(J=0;J<he;++J){for(var fe=re[J],ae=0;ae<3;++ae)if(isNaN(fe[ae])||!isFinite(fe[ae]))continue e;var be=(ht=W(me,J,oe,this.pixelRatio)).mesh,Ie=ht.lines,Te=ht.bounds;Ee+=3*be.cells.length,Me+=2*Ie.edges.length}}var Ne=Ee+Me,qe=a.mallocFloat(3*Ne),ve=a.mallocFloat(4*Ne),Ce=a.mallocFloat(2*Ne),Ae=a.mallocUint32(Ne);if(Ne>0){var ze=0,Ue=Ee,Ve=[0,0,0,1],Ye=[0,0,0,1],$e=Array.isArray(_e)&&Array.isArray(_e[0]),rt=Array.isArray(xe)&&Array.isArray(xe[0]);e:for(J=0;J<he;++J){for(De+=1,fe=re[J],ae=0;ae<3;++ae){if(isNaN(fe[ae])||!isFinite(fe[ae]))continue e;de[ae]=Math.max(de[ae],fe[ae]),ce[ae]=Math.min(ce[ae],fe[ae])}be=(ht=W(me,J,oe,this.pixelRatio)).mesh,Ie=ht.lines,Te=ht.bounds;var ht,nt=ht.visible;if(nt)if(Array.isArray(_e)){if((bt=$e?J<_e.length?_e[J]:[0,0,0,0]:_e).length===3){for(ae=0;ae<3;++ae)Ve[ae]=bt[ae];Ve[3]=1}else if(bt.length===4){for(ae=0;ae<4;++ae)Ve[ae]=bt[ae];!this.hasAlpha&&bt[3]<1&&(this.hasAlpha=!0)}}else Ve[0]=Ve[1]=Ve[2]=0,Ve[3]=1;else Ve=[1,1,1,0];if(nt)if(Array.isArray(xe)){var bt;if((bt=rt?J<xe.length?xe[J]:[0,0,0,0]:xe).length===3){for(ae=0;ae<3;++ae)Ye[ae]=bt[ae];Ye[ae]=1}else if(bt.length===4){for(ae=0;ae<4;++ae)Ye[ae]=bt[ae];!this.hasAlpha&&bt[3]<1&&(this.hasAlpha=!0)}}else Ye[0]=Ye[1]=Ye[2]=0,Ye[3]=1;else Ye=[1,1,1,0];var wt=.5;nt?Array.isArray(Se)?wt=J<Se.length?+Se[J]:12:Se?wt=+Se:this.useOrtho&&(wt=12):wt=0;var ut=0;Array.isArray(we)?ut=J<we.length?+we[J]:0:we&&(ut=+we);var lt=Math.cos(ut),Tt=Math.sin(ut);for(fe=re[J],ae=0;ae<3;++ae)de[ae]=Math.max(de[ae],fe[ae]),ce[ae]=Math.min(ce[ae],fe[ae]);var Et=X,St=ee;Et=0,Array.isArray(X)?Et=J<X.length?X[J]:0:X&&(Et=X),St=0,Array.isArray(ee)?St=J<ee.length?ee[J]:0:ee&&(St=ee);var Ft=[Et*=Et>0?1-Te[0][0]:Et<0?1+Te[1][0]:1,St*=St>0?1-Te[0][1]:St<0?1+Te[1][1]:1],zt=be.cells||[],Je=be.positions||[];for(ae=0;ae<zt.length;++ae)for(var et=zt[ae],Ze=0;Ze<3;++Ze){for(var Qe=0;Qe<3;++Qe)qe[3*ze+Qe]=fe[Qe];for(Qe=0;Qe<4;++Qe)ve[4*ze+Qe]=Ve[Qe];Ae[ze]=De;var st=Je[et[Ze]];Ce[2*ze]=wt*(lt*st[0]-Tt*st[1]+Ft[0]),Ce[2*ze+1]=wt*(Tt*st[0]+lt*st[1]+Ft[1]),ze+=1}for(zt=Ie.edges,Je=Ie.positions,ae=0;ae<zt.length;++ae)for(et=zt[ae],Ze=0;Ze<2;++Ze){for(Qe=0;Qe<3;++Qe)qe[3*Ue+Qe]=fe[Qe];for(Qe=0;Qe<4;++Qe)ve[4*Ue+Qe]=Ye[Qe];Ae[Ue]=De,st=Je[et[Ze]],Ce[2*Ue]=wt*(lt*st[0]-Tt*st[1]+Ft[0]),Ce[2*Ue+1]=wt*(Tt*st[0]+lt*st[1]+Ft[1]),Ue+=1}}}this.bounds=[ce,de],this.points=re,this.pointCount=re.length,this.vertexCount=Ee,this.lineVertexCount=Me,this.pointBuffer.update(qe),this.colorBuffer.update(ve),this.glyphBuffer.update(Ce),this.idBuffer.update(Ae),a.free(qe),a.free(ve),a.free(Ce),a.free(Ae)},T.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()}},1884:function(h,l,t){var o=t(6832);l.boxVertex=o([`precision mediump float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute vec2 vertex;
|
||
|
||
uniform vec2 cornerA, cornerB;
|
||
|
||
void main() {
|
||
gl_Position = vec4(mix(cornerA, cornerB, vertex), 0, 1);
|
||
}
|
||
`]),l.boxFragment=o([`precision mediump float;
|
||
#define GLSLIFY 1
|
||
|
||
uniform vec4 color;
|
||
|
||
void main() {
|
||
gl_FragColor = color;
|
||
}
|
||
`])},6623:function(h,l,t){var o=t(5158),r=t(5827),n=t(1884);function a(u,p,c){this.plot=u,this.boxBuffer=p,this.boxShader=c,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}h.exports=function(u,p){var c=u.gl,b=new a(u,r(c,[0,0,0,1,1,0,1,1]),o(c,n.boxVertex,n.boxFragment));return b.update(p),u.addOverlay(b),b};var s=a.prototype;s.draw=function(){if(this.enabled){var u=this.plot,p=this.selectBox,c=this.borderWidth,b=(this.innerFill,this.innerColor),g=(this.outerFill,this.outerColor),f=this.borderColor,v=u.box,m=u.screenBox,x=u.dataBox,T=u.viewBox,d=u.pixelRatio,M=(p[0]-x[0])*(T[2]-T[0])/(x[2]-x[0])+T[0],A=(p[1]-x[1])*(T[3]-T[1])/(x[3]-x[1])+T[1],C=(p[2]-x[0])*(T[2]-T[0])/(x[2]-x[0])+T[0],P=(p[3]-x[1])*(T[3]-T[1])/(x[3]-x[1])+T[1];if(M=Math.max(M,T[0]),A=Math.max(A,T[1]),C=Math.min(C,T[2]),P=Math.min(P,T[3]),!(C<M||P<A)){v.bind();var O=m[2]-m[0],z=m[3]-m[1];if(this.outerFill&&(v.drawBox(0,0,O,A,g),v.drawBox(0,A,M,P,g),v.drawBox(0,P,O,z,g),v.drawBox(C,A,O,P,g)),this.innerFill&&v.drawBox(M,A,C,P,b),c>0){var B=c*d;v.drawBox(M-B,A-B,C+B,A+B,f),v.drawBox(M-B,P-B,C+B,P+B,f),v.drawBox(M-B,A-B,M+B,P+B,f),v.drawBox(C-B,A-B,C+B,P+B,f)}}}},s.update=function(u){u=u||{},this.innerFill=!!u.innerFill,this.outerFill=!!u.outerFill,this.innerColor=(u.innerColor||[0,0,0,.5]).slice(),this.outerColor=(u.outerColor||[0,0,0,.5]).slice(),this.borderColor=(u.borderColor||[0,0,0,1]).slice(),this.borderWidth=u.borderWidth||0,this.selectBox=(u.selectBox||this.selectBox).slice()},s.dispose=function(){this.boxBuffer.dispose(),this.boxShader.dispose(),this.plot.removeOverlay(this)}},2611:function(h,l,t){h.exports=function(c,b){var g=b[0],f=b[1];return new u(c,o(c,g,f,{}),r.mallocUint8(g*f*4))};var o=t(4234),r=t(5306),n=t(5050),a=t(2288).nextPow2;function s(c,b,g,f,v){this.coord=[c,b],this.id=g,this.value=f,this.distance=v}function u(c,b,g){this.gl=c,this.fbo=b,this.buffer=g,this._readTimeout=null;var f=this;this._readCallback=function(){f.gl&&(b.bind(),c.readPixels(0,0,b.shape[0],b.shape[1],c.RGBA,c.UNSIGNED_BYTE,f.buffer),f._readTimeout=null)}}var p=u.prototype;Object.defineProperty(p,"shape",{get:function(){return this.gl?this.fbo.shape.slice():[0,0]},set:function(c){if(this.gl){this.fbo.shape=c;var b=this.fbo.shape[0],g=this.fbo.shape[1];if(g*b*4>this.buffer.length){r.free(this.buffer);for(var f=this.buffer=r.mallocUint8(a(g*b*4)),v=0;v<g*b*4;++v)f[v]=255}return c}}}),p.begin=function(){var c=this.gl;this.shape,c&&(this.fbo.bind(),c.clearColor(1,1,1,1),c.clear(c.COLOR_BUFFER_BIT|c.DEPTH_BUFFER_BIT))},p.end=function(){var c=this.gl;c&&(c.bindFramebuffer(c.FRAMEBUFFER,null),this._readTimeout||clearTimeout(this._readTimeout),this._readTimeout=setTimeout(this._readCallback,1))},p.query=function(c,b,g){if(!this.gl)return null;var f=this.fbo.shape.slice();c|=0,b|=0,typeof g!="number"&&(g=1);var v=0|Math.min(Math.max(c-g,0),f[0]),m=0|Math.min(Math.max(c+g,0),f[0]),x=0|Math.min(Math.max(b-g,0),f[1]),T=0|Math.min(Math.max(b+g,0),f[1]);if(m<=v||T<=x)return null;var d=[m-v,T-x],M=n(this.buffer,[d[0],d[1],4],[4,4*f[0],1],4*(v+f[0]*x)),A=function(O,z,B){for(var Y=1e8,D=-1,G=-1,V=O.shape[0],j=O.shape[1],W=0;W<V;W++)for(var Z=0;Z<j;Z++){var ie=O.get(W,Z,0),te=O.get(W,Z,1),J=O.get(W,Z,2),X=O.get(W,Z,3);if(ie<255||te<255||J<255||X<255){var ee=z-W,re=B-Z,oe=ee*ee+re*re;oe<Y&&(Y=oe,D=W,G=Z)}}return[D,G,Y]}(M.hi(d[0],d[1],1),g,g),C=A[0],P=A[1];return C<0||Math.pow(this.radius,2)<A[2]?null:new s(C+v|0,P+x|0,M.get(C,P,0),[M.get(C,P,1),M.get(C,P,2),M.get(C,P,3)],Math.sqrt(A[2]))},p.dispose=function(){this.gl&&(this.fbo.dispose(),r.free(this.buffer),this.gl=null,this._readTimeout&&clearTimeout(this._readTimeout))}},5158:function(h,l,t){var o=t(9016),r=t(4280),n=t(3984),a=t(1628),s=t(2631),u=t(9068);function p(g){this.gl=g,this.gl.lastAttribCount=0,this._vref=this._fref=this._relink=this.vertShader=this.fragShader=this.program=this.attributes=this.uniforms=this.types=null}var c=p.prototype;function b(g,f){return g.name<f.name?-1:1}c.bind=function(){var g;this.program||this._relink();var f=this.gl.getProgramParameter(this.program,this.gl.ACTIVE_ATTRIBUTES),v=this.gl.lastAttribCount;if(f>v)for(g=v;g<f;g++)this.gl.enableVertexAttribArray(g);else if(v>f)for(g=f;g<v;g++)this.gl.disableVertexAttribArray(g);this.gl.lastAttribCount=f,this.gl.useProgram(this.program)},c.dispose=function(){for(var g=this.gl.lastAttribCount,f=0;f<g;f++)this.gl.disableVertexAttribArray(f);this.gl.lastAttribCount=0,this._fref&&this._fref.dispose(),this._vref&&this._vref.dispose(),this.attributes=this.types=this.vertShader=this.fragShader=this.program=this._relink=this._fref=this._vref=null},c.update=function(g,f,v,m){if(!f||arguments.length===1){var x=g;g=x.vertex,f=x.fragment,v=x.uniforms,m=x.attributes}var T=this,d=T.gl,M=T._vref;T._vref=a.shader(d,d.VERTEX_SHADER,g),M&&M.dispose(),T.vertShader=T._vref.shader;var A=this._fref;if(T._fref=a.shader(d,d.FRAGMENT_SHADER,f),A&&A.dispose(),T.fragShader=T._fref.shader,!v||!m){var C=d.createProgram();if(d.attachShader(C,T.fragShader),d.attachShader(C,T.vertShader),d.linkProgram(C),!d.getProgramParameter(C,d.LINK_STATUS)){var P=d.getProgramInfoLog(C);throw new u(P,"Error linking program:"+P)}v=v||s.uniforms(d,C),m=m||s.attributes(d,C),d.deleteProgram(C)}(m=m.slice()).sort(b);var O,z=[],B=[],Y=[];for(O=0;O<m.length;++O){var D=m[O];if(D.type.indexOf("mat")>=0){for(var G=0|D.type.charAt(D.type.length-1),V=new Array(G),j=0;j<G;++j)V[j]=Y.length,B.push(D.name+"["+j+"]"),typeof D.location=="number"?Y.push(D.location+j):Array.isArray(D.location)&&D.location.length===G&&typeof D.location[j]=="number"?Y.push(0|D.location[j]):Y.push(-1);z.push({name:D.name,type:D.type,locations:V})}else z.push({name:D.name,type:D.type,locations:[Y.length]}),B.push(D.name),typeof D.location=="number"?Y.push(0|D.location):Y.push(-1)}var W=0;for(O=0;O<Y.length;++O)if(Y[O]<0){for(;Y.indexOf(W)>=0;)W+=1;Y[O]=W}var Z=new Array(v.length);function ie(){T.program=a.program(d,T._vref,T._fref,B,Y);for(var te=0;te<v.length;++te)Z[te]=d.getUniformLocation(T.program,v[te].name)}ie(),T._relink=ie,T.types={uniforms:n(v),attributes:n(m)},T.attributes=r(d,T,z,Y),Object.defineProperty(T,"uniforms",o(d,T,v,Z))},h.exports=function(g,f,v,m,x){var T=new p(g);return T.update(f,v,m,x),T}},9068:function(h){function l(t,o,r){this.shortMessage=o||"",this.longMessage=r||"",this.rawError=t||"",this.message="gl-shader: "+(o||t||"")+(r?`
|
||
`+r:""),this.stack=new Error().stack}l.prototype=new Error,l.prototype.name="GLError",l.prototype.constructor=l,h.exports=l},4280:function(h,l,t){h.exports=function(p,c,b,g){for(var f={},v=0,m=b.length;v<m;++v){var x=b[v],T=x.name,d=x.type,M=x.locations;switch(d){case"bool":case"int":case"float":s(p,c,M[0],g,1,f,T);break;default:if(d.indexOf("vec")>=0){if((A=d.charCodeAt(d.length-1)-48)<2||A>4)throw new o("","Invalid data type for attribute "+T+": "+d);s(p,c,M[0],g,A,f,T)}else{if(!(d.indexOf("mat")>=0))throw new o("","Unknown data type for attribute "+T+": "+d);var A;if((A=d.charCodeAt(d.length-1)-48)<2||A>4)throw new o("","Invalid data type for attribute "+T+": "+d);u(p,c,M,g,A,f,T)}}}return f};var o=t(9068);function r(p,c,b,g,f,v){this._gl=p,this._wrapper=c,this._index=b,this._locations=g,this._dimension=f,this._constFunc=v}var n=r.prototype;n.pointer=function(p,c,b,g){var f=this,v=f._gl,m=f._locations[f._index];v.vertexAttribPointer(m,f._dimension,p||v.FLOAT,!!c,b||0,g||0),v.enableVertexAttribArray(m)},n.set=function(p,c,b,g){return this._constFunc(this._locations[this._index],p,c,b,g)},Object.defineProperty(n,"location",{get:function(){return this._locations[this._index]},set:function(p){return p!==this._locations[this._index]&&(this._locations[this._index]=0|p,this._wrapper.program=null),0|p}});var a=[function(p,c,b){return b.length===void 0?p.vertexAttrib1f(c,b):p.vertexAttrib1fv(c,b)},function(p,c,b,g){return b.length===void 0?p.vertexAttrib2f(c,b,g):p.vertexAttrib2fv(c,b)},function(p,c,b,g,f){return b.length===void 0?p.vertexAttrib3f(c,b,g,f):p.vertexAttrib3fv(c,b)},function(p,c,b,g,f,v){return b.length===void 0?p.vertexAttrib4f(c,b,g,f,v):p.vertexAttrib4fv(c,b)}];function s(p,c,b,g,f,v,m){var x=a[f],T=new r(p,c,b,g,f,x);Object.defineProperty(v,m,{set:function(d){return p.disableVertexAttribArray(g[b]),x(p,g[b],d),d},get:function(){return T},enumerable:!0})}function u(p,c,b,g,f,v,m){for(var x=new Array(f),T=new Array(f),d=0;d<f;++d)s(p,c,b[d],g,f,x,d),T[d]=x[d];Object.defineProperty(x,"location",{set:function(C){if(Array.isArray(C))for(var P=0;P<f;++P)T[P].location=C[P];else for(P=0;P<f;++P)T[P].location=C+P;return C},get:function(){for(var C=new Array(f),P=0;P<f;++P)C[P]=g[b[P]];return C},enumerable:!0}),x.pointer=function(C,P,O,z){C=C||p.FLOAT,P=!!P,O=O||f*f,z=z||0;for(var B=0;B<f;++B){var Y=g[b[B]];p.vertexAttribPointer(Y,f,C,P,O,z+B*f),p.enableVertexAttribArray(Y)}};var M=new Array(f),A=p["vertexAttrib"+f+"fv"];Object.defineProperty(v,m,{set:function(C){for(var P=0;P<f;++P){var O=g[b[P]];if(p.disableVertexAttribArray(O),Array.isArray(C[0]))A.call(p,O,C[P]);else{for(var z=0;z<f;++z)M[z]=C[f*P+z];A.call(p,O,M)}}return C},get:function(){return x},enumerable:!0})}},9016:function(h,l,t){var o=t(3984),r=t(9068);function n(s){return function(){return s}}function a(s,u){for(var p=new Array(s),c=0;c<s;++c)p[c]=u;return p}h.exports=function(s,u,p,c){function b(x){return function(T){for(var d=g("",x),M=0;M<d.length;++M){var A=d[M],C=A[0],P=A[1];if(c[P]){var O=T;if(typeof C=="string"&&(C.indexOf(".")===0||C.indexOf("[")===0)){var z=C;if(C.indexOf(".")===0&&(z=C.slice(1)),z.indexOf("]")===z.length-1){var B=z.indexOf("["),Y=z.slice(0,B),D=z.slice(B+1,z.length-1);O=Y?T[Y][D]:T[D]}else O=T[z]}var G,V=p[P].type;switch(V){case"bool":case"int":case"sampler2D":case"samplerCube":s.uniform1i(c[P],O);break;case"float":s.uniform1f(c[P],O);break;default:var j=V.indexOf("vec");if(!(0<=j&&j<=1&&V.length===4+j)){if(V.indexOf("mat")===0&&V.length===4){if((G=V.charCodeAt(V.length-1)-48)<2||G>4)throw new r("","Invalid uniform dimension type for matrix "+name+": "+V);s["uniformMatrix"+G+"fv"](c[P],!1,O);break}throw new r("","Unknown uniform data type for "+name+": "+V)}if((G=V.charCodeAt(V.length-1)-48)<2||G>4)throw new r("","Invalid data type");switch(V.charAt(0)){case"b":case"i":s["uniform"+G+"iv"](c[P],O);break;case"v":s["uniform"+G+"fv"](c[P],O);break;default:throw new r("","Unrecognized data type for vector "+name+": "+V)}}}}}}function g(x,T){if(typeof T!="object")return[[x,T]];var d=[];for(var M in T){var A=T[M],C=x;parseInt(M)+""===M?C+="["+M+"]":C+="."+M,typeof A=="object"?d.push.apply(d,g(C,A)):d.push([C,A])}return d}function f(x,T,d){if(typeof d=="object"){var M=v(d);Object.defineProperty(x,T,{get:n(M),set:b(d),enumerable:!0,configurable:!1})}else c[d]?Object.defineProperty(x,T,{get:(A=d,function(C,P,O){return C.getUniform(P.program,O[A])}),set:b(d),enumerable:!0,configurable:!1}):x[T]=function(C){switch(C){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":case"float":return 0;default:var P=C.indexOf("vec");if(0<=P&&P<=1&&C.length===4+P){if((O=C.charCodeAt(C.length-1)-48)<2||O>4)throw new r("","Invalid data type");return C.charAt(0)==="b"?a(O,!1):a(O,0)}if(C.indexOf("mat")===0&&C.length===4){var O;if((O=C.charCodeAt(C.length-1)-48)<2||O>4)throw new r("","Invalid uniform dimension type for matrix "+name+": "+C);return a(O*O,0)}throw new r("","Unknown uniform data type for "+name+": "+C)}}(p[d].type);var A}function v(x){var T;if(Array.isArray(x)){T=new Array(x.length);for(var d=0;d<x.length;++d)f(T,d,x[d])}else for(var M in T={},x)f(T,M,x[M]);return T}var m=o(p,!0);return{get:n(v(m)),set:b(m),enumerable:!0,configurable:!0}}},3984:function(h){h.exports=function(l,t){for(var o={},r=0;r<l.length;++r)for(var n=l[r].name.split("."),a=o,s=0;s<n.length;++s){var u=n[s].split("[");if(u.length>1){u[0]in a||(a[u[0]]=[]),a=a[u[0]];for(var p=1;p<u.length;++p){var c=parseInt(u[p]);p<u.length-1||s<n.length-1?(c in a||(p<u.length-1?a[c]=[]:a[c]={}),a=a[c]):a[c]=t?r:l[r].type}}else s<n.length-1?(u[0]in a||(a[u[0]]={}),a=a[u[0]]):a[u[0]]=t?r:l[r].type}return o}},2631:function(h,l){l.uniforms=function(n,a){for(var s=n.getProgramParameter(a,n.ACTIVE_UNIFORMS),u=[],p=0;p<s;++p){var c=n.getActiveUniform(a,p);if(c){var b=r(n,c.type);if(c.size>1)for(var g=0;g<c.size;++g)u.push({name:c.name.replace("[0]","["+g+"]"),type:b});else u.push({name:c.name,type:b})}}return u},l.attributes=function(n,a){for(var s=n.getProgramParameter(a,n.ACTIVE_ATTRIBUTES),u=[],p=0;p<s;++p){var c=n.getActiveAttrib(a,p);c&&u.push({name:c.name,type:r(n,c.type)})}return u};var t={FLOAT:"float",FLOAT_VEC2:"vec2",FLOAT_VEC3:"vec3",FLOAT_VEC4:"vec4",INT:"int",INT_VEC2:"ivec2",INT_VEC3:"ivec3",INT_VEC4:"ivec4",BOOL:"bool",BOOL_VEC2:"bvec2",BOOL_VEC3:"bvec3",BOOL_VEC4:"bvec4",FLOAT_MAT2:"mat2",FLOAT_MAT3:"mat3",FLOAT_MAT4:"mat4",SAMPLER_2D:"sampler2D",SAMPLER_CUBE:"samplerCube"},o=null;function r(n,a){if(!o){var s=Object.keys(t);o={};for(var u=0;u<s.length;++u){var p=s[u];o[n[p]]=t[p]}}return o[a]}},1628:function(h,l,t){l.shader=function(b,g,f){return c(b).getShaderReference(g,f)},l.program=function(b,g,f,v,m){return c(b).getProgram(g,f,v,m)};var o=t(9068),r=t(3530),n=new(typeof WeakMap>"u"?t(4037):WeakMap),a=0;function s(b,g,f,v,m,x,T){this.id=b,this.src=g,this.type=f,this.shader=v,this.count=x,this.programs=[],this.cache=T}function u(b){this.gl=b,this.shaders=[{},{}],this.programs={}}s.prototype.dispose=function(){if(--this.count==0){for(var b=this.cache,g=b.gl,f=this.programs,v=0,m=f.length;v<m;++v){var x=b.programs[f[v]];x&&(delete b.programs[v],g.deleteProgram(x))}g.deleteShader(this.shader),delete b.shaders[this.type===g.FRAGMENT_SHADER|0][this.src]}};var p=u.prototype;function c(b){var g=n.get(b);return g||(g=new u(b),n.set(b,g)),g}p.getShaderReference=function(b,g){var f=this.gl,v=this.shaders[b===f.FRAGMENT_SHADER|0],m=v[g];if(m&&f.isShader(m.shader))m.count+=1;else{var x=function(T,d,M){var A=T.createShader(d);if(T.shaderSource(A,M),T.compileShader(A),!T.getShaderParameter(A,T.COMPILE_STATUS)){var C=T.getShaderInfoLog(A);try{var P=r(C,M,d)}catch(O){throw console.warn("Failed to format compiler error: "+O),new o(C,`Error compiling shader:
|
||
`+C)}throw new o(C,P.short,P.long)}return A}(f,b,g);m=v[g]=new s(a++,g,b,x,[],1,this)}return m},p.getProgram=function(b,g,f,v){var m=[b.id,g.id,f.join(":"),v.join(":")].join("@"),x=this.programs[m];return x&&this.gl.isProgram(x)||(this.programs[m]=x=function(T,d,M,A,C){var P=T.createProgram();T.attachShader(P,d),T.attachShader(P,M);for(var O=0;O<A.length;++O)T.bindAttribLocation(P,C[O],A[O]);if(T.linkProgram(P),!T.getProgramParameter(P,T.LINK_STATUS)){var z=T.getProgramInfoLog(P);throw new o(z,"Error linking program: "+z)}return P}(this.gl,b.shader,g.shader,f,v),b.programs.push(m),g.programs.push(m)),x}},3050:function(h){function l(o){this.plot=o,this.enable=[!0,!0,!1,!1],this.width=[1,1,1,1],this.color=[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.center=[1/0,1/0]}h.exports=function(o,r){var n=new l(o);return n.update(r),o.addOverlay(n),n};var t=l.prototype;t.update=function(o){o=o||{},this.enable=(o.enable||[!0,!0,!1,!1]).slice(),this.width=(o.width||[1,1,1,1]).slice(),this.color=(o.color||[[0,0,0,1],[0,0,0,1],[0,0,0,1],[0,0,0,1]]).map(function(r){return r.slice()}),this.center=(o.center||[1/0,1/0]).slice(),this.plot.setOverlayDirty()},t.draw=function(){var o=this.enable,r=this.width,n=this.color,a=this.center,s=this.plot,u=s.line,p=s.dataBox,c=s.viewBox;if(u.bind(),p[0]<=a[0]&&a[0]<=p[2]&&p[1]<=a[1]&&a[1]<=p[3]){var b=c[0]+(a[0]-p[0])/(p[2]-p[0])*(c[2]-c[0]),g=c[1]+(a[1]-p[1])/(p[3]-p[1])*(c[3]-c[1]);o[0]&&u.drawLine(b,g,c[0],g,r[0],n[0]),o[1]&&u.drawLine(b,g,b,c[1],r[1],n[1]),o[2]&&u.drawLine(b,g,c[2],g,r[2],n[2]),o[3]&&u.drawLine(b,g,b,c[3],r[3],n[3])}},t.dispose=function(){this.plot.removeOverlay(this)}},3540:function(h,l,t){var o=t(6832),r=t(5158),n=o([`precision mediump float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute vec3 position, color;
|
||
attribute float weight;
|
||
|
||
uniform mat4 model, view, projection;
|
||
uniform vec3 coordinates[3];
|
||
uniform vec4 colors[3];
|
||
uniform vec2 screenShape;
|
||
uniform float lineWidth;
|
||
|
||
varying vec4 fragColor;
|
||
|
||
void main() {
|
||
vec3 vertexPosition = mix(coordinates[0],
|
||
mix(coordinates[2], coordinates[1], 0.5 * (position + 1.0)), abs(position));
|
||
|
||
vec4 clipPos = projection * view * model * vec4(vertexPosition, 1.0);
|
||
vec2 clipOffset = (projection * view * model * vec4(color, 0.0)).xy;
|
||
vec2 delta = weight * clipOffset * screenShape;
|
||
vec2 lineOffset = normalize(vec2(delta.y, -delta.x)) / screenShape;
|
||
|
||
gl_Position = vec4(clipPos.xy + clipPos.w * 0.5 * lineWidth * lineOffset, clipPos.z, clipPos.w);
|
||
fragColor = color.x * colors[0] + color.y * colors[1] + color.z * colors[2];
|
||
}
|
||
`]),a=o([`precision mediump float;
|
||
#define GLSLIFY 1
|
||
|
||
varying vec4 fragColor;
|
||
|
||
void main() {
|
||
gl_FragColor = fragColor;
|
||
}`]);h.exports=function(s){return r(s,n,a,null,[{name:"position",type:"vec3"},{name:"color",type:"vec3"},{name:"weight",type:"float"}])}},6496:function(h,l,t){var o=t(5827),r=t(2944),n=t(3540);h.exports=function(g,f){var v=[];function m(A,C,P,O,z,B){var Y=[A,C,P,0,0,0,1];Y[O+3]=1,Y[O]=z,v.push.apply(v,Y),Y[6]=-1,v.push.apply(v,Y),Y[O]=B,v.push.apply(v,Y),v.push.apply(v,Y),Y[6]=1,v.push.apply(v,Y),Y[O]=z,v.push.apply(v,Y)}m(0,0,0,0,0,1),m(0,0,0,1,0,1),m(0,0,0,2,0,1),m(1,0,0,1,-1,1),m(1,0,0,2,-1,1),m(0,1,0,0,-1,1),m(0,1,0,2,-1,1),m(0,0,1,0,-1,1),m(0,0,1,1,-1,1);var x=o(g,v),T=r(g,[{type:g.FLOAT,buffer:x,size:3,offset:0,stride:28},{type:g.FLOAT,buffer:x,size:3,offset:12,stride:28},{type:g.FLOAT,buffer:x,size:1,offset:24,stride:28}]),d=n(g);d.attributes.position.location=0,d.attributes.color.location=1,d.attributes.weight.location=2;var M=new s(g,x,T,d);return M.update(f),M};var a=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(g,f,v,m){this.gl=g,this.buffer=f,this.vao=v,this.shader=m,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}var u=s.prototype,p=[0,0,0],c=[0,0,0],b=[0,0];u.isTransparent=function(){return!1},u.drawTransparent=function(g){},u.draw=function(g){var f=this.gl,v=this.vao,m=this.shader;v.bind(),m.bind();var x,T=g.model||a,d=g.view||a,M=g.projection||a;this.axes&&(x=this.axes.lastCubeProps.axis);for(var A=p,C=c,P=0;P<3;++P)x&&x[P]<0?(A[P]=this.bounds[0][P],C[P]=this.bounds[1][P]):(A[P]=this.bounds[1][P],C[P]=this.bounds[0][P]);for(b[0]=f.drawingBufferWidth,b[1]=f.drawingBufferHeight,m.uniforms.model=T,m.uniforms.view=d,m.uniforms.projection=M,m.uniforms.coordinates=[this.position,A,C],m.uniforms.colors=this.colors,m.uniforms.screenShape=b,P=0;P<3;++P)m.uniforms.lineWidth=this.lineWidth[P]*this.pixelRatio,this.enabled[P]&&(v.draw(f.TRIANGLES,6,6*P),this.drawSides[P]&&v.draw(f.TRIANGLES,12,18+12*P));v.unbind()},u.update=function(g){g&&("bounds"in g&&(this.bounds=g.bounds),"position"in g&&(this.position=g.position),"lineWidth"in g&&(this.lineWidth=g.lineWidth),"colors"in g&&(this.colors=g.colors),"enabled"in g&&(this.enabled=g.enabled),"drawSides"in g&&(this.drawSides=g.drawSides))},u.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()}},9578:function(h,l,t){var o=t(6832),r=o([`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 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;
|
||
}
|
||
`]),n=o([`#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;
|
||
}
|
||
`]),a=o([`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;
|
||
}
|
||
`]),s=o([`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);
|
||
}`]);l.meshShader={vertex:r,fragment:n,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec4"}]},l.pickShader={vertex:a,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec4"}]}},7307:function(h,l,t){var o=t(2858),r=t(4020),n=["xyz","xzy","yxz","yzx","zxy","zyx"],a=function(b,g){var f,v=b.length;for(f=0;f<v;f++){var m=b[f];if(m===g)return f;if(m>g)return f-1}return f},s=function(b,g,f){return b<g?g:b>f?f:b},u=function(b){var g=1/0;b.sort(function(x,T){return x-T});for(var f=b.length,v=1;v<f;v++){var m=Math.abs(b[v]-b[v-1]);m<g&&(g=m)}return g};h.exports=function(b,g){var f=b.startingPositions,v=b.maxLength||1e3,m=b.tubeSize||1,x=b.absoluteTubeSize,T=b.gridFill||"+x+y+z",d={};T.indexOf("-x")!==-1&&(d.reversedX=!0),T.indexOf("-y")!==-1&&(d.reversedY=!0),T.indexOf("-z")!==-1&&(d.reversedZ=!0),d.filled=n.indexOf(T.replace(/-/g,"").replace(/\+/g,""));var M=b.getVelocity||function(xe){return function(De,Ee,Me){var he=Ee.vectors,fe=Ee.meshgrid,ae=De[0],be=De[1],Ie=De[2],Te=fe[0].length,Ne=fe[1].length,qe=fe[2].length,ve=a(fe[0],ae),Ce=a(fe[1],be),Ae=a(fe[2],Ie),ze=ve+1,Ue=Ce+1,Ve=Ae+1;if(ve=s(ve,0,Te-1),ze=s(ze,0,Te-1),Ce=s(Ce,0,Ne-1),Ue=s(Ue,0,Ne-1),Ae=s(Ae,0,qe-1),Ve=s(Ve,0,qe-1),ve<0||Ce<0||Ae<0||ze>Te-1||Ue>Ne-1||Ve>qe-1)return o.create();var Ye,$e,rt,ht,nt,bt,wt=fe[0][ve],ut=fe[0][ze],lt=fe[1][Ce],Tt=fe[1][Ue],Et=fe[2][Ae],St=(ae-wt)/(ut-wt),Ft=(be-lt)/(Tt-lt),zt=(Ie-Et)/(fe[2][Ve]-Et);switch(isFinite(St)||(St=.5),isFinite(Ft)||(Ft=.5),isFinite(zt)||(zt=.5),Me.reversedX&&(ve=Te-1-ve,ze=Te-1-ze),Me.reversedY&&(Ce=Ne-1-Ce,Ue=Ne-1-Ue),Me.reversedZ&&(Ae=qe-1-Ae,Ve=qe-1-Ve),Me.filled){case 5:nt=Ae,bt=Ve,rt=Ce*qe,ht=Ue*qe,Ye=ve*qe*Ne,$e=ze*qe*Ne;break;case 4:nt=Ae,bt=Ve,Ye=ve*qe,$e=ze*qe,rt=Ce*qe*Te,ht=Ue*qe*Te;break;case 3:rt=Ce,ht=Ue,nt=Ae*Ne,bt=Ve*Ne,Ye=ve*Ne*qe,$e=ze*Ne*qe;break;case 2:rt=Ce,ht=Ue,Ye=ve*Ne,$e=ze*Ne,nt=Ae*Ne*Te,bt=Ve*Ne*Te;break;case 1:Ye=ve,$e=ze,nt=Ae*Te,bt=Ve*Te,rt=Ce*Te*qe,ht=Ue*Te*qe;break;default:Ye=ve,$e=ze,rt=Ce*Te,ht=Ue*Te,nt=Ae*Te*Ne,bt=Ve*Te*Ne}var Je=he[Ye+rt+nt],et=he[Ye+rt+bt],Ze=he[Ye+ht+nt],Qe=he[Ye+ht+bt],st=he[$e+rt+nt],ft=he[$e+rt+bt],Be=he[$e+ht+nt],je=he[$e+ht+bt],at=o.create(),ot=o.create(),xt=o.create(),yt=o.create();o.lerp(at,Je,st,St),o.lerp(ot,et,ft,St),o.lerp(xt,Ze,Be,St),o.lerp(yt,Qe,je,St);var _t=o.create(),gt=o.create();o.lerp(_t,at,xt,Ft),o.lerp(gt,ot,yt,Ft);var Ct=o.create();return o.lerp(Ct,_t,gt,zt),Ct}(xe,b,d)},A=b.getDivergence||function(xe,De){var Ee=o.create(),Me=1e-4;o.add(Ee,xe,[Me,0,0]);var he=M(Ee);o.subtract(he,he,De),o.scale(he,he,1/Me),o.add(Ee,xe,[0,Me,0]);var fe=M(Ee);o.subtract(fe,fe,De),o.scale(fe,fe,1/Me),o.add(Ee,xe,[0,0,Me]);var ae=M(Ee);return o.subtract(ae,ae,De),o.scale(ae,ae,1/Me),o.add(Ee,he,fe),o.add(Ee,Ee,ae),Ee},C=[],P=g[0][0],O=g[0][1],z=g[0][2],B=g[1][0],Y=g[1][1],D=g[1][2],G=function(xe){var De=xe[0],Ee=xe[1],Me=xe[2];return!(De<P||De>B||Ee<O||Ee>Y||Me<z||Me>D)},V=10*o.distance(g[0],g[1])/v,j=V*V,W=1,Z=0,ie=f.length;ie>1&&(W=function(xe){for(var De=[],Ee=[],Me=[],he={},fe={},ae={},be=xe.length,Ie=0;Ie<be;Ie++){var Te=xe[Ie],Ne=Te[0],qe=Te[1],ve=Te[2];he[Ne]||(De.push(Ne),he[Ne]=!0),fe[qe]||(Ee.push(qe),fe[qe]=!0),ae[ve]||(Me.push(ve),ae[ve]=!0)}var Ce=u(De),Ae=u(Ee),ze=u(Me),Ue=Math.min(Ce,Ae,ze);return isFinite(Ue)?Ue:1}(f));for(var te=0;te<ie;te++){var J=o.create();o.copy(J,f[te]);var X=[J],ee=[],re=M(J),oe=J;ee.push(re);var ue=[],ce=A(J,re),de=o.length(ce);isFinite(de)&&de>Z&&(Z=de),ue.push(de),C.push({points:X,velocities:ee,divergences:ue});for(var me=0;me<100*v&&X.length<v&&G(J);){me++;var _e=o.clone(re),Se=o.squaredLength(_e);if(Se===0)break;Se>j&&o.scale(_e,_e,V/Math.sqrt(Se)),o.add(_e,_e,J),re=M(_e),o.squaredDistance(oe,_e)-j>-1e-4*j&&(X.push(_e),oe=_e,ee.push(re),ce=A(_e,re),de=o.length(ce),isFinite(de)&&de>Z&&(Z=de),ue.push(de)),J=_e}}var we=function(xe,De,Ee,Me){for(var he=0,fe=0;fe<xe.length;fe++)for(var ae=xe[fe].velocities,be=0;be<ae.length;be++)he=Math.max(he,o.length(ae[be]));var Ie=xe.map(function(Ye){return function($e,rt,ht,nt){for(var bt=$e.points,wt=$e.velocities,ut=$e.divergences,lt=[],Tt=[],Et=[],St=[],Ft=[],zt=[],Je=0,et=0,Ze=r.create(),Qe=r.create(),st=0;st<bt.length;st++){var ft=bt[st],Be=wt[st],je=ut[st];rt===0&&(je=.05*ht),et=o.length(Be)/nt,Ze=r.create(),o.copy(Ze,Be),Ze[3]=je;for(var at=0;at<8;at++)Ft[at]=[ft[0],ft[1],ft[2],at];if(St.length>0)for(at=0;at<8;at++){var ot=(at+1)%8;lt.push(St[at],Ft[at],Ft[ot],Ft[ot],St[ot],St[at]),Et.push(Qe,Ze,Ze,Ze,Qe,Qe),zt.push(Je,et,et,et,Je,Je);var xt=lt.length;Tt.push([xt-6,xt-5,xt-4],[xt-3,xt-2,xt-1])}var yt=St;St=Ft,Ft=yt;var _t=Qe;Qe=Ze,Ze=_t;var gt=Je;Je=et,et=gt}return{positions:lt,cells:Tt,vectors:Et,vertexIntensity:zt}}(Ye,Ee,Me,he)}),Te=[],Ne=[],qe=[],ve=[];for(fe=0;fe<Ie.length;fe++){var Ce=Ie[fe],Ae=Te.length;for(Te=Te.concat(Ce.positions),qe=qe.concat(Ce.vectors),ve=ve.concat(Ce.vertexIntensity),be=0;be<Ce.cells.length;be++){var ze=Ce.cells[be],Ue=[];Ne.push(Ue);for(var Ve=0;Ve<ze.length;Ve++)Ue.push(ze[Ve]+Ae)}}return{positions:Te,cells:Ne,vectors:qe,vertexIntensity:ve,colormap:De}}(C,b.colormap,Z,W);return x?we.tubeScale=x:(Z===0&&(Z=1),we.tubeScale=.5*m*W/Z),we};var p=t(9578),c=t(1140).createMesh;h.exports.createTubeMesh=function(b,g){return c(b,g,{shaders:p,traceType:"streamtube"})}},9054:function(h,l,t){var o=t(5158),r=t(6832),n=r([`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;
|
||
vec4 worldPosition = model * vec4(worldCoordinate, 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);
|
||
}
|
||
`]),a=r([`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 — 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;
|
||
}
|
||
`]),s=r([`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;
|
||
vec4 worldPosition = model * vec4(worldCoordinate, 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);
|
||
}
|
||
`]),u=r([`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));
|
||
}
|
||
`]);l.createShader=function(p){var c=o(p,n,a,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return c.attributes.uv.location=0,c.attributes.f.location=1,c.attributes.normal.location=2,c},l.createPickShader=function(p){var c=o(p,n,u,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return c.attributes.uv.location=0,c.attributes.f.location=1,c.attributes.normal.location=2,c},l.createContourShader=function(p){var c=o(p,s,a,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return c.attributes.uv.location=0,c.attributes.f.location=1,c},l.createPickContourShader=function(p){var c=o(p,s,u,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return c.attributes.uv.location=0,c.attributes.f.location=1,c}},3754:function(h,l,t){h.exports=function(ce){var de=ce.gl,me=d(de),_e=A(de),Se=M(de),we=C(de),xe=r(de),De=n(de,[{buffer:xe,size:4,stride:P,offset:0},{buffer:xe,size:3,stride:P,offset:16},{buffer:xe,size:3,stride:P,offset:28}]),Ee=r(de),Me=n(de,[{buffer:Ee,size:4,stride:20,offset:0},{buffer:Ee,size:1,stride:20,offset:16}]),he=r(de),fe=n(de,[{buffer:he,size:2,type:de.FLOAT}]),ae=a(de,1,D,de.RGBA,de.UNSIGNED_BYTE);ae.minFilter=de.LINEAR,ae.magFilter=de.LINEAR;var be=new G(de,[0,0],[[0,0,0],[0,0,0]],me,_e,xe,De,ae,Se,we,Ee,Me,he,fe,[0,0,0]),Ie={levels:[[],[],[]]};for(var Te in ce)Ie[Te]=ce[Te];return Ie.colormap=Ie.colormap||"jet",be.update(Ie),be};var o=t(2288),r=t(5827),n=t(2944),a=t(8931),s=t(5306),u=t(9156),p=t(7498),c=t(7382),b=t(5050),g=t(4162),f=t(104),v=t(7437),m=t(5070),x=t(9144),T=t(9054),d=T.createShader,M=T.createContourShader,A=T.createPickShader,C=T.createPickContourShader,P=40,O=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],z=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],B=[[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 Y(ce,de,me,_e,Se){this.position=ce,this.index=de,this.uv=me,this.level=_e,this.dataCoordinate=Se}(function(){for(var ce=0;ce<3;++ce){var de=B[ce],me=(ce+2)%3;de[(ce+1)%3+0]=1,de[me+3]=1,de[ce+6]=1}})();var D=256;function G(ce,de,me,_e,Se,we,xe,De,Ee,Me,he,fe,ae,be,Ie){this.gl=ce,this.shape=de,this.bounds=me,this.objectOffset=Ie,this.intensityBounds=[],this._shader=_e,this._pickShader=Se,this._coordinateBuffer=we,this._vao=xe,this._colorMap=De,this._contourShader=Ee,this._contourPickShader=Me,this._contourBuffer=he,this._contourVAO=fe,this._contourOffsets=[[],[],[]],this._contourCounts=[[],[],[]],this._vertexCount=0,this._pickResult=new Y([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=ae,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=[b(s.mallocFloat(1024),[0,0]),b(s.mallocFloat(1024),[0,0]),b(s.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 V=G.prototype;V.genColormap=function(ce,de){var me=!1,_e=c([u({colormap:ce,nshades:D,format:"rgba"}).map(function(Se,we){var xe=de?function(De,Ee){if(!Ee||!Ee.length)return 1;for(var Me=0;Me<Ee.length;++Me){if(Ee.length<2)return 1;if(Ee[Me][0]===De)return Ee[Me][1];if(Ee[Me][0]>De&&Me>0){var he=(Ee[Me][0]-De)/(Ee[Me][0]-Ee[Me-1][0]);return Ee[Me][1]*(1-he)+he*Ee[Me-1][1]}}return 1}(we/255,de):Se[3];return xe<1&&(me=!0),[Se[0],Se[1],Se[2],255*xe]})]);return p.divseq(_e,255),this.hasAlphaScale=me,_e},V.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},V.isOpaque=function(){return!this.isTransparent()},V.pickSlots=1,V.setPickBase=function(ce){this.pickId=ce};var j=[0,0,0],W={showSurface:!1,showContour:!1,projections:[O.slice(),O.slice(),O.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function Z(ce,de){var me,_e,Se,we=de.axes&&de.axes.lastCubeProps.axis||j,xe=de.showSurface,De=de.showContour;for(me=0;me<3;++me)for(xe=xe||de.surfaceProject[me],_e=0;_e<3;++_e)De=De||de.contourProject[me][_e];for(me=0;me<3;++me){var Ee=W.projections[me];for(_e=0;_e<16;++_e)Ee[_e]=0;for(_e=0;_e<4;++_e)Ee[5*_e]=1;Ee[5*me]=0,Ee[12+me]=de.axesBounds[+(we[me]>0)][me],f(Ee,ce.model,Ee);var Me=W.clipBounds[me];for(Se=0;Se<2;++Se)for(_e=0;_e<3;++_e)Me[Se][_e]=ce.clipBounds[Se][_e];Me[0][me]=-1e8,Me[1][me]=1e8}return W.showSurface=xe,W.showContour=De,W}var ie={model:O,view:O,projection:O,inverseModel:O.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},te=O.slice(),J=[1,0,0,0,1,0,0,0,1];function X(ce,de){ce=ce||{};var me=this.gl;me.disable(me.CULL_FACE),this._colorMap.bind(0);var _e=ie;_e.model=ce.model||O,_e.view=ce.view||O,_e.projection=ce.projection||O,_e.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],_e.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],_e.objectOffset=this.objectOffset,_e.contourColor=this.contourColor[0],_e.inverseModel=v(_e.inverseModel,_e.model);for(var Se=0;Se<2;++Se)for(var we=_e.clipBounds[Se],xe=0;xe<3;++xe)we[xe]=Math.min(Math.max(this.clipBounds[Se][xe],-1e8),1e8);_e.kambient=this.ambientLight,_e.kdiffuse=this.diffuseLight,_e.kspecular=this.specularLight,_e.roughness=this.roughness,_e.fresnel=this.fresnel,_e.opacity=this.opacity,_e.height=0,_e.permutation=J,_e.vertexColor=this.vertexColor;var De=te;for(f(De,_e.view,_e.model),f(De,_e.projection,De),v(De,De),Se=0;Se<3;++Se)_e.eyePosition[Se]=De[12+Se]/De[15];var Ee=De[15];for(Se=0;Se<3;++Se)Ee+=this.lightPosition[Se]*De[4*Se+3];for(Se=0;Se<3;++Se){var Me=De[12+Se];for(xe=0;xe<3;++xe)Me+=De[4*xe+Se]*this.lightPosition[xe];_e.lightPosition[Se]=Me/Ee}var he=Z(_e,this);if(he.showSurface){for(this._shader.bind(),this._shader.uniforms=_e,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(me.TRIANGLES,this._vertexCount),Se=0;Se<3;++Se)this.surfaceProject[Se]&&this.vertexCount&&(this._shader.uniforms.model=he.projections[Se],this._shader.uniforms.clipBounds=he.clipBounds[Se],this._vao.draw(me.TRIANGLES,this._vertexCount));this._vao.unbind()}if(he.showContour){var fe=this._contourShader;_e.kambient=1,_e.kdiffuse=0,_e.kspecular=0,_e.opacity=1,fe.bind(),fe.uniforms=_e;var ae=this._contourVAO;for(ae.bind(),Se=0;Se<3;++Se)for(fe.uniforms.permutation=B[Se],me.lineWidth(this.contourWidth[Se]*this.pixelRatio),xe=0;xe<this.contourLevels[Se].length;++xe)xe===this.highlightLevel[Se]?(fe.uniforms.contourColor=this.highlightColor[Se],fe.uniforms.contourTint=this.highlightTint[Se]):xe!==0&&xe-1!==this.highlightLevel[Se]||(fe.uniforms.contourColor=this.contourColor[Se],fe.uniforms.contourTint=this.contourTint[Se]),this._contourCounts[Se][xe]&&(fe.uniforms.height=this.contourLevels[Se][xe],ae.draw(me.LINES,this._contourCounts[Se][xe],this._contourOffsets[Se][xe]));for(Se=0;Se<3;++Se)for(fe.uniforms.model=he.projections[Se],fe.uniforms.clipBounds=he.clipBounds[Se],xe=0;xe<3;++xe)if(this.contourProject[Se][xe]){fe.uniforms.permutation=B[xe],me.lineWidth(this.contourWidth[xe]*this.pixelRatio);for(var be=0;be<this.contourLevels[xe].length;++be)be===this.highlightLevel[xe]?(fe.uniforms.contourColor=this.highlightColor[xe],fe.uniforms.contourTint=this.highlightTint[xe]):be!==0&&be-1!==this.highlightLevel[xe]||(fe.uniforms.contourColor=this.contourColor[xe],fe.uniforms.contourTint=this.contourTint[xe]),this._contourCounts[xe][be]&&(fe.uniforms.height=this.contourLevels[xe][be],ae.draw(me.LINES,this._contourCounts[xe][be],this._contourOffsets[xe][be]))}for(ae.unbind(),(ae=this._dynamicVAO).bind(),Se=0;Se<3;++Se)if(this._dynamicCounts[Se]!==0)for(fe.uniforms.model=_e.model,fe.uniforms.clipBounds=_e.clipBounds,fe.uniforms.permutation=B[Se],me.lineWidth(this.dynamicWidth[Se]*this.pixelRatio),fe.uniforms.contourColor=this.dynamicColor[Se],fe.uniforms.contourTint=this.dynamicTint[Se],fe.uniforms.height=this.dynamicLevel[Se],ae.draw(me.LINES,this._dynamicCounts[Se],this._dynamicOffsets[Se]),xe=0;xe<3;++xe)this.contourProject[xe][Se]&&(fe.uniforms.model=he.projections[xe],fe.uniforms.clipBounds=he.clipBounds[xe],ae.draw(me.LINES,this._dynamicCounts[Se],this._dynamicOffsets[Se]));ae.unbind()}}V.draw=function(ce){return X.call(this,ce,!1)},V.drawTransparent=function(ce){return X.call(this,ce,!0)};var ee={model:O,view:O,projection:O,inverseModel:O,clipBounds:[[0,0,0],[0,0,0]],height:0,shape:[0,0],pickId:0,lowerBound:[0,0,0],upperBound:[0,0,0],zOffset:0,objectOffset:[0,0,0],permutation:[1,0,0,0,1,0,0,0,1],lightPosition:[0,0,0],eyePosition:[0,0,0]};function re(ce,de){return Array.isArray(ce)?[de(ce[0]),de(ce[1]),de(ce[2])]:[de(ce),de(ce),de(ce)]}function oe(ce){return Array.isArray(ce)?ce.length===3?[ce[0],ce[1],ce[2],1]:[ce[0],ce[1],ce[2],ce[3]]:[0,0,0,1]}function ue(ce){if(Array.isArray(ce)){if(Array.isArray(ce))return[oe(ce[0]),oe(ce[1]),oe(ce[2])];var de=oe(ce);return[de.slice(),de.slice(),de.slice()]}}V.drawPick=function(ce){ce=ce||{};var de=this.gl;de.disable(de.CULL_FACE);var me=ee;me.model=ce.model||O,me.view=ce.view||O,me.projection=ce.projection||O,me.shape=this._field[2].shape,me.pickId=this.pickId/255,me.lowerBound=this.bounds[0],me.upperBound=this.bounds[1],me.objectOffset=this.objectOffset,me.permutation=J;for(var _e=0;_e<2;++_e)for(var Se=me.clipBounds[_e],we=0;we<3;++we)Se[we]=Math.min(Math.max(this.clipBounds[_e][we],-1e8),1e8);var xe=Z(me,this);if(xe.showSurface){for(this._pickShader.bind(),this._pickShader.uniforms=me,this._vao.bind(),this._vao.draw(de.TRIANGLES,this._vertexCount),_e=0;_e<3;++_e)this.surfaceProject[_e]&&(this._pickShader.uniforms.model=xe.projections[_e],this._pickShader.uniforms.clipBounds=xe.clipBounds[_e],this._vao.draw(de.TRIANGLES,this._vertexCount));this._vao.unbind()}if(xe.showContour){var De=this._contourPickShader;De.bind(),De.uniforms=me;var Ee=this._contourVAO;for(Ee.bind(),we=0;we<3;++we)for(de.lineWidth(this.contourWidth[we]*this.pixelRatio),De.uniforms.permutation=B[we],_e=0;_e<this.contourLevels[we].length;++_e)this._contourCounts[we][_e]&&(De.uniforms.height=this.contourLevels[we][_e],Ee.draw(de.LINES,this._contourCounts[we][_e],this._contourOffsets[we][_e]));for(_e=0;_e<3;++_e)for(De.uniforms.model=xe.projections[_e],De.uniforms.clipBounds=xe.clipBounds[_e],we=0;we<3;++we)if(this.contourProject[_e][we]){De.uniforms.permutation=B[we],de.lineWidth(this.contourWidth[we]*this.pixelRatio);for(var Me=0;Me<this.contourLevels[we].length;++Me)this._contourCounts[we][Me]&&(De.uniforms.height=this.contourLevels[we][Me],Ee.draw(de.LINES,this._contourCounts[we][Me],this._contourOffsets[we][Me]))}Ee.unbind()}},V.pick=function(ce){if(!ce||ce.id!==this.pickId)return null;var de=this._field[2].shape,me=this._pickResult,_e=de[0]*(ce.value[0]+(ce.value[2]>>4)/16)/255,Se=Math.floor(_e),we=_e-Se,xe=de[1]*(ce.value[1]+(15&ce.value[2])/16)/255,De=Math.floor(xe),Ee=xe-De;Se+=1,De+=1;var Me=me.position;Me[0]=Me[1]=Me[2]=0;for(var he=0;he<2;++he)for(var fe=he?we:1-we,ae=0;ae<2;++ae)for(var be=Se+he,Ie=De+ae,Te=fe*(ae?Ee:1-Ee),Ne=0;Ne<3;++Ne)Me[Ne]+=this._field[Ne].get(be,Ie)*Te;for(var qe=this._pickResult.level,ve=0;ve<3;++ve)if(qe[ve]=m.le(this.contourLevels[ve],Me[ve]),qe[ve]<0)this.contourLevels[ve].length>0&&(qe[ve]=0);else if(qe[ve]<this.contourLevels[ve].length-1){var Ce=this.contourLevels[ve][qe[ve]],Ae=this.contourLevels[ve][qe[ve]+1];Math.abs(Ce-Me[ve])>Math.abs(Ae-Me[ve])&&(qe[ve]+=1)}for(me.index[0]=we<.5?Se:Se+1,me.index[1]=Ee<.5?De:De+1,me.uv[0]=_e/de[0],me.uv[1]=xe/de[1],Ne=0;Ne<3;++Ne)me.dataCoordinate[Ne]=this._field[Ne].get(me.index[0],me.index[1]);return me},V.padField=function(ce,de){var me=de.shape.slice(),_e=ce.shape.slice();p.assign(ce.lo(1,1).hi(me[0],me[1]),de),p.assign(ce.lo(1).hi(me[0],1),de.hi(me[0],1)),p.assign(ce.lo(1,_e[1]-1).hi(me[0],1),de.lo(0,me[1]-1).hi(me[0],1)),p.assign(ce.lo(0,1).hi(1,me[1]),de.hi(1)),p.assign(ce.lo(_e[0]-1,1).hi(1,me[1]),de.lo(me[0]-1)),ce.set(0,0,de.get(0,0)),ce.set(0,_e[1]-1,de.get(0,me[1]-1)),ce.set(_e[0]-1,0,de.get(me[0]-1,0)),ce.set(_e[0]-1,_e[1]-1,de.get(me[0]-1,me[1]-1))},V.update=function(ce){ce=ce||{},this.objectOffset=ce.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in ce&&(this.contourWidth=re(ce.contourWidth,Number)),"showContour"in ce&&(this.showContour=re(ce.showContour,Boolean)),"showSurface"in ce&&(this.showSurface=!!ce.showSurface),"contourTint"in ce&&(this.contourTint=re(ce.contourTint,Boolean)),"contourColor"in ce&&(this.contourColor=ue(ce.contourColor)),"contourProject"in ce&&(this.contourProject=re(ce.contourProject,function(ln){return re(ln,Boolean)})),"surfaceProject"in ce&&(this.surfaceProject=ce.surfaceProject),"dynamicColor"in ce&&(this.dynamicColor=ue(ce.dynamicColor)),"dynamicTint"in ce&&(this.dynamicTint=re(ce.dynamicTint,Number)),"dynamicWidth"in ce&&(this.dynamicWidth=re(ce.dynamicWidth,Number)),"opacity"in ce&&(this.opacity=ce.opacity),"opacityscale"in ce&&(this.opacityscale=ce.opacityscale),"colorBounds"in ce&&(this.colorBounds=ce.colorBounds),"vertexColor"in ce&&(this.vertexColor=ce.vertexColor?1:0),"colormap"in ce&&this._colorMap.setPixels(this.genColormap(ce.colormap,this.opacityscale));var de=ce.field||ce.coords&&ce.coords[2]||null,me=!1;if(de||(de=this._field[2].shape[0]||this._field[2].shape[2]?this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):this._field[2].hi(0,0)),"field"in ce||"coords"in ce){var _e=(de.shape[0]+2)*(de.shape[1]+2);_e>this._field[2].data.length&&(s.freeFloat(this._field[2].data),this._field[2].data=s.mallocFloat(o.nextPow2(_e))),this._field[2]=b(this._field[2].data,[de.shape[0]+2,de.shape[1]+2]),this.padField(this._field[2],de),this.shape=de.shape.slice();for(var Se=this.shape,we=0;we<2;++we)this._field[2].size>this._field[we].data.length&&(s.freeFloat(this._field[we].data),this._field[we].data=s.mallocFloat(this._field[2].size)),this._field[we]=b(this._field[we].data,[Se[0]+2,Se[1]+2]);if(ce.coords){var xe=ce.coords;if(!Array.isArray(xe)||xe.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(we=0;we<2;++we){var De=xe[we];for(ae=0;ae<2;++ae)if(De.shape[ae]!==Se[ae])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[we],De)}}else if(ce.ticks){var Ee=ce.ticks;if(!Array.isArray(Ee)||Ee.length!==2)throw new Error("gl-surface: invalid ticks");for(we=0;we<2;++we){var Me=Ee[we];if((Array.isArray(Me)||Me.length)&&(Me=b(Me)),Me.shape[0]!==Se[we])throw new Error("gl-surface: invalid tick length");var he=b(Me.data,Se);he.stride[we]=Me.stride[0],he.stride[1^we]=0,this.padField(this._field[we],he)}}else{for(we=0;we<2;++we){var fe=[0,0];fe[we]=1,this._field[we]=b(this._field[we].data,[Se[0]+2,Se[1]+2],fe,0)}this._field[0].set(0,0,0);for(var ae=0;ae<Se[0];++ae)this._field[0].set(ae+1,0,ae);for(this._field[0].set(Se[0]+1,0,Se[0]-1),this._field[1].set(0,0,0),ae=0;ae<Se[1];++ae)this._field[1].set(0,ae+1,ae);this._field[1].set(0,Se[1]+1,Se[1]-1)}var be=this._field,Ie=b(s.mallocFloat(3*be[2].size*2),[3,Se[0]+2,Se[1]+2,2]);for(we=0;we<3;++we)x(Ie.pick(we),be[we],"mirror");var Te=b(s.mallocFloat(3*be[2].size),[Se[0]+2,Se[1]+2,3]);for(we=0;we<Se[0]+2;++we)for(ae=0;ae<Se[1]+2;++ae){var Ne=Ie.get(0,we,ae,0),qe=Ie.get(0,we,ae,1),ve=Ie.get(1,we,ae,0),Ce=Ie.get(1,we,ae,1),Ae=Ie.get(2,we,ae,0),ze=Ie.get(2,we,ae,1),Ue=ve*ze-Ce*Ae,Ve=Ae*qe-ze*Ne,Ye=Ne*Ce-qe*ve,$e=Math.sqrt(Ue*Ue+Ve*Ve+Ye*Ye);$e<1e-8?($e=Math.max(Math.abs(Ue),Math.abs(Ve),Math.abs(Ye)))<1e-8?(Ye=1,Ve=Ue=0,$e=1):$e=1/$e:$e=1/Math.sqrt($e),Te.set(we,ae,0,Ue*$e),Te.set(we,ae,1,Ve*$e),Te.set(we,ae,2,Ye*$e)}s.free(Ie.data);var rt=[1/0,1/0,1/0],ht=[-1/0,-1/0,-1/0],nt=1/0,bt=-1/0,wt=(Se[0]-1)*(Se[1]-1)*6,ut=s.mallocFloat(o.nextPow2(10*wt)),lt=0,Tt=0;for(we=0;we<Se[0]-1;++we)e:for(ae=0;ae<Se[1]-1;++ae){for(var Et=0;Et<2;++Et)for(var St=0;St<2;++St)for(var Ft=0;Ft<3;++Ft){var zt=this._field[Ft].get(1+we+Et,1+ae+St);if(isNaN(zt)||!isFinite(zt))continue e}for(Ft=0;Ft<6;++Ft){var Je=we+z[Ft][0],et=ae+z[Ft][1],Ze=this._field[0].get(Je+1,et+1),Qe=this._field[1].get(Je+1,et+1);zt=this._field[2].get(Je+1,et+1),Ue=Te.get(Je+1,et+1,0),Ve=Te.get(Je+1,et+1,1),Ye=Te.get(Je+1,et+1,2),ce.intensity&&(st=ce.intensity.get(Je,et));var st=ce.intensity?ce.intensity.get(Je,et):zt+this.objectOffset[2];ut[lt++]=Je,ut[lt++]=et,ut[lt++]=Ze,ut[lt++]=Qe,ut[lt++]=zt,ut[lt++]=0,ut[lt++]=st,ut[lt++]=Ue,ut[lt++]=Ve,ut[lt++]=Ye,rt[0]=Math.min(rt[0],Ze+this.objectOffset[0]),rt[1]=Math.min(rt[1],Qe+this.objectOffset[1]),rt[2]=Math.min(rt[2],zt+this.objectOffset[2]),nt=Math.min(nt,st),ht[0]=Math.max(ht[0],Ze+this.objectOffset[0]),ht[1]=Math.max(ht[1],Qe+this.objectOffset[1]),ht[2]=Math.max(ht[2],zt+this.objectOffset[2]),bt=Math.max(bt,st),Tt+=1}}for(ce.intensityBounds&&(nt=+ce.intensityBounds[0],bt=+ce.intensityBounds[1]),we=6;we<lt;we+=10)ut[we]=(ut[we]-nt)/(bt-nt);this._vertexCount=Tt,this._coordinateBuffer.update(ut.subarray(0,lt)),s.freeFloat(ut),s.free(Te.data),this.bounds=[rt,ht],this.intensity=ce.intensity||this._field[2],this.intensityBounds[0]===nt&&this.intensityBounds[1]===bt||(me=!0),this.intensityBounds=[nt,bt]}if("levels"in ce){var ft=ce.levels;for(ft=Array.isArray(ft[0])?ft.slice():[[],[],ft],we=0;we<3;++we)ft[we]=ft[we].slice(),ft[we].sort(function(ln,nn){return ln-nn});for(we=0;we<3;++we)for(ae=0;ae<ft[we].length;++ae)ft[we][ae]-=this.objectOffset[we];e:for(we=0;we<3;++we){if(ft[we].length!==this.contourLevels[we].length){me=!0;break}for(ae=0;ae<ft[we].length;++ae)if(ft[we][ae]!==this.contourLevels[we][ae]){me=!0;break e}}this.contourLevels=ft}if(me){be=this._field,Se=this.shape;for(var Be=[],je=0;je<3;++je){var at=this.contourLevels[je],ot=[],xt=[],yt=[0,0,0];for(we=0;we<at.length;++we){var _t=g(this._field[je],at[we]);ot.push(Be.length/5|0),Tt=0;e:for(ae=0;ae<_t.cells.length;++ae){var gt=_t.cells[ae];for(Ft=0;Ft<2;++Ft){var Ct=_t.positions[gt[Ft]],dt=Ct[0],vt=0|Math.floor(dt),At=dt-vt,Bt=Ct[1],jt=0|Math.floor(Bt),Ut=Bt-jt,tn=!1;t:for(var Xt=0;Xt<3;++Xt){yt[Xt]=0;var Qt=(je+Xt+1)%3;for(Et=0;Et<2;++Et){var Gt=Et?At:1-At;for(Je=0|Math.min(Math.max(vt+Et,0),Se[0]),St=0;St<2;++St){var vn=St?Ut:1-Ut;if(et=0|Math.min(Math.max(jt+St,0),Se[1]),zt=Xt<2?this._field[Qt].get(Je,et):(this.intensity.get(Je,et)-this.intensityBounds[0])/(this.intensityBounds[1]-this.intensityBounds[0]),!isFinite(zt)||isNaN(zt)){tn=!0;break t}var Tn=Gt*vn;yt[Xt]+=Tn*zt}}}if(tn){if(Ft>0){for(var dn=0;dn<5;++dn)Be.pop();Tt-=1}continue e}Be.push(yt[0],yt[1],Ct[0],Ct[1],yt[2]),Tt+=1}}xt.push(Tt)}this._contourOffsets[je]=ot,this._contourCounts[je]=xt}var Yt=s.mallocFloat(Be.length);for(we=0;we<Be.length;++we)Yt[we]=Be[we];this._contourBuffer.update(Yt),s.freeFloat(Yt)}},V.dispose=function(){this._shader.dispose(),this._vao.dispose(),this._coordinateBuffer.dispose(),this._colorMap.dispose(),this._contourBuffer.dispose(),this._contourVAO.dispose(),this._contourShader.dispose(),this._contourPickShader.dispose(),this._dynamicBuffer.dispose(),this._dynamicVAO.dispose();for(var ce=0;ce<3;++ce)s.freeFloat(this._field[ce].data)},V.highlight=function(ce){var de,me;if(!ce)return this._dynamicCounts=[0,0,0],this.dyanamicLevel=[NaN,NaN,NaN],void(this.highlightLevel=[-1,-1,-1]);for(de=0;de<3;++de)this.enableHighlight[de]?this.highlightLevel[de]=ce.level[de]:this.highlightLevel[de]=-1;for(me=this.snapToData?ce.dataCoordinate:ce.position,de=0;de<3;++de)me[de]-=this.objectOffset[de];if(this.enableDynamic[0]&&me[0]!==this.dynamicLevel[0]||this.enableDynamic[1]&&me[1]!==this.dynamicLevel[1]||this.enableDynamic[2]&&me[2]!==this.dynamicLevel[2]){for(var _e=0,Se=this.shape,we=s.mallocFloat(12*Se[0]*Se[1]),xe=0;xe<3;++xe)if(this.enableDynamic[xe]){this.dynamicLevel[xe]=me[xe];var De=(xe+1)%3,Ee=(xe+2)%3,Me=this._field[xe],he=this._field[De],fe=this._field[Ee],ae=g(Me,me[xe]),be=ae.cells,Ie=ae.positions;for(this._dynamicOffsets[xe]=_e,de=0;de<be.length;++de)for(var Te=be[de],Ne=0;Ne<2;++Ne){var qe=Ie[Te[Ne]],ve=+qe[0],Ce=0|ve,Ae=0|Math.min(Ce+1,Se[0]),ze=ve-Ce,Ue=1-ze,Ve=+qe[1],Ye=0|Ve,$e=0|Math.min(Ye+1,Se[1]),rt=Ve-Ye,ht=1-rt,nt=Ue*ht,bt=Ue*rt,wt=ze*ht,ut=ze*rt,lt=nt*he.get(Ce,Ye)+bt*he.get(Ce,$e)+wt*he.get(Ae,Ye)+ut*he.get(Ae,$e),Tt=nt*fe.get(Ce,Ye)+bt*fe.get(Ce,$e)+wt*fe.get(Ae,Ye)+ut*fe.get(Ae,$e);if(isNaN(lt)||isNaN(Tt)){Ne&&(_e-=1);break}we[2*_e+0]=lt,we[2*_e+1]=Tt,_e+=1}this._dynamicCounts[xe]=_e-this._dynamicOffsets[xe]}else this.dynamicLevel[xe]=NaN,this._dynamicCounts[xe]=0;this._dynamicBuffer.update(we.subarray(0,2*_e)),s.freeFloat(we)}}},8931:function(h,l,t){var o=t(5050),r=t(7498),n=t(5306);h.exports=function(T){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(a||function(A){a=[A.LINEAR,A.NEAREST_MIPMAP_LINEAR,A.LINEAR_MIPMAP_NEAREST,A.LINEAR_MIPMAP_NEAREST],s=[A.NEAREST,A.LINEAR,A.NEAREST_MIPMAP_NEAREST,A.NEAREST_MIPMAP_LINEAR,A.LINEAR_MIPMAP_NEAREST,A.LINEAR_MIPMAP_LINEAR],u=[A.REPEAT,A.CLAMP_TO_EDGE,A.MIRRORED_REPEAT]}(T),typeof arguments[1]=="number")return x(T,arguments[1],arguments[2],arguments[3]||T.RGBA,arguments[4]||T.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return x(T,0|arguments[1][0],0|arguments[1][1],arguments[2]||T.RGBA,arguments[3]||T.UNSIGNED_BYTE);if(typeof arguments[1]=="object"){var d=arguments[1],M=p(d)?d:d.raw;if(M)return function(A,C,P,O,z,B){var Y=m(A);return A.texImage2D(A.TEXTURE_2D,0,z,z,B,C),new g(A,Y,P,O,z,B)}(T,M,0|d.width,0|d.height,arguments[2]||T.RGBA,arguments[3]||T.UNSIGNED_BYTE);if(d.shape&&d.data&&d.stride)return function(A,C){var P=C.dtype,O=C.shape.slice(),z=A.getParameter(A.MAX_TEXTURE_SIZE);if(O[0]<0||O[0]>z||O[1]<0||O[1]>z)throw new Error("gl-texture2d: Invalid texture size");var B=v(O,C.stride.slice()),Y=0;P==="float32"?Y=A.FLOAT:P==="float64"?(Y=A.FLOAT,B=!1,P="float32"):P==="uint8"?Y=A.UNSIGNED_BYTE:(Y=A.UNSIGNED_BYTE,B=!1,P="uint8");var D,G,V=0;if(O.length===2)V=A.LUMINANCE,O=[O[0],O[1],1],C=o(C.data,O,[C.stride[0],C.stride[1],1],C.offset);else{if(O.length!==3)throw new Error("gl-texture2d: Invalid shape for texture");if(O[2]===1)V=A.ALPHA;else if(O[2]===2)V=A.LUMINANCE_ALPHA;else if(O[2]===3)V=A.RGB;else{if(O[2]!==4)throw new Error("gl-texture2d: Invalid shape for pixel coords");V=A.RGBA}}Y!==A.FLOAT||A.getExtension("OES_texture_float")||(Y=A.UNSIGNED_BYTE,B=!1);var j=C.size;if(B)D=C.offset===0&&C.data.length===j?C.data:C.data.subarray(C.offset,C.offset+j);else{var W=[O[2],O[2]*O[0],1];G=n.malloc(j,P);var Z=o(G,O,W,0);P!=="float32"&&P!=="float64"||Y!==A.UNSIGNED_BYTE?r.assign(Z,C):c(Z,C),D=G.subarray(0,j)}var ie=m(A);return A.texImage2D(A.TEXTURE_2D,0,V,O[0],O[1],0,V,Y,D),B||n.free(G),new g(A,ie,O[0],O[1],V,Y)}(T,d)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")};var a=null,s=null,u=null;function p(T){return typeof HTMLCanvasElement<"u"&&T instanceof HTMLCanvasElement||typeof HTMLImageElement<"u"&&T instanceof HTMLImageElement||typeof HTMLVideoElement<"u"&&T instanceof HTMLVideoElement||typeof ImageData<"u"&&T instanceof ImageData}var c=function(T,d){r.muls(T,d,255)};function b(T,d,M){var A=T.gl,C=A.getParameter(A.MAX_TEXTURE_SIZE);if(d<0||d>C||M<0||M>C)throw new Error("gl-texture2d: Invalid texture size");return T._shape=[d,M],T.bind(),A.texImage2D(A.TEXTURE_2D,0,T.format,d,M,0,T.format,T.type,null),T._mipLevels=[0],T}function g(T,d,M,A,C,P){this.gl=T,this.handle=d,this.format=C,this.type=P,this._shape=[M,A],this._mipLevels=[0],this._magFilter=T.NEAREST,this._minFilter=T.NEAREST,this._wrapS=T.CLAMP_TO_EDGE,this._wrapT=T.CLAMP_TO_EDGE,this._anisoSamples=1;var O=this,z=[this._wrapS,this._wrapT];Object.defineProperties(z,[{get:function(){return O._wrapS},set:function(Y){return O.wrapS=Y}},{get:function(){return O._wrapT},set:function(Y){return O.wrapT=Y}}]),this._wrapVector=z;var B=[this._shape[0],this._shape[1]];Object.defineProperties(B,[{get:function(){return O._shape[0]},set:function(Y){return O.width=Y}},{get:function(){return O._shape[1]},set:function(Y){return O.height=Y}}]),this._shapeVector=B}var f=g.prototype;function v(T,d){return T.length===3?d[2]===1&&d[1]===T[0]*T[2]&&d[0]===T[2]:d[0]===1&&d[1]===T[0]}function m(T){var d=T.createTexture();return T.bindTexture(T.TEXTURE_2D,d),T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MIN_FILTER,T.NEAREST),T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MAG_FILTER,T.NEAREST),T.texParameteri(T.TEXTURE_2D,T.TEXTURE_WRAP_S,T.CLAMP_TO_EDGE),T.texParameteri(T.TEXTURE_2D,T.TEXTURE_WRAP_T,T.CLAMP_TO_EDGE),d}function x(T,d,M,A,C){var P=T.getParameter(T.MAX_TEXTURE_SIZE);if(d<0||d>P||M<0||M>P)throw new Error("gl-texture2d: Invalid texture shape");if(C===T.FLOAT&&!T.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var O=m(T);return T.texImage2D(T.TEXTURE_2D,0,A,d,M,0,A,C,null),new g(T,O,d,M,A,C)}Object.defineProperties(f,{minFilter:{get:function(){return this._minFilter},set:function(T){this.bind();var d=this.gl;if(this.type===d.FLOAT&&a.indexOf(T)>=0&&(d.getExtension("OES_texture_float_linear")||(T=d.NEAREST)),s.indexOf(T)<0)throw new Error("gl-texture2d: Unknown filter mode "+T);return d.texParameteri(d.TEXTURE_2D,d.TEXTURE_MIN_FILTER,T),this._minFilter=T}},magFilter:{get:function(){return this._magFilter},set:function(T){this.bind();var d=this.gl;if(this.type===d.FLOAT&&a.indexOf(T)>=0&&(d.getExtension("OES_texture_float_linear")||(T=d.NEAREST)),s.indexOf(T)<0)throw new Error("gl-texture2d: Unknown filter mode "+T);return d.texParameteri(d.TEXTURE_2D,d.TEXTURE_MAG_FILTER,T),this._magFilter=T}},mipSamples:{get:function(){return this._anisoSamples},set:function(T){var d=this._anisoSamples;if(this._anisoSamples=0|Math.max(T,1),d!==this._anisoSamples){var M=this.gl.getExtension("EXT_texture_filter_anisotropic");M&&this.gl.texParameterf(this.gl.TEXTURE_2D,M.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(T){if(this.bind(),u.indexOf(T)<0)throw new Error("gl-texture2d: Unknown wrap mode "+T);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,T),this._wrapS=T}},wrapT:{get:function(){return this._wrapT},set:function(T){if(this.bind(),u.indexOf(T)<0)throw new Error("gl-texture2d: Unknown wrap mode "+T);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,T),this._wrapT=T}},wrap:{get:function(){return this._wrapVector},set:function(T){if(Array.isArray(T)||(T=[T,T]),T.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var d=0;d<2;++d)if(u.indexOf(T[d])<0)throw new Error("gl-texture2d: Unknown wrap mode "+T);this._wrapS=T[0],this._wrapT=T[1];var M=this.gl;return this.bind(),M.texParameteri(M.TEXTURE_2D,M.TEXTURE_WRAP_S,this._wrapS),M.texParameteri(M.TEXTURE_2D,M.TEXTURE_WRAP_T,this._wrapT),T}},shape:{get:function(){return this._shapeVector},set:function(T){if(Array.isArray(T)){if(T.length!==2)throw new Error("gl-texture2d: Invalid texture shape")}else T=[0|T,0|T];return b(this,0|T[0],0|T[1]),[0|T[0],0|T[1]]}},width:{get:function(){return this._shape[0]},set:function(T){return b(this,T|=0,this._shape[1]),T}},height:{get:function(){return this._shape[1]},set:function(T){return T|=0,b(this,this._shape[0],T),T}}}),f.bind=function(T){var d=this.gl;return T!==void 0&&d.activeTexture(d.TEXTURE0+(0|T)),d.bindTexture(d.TEXTURE_2D,this.handle),T!==void 0?0|T:d.getParameter(d.ACTIVE_TEXTURE)-d.TEXTURE0},f.dispose=function(){this.gl.deleteTexture(this.handle)},f.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var T=Math.min(this._shape[0],this._shape[1]),d=0;T>0;++d,T>>>=1)this._mipLevels.indexOf(d)<0&&this._mipLevels.push(d)},f.setPixels=function(T,d,M,A){var C=this.gl;this.bind(),Array.isArray(d)?(A=M,M=0|d[1],d=0|d[0]):(d=d||0,M=M||0),A=A||0;var P=p(T)?T:T.raw;if(P)this._mipLevels.indexOf(A)<0?(C.texImage2D(C.TEXTURE_2D,0,this.format,this.format,this.type,P),this._mipLevels.push(A)):C.texSubImage2D(C.TEXTURE_2D,A,d,M,this.format,this.type,P);else{if(!(T.shape&&T.stride&&T.data))throw new Error("gl-texture2d: Unsupported data type");if(T.shape.length<2||d+T.shape[1]>this._shape[1]>>>A||M+T.shape[0]>this._shape[0]>>>A||d<0||M<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");(function(O,z,B,Y,D,G,V,j){var W=j.dtype,Z=j.shape.slice();if(Z.length<2||Z.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var ie=0,te=0,J=v(Z,j.stride.slice());if(W==="float32"?ie=O.FLOAT:W==="float64"?(ie=O.FLOAT,J=!1,W="float32"):W==="uint8"?ie=O.UNSIGNED_BYTE:(ie=O.UNSIGNED_BYTE,J=!1,W="uint8"),Z.length===2)te=O.LUMINANCE,Z=[Z[0],Z[1],1],j=o(j.data,Z,[j.stride[0],j.stride[1],1],j.offset);else{if(Z.length!==3)throw new Error("gl-texture2d: Invalid shape for texture");if(Z[2]===1)te=O.ALPHA;else if(Z[2]===2)te=O.LUMINANCE_ALPHA;else if(Z[2]===3)te=O.RGB;else{if(Z[2]!==4)throw new Error("gl-texture2d: Invalid shape for pixel coords");te=O.RGBA}Z[2]}if(te!==O.LUMINANCE&&te!==O.ALPHA||D!==O.LUMINANCE&&D!==O.ALPHA||(te=D),te!==D)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var X=j.size,ee=V.indexOf(Y)<0;if(ee&&V.push(Y),ie===G&&J)j.offset===0&&j.data.length===X?ee?O.texImage2D(O.TEXTURE_2D,Y,D,Z[0],Z[1],0,D,G,j.data):O.texSubImage2D(O.TEXTURE_2D,Y,z,B,Z[0],Z[1],D,G,j.data):ee?O.texImage2D(O.TEXTURE_2D,Y,D,Z[0],Z[1],0,D,G,j.data.subarray(j.offset,j.offset+X)):O.texSubImage2D(O.TEXTURE_2D,Y,z,B,Z[0],Z[1],D,G,j.data.subarray(j.offset,j.offset+X));else{var re;re=G===O.FLOAT?n.mallocFloat32(X):n.mallocUint8(X);var oe=o(re,Z,[Z[2],Z[2]*Z[0],1]);ie===O.FLOAT&&G===O.UNSIGNED_BYTE?c(oe,j):r.assign(oe,j),ee?O.texImage2D(O.TEXTURE_2D,Y,D,Z[0],Z[1],0,D,G,re.subarray(0,X)):O.texSubImage2D(O.TEXTURE_2D,Y,z,B,Z[0],Z[1],D,G,re.subarray(0,X)),G===O.FLOAT?n.freeFloat32(re):n.freeUint8(re)}})(C,d,M,A,this.format,this.type,this._mipLevels,T)}}},3056:function(h){h.exports=function(l,t,o){t?t.bind():l.bindBuffer(l.ELEMENT_ARRAY_BUFFER,null);var r=0|l.getParameter(l.MAX_VERTEX_ATTRIBS);if(o){if(o.length>r)throw new Error("gl-vao: Too many vertex attributes");for(var n=0;n<o.length;++n){var a=o[n];if(a.buffer){var s=a.buffer,u=a.size||4,p=a.type||l.FLOAT,c=!!a.normalized,b=a.stride||0,g=a.offset||0;s.bind(),l.enableVertexAttribArray(n),l.vertexAttribPointer(n,u,p,c,b,g)}else{if(typeof a=="number")l.vertexAttrib1f(n,a);else if(a.length===1)l.vertexAttrib1f(n,a[0]);else if(a.length===2)l.vertexAttrib2f(n,a[0],a[1]);else if(a.length===3)l.vertexAttrib3f(n,a[0],a[1],a[2]);else{if(a.length!==4)throw new Error("gl-vao: Invalid vertex attribute");l.vertexAttrib4f(n,a[0],a[1],a[2],a[3])}l.disableVertexAttribArray(n)}}for(;n<r;++n)l.disableVertexAttribArray(n)}else for(l.bindBuffer(l.ARRAY_BUFFER,null),n=0;n<r;++n)l.disableVertexAttribArray(n)}},7220:function(h,l,t){var o=t(3056);function r(n){this.gl=n,this._elements=null,this._attributes=null,this._elementsType=n.UNSIGNED_SHORT}r.prototype.bind=function(){o(this.gl,this._elements,this._attributes)},r.prototype.update=function(n,a,s){this._elements=a,this._attributes=n,this._elementsType=s||this.gl.UNSIGNED_SHORT},r.prototype.dispose=function(){},r.prototype.unbind=function(){},r.prototype.draw=function(n,a,s){s=s||0;var u=this.gl;this._elements?u.drawElements(n,a,this._elementsType,s):u.drawArrays(n,s,a)},h.exports=function(n){return new r(n)}},3778:function(h,l,t){var o=t(3056);function r(a,s,u,p,c,b){this.location=a,this.dimension=s,this.a=u,this.b=p,this.c=c,this.d=b}function n(a,s,u){this.gl=a,this._ext=s,this.handle=u,this._attribs=[],this._useElements=!1,this._elementsType=a.UNSIGNED_SHORT}r.prototype.bind=function(a){switch(this.dimension){case 1:a.vertexAttrib1f(this.location,this.a);break;case 2:a.vertexAttrib2f(this.location,this.a,this.b);break;case 3:a.vertexAttrib3f(this.location,this.a,this.b,this.c);break;case 4:a.vertexAttrib4f(this.location,this.a,this.b,this.c,this.d)}},n.prototype.bind=function(){this._ext.bindVertexArrayOES(this.handle);for(var a=0;a<this._attribs.length;++a)this._attribs[a].bind(this.gl)},n.prototype.unbind=function(){this._ext.bindVertexArrayOES(null)},n.prototype.dispose=function(){this._ext.deleteVertexArrayOES(this.handle)},n.prototype.update=function(a,s,u){if(this.bind(),o(this.gl,s,a),this.unbind(),this._attribs.length=0,a)for(var p=0;p<a.length;++p){var c=a[p];typeof c=="number"?this._attribs.push(new r(p,1,c)):Array.isArray(c)&&this._attribs.push(new r(p,c.length,c[0],c[1],c[2],c[3]))}this._useElements=!!s,this._elementsType=u||this.gl.UNSIGNED_SHORT},n.prototype.draw=function(a,s,u){u=u||0;var p=this.gl;this._useElements?p.drawElements(a,s,this._elementsType,u):p.drawArrays(a,u,s)},h.exports=function(a,s){return new n(a,s,s.createVertexArrayOES())}},2944:function(h,l,t){var o=t(3778),r=t(7220);function n(a){this.bindVertexArrayOES=a.bindVertexArray.bind(a),this.createVertexArrayOES=a.createVertexArray.bind(a),this.deleteVertexArrayOES=a.deleteVertexArray.bind(a)}h.exports=function(a,s,u,p){var c,b=a.createVertexArray?new n(a):a.getExtension("OES_vertex_array_object");return(c=b?o(a,b):r(a)).update(s,u,p),c}},2598:function(h){h.exports=function(l,t,o){return l[0]=t[0]+o[0],l[1]=t[1]+o[1],l[2]=t[2]+o[2],l}},5879:function(h,l,t){h.exports=function(a,s){var u=o(a[0],a[1],a[2]),p=o(s[0],s[1],s[2]);r(u,u),r(p,p);var c=n(u,p);return c>1?0:Math.acos(c)};var o=t(5415),r=t(899),n=t(9305)},8827:function(h){h.exports=function(l,t){return l[0]=Math.ceil(t[0]),l[1]=Math.ceil(t[1]),l[2]=Math.ceil(t[2]),l}},7622:function(h){h.exports=function(l){var t=new Float32Array(3);return t[0]=l[0],t[1]=l[1],t[2]=l[2],t}},8782:function(h){h.exports=function(l,t){return l[0]=t[0],l[1]=t[1],l[2]=t[2],l}},8501:function(h){h.exports=function(){var l=new Float32Array(3);return l[0]=0,l[1]=0,l[2]=0,l}},903:function(h){h.exports=function(l,t,o){var r=t[0],n=t[1],a=t[2],s=o[0],u=o[1],p=o[2];return l[0]=n*p-a*u,l[1]=a*s-r*p,l[2]=r*u-n*s,l}},5981:function(h,l,t){h.exports=t(8288)},8288:function(h){h.exports=function(l,t){var o=t[0]-l[0],r=t[1]-l[1],n=t[2]-l[2];return Math.sqrt(o*o+r*r+n*n)}},8629:function(h,l,t){h.exports=t(7979)},7979:function(h){h.exports=function(l,t,o){return l[0]=t[0]/o[0],l[1]=t[1]/o[1],l[2]=t[2]/o[2],l}},9305:function(h){h.exports=function(l,t){return l[0]*t[0]+l[1]*t[1]+l[2]*t[2]}},154:function(h){h.exports=1e-6},4932:function(h,l,t){h.exports=function(r,n){var a=r[0],s=r[1],u=r[2],p=n[0],c=n[1],b=n[2];return Math.abs(a-p)<=o*Math.max(1,Math.abs(a),Math.abs(p))&&Math.abs(s-c)<=o*Math.max(1,Math.abs(s),Math.abs(c))&&Math.abs(u-b)<=o*Math.max(1,Math.abs(u),Math.abs(b))};var o=t(154)},5777:function(h){h.exports=function(l,t){return l[0]===t[0]&&l[1]===t[1]&&l[2]===t[2]}},3306:function(h){h.exports=function(l,t){return l[0]=Math.floor(t[0]),l[1]=Math.floor(t[1]),l[2]=Math.floor(t[2]),l}},7447:function(h,l,t){h.exports=function(r,n,a,s,u,p){var c,b;for(n||(n=3),a||(a=0),b=s?Math.min(s*n+a,r.length):r.length,c=a;c<b;c+=n)o[0]=r[c],o[1]=r[c+1],o[2]=r[c+2],u(o,o,p),r[c]=o[0],r[c+1]=o[1],r[c+2]=o[2];return r};var o=t(8501)()},5415:function(h){h.exports=function(l,t,o){var r=new Float32Array(3);return r[0]=l,r[1]=t,r[2]=o,r}},2858:function(h,l,t){h.exports={EPSILON:t(154),create:t(8501),clone:t(7622),angle:t(5879),fromValues:t(5415),copy:t(8782),set:t(831),equals:t(4932),exactEquals:t(5777),add:t(2598),subtract:t(911),sub:t(8921),multiply:t(105),mul:t(5733),divide:t(7979),div:t(8629),min:t(3605),max:t(1716),floor:t(3306),ceil:t(8827),round:t(1624),scale:t(5685),scaleAndAdd:t(6722),distance:t(8288),dist:t(5981),squaredDistance:t(6403),sqrDist:t(5294),length:t(4693),len:t(1468),squaredLength:t(4337),sqrLen:t(3303),negate:t(435),inverse:t(2073),normalize:t(899),dot:t(9305),cross:t(903),lerp:t(1868),random:t(6660),transformMat4:t(3255),transformMat3:t(9908),transformQuat:t(6568),rotateX:t(392),rotateY:t(3222),rotateZ:t(3388),forEach:t(7447)}},2073:function(h){h.exports=function(l,t){return l[0]=1/t[0],l[1]=1/t[1],l[2]=1/t[2],l}},1468:function(h,l,t){h.exports=t(4693)},4693:function(h){h.exports=function(l){var t=l[0],o=l[1],r=l[2];return Math.sqrt(t*t+o*o+r*r)}},1868:function(h){h.exports=function(l,t,o,r){var n=t[0],a=t[1],s=t[2];return l[0]=n+r*(o[0]-n),l[1]=a+r*(o[1]-a),l[2]=s+r*(o[2]-s),l}},1716:function(h){h.exports=function(l,t,o){return l[0]=Math.max(t[0],o[0]),l[1]=Math.max(t[1],o[1]),l[2]=Math.max(t[2],o[2]),l}},3605:function(h){h.exports=function(l,t,o){return l[0]=Math.min(t[0],o[0]),l[1]=Math.min(t[1],o[1]),l[2]=Math.min(t[2],o[2]),l}},5733:function(h,l,t){h.exports=t(105)},105:function(h){h.exports=function(l,t,o){return l[0]=t[0]*o[0],l[1]=t[1]*o[1],l[2]=t[2]*o[2],l}},435:function(h){h.exports=function(l,t){return l[0]=-t[0],l[1]=-t[1],l[2]=-t[2],l}},899:function(h){h.exports=function(l,t){var o=t[0],r=t[1],n=t[2],a=o*o+r*r+n*n;return a>0&&(a=1/Math.sqrt(a),l[0]=t[0]*a,l[1]=t[1]*a,l[2]=t[2]*a),l}},6660:function(h){h.exports=function(l,t){t=t||1;var o=2*Math.random()*Math.PI,r=2*Math.random()-1,n=Math.sqrt(1-r*r)*t;return l[0]=Math.cos(o)*n,l[1]=Math.sin(o)*n,l[2]=r*t,l}},392:function(h){h.exports=function(l,t,o,r){var n=o[1],a=o[2],s=t[1]-n,u=t[2]-a,p=Math.sin(r),c=Math.cos(r);return l[0]=t[0],l[1]=n+s*c-u*p,l[2]=a+s*p+u*c,l}},3222:function(h){h.exports=function(l,t,o,r){var n=o[0],a=o[2],s=t[0]-n,u=t[2]-a,p=Math.sin(r),c=Math.cos(r);return l[0]=n+u*p+s*c,l[1]=t[1],l[2]=a+u*c-s*p,l}},3388:function(h){h.exports=function(l,t,o,r){var n=o[0],a=o[1],s=t[0]-n,u=t[1]-a,p=Math.sin(r),c=Math.cos(r);return l[0]=n+s*c-u*p,l[1]=a+s*p+u*c,l[2]=t[2],l}},1624:function(h){h.exports=function(l,t){return l[0]=Math.round(t[0]),l[1]=Math.round(t[1]),l[2]=Math.round(t[2]),l}},5685:function(h){h.exports=function(l,t,o){return l[0]=t[0]*o,l[1]=t[1]*o,l[2]=t[2]*o,l}},6722:function(h){h.exports=function(l,t,o,r){return l[0]=t[0]+o[0]*r,l[1]=t[1]+o[1]*r,l[2]=t[2]+o[2]*r,l}},831:function(h){h.exports=function(l,t,o,r){return l[0]=t,l[1]=o,l[2]=r,l}},5294:function(h,l,t){h.exports=t(6403)},3303:function(h,l,t){h.exports=t(4337)},6403:function(h){h.exports=function(l,t){var o=t[0]-l[0],r=t[1]-l[1],n=t[2]-l[2];return o*o+r*r+n*n}},4337:function(h){h.exports=function(l){var t=l[0],o=l[1],r=l[2];return t*t+o*o+r*r}},8921:function(h,l,t){h.exports=t(911)},911:function(h){h.exports=function(l,t,o){return l[0]=t[0]-o[0],l[1]=t[1]-o[1],l[2]=t[2]-o[2],l}},9908:function(h){h.exports=function(l,t,o){var r=t[0],n=t[1],a=t[2];return l[0]=r*o[0]+n*o[3]+a*o[6],l[1]=r*o[1]+n*o[4]+a*o[7],l[2]=r*o[2]+n*o[5]+a*o[8],l}},3255:function(h){h.exports=function(l,t,o){var r=t[0],n=t[1],a=t[2],s=o[3]*r+o[7]*n+o[11]*a+o[15];return s=s||1,l[0]=(o[0]*r+o[4]*n+o[8]*a+o[12])/s,l[1]=(o[1]*r+o[5]*n+o[9]*a+o[13])/s,l[2]=(o[2]*r+o[6]*n+o[10]*a+o[14])/s,l}},6568:function(h){h.exports=function(l,t,o){var r=t[0],n=t[1],a=t[2],s=o[0],u=o[1],p=o[2],c=o[3],b=c*r+u*a-p*n,g=c*n+p*r-s*a,f=c*a+s*n-u*r,v=-s*r-u*n-p*a;return l[0]=b*c+v*-s+g*-p-f*-u,l[1]=g*c+v*-u+f*-s-b*-p,l[2]=f*c+v*-p+b*-u-g*-s,l}},3433:function(h){h.exports=function(l,t,o){return l[0]=t[0]+o[0],l[1]=t[1]+o[1],l[2]=t[2]+o[2],l[3]=t[3]+o[3],l}},1413:function(h){h.exports=function(l){var t=new Float32Array(4);return t[0]=l[0],t[1]=l[1],t[2]=l[2],t[3]=l[3],t}},3470:function(h){h.exports=function(l,t){return l[0]=t[0],l[1]=t[1],l[2]=t[2],l[3]=t[3],l}},5313:function(h){h.exports=function(){var l=new Float32Array(4);return l[0]=0,l[1]=0,l[2]=0,l[3]=0,l}},5446:function(h){h.exports=function(l,t){var o=t[0]-l[0],r=t[1]-l[1],n=t[2]-l[2],a=t[3]-l[3];return Math.sqrt(o*o+r*r+n*n+a*a)}},205:function(h){h.exports=function(l,t,o){return l[0]=t[0]/o[0],l[1]=t[1]/o[1],l[2]=t[2]/o[2],l[3]=t[3]/o[3],l}},4242:function(h){h.exports=function(l,t){return l[0]*t[0]+l[1]*t[1]+l[2]*t[2]+l[3]*t[3]}},5680:function(h){h.exports=function(l,t,o,r){var n=new Float32Array(4);return n[0]=l,n[1]=t,n[2]=o,n[3]=r,n}},4020:function(h,l,t){h.exports={create:t(5313),clone:t(1413),fromValues:t(5680),copy:t(3470),set:t(6453),add:t(3433),subtract:t(2705),multiply:t(746),divide:t(205),min:t(2170),max:t(3030),scale:t(5510),scaleAndAdd:t(4224),distance:t(5446),squaredDistance:t(1542),length:t(8177),squaredLength:t(9037),negate:t(6459),inverse:t(8057),normalize:t(381),dot:t(4242),lerp:t(8746),random:t(3770),transformMat4:t(6342),transformQuat:t(5022)}},8057:function(h){h.exports=function(l,t){return l[0]=1/t[0],l[1]=1/t[1],l[2]=1/t[2],l[3]=1/t[3],l}},8177:function(h){h.exports=function(l){var t=l[0],o=l[1],r=l[2],n=l[3];return Math.sqrt(t*t+o*o+r*r+n*n)}},8746:function(h){h.exports=function(l,t,o,r){var n=t[0],a=t[1],s=t[2],u=t[3];return l[0]=n+r*(o[0]-n),l[1]=a+r*(o[1]-a),l[2]=s+r*(o[2]-s),l[3]=u+r*(o[3]-u),l}},3030:function(h){h.exports=function(l,t,o){return l[0]=Math.max(t[0],o[0]),l[1]=Math.max(t[1],o[1]),l[2]=Math.max(t[2],o[2]),l[3]=Math.max(t[3],o[3]),l}},2170:function(h){h.exports=function(l,t,o){return l[0]=Math.min(t[0],o[0]),l[1]=Math.min(t[1],o[1]),l[2]=Math.min(t[2],o[2]),l[3]=Math.min(t[3],o[3]),l}},746:function(h){h.exports=function(l,t,o){return l[0]=t[0]*o[0],l[1]=t[1]*o[1],l[2]=t[2]*o[2],l[3]=t[3]*o[3],l}},6459:function(h){h.exports=function(l,t){return l[0]=-t[0],l[1]=-t[1],l[2]=-t[2],l[3]=-t[3],l}},381:function(h){h.exports=function(l,t){var o=t[0],r=t[1],n=t[2],a=t[3],s=o*o+r*r+n*n+a*a;return s>0&&(s=1/Math.sqrt(s),l[0]=o*s,l[1]=r*s,l[2]=n*s,l[3]=a*s),l}},3770:function(h,l,t){var o=t(381),r=t(5510);h.exports=function(n,a){return a=a||1,n[0]=Math.random(),n[1]=Math.random(),n[2]=Math.random(),n[3]=Math.random(),o(n,n),r(n,n,a),n}},5510:function(h){h.exports=function(l,t,o){return l[0]=t[0]*o,l[1]=t[1]*o,l[2]=t[2]*o,l[3]=t[3]*o,l}},4224:function(h){h.exports=function(l,t,o,r){return l[0]=t[0]+o[0]*r,l[1]=t[1]+o[1]*r,l[2]=t[2]+o[2]*r,l[3]=t[3]+o[3]*r,l}},6453:function(h){h.exports=function(l,t,o,r,n){return l[0]=t,l[1]=o,l[2]=r,l[3]=n,l}},1542:function(h){h.exports=function(l,t){var o=t[0]-l[0],r=t[1]-l[1],n=t[2]-l[2],a=t[3]-l[3];return o*o+r*r+n*n+a*a}},9037:function(h){h.exports=function(l){var t=l[0],o=l[1],r=l[2],n=l[3];return t*t+o*o+r*r+n*n}},2705:function(h){h.exports=function(l,t,o){return l[0]=t[0]-o[0],l[1]=t[1]-o[1],l[2]=t[2]-o[2],l[3]=t[3]-o[3],l}},6342:function(h){h.exports=function(l,t,o){var r=t[0],n=t[1],a=t[2],s=t[3];return l[0]=o[0]*r+o[4]*n+o[8]*a+o[12]*s,l[1]=o[1]*r+o[5]*n+o[9]*a+o[13]*s,l[2]=o[2]*r+o[6]*n+o[10]*a+o[14]*s,l[3]=o[3]*r+o[7]*n+o[11]*a+o[15]*s,l}},5022:function(h){h.exports=function(l,t,o){var r=t[0],n=t[1],a=t[2],s=o[0],u=o[1],p=o[2],c=o[3],b=c*r+u*a-p*n,g=c*n+p*r-s*a,f=c*a+s*n-u*r,v=-s*r-u*n-p*a;return l[0]=b*c+v*-s+g*-p-f*-u,l[1]=g*c+v*-u+f*-s-b*-p,l[2]=f*c+v*-p+b*-u-g*-s,l[3]=t[3],l}},9365:function(h,l,t){var o=t(8096),r=t(7896);h.exports=function(n){for(var a=Array.isArray(n)?n:o(n),s=0;s<a.length;s++){var u=a[s];if(u.type==="preprocessor"){var p=u.data.match(/\#define\s+SHADER_NAME(_B64)?\s+(.+)$/);if(p&&p[2]){var c=p[1],b=p[2];return(c?r(b):b).trim()}}}}},3193:function(h,l,t){h.exports=function(O){var z,B,Y,D=0,G=0,V=u,j=[],W=[],Z=1,ie=0,te=0,J=!1,X=!1,ee="",re=n,oe=o;(O=O||{}).version==="300 es"&&(re=s,oe=a);var ue={},ce={};for(D=0;D<re.length;D++)ue[re[D]]=!0;for(D=0;D<oe.length;D++)ce[oe[D]]=!0;return function(ae){return W=[],ae!==null?function(be){var Ie;for(D=0,be.toString&&(be=be.toString()),ee+=be.replace(/\r\n/g,`
|
||
`),Y=ee.length;z=ee[D],D<Y;){switch(Ie=D,V){case c:D=we();break;case b:case g:D=Se();break;case f:D=xe();break;case v:D=Me();break;case C:D=Ee();break;case m:D=he();break;case p:D=fe();break;case M:D=_e();break;case u:D=me()}Ie!==D&&(ee[Ie]===`
|
||
`?(ie=0,++Z):++ie)}return G+=D,ee=ee.slice(D),W}(ae):(j.length&&de(j.join("")),V=A,de("(eof)"),W)};function de(ae){ae.length&&W.push({type:P[V],data:ae,position:te,line:Z,column:ie})}function me(){return j=j.length?[]:j,B==="/"&&z==="*"?(te=G+D-1,V=c,B=z,D+1):B==="/"&&z==="/"?(te=G+D-1,V=b,B=z,D+1):z==="#"?(V=g,te=G+D,D):/\s/.test(z)?(V=M,te=G+D,D):(J=/\d/.test(z),X=/[^\w_]/.test(z),te=G+D,V=J?v:X?f:p,D)}function _e(){return/[^\s]/g.test(z)?(de(j.join("")),V=u,D):(j.push(z),B=z,D+1)}function Se(){return z!=="\r"&&z!==`
|
||
`||B==="\\"?(j.push(z),B=z,D+1):(de(j.join("")),V=u,D)}function we(){return z==="/"&&B==="*"?(j.push(z),de(j.join("")),V=u,D+1):(j.push(z),B=z,D+1)}function xe(){if(B==="."&&/\d/.test(z))return V=m,D;if(B==="/"&&z==="*")return V=c,D;if(B==="/"&&z==="/")return V=b,D;if(z==="."&&j.length){for(;De(j););return V=m,D}if(z===";"||z===")"||z==="("){if(j.length)for(;De(j););return de(z),V=u,D+1}var ae=j.length===2&&z!=="=";if(/[\w_\d\s]/.test(z)||ae){for(;De(j););return V=u,D}return j.push(z),B=z,D+1}function De(ae){for(var be,Ie,Te=0;;){if(be=r.indexOf(ae.slice(0,ae.length+Te).join("")),Ie=r[be],be===-1){if(Te--+ae.length>0)continue;Ie=ae.slice(0,1).join("")}return de(Ie),te+=Ie.length,(j=j.slice(Ie.length)).length}}function Ee(){return/[^a-fA-F0-9]/.test(z)?(de(j.join("")),V=u,D):(j.push(z),B=z,D+1)}function Me(){return z==="."||/[eE]/.test(z)?(j.push(z),V=m,B=z,D+1):z==="x"&&j.length===1&&j[0]==="0"?(V=C,j.push(z),B=z,D+1):/[^\d]/.test(z)?(de(j.join("")),V=u,D):(j.push(z),B=z,D+1)}function he(){return z==="f"&&(j.push(z),B=z,D+=1),/[eE]/.test(z)?(j.push(z),B=z,D+1):(z!=="-"&&z!=="+"||!/[eE]/.test(B))&&/[^\d]/.test(z)?(de(j.join("")),V=u,D):(j.push(z),B=z,D+1)}function fe(){if(/[^\d\w_]/.test(z)){var ae=j.join("");return V=ce[ae]?d:ue[ae]?T:x,de(j.join("")),V=u,D}return j.push(z),B=z,D+1}};var o=t(399),r=t(9746),n=t(9525),a=t(9458),s=t(3585),u=999,p=9999,c=0,b=1,g=2,f=3,v=4,m=5,x=6,T=7,d=8,M=9,A=10,C=11,P=["block-comment","line-comment","preprocessor","operator","integer","float","ident","builtin","keyword","whitespace","eof","integer"]},3585:function(h,l,t){var o=t(9525);o=o.slice().filter(function(r){return!/^(gl\_|texture)/.test(r)}),h.exports=o.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"])},9525:function(h){h.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"]},9458:function(h,l,t){var o=t(399);h.exports=o.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"])},399:function(h){h.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"]},9746:function(h){h.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},8096:function(h,l,t){var o=t(3193);h.exports=function(r,n){var a=o(n),s=[];return(s=s.concat(a(r))).concat(a(null))}},6832:function(h){h.exports=function(l){typeof l=="string"&&(l=[l]);for(var t=[].slice.call(arguments,1),o=[],r=0;r<l.length-1;r++)o.push(l[r],t[r]||"");return o.push(l[r]),o.join("")}},5233:function(h,l,t){var o=t(4846);h.exports=o&&function(){var r=!1;try{var n=Object.defineProperty({},"passive",{get:function(){r=!0}});window.addEventListener("test",null,n),window.removeEventListener("test",null,n)}catch{r=!1}return r}()},2183:function(h,l,t){h.exports=function(b,g){var f=b.length;if(f===0)throw new Error("Must have at least d+1 points");var v=b[0].length;if(f<=v)throw new Error("Must input at least d+1 points");var m=b.slice(0,v+1),x=o.apply(void 0,m);if(x===0)throw new Error("Input not in general position");for(var T=new Array(v+1),d=0;d<=v;++d)T[d]=d;x<0&&(T[0]=1,T[1]=0);var M=new n(T,new Array(v+1),!1),A=M.adjacent,C=new Array(v+2);for(d=0;d<=v;++d){for(var P=T.slice(),O=0;O<=v;++O)O===d&&(P[O]=-1);var z=P[0];P[0]=P[1],P[1]=z;var B=new n(P,new Array(v+1),!0);A[d]=B,C[d]=B}for(C[v+1]=M,d=0;d<=v;++d){P=A[d].vertices;var Y=A[d].adjacent;for(O=0;O<=v;++O){var D=P[O];if(D<0)Y[O]=M;else for(var G=0;G<=v;++G)A[G].vertices.indexOf(D)<0&&(Y[O]=A[G])}}var V=new p(v,m,C),j=!!g;for(d=v+1;d<f;++d)V.insert(b[d],j);return V.boundary()};var o=t(417),r=t(8211).H;function n(b,g,f){this.vertices=b,this.adjacent=g,this.boundary=f,this.lastVisited=-1}function a(b,g,f){this.vertices=b,this.cell=g,this.index=f}function s(b,g){return r(b.vertices,g.vertices)}n.prototype.flip=function(){var b=this.vertices[0];this.vertices[0]=this.vertices[1],this.vertices[1]=b;var g=this.adjacent[0];this.adjacent[0]=this.adjacent[1],this.adjacent[1]=g};var u=[];function p(b,g,f){this.dimension=b,this.vertices=g,this.simplices=f,this.interior=f.filter(function(T){return!T.boundary}),this.tuple=new Array(b+1);for(var v=0;v<=b;++v)this.tuple[v]=this.vertices[v];var m,x=u[b];x||(x=u[b]=((m=o[b+1])||(m=o),function(T){return function(){var d=this.tuple;return T.apply(this,d)}}(m))),this.orient=x}var c=p.prototype;c.handleBoundaryDegeneracy=function(b,g){var f=this.dimension,v=this.vertices.length-1,m=this.tuple,x=this.vertices,T=[b];for(b.lastVisited=-v;T.length>0;)for(var d=(b=T.pop()).adjacent,M=0;M<=f;++M){var A=d[M];if(A.boundary&&!(A.lastVisited<=-v)){for(var C=A.vertices,P=0;P<=f;++P){var O=C[P];m[P]=O<0?g:x[O]}var z=this.orient();if(z>0)return A;A.lastVisited=-v,z===0&&T.push(A)}}return null},c.walk=function(b,g){var f=this.vertices.length-1,v=this.dimension,m=this.vertices,x=this.tuple,T=g?this.interior.length*Math.random()|0:this.interior.length-1,d=this.interior[T];e:for(;!d.boundary;){for(var M=d.vertices,A=d.adjacent,C=0;C<=v;++C)x[C]=m[M[C]];for(d.lastVisited=f,C=0;C<=v;++C){var P=A[C];if(!(P.lastVisited>=f)){var O=x[C];x[C]=b;var z=this.orient();if(x[C]=O,z<0){d=P;continue e}P.boundary?P.lastVisited=-f:P.lastVisited=f}}return}return d},c.addPeaks=function(b,g){var f=this.vertices.length-1,v=this.dimension,m=this.vertices,x=this.tuple,T=this.interior,d=this.simplices,M=[g];g.lastVisited=f,g.vertices[g.vertices.indexOf(-1)]=f,g.boundary=!1,T.push(g);for(var A=[];M.length>0;){var C=(g=M.pop()).vertices,P=g.adjacent,O=C.indexOf(f);if(!(O<0)){for(var z=0;z<=v;++z)if(z!==O){var B=P[z];if(B.boundary&&!(B.lastVisited>=f)){var Y=B.vertices;if(B.lastVisited!==-f){for(var D=0,G=0;G<=v;++G)Y[G]<0?(D=G,x[G]=b):x[G]=m[Y[G]];if(this.orient()>0){Y[D]=f,B.boundary=!1,T.push(B),M.push(B),B.lastVisited=f;continue}B.lastVisited=-f}var V=B.adjacent,j=C.slice(),W=P.slice(),Z=new n(j,W,!0);d.push(Z);var ie=V.indexOf(g);if(!(ie<0))for(V[ie]=Z,W[O]=B,j[z]=-1,W[z]=g,P[z]=Z,Z.flip(),G=0;G<=v;++G){var te=j[G];if(!(te<0||te===f)){for(var J=new Array(v-1),X=0,ee=0;ee<=v;++ee){var re=j[ee];re<0||ee===G||(J[X++]=re)}A.push(new a(J,Z,G))}}}}}}for(A.sort(s),z=0;z+1<A.length;z+=2){var oe=A[z],ue=A[z+1],ce=oe.index,de=ue.index;ce<0||de<0||(oe.cell.adjacent[oe.index]=ue.cell,ue.cell.adjacent[ue.index]=oe.cell)}},c.insert=function(b,g){var f=this.vertices;f.push(b);var v=this.walk(b,g);if(v){for(var m=this.dimension,x=this.tuple,T=0;T<=m;++T){var d=v.vertices[T];x[T]=d<0?b:f[d]}var M=this.orient(x);M<0||(M!==0||(v=this.handleBoundaryDegeneracy(v,b)))&&this.addPeaks(b,v)}},c.boundary=function(){for(var b=this.dimension,g=[],f=this.simplices,v=f.length,m=0;m<v;++m){var x=f[m];if(x.boundary){for(var T=new Array(b),d=x.vertices,M=0,A=0,C=0;C<=b;++C)d[C]>=0?T[M++]=d[C]:A=1&C;if(A===(1&b)){var P=T[0];T[0]=T[1],T[1]=P}g.push(T)}}return g}},9014:function(h,l,t){var o=t(5070);function r(M,A,C,P,O){this.mid=M,this.left=A,this.right=C,this.leftPoints=P,this.rightPoints=O,this.count=(A?A.count:0)+(C?C.count:0)+P.length}h.exports=function(M){return M&&M.length!==0?new T(x(M)):new T(null)};var n=r.prototype;function a(M,A){M.mid=A.mid,M.left=A.left,M.right=A.right,M.leftPoints=A.leftPoints,M.rightPoints=A.rightPoints,M.count=A.count}function s(M,A){var C=x(A);M.mid=C.mid,M.left=C.left,M.right=C.right,M.leftPoints=C.leftPoints,M.rightPoints=C.rightPoints,M.count=C.count}function u(M,A){var C=M.intervals([]);C.push(A),s(M,C)}function p(M,A){var C=M.intervals([]),P=C.indexOf(A);return P<0?0:(C.splice(P,1),s(M,C),1)}function c(M,A,C){for(var P=0;P<M.length&&M[P][0]<=A;++P){var O=C(M[P]);if(O)return O}}function b(M,A,C){for(var P=M.length-1;P>=0&&M[P][1]>=A;--P){var O=C(M[P]);if(O)return O}}function g(M,A){for(var C=0;C<M.length;++C){var P=A(M[C]);if(P)return P}}function f(M,A){return M-A}function v(M,A){return M[0]-A[0]||M[1]-A[1]}function m(M,A){return M[1]-A[1]||M[0]-A[0]}function x(M){if(M.length===0)return null;for(var A=[],C=0;C<M.length;++C)A.push(M[C][0],M[C][1]);A.sort(f);var P=A[A.length>>1],O=[],z=[],B=[];for(C=0;C<M.length;++C){var Y=M[C];Y[1]<P?O.push(Y):P<Y[0]?z.push(Y):B.push(Y)}var D=B,G=B.slice();return D.sort(v),G.sort(m),new r(P,x(O),x(z),D,G)}function T(M){this.root=M}n.intervals=function(M){return M.push.apply(M,this.leftPoints),this.left&&this.left.intervals(M),this.right&&this.right.intervals(M),M},n.insert=function(M){var A=this.count-this.leftPoints.length;if(this.count+=1,M[1]<this.mid)this.left?4*(this.left.count+1)>3*(A+1)?u(this,M):this.left.insert(M):this.left=x([M]);else if(M[0]>this.mid)this.right?4*(this.right.count+1)>3*(A+1)?u(this,M):this.right.insert(M):this.right=x([M]);else{var C=o.ge(this.leftPoints,M,v),P=o.ge(this.rightPoints,M,m);this.leftPoints.splice(C,0,M),this.rightPoints.splice(P,0,M)}},n.remove=function(M){var A=this.count-this.leftPoints;if(M[1]<this.mid)return this.left?4*(this.right?this.right.count:0)>3*(A-1)?p(this,M):(z=this.left.remove(M))===2?(this.left=null,this.count-=1,1):(z===1&&(this.count-=1),z):0;if(M[0]>this.mid)return this.right?4*(this.left?this.left.count:0)>3*(A-1)?p(this,M):(z=this.right.remove(M))===2?(this.right=null,this.count-=1,1):(z===1&&(this.count-=1),z):0;if(this.count===1)return this.leftPoints[0]===M?2:0;if(this.leftPoints.length===1&&this.leftPoints[0]===M){if(this.left&&this.right){for(var C=this,P=this.left;P.right;)C=P,P=P.right;if(C===this)P.right=this.right;else{var O=this.left,z=this.right;C.count-=P.count,C.right=P.left,P.left=O,P.right=z}a(this,P),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?a(this,this.left):a(this,this.right);return 1}for(O=o.ge(this.leftPoints,M,v);O<this.leftPoints.length&&this.leftPoints[O][0]===M[0];++O)if(this.leftPoints[O]===M){for(this.count-=1,this.leftPoints.splice(O,1),z=o.ge(this.rightPoints,M,m);z<this.rightPoints.length&&this.rightPoints[z][1]===M[1];++z)if(this.rightPoints[z]===M)return this.rightPoints.splice(z,1),1}return 0},n.queryPoint=function(M,A){return M<this.mid?this.left&&(C=this.left.queryPoint(M,A))?C:c(this.leftPoints,M,A):M>this.mid?this.right&&(C=this.right.queryPoint(M,A))?C:b(this.rightPoints,M,A):g(this.leftPoints,A);var C},n.queryInterval=function(M,A,C){var P;return M<this.mid&&this.left&&(P=this.left.queryInterval(M,A,C))||A>this.mid&&this.right&&(P=this.right.queryInterval(M,A,C))?P:A<this.mid?c(this.leftPoints,A,C):M>this.mid?b(this.rightPoints,M,C):g(this.leftPoints,C)};var d=T.prototype;d.insert=function(M){this.root?this.root.insert(M):this.root=new r(M[0],null,null,[M],[M])},d.remove=function(M){if(this.root){var A=this.root.remove(M);return A===2&&(this.root=null),A!==0}return!1},d.queryPoint=function(M,A){if(this.root)return this.root.queryPoint(M,A)},d.queryInterval=function(M,A,C){if(M<=A&&this.root)return this.root.queryInterval(M,A,C)},Object.defineProperty(d,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(d,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}})},9560:function(h){h.exports=function(l){for(var t=new Array(l),o=0;o<l;++o)t[o]=o;return t}},4846:function(h){h.exports=!0},4780:function(h){function l(t){return!!t.constructor&&typeof t.constructor.isBuffer=="function"&&t.constructor.isBuffer(t)}h.exports=function(t){return t!=null&&(l(t)||function(o){return typeof o.readFloatLE=="function"&&typeof o.slice=="function"&&l(o.slice(0,0))}(t)||!!t._isBuffer)}},3596:function(h){h.exports=function(l){for(var t,o=l.length,r=0;r<o;r++)if(((t=l.charCodeAt(r))<9||t>13)&&t!==32&&t!==133&&t!==160&&t!==5760&&t!==6158&&(t<8192||t>8205)&&t!==8232&&t!==8233&&t!==8239&&t!==8287&&t!==8288&&t!==12288&&t!==65279)return!1;return!0}},3578:function(h){h.exports=function(l,t,o){return l*(1-o)+t*o}},7191:function(h,l,t){var o=t(4690),r=t(9823),n=t(7332),a=t(7787),s=t(7437),u=t(2142),p={length:t(4693),normalize:t(899),dot:t(9305),cross:t(903)},c=r(),b=r(),g=[0,0,0,0],f=[[0,0,0],[0,0,0],[0,0,0]],v=[0,0,0];function m(x,T,d,M,A){x[0]=T[0]*M+d[0]*A,x[1]=T[1]*M+d[1]*A,x[2]=T[2]*M+d[2]*A}h.exports=function(x,T,d,M,A,C){if(T||(T=[0,0,0]),d||(d=[0,0,0]),M||(M=[0,0,0]),A||(A=[0,0,0,1]),C||(C=[0,0,0,1]),!o(c,x)||(n(b,c),b[3]=0,b[7]=0,b[11]=0,b[15]=1,Math.abs(a(b)<1e-8)))return!1;var P,O,z,B,Y,D,G,V=c[3],j=c[7],W=c[11],Z=c[12],ie=c[13],te=c[14],J=c[15];if(V!==0||j!==0||W!==0){if(g[0]=V,g[1]=j,g[2]=W,g[3]=J,!s(b,b))return!1;u(b,b),P=A,z=b,B=(O=g)[0],Y=O[1],D=O[2],G=O[3],P[0]=z[0]*B+z[4]*Y+z[8]*D+z[12]*G,P[1]=z[1]*B+z[5]*Y+z[9]*D+z[13]*G,P[2]=z[2]*B+z[6]*Y+z[10]*D+z[14]*G,P[3]=z[3]*B+z[7]*Y+z[11]*D+z[15]*G}else A[0]=A[1]=A[2]=0,A[3]=1;if(T[0]=Z,T[1]=ie,T[2]=te,function(ee,re){ee[0][0]=re[0],ee[0][1]=re[1],ee[0][2]=re[2],ee[1][0]=re[4],ee[1][1]=re[5],ee[1][2]=re[6],ee[2][0]=re[8],ee[2][1]=re[9],ee[2][2]=re[10]}(f,c),d[0]=p.length(f[0]),p.normalize(f[0],f[0]),M[0]=p.dot(f[0],f[1]),m(f[1],f[1],f[0],1,-M[0]),d[1]=p.length(f[1]),p.normalize(f[1],f[1]),M[0]/=d[1],M[1]=p.dot(f[0],f[2]),m(f[2],f[2],f[0],1,-M[1]),M[2]=p.dot(f[1],f[2]),m(f[2],f[2],f[1],1,-M[2]),d[2]=p.length(f[2]),p.normalize(f[2],f[2]),M[1]/=d[2],M[2]/=d[2],p.cross(v,f[1],f[2]),p.dot(f[0],v)<0)for(var X=0;X<3;X++)d[X]*=-1,f[X][0]*=-1,f[X][1]*=-1,f[X][2]*=-1;return C[0]=.5*Math.sqrt(Math.max(1+f[0][0]-f[1][1]-f[2][2],0)),C[1]=.5*Math.sqrt(Math.max(1-f[0][0]+f[1][1]-f[2][2],0)),C[2]=.5*Math.sqrt(Math.max(1-f[0][0]-f[1][1]+f[2][2],0)),C[3]=.5*Math.sqrt(Math.max(1+f[0][0]+f[1][1]+f[2][2],0)),f[2][1]>f[1][2]&&(C[0]=-C[0]),f[0][2]>f[2][0]&&(C[1]=-C[1]),f[1][0]>f[0][1]&&(C[2]=-C[2]),!0}},4690:function(h){h.exports=function(l,t){var o=t[15];if(o===0)return!1;for(var r=1/o,n=0;n<16;n++)l[n]=t[n]*r;return!0}},7649:function(h,l,t){var o=t(1868),r=t(1102),n=t(7191),a=t(7787),s=t(1116),u=b(),p=b(),c=b();function b(){return{translate:g(),scale:g(1),skew:g(),perspective:[0,0,0,1],quaternion:[0,0,0,1]}}function g(f){return[f||0,f||0,f||0]}h.exports=function(f,v,m,x){if(a(v)===0||a(m)===0)return!1;var T=n(v,u.translate,u.scale,u.skew,u.perspective,u.quaternion),d=n(m,p.translate,p.scale,p.skew,p.perspective,p.quaternion);return!(!T||!d||(o(c.translate,u.translate,p.translate,x),o(c.skew,u.skew,p.skew,x),o(c.scale,u.scale,p.scale,x),o(c.perspective,u.perspective,p.perspective,x),s(c.quaternion,u.quaternion,p.quaternion,x),r(f,c.translate,c.scale,c.skew,c.perspective,c.quaternion),0))}},1102:function(h,l,t){var o={identity:t(9947),translate:t(998),multiply:t(104),create:t(9823),scale:t(3668),fromRotationTranslation:t(7280)},r=(o.create(),o.create());h.exports=function(n,a,s,u,p,c){return o.identity(n),o.fromRotationTranslation(n,c,a),n[3]=p[0],n[7]=p[1],n[11]=p[2],n[15]=p[3],o.identity(r),u[2]!==0&&(r[9]=u[2],o.multiply(n,n,r)),u[1]!==0&&(r[9]=0,r[8]=u[1],o.multiply(n,n,r)),u[0]!==0&&(r[8]=0,r[4]=u[0],o.multiply(n,n,r)),o.scale(n,n,s),n}},9298:function(h,l,t){var o=t(5070),r=t(7649),n=t(7437),a=t(6109),s=t(7115),u=t(5240),p=t(3012),c=t(998),b=(t(3668),t(899)),g=[0,0,0];function f(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]}h.exports=function(x){return new f((x=x||{}).matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])};var v=f.prototype;v.recalcMatrix=function(x){var T=this._time,d=o.le(T,x),M=this.computedMatrix;if(!(d<0)){var A=this._components;if(d===T.length-1)for(var C=16*d,P=0;P<16;++P)M[P]=A[C++];else{var O=T[d+1]-T[d],z=(C=16*d,this.prevMatrix),B=!0;for(P=0;P<16;++P)z[P]=A[C++];var Y=this.nextMatrix;for(P=0;P<16;++P)Y[P]=A[C++],B=B&&z[P]===Y[P];if(O<1e-6||B)for(P=0;P<16;++P)M[P]=z[P];else r(M,z,Y,(x-T[d])/O)}var D=this.computedUp;D[0]=M[1],D[1]=M[5],D[2]=M[9],b(D,D);var G=this.computedInverse;n(G,M);var V=this.computedEye,j=G[15];V[0]=G[12]/j,V[1]=G[13]/j,V[2]=G[14]/j;var W=this.computedCenter,Z=Math.exp(this.computedRadius[0]);for(P=0;P<3;++P)W[P]=V[P]-M[2+4*P]*Z}},v.idle=function(x){if(!(x<this.lastT())){for(var T=this._components,d=T.length-16,M=0;M<16;++M)T.push(T[d++]);this._time.push(x)}},v.flush=function(x){var T=o.gt(this._time,x)-2;T<0||(this._time.splice(0,T),this._components.splice(0,16*T))},v.lastT=function(){return this._time[this._time.length-1]},v.lookAt=function(x,T,d,M){this.recalcMatrix(x),T=T||this.computedEye,d=d||g,M=M||this.computedUp,this.setMatrix(x,p(this.computedMatrix,T,d,M));for(var A=0,C=0;C<3;++C)A+=Math.pow(d[C]-T[C],2);A=Math.log(Math.sqrt(A)),this.computedRadius[0]=A},v.rotate=function(x,T,d,M){this.recalcMatrix(x);var A=this.computedInverse;T&&s(A,A,T),d&&a(A,A,d),M&&u(A,A,M),this.setMatrix(x,n(this.computedMatrix,A))};var m=[0,0,0];v.pan=function(x,T,d,M){m[0]=-(T||0),m[1]=-(d||0),m[2]=-(M||0),this.recalcMatrix(x);var A=this.computedInverse;c(A,A,m),this.setMatrix(x,n(A,A))},v.translate=function(x,T,d,M){m[0]=T||0,m[1]=d||0,m[2]=M||0,this.recalcMatrix(x);var A=this.computedMatrix;c(A,A,m),this.setMatrix(x,A)},v.setMatrix=function(x,T){if(!(x<this.lastT())){this._time.push(x);for(var d=0;d<16;++d)this._components.push(T[d])}},v.setDistance=function(x,T){this.computedRadius[0]=T},v.setDistanceLimits=function(x,T){var d=this._limits;d[0]=x,d[1]=T},v.getDistanceLimits=function(x){var T=this._limits;return x?(x[0]=T[0],x[1]=T[1],x):T}},3266:function(h,l,t){h.exports=function(r){var n=r.length;if(n<3){for(var a=new Array(n),s=0;s<n;++s)a[s]=s;return n===2&&r[0][0]===r[1][0]&&r[0][1]===r[1][1]?[0]:a}var u=new Array(n);for(s=0;s<n;++s)u[s]=s;u.sort(function(T,d){return r[T][0]-r[d][0]||r[T][1]-r[d][1]});var p=[u[0],u[1]],c=[u[0],u[1]];for(s=2;s<n;++s){for(var b=u[s],g=r[b],f=p.length;f>1&&o(r[p[f-2]],r[p[f-1]],g)<=0;)f-=1,p.pop();for(p.push(b),f=c.length;f>1&&o(r[c[f-2]],r[c[f-1]],g)>=0;)f-=1,c.pop();c.push(b)}a=new Array(c.length+p.length-2);for(var v=0,m=(s=0,p.length);s<m;++s)a[v++]=p[s];for(var x=c.length-2;x>0;--x)a[v++]=c[x];return a};var o=t(417)[3]},6145:function(h,l,t){h.exports=function(r,n){n||(n=r,r=window);var a=0,s=0,u=0,p={shift:!1,alt:!1,control:!1,meta:!1},c=!1;function b(C){var P=!1;return"altKey"in C&&(P=P||C.altKey!==p.alt,p.alt=!!C.altKey),"shiftKey"in C&&(P=P||C.shiftKey!==p.shift,p.shift=!!C.shiftKey),"ctrlKey"in C&&(P=P||C.ctrlKey!==p.control,p.control=!!C.ctrlKey),"metaKey"in C&&(P=P||C.metaKey!==p.meta,p.meta=!!C.metaKey),P}function g(C,P){var O=o.x(P),z=o.y(P);"buttons"in P&&(C=0|P.buttons),(C!==a||O!==s||z!==u||b(P))&&(a=0|C,s=O||0,u=z||0,n&&n(a,s,u,p))}function f(C){g(0,C)}function v(){(a||s||u||p.shift||p.alt||p.meta||p.control)&&(s=u=0,a=0,p.shift=p.alt=p.control=p.meta=!1,n&&n(0,0,0,p))}function m(C){b(C)&&n&&n(a,s,u,p)}function x(C){o.buttons(C)===0?g(0,C):g(a,C)}function T(C){g(a|o.buttons(C),C)}function d(C){g(a&~o.buttons(C),C)}function M(){c||(c=!0,r.addEventListener("mousemove",x),r.addEventListener("mousedown",T),r.addEventListener("mouseup",d),r.addEventListener("mouseleave",f),r.addEventListener("mouseenter",f),r.addEventListener("mouseout",f),r.addEventListener("mouseover",f),r.addEventListener("blur",v),r.addEventListener("keyup",m),r.addEventListener("keydown",m),r.addEventListener("keypress",m),r!==window&&(window.addEventListener("blur",v),window.addEventListener("keyup",m),window.addEventListener("keydown",m),window.addEventListener("keypress",m)))}M();var A={element:r};return Object.defineProperties(A,{enabled:{get:function(){return c},set:function(C){C?M():c&&(c=!1,r.removeEventListener("mousemove",x),r.removeEventListener("mousedown",T),r.removeEventListener("mouseup",d),r.removeEventListener("mouseleave",f),r.removeEventListener("mouseenter",f),r.removeEventListener("mouseout",f),r.removeEventListener("mouseover",f),r.removeEventListener("blur",v),r.removeEventListener("keyup",m),r.removeEventListener("keydown",m),r.removeEventListener("keypress",m),r!==window&&(window.removeEventListener("blur",v),window.removeEventListener("keyup",m),window.removeEventListener("keydown",m),window.removeEventListener("keypress",m)))},enumerable:!0},buttons:{get:function(){return a},enumerable:!0},x:{get:function(){return s},enumerable:!0},y:{get:function(){return u},enumerable:!0},mods:{get:function(){return p},enumerable:!0}}),A};var o=t(4110)},2565:function(h){var l={left:0,top:0};h.exports=function(t,o,r){o=o||t.currentTarget||t.srcElement,Array.isArray(r)||(r=[0,0]);var n,a=t.clientX||0,s=t.clientY||0,u=(n=o)===window||n===document||n===document.body?l:n.getBoundingClientRect();return r[0]=a-u.left,r[1]=s-u.top,r}},4110:function(h,l){function t(o){return o.target||o.srcElement||window}l.buttons=function(o){if(typeof o=="object"){if("buttons"in o)return o.buttons;if("which"in o){if((r=o.which)===2)return 4;if(r===3)return 2;if(r>0)return 1<<r-1}else if("button"in o){var r;if((r=o.button)===1)return 4;if(r===2)return 2;if(r>=0)return 1<<r}}return 0},l.element=t,l.x=function(o){if(typeof o=="object"){if("offsetX"in o)return o.offsetX;var r=t(o).getBoundingClientRect();return o.clientX-r.left}return 0},l.y=function(o){if(typeof o=="object"){if("offsetY"in o)return o.offsetY;var r=t(o).getBoundingClientRect();return o.clientY-r.top}return 0}},6475:function(h,l,t){var o=t(14);h.exports=function(r,n,a){typeof r=="function"&&(a=!!n,n=r,r=window);var s=o("ex",r),u=function(p){a&&p.preventDefault();var c=p.deltaX||0,b=p.deltaY||0,g=p.deltaZ||0,f=1;switch(p.deltaMode){case 1:f=s;break;case 2:f=window.innerHeight}if(b*=f,g*=f,(c*=f)||b||g)return n(c,b,g,p)};return r.addEventListener("wheel",u),u}},9284:function(h,l,t){var o=t(5306);h.exports=function(n){function a(g){throw new Error("ndarray-extract-contour: "+g)}typeof n!="object"&&a("Must specify arguments");var s=n.order;Array.isArray(s)||a("Must specify order");var u=n.arrayArguments||1;u<1&&a("Must have at least one array argument"),(n.scalarArguments||0)<0&&a("Scalar arg count must be > 0"),typeof n.vertex!="function"&&a("Must specify vertex creation function"),typeof n.cell!="function"&&a("Must specify cell creation function"),typeof n.phase!="function"&&a("Must specify phase function");for(var p=n.getters||[],c=new Array(u),b=0;b<u;++b)p.indexOf(b)>=0?c[b]=!0:c[b]=!1;return function(g,f,v,m,x,T){var d=[T,x].join(",");return(0,r[d])(g,f,v,o.mallocUint32,o.freeUint32)}(n.vertex,n.cell,n.phase,0,s,c)};var r={"false,0,1":function(n,a,s,u,p){return function(c,b,g,f){var v,m=0|c.shape[0],x=0|c.shape[1],T=c.data,d=0|c.offset,M=0|c.stride[0],A=0|c.stride[1],C=d,P=0|-M,O=0,z=0|-A,B=0,Y=-M-A|0,D=0,G=0|M,V=A-M*m|0,j=0,W=0,Z=0,ie=2*m|0,te=u(ie),J=u(ie),X=0,ee=0,re=-1,oe=-1,ue=0,ce=0|-m,de=0|m,me=0,_e=-m-1|0,Se=m-1|0,we=0,xe=0,De=0;for(j=0;j<m;++j)te[X++]=s(T[C],b,g,f),C+=G;if(C+=V,x>0){if(W=1,te[X++]=s(T[C],b,g,f),C+=G,m>0)for(j=1,v=T[C],ee=te[X]=s(v,b,g,f),ue=te[X+re],me=te[X+ce],we=te[X+_e],ee===ue&&ee===me&&ee===we||(O=T[C+P],B=T[C+z],D=T[C+Y],n(j,W,v,O,B,D,ee,ue,me,we,b,g,f),xe=J[X]=Z++),X+=1,C+=G,j=2;j<m;++j)v=T[C],ee=te[X]=s(v,b,g,f),ue=te[X+re],me=te[X+ce],we=te[X+_e],ee===ue&&ee===me&&ee===we||(O=T[C+P],B=T[C+z],D=T[C+Y],n(j,W,v,O,B,D,ee,ue,me,we,b,g,f),xe=J[X]=Z++,we!==ue&&a(J[X+re],xe,D,O,we,ue,b,g,f)),X+=1,C+=G;for(C+=V,X=0,De=re,re=oe,oe=De,De=ce,ce=de,de=De,De=_e,_e=Se,Se=De,W=2;W<x;++W){if(te[X++]=s(T[C],b,g,f),C+=G,m>0)for(j=1,v=T[C],ee=te[X]=s(v,b,g,f),ue=te[X+re],me=te[X+ce],we=te[X+_e],ee===ue&&ee===me&&ee===we||(O=T[C+P],B=T[C+z],D=T[C+Y],n(j,W,v,O,B,D,ee,ue,me,we,b,g,f),xe=J[X]=Z++,we!==me&&a(J[X+ce],xe,B,D,me,we,b,g,f)),X+=1,C+=G,j=2;j<m;++j)v=T[C],ee=te[X]=s(v,b,g,f),ue=te[X+re],me=te[X+ce],we=te[X+_e],ee===ue&&ee===me&&ee===we||(O=T[C+P],B=T[C+z],D=T[C+Y],n(j,W,v,O,B,D,ee,ue,me,we,b,g,f),xe=J[X]=Z++,we!==me&&a(J[X+ce],xe,B,D,me,we,b,g,f),we!==ue&&a(J[X+re],xe,D,O,we,ue,b,g,f)),X+=1,C+=G;1&W&&(X=0),De=re,re=oe,oe=De,De=ce,ce=de,de=De,De=_e,_e=Se,Se=De,C+=V}}p(J),p(te)}},"false,1,0":function(n,a,s,u,p){return function(c,b,g,f){var v,m=0|c.shape[0],x=0|c.shape[1],T=c.data,d=0|c.offset,M=0|c.stride[0],A=0|c.stride[1],C=d,P=0|-M,O=0,z=0|-A,B=0,Y=-M-A|0,D=0,G=0|A,V=M-A*x|0,j=0,W=0,Z=0,ie=2*x|0,te=u(ie),J=u(ie),X=0,ee=0,re=-1,oe=-1,ue=0,ce=0|-x,de=0|x,me=0,_e=-x-1|0,Se=x-1|0,we=0,xe=0,De=0;for(W=0;W<x;++W)te[X++]=s(T[C],b,g,f),C+=G;if(C+=V,m>0){if(j=1,te[X++]=s(T[C],b,g,f),C+=G,x>0)for(W=1,v=T[C],ee=te[X]=s(v,b,g,f),me=te[X+ce],ue=te[X+re],we=te[X+_e],ee===me&&ee===ue&&ee===we||(O=T[C+P],B=T[C+z],D=T[C+Y],n(j,W,v,O,B,D,ee,me,ue,we,b,g,f),xe=J[X]=Z++),X+=1,C+=G,W=2;W<x;++W)v=T[C],ee=te[X]=s(v,b,g,f),me=te[X+ce],ue=te[X+re],we=te[X+_e],ee===me&&ee===ue&&ee===we||(O=T[C+P],B=T[C+z],D=T[C+Y],n(j,W,v,O,B,D,ee,me,ue,we,b,g,f),xe=J[X]=Z++,we!==ue&&a(J[X+re],xe,B,D,ue,we,b,g,f)),X+=1,C+=G;for(C+=V,X=0,De=ce,ce=de,de=De,De=re,re=oe,oe=De,De=_e,_e=Se,Se=De,j=2;j<m;++j){if(te[X++]=s(T[C],b,g,f),C+=G,x>0)for(W=1,v=T[C],ee=te[X]=s(v,b,g,f),me=te[X+ce],ue=te[X+re],we=te[X+_e],ee===me&&ee===ue&&ee===we||(O=T[C+P],B=T[C+z],D=T[C+Y],n(j,W,v,O,B,D,ee,me,ue,we,b,g,f),xe=J[X]=Z++,we!==me&&a(J[X+ce],xe,D,O,we,me,b,g,f)),X+=1,C+=G,W=2;W<x;++W)v=T[C],ee=te[X]=s(v,b,g,f),me=te[X+ce],ue=te[X+re],we=te[X+_e],ee===me&&ee===ue&&ee===we||(O=T[C+P],B=T[C+z],D=T[C+Y],n(j,W,v,O,B,D,ee,me,ue,we,b,g,f),xe=J[X]=Z++,we!==ue&&a(J[X+re],xe,B,D,ue,we,b,g,f),we!==me&&a(J[X+ce],xe,D,O,we,me,b,g,f)),X+=1,C+=G;1&j&&(X=0),De=ce,ce=de,de=De,De=re,re=oe,oe=De,De=_e,_e=Se,Se=De,C+=V}}p(J),p(te)}}}},9144:function(h,l,t){var o=t(3094),r={zero:function(m,x,T,d){var M=m[0];d|=0;var A=0,C=T[0];for(A=0;A<M;++A)x[d]=0,d+=C},fdTemplate1:function(m,x,T,d,M,A,C){var P=m[0],O=T[0],z=-1*O,B=O;d|=0,C|=0;var Y=0,D=O,G=A[0];for(Y=0;Y<P;++Y)M[C]=.5*(x[d+z]-x[d+B]),d+=D,C+=G},fdTemplate2:function(m,x,T,d,M,A,C,P,O,z){var B=m[0],Y=m[1],D=T[0],G=T[1],V=A[0],j=A[1],W=O[0],Z=O[1],ie=-1*D,te=D,J=-1*G,X=G;d|=0,C|=0,z|=0;var ee=0,re=0,oe=G,ue=D-Y*G,ce=j,de=V-Y*j,me=Z,_e=W-Y*Z;for(re=0;re<B;++re){for(ee=0;ee<Y;++ee)M[C]=.5*(x[d+ie]-x[d+te]),P[z]=.5*(x[d+J]-x[d+X]),d+=oe,C+=ce,z+=me;d+=ue,C+=de,z+=_e}}},n={cdiff:function(m){var x={};return function(T,d,M){var A=T.dtype,C=T.order,P=d.dtype,O=d.order,z=M.dtype,B=M.order,Y=[A,C.join(),P,O.join(),z,B.join()].join(),D=x[Y];return D||(x[Y]=D=m([A,C,P,O,z,B])),D(T.shape.slice(0),T.data,T.stride,0|T.offset,d.data,d.stride,0|d.offset,M.data,M.stride,0|M.offset)}},zero:function(m){var x={};return function(T){var d=T.dtype,M=T.order,A=[d,M.join()].join(),C=x[A];return C||(x[A]=C=m([d,M])),C(T.shape.slice(0),T.data,T.stride,0|T.offset)}},fdTemplate1:function(m){var x={};return function(T,d){var M=T.dtype,A=T.order,C=d.dtype,P=d.order,O=[M,A.join(),C,P.join()].join(),z=x[O];return z||(x[O]=z=m([M,A,C,P])),z(T.shape.slice(0),T.data,T.stride,0|T.offset,d.data,d.stride,0|d.offset)}},fdTemplate2:function(m){var x={};return function(T,d,M){var A=T.dtype,C=T.order,P=d.dtype,O=d.order,z=M.dtype,B=M.order,Y=[A,C.join(),P,O.join(),z,B.join()].join(),D=x[Y];return D||(x[Y]=D=m([A,C,P,O,z,B])),D(T.shape.slice(0),T.data,T.stride,0|T.offset,d.data,d.stride,0|d.offset,M.data,M.stride,0|M.offset)}}};function a(m){return(0,n[m.funcName])(s.bind(void 0,m))}function s(m){return r[m.funcName]}function u(m){return a({funcName:m.funcName})}var p={},c={},b=u({funcName:"cdiff"}),g=u({funcName:"zero"});function f(m){return m in p?p[m]:p[m]=u({funcName:"fdTemplate"+m})}function v(m,x,T,d){return function(M,A){var C=A.shape.slice();return C[0]>2&&C[1]>2&&d(A.pick(-1,-1).lo(1,1).hi(C[0]-2,C[1]-2),M.pick(-1,-1,0).lo(1,1).hi(C[0]-2,C[1]-2),M.pick(-1,-1,1).lo(1,1).hi(C[0]-2,C[1]-2)),C[1]>2&&(T(A.pick(0,-1).lo(1).hi(C[1]-2),M.pick(0,-1,1).lo(1).hi(C[1]-2)),x(M.pick(0,-1,0).lo(1).hi(C[1]-2))),C[1]>2&&(T(A.pick(C[0]-1,-1).lo(1).hi(C[1]-2),M.pick(C[0]-1,-1,1).lo(1).hi(C[1]-2)),x(M.pick(C[0]-1,-1,0).lo(1).hi(C[1]-2))),C[0]>2&&(T(A.pick(-1,0).lo(1).hi(C[0]-2),M.pick(-1,0,0).lo(1).hi(C[0]-2)),x(M.pick(-1,0,1).lo(1).hi(C[0]-2))),C[0]>2&&(T(A.pick(-1,C[1]-1).lo(1).hi(C[0]-2),M.pick(-1,C[1]-1,0).lo(1).hi(C[0]-2)),x(M.pick(-1,C[1]-1,1).lo(1).hi(C[0]-2))),M.set(0,0,0,0),M.set(0,0,1,0),M.set(C[0]-1,0,0,0),M.set(C[0]-1,0,1,0),M.set(0,C[1]-1,0,0),M.set(0,C[1]-1,1,0),M.set(C[0]-1,C[1]-1,0,0),M.set(C[0]-1,C[1]-1,1,0),M}}h.exports=function(m,x,T){return Array.isArray(T)||(T=o(x.dimension,typeof T=="string"?T:"clamp")),x.size===0?m:x.dimension===0?(m.set(0),m):function(d){var M=d.join();if(O=c[M])return O;for(var A=d.length,C=[b,g],P=1;P<=A;++P)C.push(f(P));var O=v.apply(void 0,C);return c[M]=O,O}(T)(m,x)}},3581:function(h){function l(n,a){var s=Math.floor(a),u=a-s,p=0<=s&&s<n.shape[0],c=0<=s+1&&s+1<n.shape[0];return(1-u)*(p?+n.get(s):0)+u*(c?+n.get(s+1):0)}function t(n,a,s){var u=Math.floor(a),p=a-u,c=0<=u&&u<n.shape[0],b=0<=u+1&&u+1<n.shape[0],g=Math.floor(s),f=s-g,v=0<=g&&g<n.shape[1],m=0<=g+1&&g+1<n.shape[1],x=c&&v?n.get(u,g):0,T=c&&m?n.get(u,g+1):0;return(1-f)*((1-p)*x+p*(b&&v?n.get(u+1,g):0))+f*((1-p)*T+p*(b&&m?n.get(u+1,g+1):0))}function o(n,a,s,u){var p=Math.floor(a),c=a-p,b=0<=p&&p<n.shape[0],g=0<=p+1&&p+1<n.shape[0],f=Math.floor(s),v=s-f,m=0<=f&&f<n.shape[1],x=0<=f+1&&f+1<n.shape[1],T=Math.floor(u),d=u-T,M=0<=T&&T<n.shape[2],A=0<=T+1&&T+1<n.shape[2],C=b&&m&&M?n.get(p,f,T):0,P=b&&x&&M?n.get(p,f+1,T):0,O=g&&m&&M?n.get(p+1,f,T):0,z=g&&x&&M?n.get(p+1,f+1,T):0,B=b&&m&&A?n.get(p,f,T+1):0,Y=b&&x&&A?n.get(p,f+1,T+1):0;return(1-d)*((1-v)*((1-c)*C+c*O)+v*((1-c)*P+c*z))+d*((1-v)*((1-c)*B+c*(g&&m&&A?n.get(p+1,f,T+1):0))+v*((1-c)*Y+c*(g&&x&&A?n.get(p+1,f+1,T+1):0)))}function r(n){var a,s,u=0|n.shape.length,p=new Array(u),c=new Array(u),b=new Array(u),g=new Array(u);for(a=0;a<u;++a)s=+arguments[a+1],p[a]=Math.floor(s),c[a]=s-p[a],b[a]=0<=p[a]&&p[a]<n.shape[a],g[a]=0<=p[a]+1&&p[a]+1<n.shape[a];var f,v,m,x=0;e:for(a=0;a<1<<u;++a){for(v=1,m=n.offset,f=0;f<u;++f)if(a&1<<f){if(!g[f])continue e;v*=c[f],m+=n.stride[f]*(p[f]+1)}else{if(!b[f])continue e;v*=1-c[f],m+=n.stride[f]*p[f]}x+=v*n.data[m]}return x}h.exports=function(n,a,s,u){switch(n.shape.length){case 0:return 0;case 1:return l(n,a);case 2:return t(n,a,s);case 3:return o(n,a,s,u);default:return r.apply(void 0,arguments)}},h.exports.d1=l,h.exports.d2=t,h.exports.d3=o},7498:function(h,l){var t={"float64,2,1,0":function(){return function(s,u,p,c,b){var g=s[0],f=s[1],v=s[2],m=p[0],x=p[1],T=p[2];c|=0;var d=0,M=0,A=0,C=T,P=x-v*T,O=m-f*x;for(A=0;A<g;++A){for(M=0;M<f;++M){for(d=0;d<v;++d)u[c]/=b,c+=C;c+=P}c+=O}}},"uint8,2,0,1,float64,2,1,0":function(){return function(s,u,p,c,b,g,f,v){for(var m=s[0],x=s[1],T=s[2],d=p[0],M=p[1],A=p[2],C=g[0],P=g[1],O=g[2],z=c|=0,B=f|=0,Y=0|s[0];Y>0;){Y<64?(m=Y,Y=0):(m=64,Y-=64);for(var D=0|s[1];D>0;){D<64?(x=D,D=0):(x=64,D-=64),c=z+Y*d+D*M,f=B+Y*C+D*P;var G=0,V=0,j=0,W=A,Z=d-T*A,ie=M-m*d,te=O,J=C-T*O,X=P-m*C;for(j=0;j<x;++j){for(V=0;V<m;++V){for(G=0;G<T;++G)u[c]=b[f]*v,c+=W,f+=te;c+=Z,f+=J}c+=ie,f+=X}}}}},"float32,1,0,float32,1,0":function(){return function(s,u,p,c,b,g,f){var v=s[0],m=s[1],x=p[0],T=p[1],d=g[0],M=g[1];c|=0,f|=0;var A=0,C=0,P=T,O=x-m*T,z=M,B=d-m*M;for(C=0;C<v;++C){for(A=0;A<m;++A)u[c]=b[f],c+=P,f+=z;c+=O,f+=B}}},"float32,1,0,float32,0,1":function(){return function(s,u,p,c,b,g,f){for(var v=s[0],m=s[1],x=p[0],T=p[1],d=g[0],M=g[1],A=c|=0,C=f|=0,P=0|s[1];P>0;){P<64?(m=P,P=0):(m=64,P-=64);for(var O=0|s[0];O>0;){O<64?(v=O,O=0):(v=64,O-=64),c=A+P*T+O*x,f=C+P*M+O*d;var z=0,B=0,Y=T,D=x-m*T,G=M,V=d-m*M;for(B=0;B<v;++B){for(z=0;z<m;++z)u[c]=b[f],c+=Y,f+=G;c+=D,f+=V}}}}},"uint8,2,0,1,uint8,1,2,0":function(){return function(s,u,p,c,b,g,f){for(var v=s[0],m=s[1],x=s[2],T=p[0],d=p[1],M=p[2],A=g[0],C=g[1],P=g[2],O=c|=0,z=f|=0,B=0|s[2];B>0;){B<64?(x=B,B=0):(x=64,B-=64);for(var Y=0|s[0];Y>0;){Y<64?(v=Y,Y=0):(v=64,Y-=64);for(var D=0|s[1];D>0;){D<64?(m=D,D=0):(m=64,D-=64),c=O+B*M+Y*T+D*d,f=z+B*P+Y*A+D*C;var G=0,V=0,j=0,W=M,Z=T-x*M,ie=d-v*T,te=P,J=A-x*P,X=C-v*A;for(j=0;j<m;++j){for(V=0;V<v;++V){for(G=0;G<x;++G)u[c]=b[f],c+=W,f+=te;c+=Z,f+=J}c+=ie,f+=X}}}}}},"uint8,2,0,1,array,2,0,1":function(){return function(s,u,p,c,b,g,f){var v=s[0],m=s[1],x=s[2],T=p[0],d=p[1],M=p[2],A=g[0],C=g[1],P=g[2];c|=0,f|=0;var O=0,z=0,B=0,Y=M,D=T-x*M,G=d-v*T,V=P,j=A-x*P,W=C-v*A;for(B=0;B<m;++B){for(z=0;z<v;++z){for(O=0;O<x;++O)u[c]=b[f],c+=Y,f+=V;c+=D,f+=j}c+=G,f+=W}}}},o=function(s,u){var p=u.join(",");return(0,t[p])()},r={mul:function(s){var u={};return function(p,c,b){var g=p.dtype,f=p.order,v=c.dtype,m=c.order,x=b.dtype,T=b.order,d=[g,f.join(),v,m.join(),x,T.join()].join(),M=u[d];return M||(u[d]=M=s([g,f,v,m,x,T])),M(p.shape.slice(0),p.data,p.stride,0|p.offset,c.data,c.stride,0|c.offset,b.data,b.stride,0|b.offset)}},muls:function(s){var u={};return function(p,c,b){var g=p.dtype,f=p.order,v=c.dtype,m=c.order,x=[g,f.join(),v,m.join()].join(),T=u[x];return T||(u[x]=T=s([g,f,v,m])),T(p.shape.slice(0),p.data,p.stride,0|p.offset,c.data,c.stride,0|c.offset,b)}},mulseq:function(s){var u={};return function(p,c){var b=p.dtype,g=p.order,f=[b,g.join()].join(),v=u[f];return v||(u[f]=v=s([b,g])),v(p.shape.slice(0),p.data,p.stride,0|p.offset,c)}},div:function(s){var u={};return function(p,c,b){var g=p.dtype,f=p.order,v=c.dtype,m=c.order,x=b.dtype,T=b.order,d=[g,f.join(),v,m.join(),x,T.join()].join(),M=u[d];return M||(u[d]=M=s([g,f,v,m,x,T])),M(p.shape.slice(0),p.data,p.stride,0|p.offset,c.data,c.stride,0|c.offset,b.data,b.stride,0|b.offset)}},divs:function(s){var u={};return function(p,c,b){var g=p.dtype,f=p.order,v=c.dtype,m=c.order,x=[g,f.join(),v,m.join()].join(),T=u[x];return T||(u[x]=T=s([g,f,v,m])),T(p.shape.slice(0),p.data,p.stride,0|p.offset,c.data,c.stride,0|c.offset,b)}},divseq:function(s){var u={};return function(p,c){var b=p.dtype,g=p.order,f=[b,g.join()].join(),v=u[f];return v||(u[f]=v=s([b,g])),v(p.shape.slice(0),p.data,p.stride,0|p.offset,c)}},assign:function(s){var u={};return function(p,c){var b=p.dtype,g=p.order,f=c.dtype,v=c.order,m=[b,g.join(),f,v.join()].join(),x=u[m];return x||(u[m]=x=s([b,g,f,v])),x(p.shape.slice(0),p.data,p.stride,0|p.offset,c.data,c.stride,0|c.offset)}}};function n(s){return u={funcName:s.funcName},(0,r[u.funcName])(o.bind(void 0,u));var u}var a={mul:"*",div:"/"};(function(){for(var s in a)l[s]=n({funcName:s}),l[s+"s"]=n({funcName:s+"s"}),l[s+"seq"]=n({funcName:s+"seq"})})(),l.assign=n({funcName:"assign"})},7382:function(h,l,t){var o=t(5050),r=t(9262);h.exports=function(n,a){for(var s=[],u=n,p=1;Array.isArray(u);)s.push(u.length),p*=u.length,u=u[0];return s.length===0?o():(a||(a=o(new Float64Array(p),s)),r(a,n),a)}},9262:function(h){h.exports=function(l){var t={};return function(o,r){var n=o.dtype,a=o.order,s=[n,a.join()].join(),u=t[s];return u||(t[s]=u=l([n,a])),u(o.shape.slice(0),o.data,o.stride,0|o.offset,r)}}(function(){return function(l,t,o,r,n){var a=l[0],s=l[1],u=l[2],p=o[0],c=o[1],b=o[2],g=[0,0,0];r|=0;var f=0,v=0,m=0,x=b,T=c-u*b,d=p-s*c;for(m=0;m<a;++m){for(v=0;v<s;++v){for(f=0;f<u;++f){var M,A=n;for(M=0;M<g.length-1;++M)A=A[g[M]];t[r]=A[g[g.length-1]],r+=x,++g[2]}r+=T,g[2]-=u,++g[1]}r+=d,g[1]-=s,++g[0]}}}.bind(void 0,{funcName:"convert"}))},8139:function(h,l,t){var o=t(5306);function r(u){return u==="uint32"?[o.mallocUint32,o.freeUint32]:null}var n={"uint32,1,0":function(u,p){return function(c,b,g,f,v,m,x,T,d,M,A){var C,P,O,z,B,Y,D,G,V=c*v+f,j=u(T);for(C=c+1;C<=b;++C){for(P=C,O=V+=v,B=0,Y=V,z=0;z<T;++z)j[B++]=g[Y],Y+=d;e:for(;P-- >c;){B=0,Y=O-v;t:for(z=0;z<T;++z){if((D=g[Y])<(G=j[B]))break e;if(D>G)break t;Y+=M,B+=A}for(B=O,Y=O-v,z=0;z<T;++z)g[B]=g[Y],B+=d,Y+=d;O-=v}for(B=O,Y=0,z=0;z<T;++z)g[B]=j[Y++],B+=d}p(j)}}},a={"uint32,1,0":function(u,p,c){return function b(g,f,v,m,x,T,d,M,A,C,P){var O,z,B,Y,D,G,V,j,W,Z,ie,te,J,X,ee,re,oe,ue,ce,de,me,_e,Se,we,xe,De=(f-g+1)/6|0,Ee=g+De,Me=f-De,he=g+f>>1,fe=he-De,ae=he+De,be=Ee,Ie=fe,Te=he,Ne=ae,qe=Me,ve=g+1,Ce=f-1,Ae=!0,ze=0,Ue=0,Ve=0,Ye=M,$e=p(Ye),rt=p(Ye);ie=x*be,te=x*Ie,xe=m;e:for(Z=0;Z<M;++Z){if(j=te+xe,(Ve=v[V=ie+xe]-v[j])>0){z=be,be=Ie,Ie=z;break e}if(Ve<0)break e;xe+=C}ie=x*Ne,te=x*qe,xe=m;e:for(Z=0;Z<M;++Z){if(j=te+xe,(Ve=v[V=ie+xe]-v[j])>0){z=Ne,Ne=qe,qe=z;break e}if(Ve<0)break e;xe+=C}ie=x*be,te=x*Te,xe=m;e:for(Z=0;Z<M;++Z){if(j=te+xe,(Ve=v[V=ie+xe]-v[j])>0){z=be,be=Te,Te=z;break e}if(Ve<0)break e;xe+=C}ie=x*Ie,te=x*Te,xe=m;e:for(Z=0;Z<M;++Z){if(j=te+xe,(Ve=v[V=ie+xe]-v[j])>0){z=Ie,Ie=Te,Te=z;break e}if(Ve<0)break e;xe+=C}ie=x*be,te=x*Ne,xe=m;e:for(Z=0;Z<M;++Z){if(j=te+xe,(Ve=v[V=ie+xe]-v[j])>0){z=be,be=Ne,Ne=z;break e}if(Ve<0)break e;xe+=C}ie=x*Te,te=x*Ne,xe=m;e:for(Z=0;Z<M;++Z){if(j=te+xe,(Ve=v[V=ie+xe]-v[j])>0){z=Te,Te=Ne,Ne=z;break e}if(Ve<0)break e;xe+=C}ie=x*Ie,te=x*qe,xe=m;e:for(Z=0;Z<M;++Z){if(j=te+xe,(Ve=v[V=ie+xe]-v[j])>0){z=Ie,Ie=qe,qe=z;break e}if(Ve<0)break e;xe+=C}ie=x*Ie,te=x*Te,xe=m;e:for(Z=0;Z<M;++Z){if(j=te+xe,(Ve=v[V=ie+xe]-v[j])>0){z=Ie,Ie=Te,Te=z;break e}if(Ve<0)break e;xe+=C}ie=x*Ne,te=x*qe,xe=m;e:for(Z=0;Z<M;++Z){if(j=te+xe,(Ve=v[V=ie+xe]-v[j])>0){z=Ne,Ne=qe,qe=z;break e}if(Ve<0)break e;xe+=C}for(ie=x*be,te=x*Ie,J=x*Te,X=x*Ne,ee=x*qe,re=x*Ee,oe=x*he,ue=x*Me,we=0,xe=m,Z=0;Z<M;++Z)V=ie+xe,j=te+xe,W=J+xe,ce=X+xe,de=ee+xe,me=re+xe,_e=oe+xe,Se=ue+xe,$e[we]=v[j],rt[we]=v[ce],Ae=Ae&&$e[we]===rt[we],B=v[V],Y=v[W],D=v[de],v[me]=B,v[_e]=Y,v[Se]=D,++we,xe+=A;for(ie=x*fe,te=x*g,xe=m,Z=0;Z<M;++Z)j=te+xe,v[V=ie+xe]=v[j],xe+=A;for(ie=x*ae,te=x*f,xe=m,Z=0;Z<M;++Z)j=te+xe,v[V=ie+xe]=v[j],xe+=A;if(Ae)for(G=ve;G<=Ce;++G){for(V=m+G*x,we=0,Z=0;Z<M&&(Ve=v[V]-$e[we])==0;++Z)we+=P,V+=C;if(Ve!==0)if(Ve<0){if(G!==ve)for(ie=x*G,te=x*ve,xe=m,Z=0;Z<M;++Z)j=te+xe,O=v[V=ie+xe],v[V]=v[j],v[j]=O,xe+=A;++ve}else for(;;){for(V=m+Ce*x,we=0,Z=0;Z<M&&(Ve=v[V]-$e[we])==0;++Z)we+=P,V+=C;if(!(Ve>0)){if(Ve<0){for(ie=x*G,te=x*ve,J=x*Ce,xe=m,Z=0;Z<M;++Z)j=te+xe,W=J+xe,O=v[V=ie+xe],v[V]=v[j],v[j]=v[W],v[W]=O,xe+=A;++ve,--Ce;break}for(ie=x*G,te=x*Ce,xe=m,Z=0;Z<M;++Z)j=te+xe,O=v[V=ie+xe],v[V]=v[j],v[j]=O,xe+=A;--Ce;break}Ce--}}else for(G=ve;G<=Ce;++G){for(V=m+G*x,we=0,Z=0;Z<M&&(ze=v[V]-$e[we])==0;++Z)we+=P,V+=C;if(ze<0){if(G!==ve)for(ie=x*G,te=x*ve,xe=m,Z=0;Z<M;++Z)j=te+xe,O=v[V=ie+xe],v[V]=v[j],v[j]=O,xe+=A;++ve}else{for(V=m+G*x,we=0,Z=0;Z<M&&(Ue=v[V]-rt[we])==0;++Z)we+=P,V+=C;if(Ue>0)for(;;){for(V=m+Ce*x,we=0,Z=0;Z<M&&(Ve=v[V]-rt[we])==0;++Z)we+=P,V+=C;if(!(Ve>0)){for(V=m+Ce*x,we=0,Z=0;Z<M&&(Ve=v[V]-$e[we])==0;++Z)we+=P,V+=C;if(Ve<0){for(ie=x*G,te=x*ve,J=x*Ce,xe=m,Z=0;Z<M;++Z)j=te+xe,W=J+xe,O=v[V=ie+xe],v[V]=v[j],v[j]=v[W],v[W]=O,xe+=A;++ve,--Ce}else{for(ie=x*G,te=x*Ce,xe=m,Z=0;Z<M;++Z)j=te+xe,O=v[V=ie+xe],v[V]=v[j],v[j]=O,xe+=A;--Ce}break}if(--Ce<G)break}}}for(ie=x*g,te=x*(ve-1),we=0,xe=m,Z=0;Z<M;++Z)j=te+xe,v[V=ie+xe]=v[j],v[j]=$e[we],++we,xe+=A;for(ie=x*f,te=x*(Ce+1),we=0,xe=m,Z=0;Z<M;++Z)j=te+xe,v[V=ie+xe]=v[j],v[j]=rt[we],++we,xe+=A;if(ve-2-g<=32?u(g,ve-2,v,m,x,T,d,M,A,C,P):b(g,ve-2,v,m,x,T,d,M,A,C,P),f-(Ce+2)<=32?u(Ce+2,f,v,m,x,T,d,M,A,C,P):b(Ce+2,f,v,m,x,T,d,M,A,C,P),Ae)return c($e),void c(rt);if(ve<Ee&&Ce>Me){e:for(;;){for(V=m+ve*x,we=0,xe=m,Z=0;Z<M;++Z){if(v[V]!==$e[we])break e;++we,V+=A}++ve}e:for(;;){for(V=m+Ce*x,we=0,xe=m,Z=0;Z<M;++Z){if(v[V]!==rt[we])break e;++we,V+=A}--Ce}for(G=ve;G<=Ce;++G){for(V=m+G*x,we=0,Z=0;Z<M&&(ze=v[V]-$e[we])==0;++Z)we+=P,V+=C;if(ze===0){if(G!==ve)for(ie=x*G,te=x*ve,xe=m,Z=0;Z<M;++Z)j=te+xe,O=v[V=ie+xe],v[V]=v[j],v[j]=O,xe+=A;++ve}else{for(V=m+G*x,we=0,Z=0;Z<M&&(Ue=v[V]-rt[we])==0;++Z)we+=P,V+=C;if(Ue===0)for(;;){for(V=m+Ce*x,we=0,Z=0;Z<M&&(Ve=v[V]-rt[we])==0;++Z)we+=P,V+=C;if(Ve!==0){for(V=m+Ce*x,we=0,Z=0;Z<M&&(Ve=v[V]-$e[we])==0;++Z)we+=P,V+=C;if(Ve<0){for(ie=x*G,te=x*ve,J=x*Ce,xe=m,Z=0;Z<M;++Z)j=te+xe,W=J+xe,O=v[V=ie+xe],v[V]=v[j],v[j]=v[W],v[W]=O,xe+=A;++ve,--Ce}else{for(ie=x*G,te=x*Ce,xe=m,Z=0;Z<M;++Z)j=te+xe,O=v[V=ie+xe],v[V]=v[j],v[j]=O,xe+=A;--Ce}break}if(--Ce<G)break}}}}c($e),c(rt),Ce-ve<=32?u(ve,Ce,v,m,x,T,d,M,A,C,P):b(ve,Ce,v,m,x,T,d,M,A,C,P)}}},s={"uint32,1,0":function(u,p){return function(c){var b=c.data,g=0|c.offset,f=c.shape,v=c.stride,m=0|v[0],x=0|f[0],T=0|v[1],d=0|f[1],M=T,A=T;x<=32?u(0,x-1,b,g,m,T,x,d,M,A,1):p(0,x-1,b,g,m,T,x,d,M,A,1)}}};h.exports=function(u,p){var c=[p,u].join(","),b=s[c],g=function(v,m){var x=r(m),T=[m,v].join(","),d=n[T];return x?d(x[0],x[1]):d()}(u,p),f=function(v,m,x){var T=r(m),d=[m,v].join(","),M=a[d];return v.length>1&&T?M(x,T[0],T[1]):M(x)}(u,p,g);return b(g,f)}},8729:function(h,l,t){var o=t(8139),r={};h.exports=function(n){var a=n.order,s=n.dtype,u=[a,s].join(":"),p=r[u];return p||(r[u]=p=o(a,s)),p(n),n}},5050:function(h,l,t){var o=t(4780),r=typeof Float64Array<"u";function n(c,b){return c[0]-b[0]}function a(){var c,b=this.stride,g=new Array(b.length);for(c=0;c<g.length;++c)g[c]=[Math.abs(b[c]),c];g.sort(n);var f=new Array(g.length);for(c=0;c<f.length;++c)f[c]=g[c][1];return f}var s={T:function(c){function b(f){this.data=f}var g=b.prototype;return g.dtype=c,g.index=function(){return-1},g.size=0,g.dimension=-1,g.shape=g.stride=g.order=[],g.lo=g.hi=g.transpose=g.step=function(){return new b(this.data)},g.get=g.set=function(){},g.pick=function(){return null},function(f){return new b(f)}},0:function(c,b){function g(v,m){this.data=v,this.offset=m}var f=g.prototype;return f.dtype=c,f.index=function(){return this.offset},f.dimension=0,f.size=1,f.shape=f.stride=f.order=[],f.lo=f.hi=f.transpose=f.step=function(){return new g(this.data,this.offset)},f.pick=function(){return b(this.data)},f.valueOf=f.get=function(){return c==="generic"?this.data.get(this.offset):this.data[this.offset]},f.set=function(v){return c==="generic"?this.data.set(this.offset,v):this.data[this.offset]=v},function(v,m,x,T){return new g(v,T)}},1:function(c,b,g){function f(m,x,T,d){this.data=m,this.shape=[x],this.stride=[T],this.offset=0|d}var v=f.prototype;return v.dtype=c,v.dimension=1,Object.defineProperty(v,"size",{get:function(){return this.shape[0]}}),v.order=[0],v.set=function(m,x){return c==="generic"?this.data.set(this.offset+this.stride[0]*m,x):this.data[this.offset+this.stride[0]*m]=x},v.get=function(m){return c==="generic"?this.data.get(this.offset+this.stride[0]*m):this.data[this.offset+this.stride[0]*m]},v.index=function(m){return this.offset+this.stride[0]*m},v.hi=function(m){return new f(this.data,typeof m!="number"||m<0?this.shape[0]:0|m,this.stride[0],this.offset)},v.lo=function(m){var x=this.offset,T=0,d=this.shape[0],M=this.stride[0];return typeof m=="number"&&m>=0&&(x+=M*(T=0|m),d-=T),new f(this.data,d,M,x)},v.step=function(m){var x=this.shape[0],T=this.stride[0],d=this.offset,M=0,A=Math.ceil;return typeof m=="number"&&((M=0|m)<0?(d+=T*(x-1),x=A(-x/M)):x=A(x/M),T*=M),new f(this.data,x,T,d)},v.transpose=function(m){m=m===void 0?0:0|m;var x=this.shape,T=this.stride;return new f(this.data,x[m],T[m],this.offset)},v.pick=function(m){var x=[],T=[],d=this.offset;return typeof m=="number"&&m>=0?d=d+this.stride[0]*m|0:(x.push(this.shape[0]),T.push(this.stride[0])),(0,b[x.length+1])(this.data,x,T,d)},function(m,x,T,d){return new f(m,x[0],T[0],d)}},2:function(c,b,g){function f(m,x,T,d,M,A){this.data=m,this.shape=[x,T],this.stride=[d,M],this.offset=0|A}var v=f.prototype;return v.dtype=c,v.dimension=2,Object.defineProperty(v,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(v,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),v.set=function(m,x,T){return c==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*x,T):this.data[this.offset+this.stride[0]*m+this.stride[1]*x]=T},v.get=function(m,x){return c==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*x):this.data[this.offset+this.stride[0]*m+this.stride[1]*x]},v.index=function(m,x){return this.offset+this.stride[0]*m+this.stride[1]*x},v.hi=function(m,x){return new f(this.data,typeof m!="number"||m<0?this.shape[0]:0|m,typeof x!="number"||x<0?this.shape[1]:0|x,this.stride[0],this.stride[1],this.offset)},v.lo=function(m,x){var T=this.offset,d=0,M=this.shape[0],A=this.shape[1],C=this.stride[0],P=this.stride[1];return typeof m=="number"&&m>=0&&(T+=C*(d=0|m),M-=d),typeof x=="number"&&x>=0&&(T+=P*(d=0|x),A-=d),new f(this.data,M,A,C,P,T)},v.step=function(m,x){var T=this.shape[0],d=this.shape[1],M=this.stride[0],A=this.stride[1],C=this.offset,P=0,O=Math.ceil;return typeof m=="number"&&((P=0|m)<0?(C+=M*(T-1),T=O(-T/P)):T=O(T/P),M*=P),typeof x=="number"&&((P=0|x)<0?(C+=A*(d-1),d=O(-d/P)):d=O(d/P),A*=P),new f(this.data,T,d,M,A,C)},v.transpose=function(m,x){m=m===void 0?0:0|m,x=x===void 0?1:0|x;var T=this.shape,d=this.stride;return new f(this.data,T[m],T[x],d[m],d[x],this.offset)},v.pick=function(m,x){var T=[],d=[],M=this.offset;return typeof m=="number"&&m>=0?M=M+this.stride[0]*m|0:(T.push(this.shape[0]),d.push(this.stride[0])),typeof x=="number"&&x>=0?M=M+this.stride[1]*x|0:(T.push(this.shape[1]),d.push(this.stride[1])),(0,b[T.length+1])(this.data,T,d,M)},function(m,x,T,d){return new f(m,x[0],x[1],T[0],T[1],d)}},3:function(c,b,g){function f(m,x,T,d,M,A,C,P){this.data=m,this.shape=[x,T,d],this.stride=[M,A,C],this.offset=0|P}var v=f.prototype;return v.dtype=c,v.dimension=3,Object.defineProperty(v,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(v,"order",{get:function(){var m=Math.abs(this.stride[0]),x=Math.abs(this.stride[1]),T=Math.abs(this.stride[2]);return m>x?x>T?[2,1,0]:m>T?[1,2,0]:[1,0,2]:m>T?[2,0,1]:T>x?[0,1,2]:[0,2,1]}}),v.set=function(m,x,T,d){return c==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*x+this.stride[2]*T,d):this.data[this.offset+this.stride[0]*m+this.stride[1]*x+this.stride[2]*T]=d},v.get=function(m,x,T){return c==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*x+this.stride[2]*T):this.data[this.offset+this.stride[0]*m+this.stride[1]*x+this.stride[2]*T]},v.index=function(m,x,T){return this.offset+this.stride[0]*m+this.stride[1]*x+this.stride[2]*T},v.hi=function(m,x,T){return new f(this.data,typeof m!="number"||m<0?this.shape[0]:0|m,typeof x!="number"||x<0?this.shape[1]:0|x,typeof T!="number"||T<0?this.shape[2]:0|T,this.stride[0],this.stride[1],this.stride[2],this.offset)},v.lo=function(m,x,T){var d=this.offset,M=0,A=this.shape[0],C=this.shape[1],P=this.shape[2],O=this.stride[0],z=this.stride[1],B=this.stride[2];return typeof m=="number"&&m>=0&&(d+=O*(M=0|m),A-=M),typeof x=="number"&&x>=0&&(d+=z*(M=0|x),C-=M),typeof T=="number"&&T>=0&&(d+=B*(M=0|T),P-=M),new f(this.data,A,C,P,O,z,B,d)},v.step=function(m,x,T){var d=this.shape[0],M=this.shape[1],A=this.shape[2],C=this.stride[0],P=this.stride[1],O=this.stride[2],z=this.offset,B=0,Y=Math.ceil;return typeof m=="number"&&((B=0|m)<0?(z+=C*(d-1),d=Y(-d/B)):d=Y(d/B),C*=B),typeof x=="number"&&((B=0|x)<0?(z+=P*(M-1),M=Y(-M/B)):M=Y(M/B),P*=B),typeof T=="number"&&((B=0|T)<0?(z+=O*(A-1),A=Y(-A/B)):A=Y(A/B),O*=B),new f(this.data,d,M,A,C,P,O,z)},v.transpose=function(m,x,T){m=m===void 0?0:0|m,x=x===void 0?1:0|x,T=T===void 0?2:0|T;var d=this.shape,M=this.stride;return new f(this.data,d[m],d[x],d[T],M[m],M[x],M[T],this.offset)},v.pick=function(m,x,T){var d=[],M=[],A=this.offset;return typeof m=="number"&&m>=0?A=A+this.stride[0]*m|0:(d.push(this.shape[0]),M.push(this.stride[0])),typeof x=="number"&&x>=0?A=A+this.stride[1]*x|0:(d.push(this.shape[1]),M.push(this.stride[1])),typeof T=="number"&&T>=0?A=A+this.stride[2]*T|0:(d.push(this.shape[2]),M.push(this.stride[2])),(0,b[d.length+1])(this.data,d,M,A)},function(m,x,T,d){return new f(m,x[0],x[1],x[2],T[0],T[1],T[2],d)}},4:function(c,b,g){function f(m,x,T,d,M,A,C,P,O,z){this.data=m,this.shape=[x,T,d,M],this.stride=[A,C,P,O],this.offset=0|z}var v=f.prototype;return v.dtype=c,v.dimension=4,Object.defineProperty(v,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(v,"order",{get:g}),v.set=function(m,x,T,d,M){return c==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*x+this.stride[2]*T+this.stride[3]*d,M):this.data[this.offset+this.stride[0]*m+this.stride[1]*x+this.stride[2]*T+this.stride[3]*d]=M},v.get=function(m,x,T,d){return c==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*x+this.stride[2]*T+this.stride[3]*d):this.data[this.offset+this.stride[0]*m+this.stride[1]*x+this.stride[2]*T+this.stride[3]*d]},v.index=function(m,x,T,d){return this.offset+this.stride[0]*m+this.stride[1]*x+this.stride[2]*T+this.stride[3]*d},v.hi=function(m,x,T,d){return new f(this.data,typeof m!="number"||m<0?this.shape[0]:0|m,typeof x!="number"||x<0?this.shape[1]:0|x,typeof T!="number"||T<0?this.shape[2]:0|T,typeof d!="number"||d<0?this.shape[3]:0|d,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},v.lo=function(m,x,T,d){var M=this.offset,A=0,C=this.shape[0],P=this.shape[1],O=this.shape[2],z=this.shape[3],B=this.stride[0],Y=this.stride[1],D=this.stride[2],G=this.stride[3];return typeof m=="number"&&m>=0&&(M+=B*(A=0|m),C-=A),typeof x=="number"&&x>=0&&(M+=Y*(A=0|x),P-=A),typeof T=="number"&&T>=0&&(M+=D*(A=0|T),O-=A),typeof d=="number"&&d>=0&&(M+=G*(A=0|d),z-=A),new f(this.data,C,P,O,z,B,Y,D,G,M)},v.step=function(m,x,T,d){var M=this.shape[0],A=this.shape[1],C=this.shape[2],P=this.shape[3],O=this.stride[0],z=this.stride[1],B=this.stride[2],Y=this.stride[3],D=this.offset,G=0,V=Math.ceil;return typeof m=="number"&&((G=0|m)<0?(D+=O*(M-1),M=V(-M/G)):M=V(M/G),O*=G),typeof x=="number"&&((G=0|x)<0?(D+=z*(A-1),A=V(-A/G)):A=V(A/G),z*=G),typeof T=="number"&&((G=0|T)<0?(D+=B*(C-1),C=V(-C/G)):C=V(C/G),B*=G),typeof d=="number"&&((G=0|d)<0?(D+=Y*(P-1),P=V(-P/G)):P=V(P/G),Y*=G),new f(this.data,M,A,C,P,O,z,B,Y,D)},v.transpose=function(m,x,T,d){m=m===void 0?0:0|m,x=x===void 0?1:0|x,T=T===void 0?2:0|T,d=d===void 0?3:0|d;var M=this.shape,A=this.stride;return new f(this.data,M[m],M[x],M[T],M[d],A[m],A[x],A[T],A[d],this.offset)},v.pick=function(m,x,T,d){var M=[],A=[],C=this.offset;return typeof m=="number"&&m>=0?C=C+this.stride[0]*m|0:(M.push(this.shape[0]),A.push(this.stride[0])),typeof x=="number"&&x>=0?C=C+this.stride[1]*x|0:(M.push(this.shape[1]),A.push(this.stride[1])),typeof T=="number"&&T>=0?C=C+this.stride[2]*T|0:(M.push(this.shape[2]),A.push(this.stride[2])),typeof d=="number"&&d>=0?C=C+this.stride[3]*d|0:(M.push(this.shape[3]),A.push(this.stride[3])),(0,b[M.length+1])(this.data,M,A,C)},function(m,x,T,d){return new f(m,x[0],x[1],x[2],x[3],T[0],T[1],T[2],T[3],d)}},5:function(c,b,g){function f(m,x,T,d,M,A,C,P,O,z,B,Y){this.data=m,this.shape=[x,T,d,M,A],this.stride=[C,P,O,z,B],this.offset=0|Y}var v=f.prototype;return v.dtype=c,v.dimension=5,Object.defineProperty(v,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(v,"order",{get:g}),v.set=function(m,x,T,d,M,A){return c==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*x+this.stride[2]*T+this.stride[3]*d+this.stride[4]*M,A):this.data[this.offset+this.stride[0]*m+this.stride[1]*x+this.stride[2]*T+this.stride[3]*d+this.stride[4]*M]=A},v.get=function(m,x,T,d,M){return c==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*x+this.stride[2]*T+this.stride[3]*d+this.stride[4]*M):this.data[this.offset+this.stride[0]*m+this.stride[1]*x+this.stride[2]*T+this.stride[3]*d+this.stride[4]*M]},v.index=function(m,x,T,d,M){return this.offset+this.stride[0]*m+this.stride[1]*x+this.stride[2]*T+this.stride[3]*d+this.stride[4]*M},v.hi=function(m,x,T,d,M){return new f(this.data,typeof m!="number"||m<0?this.shape[0]:0|m,typeof x!="number"||x<0?this.shape[1]:0|x,typeof T!="number"||T<0?this.shape[2]:0|T,typeof d!="number"||d<0?this.shape[3]:0|d,typeof M!="number"||M<0?this.shape[4]:0|M,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},v.lo=function(m,x,T,d,M){var A=this.offset,C=0,P=this.shape[0],O=this.shape[1],z=this.shape[2],B=this.shape[3],Y=this.shape[4],D=this.stride[0],G=this.stride[1],V=this.stride[2],j=this.stride[3],W=this.stride[4];return typeof m=="number"&&m>=0&&(A+=D*(C=0|m),P-=C),typeof x=="number"&&x>=0&&(A+=G*(C=0|x),O-=C),typeof T=="number"&&T>=0&&(A+=V*(C=0|T),z-=C),typeof d=="number"&&d>=0&&(A+=j*(C=0|d),B-=C),typeof M=="number"&&M>=0&&(A+=W*(C=0|M),Y-=C),new f(this.data,P,O,z,B,Y,D,G,V,j,W,A)},v.step=function(m,x,T,d,M){var A=this.shape[0],C=this.shape[1],P=this.shape[2],O=this.shape[3],z=this.shape[4],B=this.stride[0],Y=this.stride[1],D=this.stride[2],G=this.stride[3],V=this.stride[4],j=this.offset,W=0,Z=Math.ceil;return typeof m=="number"&&((W=0|m)<0?(j+=B*(A-1),A=Z(-A/W)):A=Z(A/W),B*=W),typeof x=="number"&&((W=0|x)<0?(j+=Y*(C-1),C=Z(-C/W)):C=Z(C/W),Y*=W),typeof T=="number"&&((W=0|T)<0?(j+=D*(P-1),P=Z(-P/W)):P=Z(P/W),D*=W),typeof d=="number"&&((W=0|d)<0?(j+=G*(O-1),O=Z(-O/W)):O=Z(O/W),G*=W),typeof M=="number"&&((W=0|M)<0?(j+=V*(z-1),z=Z(-z/W)):z=Z(z/W),V*=W),new f(this.data,A,C,P,O,z,B,Y,D,G,V,j)},v.transpose=function(m,x,T,d,M){m=m===void 0?0:0|m,x=x===void 0?1:0|x,T=T===void 0?2:0|T,d=d===void 0?3:0|d,M=M===void 0?4:0|M;var A=this.shape,C=this.stride;return new f(this.data,A[m],A[x],A[T],A[d],A[M],C[m],C[x],C[T],C[d],C[M],this.offset)},v.pick=function(m,x,T,d,M){var A=[],C=[],P=this.offset;return typeof m=="number"&&m>=0?P=P+this.stride[0]*m|0:(A.push(this.shape[0]),C.push(this.stride[0])),typeof x=="number"&&x>=0?P=P+this.stride[1]*x|0:(A.push(this.shape[1]),C.push(this.stride[1])),typeof T=="number"&&T>=0?P=P+this.stride[2]*T|0:(A.push(this.shape[2]),C.push(this.stride[2])),typeof d=="number"&&d>=0?P=P+this.stride[3]*d|0:(A.push(this.shape[3]),C.push(this.stride[3])),typeof M=="number"&&M>=0?P=P+this.stride[4]*M|0:(A.push(this.shape[4]),C.push(this.stride[4])),(0,b[A.length+1])(this.data,A,C,P)},function(m,x,T,d){return new f(m,x[0],x[1],x[2],x[3],x[4],T[0],T[1],T[2],T[3],T[4],d)}}};function u(c,b){var g=b===-1?"T":String(b),f=s[g];return b===-1?f(c):b===0?f(c,p[c][0]):f(c,p[c],a)}var p={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};h.exports=function(c,b,g,f){if(c===void 0)return(0,p.array[0])([]);typeof c=="number"&&(c=[c]),b===void 0&&(b=[c.length]);var v=b.length;if(g===void 0){g=new Array(v);for(var m=v-1,x=1;m>=0;--m)g[m]=x,x*=b[m]}if(f===void 0)for(f=0,m=0;m<v;++m)g[m]<0&&(f-=(b[m]-1)*g[m]);for(var T=function(M){if(o(M))return"buffer";if(r)switch(Object.prototype.toString.call(M)){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(M)?"array":"generic"}(c),d=p[T];d.length<=v+1;)d.push(u(T,d.length-1));return(0,d[v+1])(c,b,g,f)}},8551:function(h,l,t){var o=t(8362),r=Math.pow(2,-1074),n=-1>>>0;h.exports=function(a,s){if(isNaN(a)||isNaN(s))return NaN;if(a===s)return a;if(a===0)return s<0?-r:r;var u=o.hi(a),p=o.lo(a);return s>a==a>0?p===n?(u+=1,p=0):p+=1:p===0?(p=n,u-=1):p-=1,o.pack(p,u)}},115:function(h,l){l.vertexNormals=function(t,o,r){for(var n=o.length,a=new Array(n),s=r===void 0?1e-6:r,u=0;u<n;++u)a[u]=[0,0,0];for(u=0;u<t.length;++u)for(var p=t[u],c=0,b=p[p.length-1],g=p[0],f=0;f<p.length;++f){c=b,b=g,g=p[(f+1)%p.length];for(var v=o[c],m=o[b],x=o[g],T=new Array(3),d=0,M=new Array(3),A=0,C=0;C<3;++C)T[C]=v[C]-m[C],d+=T[C]*T[C],M[C]=x[C]-m[C],A+=M[C]*M[C];if(d*A>s){var P=a[b],O=1/Math.sqrt(d*A);for(C=0;C<3;++C){var z=(C+1)%3,B=(C+2)%3;P[C]+=O*(M[z]*T[B]-M[B]*T[z])}}}for(u=0;u<n;++u){P=a[u];var Y=0;for(C=0;C<3;++C)Y+=P[C]*P[C];if(Y>s)for(O=1/Math.sqrt(Y),C=0;C<3;++C)P[C]*=O;else for(C=0;C<3;++C)P[C]=0}return a},l.faceNormals=function(t,o,r){for(var n=t.length,a=new Array(n),s=r===void 0?1e-6:r,u=0;u<n;++u){for(var p=t[u],c=new Array(3),b=0;b<3;++b)c[b]=o[p[b]];var g=new Array(3),f=new Array(3);for(b=0;b<3;++b)g[b]=c[1][b]-c[0][b],f[b]=c[2][b]-c[0][b];var v=new Array(3),m=0;for(b=0;b<3;++b){var x=(b+1)%3,T=(b+2)%3;v[b]=g[x]*f[T]-g[T]*f[x],m+=v[b]*v[b]}for(m=m>s?1/Math.sqrt(m):0,b=0;b<3;++b)v[b]*=m;a[u]=v}return a}},567:function(h){h.exports=function(l,t,o,r,n,a,s,u,p,c){var b=t+a+c;if(g>0){var g=Math.sqrt(b+1);l[0]=.5*(s-p)/g,l[1]=.5*(u-r)/g,l[2]=.5*(o-a)/g,l[3]=.5*g}else{var f=Math.max(t,a,c);g=Math.sqrt(2*f-b+1),t>=f?(l[0]=.5*g,l[1]=.5*(n+o)/g,l[2]=.5*(u+r)/g,l[3]=.5*(s-p)/g):a>=f?(l[0]=.5*(o+n)/g,l[1]=.5*g,l[2]=.5*(p+s)/g,l[3]=.5*(u-r)/g):(l[0]=.5*(r+u)/g,l[1]=.5*(s+p)/g,l[2]=.5*g,l[3]=.5*(o-n)/g)}return l}},7774:function(h,l,t){h.exports=function(f){var v=(f=f||{}).center||[0,0,0],m=f.rotation||[0,0,0,1],x=f.radius||1;v=[].slice.call(v,0,3),c(m=[].slice.call(m,0,4),m);var T=new b(m,v,Math.log(x));return T.setDistanceLimits(f.zoomMin,f.zoomMax),("eye"in f||"up"in f)&&T.lookAt(0,f.eye,f.center,f.up),T};var o=t(8444),r=t(3012),n=t(5950),a=t(7437),s=t(567);function u(f,v,m){return Math.sqrt(Math.pow(f,2)+Math.pow(v,2)+Math.pow(m,2))}function p(f,v,m,x){return Math.sqrt(Math.pow(f,2)+Math.pow(v,2)+Math.pow(m,2)+Math.pow(x,2))}function c(f,v){var m=v[0],x=v[1],T=v[2],d=v[3],M=p(m,x,T,d);M>1e-6?(f[0]=m/M,f[1]=x/M,f[2]=T/M,f[3]=d/M):(f[0]=f[1]=f[2]=0,f[3]=1)}function b(f,v,m){this.radius=o([m]),this.center=o(v),this.rotation=o(f),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 g=b.prototype;g.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},g.recalcMatrix=function(f){this.radius.curve(f),this.center.curve(f),this.rotation.curve(f);var v=this.computedRotation;c(v,v);var m=this.computedMatrix;n(m,v);var x=this.computedCenter,T=this.computedEye,d=this.computedUp,M=Math.exp(this.computedRadius[0]);T[0]=x[0]+M*m[2],T[1]=x[1]+M*m[6],T[2]=x[2]+M*m[10],d[0]=m[1],d[1]=m[5],d[2]=m[9];for(var A=0;A<3;++A){for(var C=0,P=0;P<3;++P)C+=m[A+4*P]*T[P];m[12+A]=-C}},g.getMatrix=function(f,v){this.recalcMatrix(f);var m=this.computedMatrix;if(v){for(var x=0;x<16;++x)v[x]=m[x];return v}return m},g.idle=function(f){this.center.idle(f),this.radius.idle(f),this.rotation.idle(f)},g.flush=function(f){this.center.flush(f),this.radius.flush(f),this.rotation.flush(f)},g.pan=function(f,v,m,x){v=v||0,m=m||0,x=x||0,this.recalcMatrix(f);var T=this.computedMatrix,d=T[1],M=T[5],A=T[9],C=u(d,M,A);d/=C,M/=C,A/=C;var P=T[0],O=T[4],z=T[8],B=P*d+O*M+z*A,Y=u(P-=d*B,O-=M*B,z-=A*B);P/=Y,O/=Y,z/=Y,T[2],T[6],T[10];var D=P*v+d*m,G=O*v+M*m,V=z*v+A*m;this.center.move(f,D,G,V);var j=Math.exp(this.computedRadius[0]);j=Math.max(1e-4,j+x),this.radius.set(f,Math.log(j))},g.rotate=function(f,v,m,x){this.recalcMatrix(f),v=v||0,m=m||0;var T=this.computedMatrix,d=T[0],M=T[4],A=T[8],C=T[1],P=T[5],O=T[9],z=T[2],B=T[6],Y=T[10],D=v*d+m*C,G=v*M+m*P,V=v*A+m*O,j=-(B*V-Y*G),W=-(Y*D-z*V),Z=-(z*G-B*D),ie=Math.sqrt(Math.max(0,1-Math.pow(j,2)-Math.pow(W,2)-Math.pow(Z,2))),te=p(j,W,Z,ie);te>1e-6?(j/=te,W/=te,Z/=te,ie/=te):(j=W=Z=0,ie=1);var J=this.computedRotation,X=J[0],ee=J[1],re=J[2],oe=J[3],ue=X*ie+oe*j+ee*Z-re*W,ce=ee*ie+oe*W+re*j-X*Z,de=re*ie+oe*Z+X*W-ee*j,me=oe*ie-X*j-ee*W-re*Z;if(x){j=z,W=B,Z=Y;var _e=Math.sin(x)/u(j,W,Z);j*=_e,W*=_e,Z*=_e,me=me*(ie=Math.cos(v))-(ue=ue*ie+me*j+ce*Z-de*W)*j-(ce=ce*ie+me*W+de*j-ue*Z)*W-(de=de*ie+me*Z+ue*W-ce*j)*Z}var Se=p(ue,ce,de,me);Se>1e-6?(ue/=Se,ce/=Se,de/=Se,me/=Se):(ue=ce=de=0,me=1),this.rotation.set(f,ue,ce,de,me)},g.lookAt=function(f,v,m,x){this.recalcMatrix(f),m=m||this.computedCenter,v=v||this.computedEye,x=x||this.computedUp;var T=this.computedMatrix;r(T,v,m,x);var d=this.computedRotation;s(d,T[0],T[1],T[2],T[4],T[5],T[6],T[8],T[9],T[10]),c(d,d),this.rotation.set(f,d[0],d[1],d[2],d[3]);for(var M=0,A=0;A<3;++A)M+=Math.pow(m[A]-v[A],2);this.radius.set(f,.5*Math.log(Math.max(M,1e-6))),this.center.set(f,m[0],m[1],m[2])},g.translate=function(f,v,m,x){this.center.move(f,v||0,m||0,x||0)},g.setMatrix=function(f,v){var m=this.computedRotation;s(m,v[0],v[1],v[2],v[4],v[5],v[6],v[8],v[9],v[10]),c(m,m),this.rotation.set(f,m[0],m[1],m[2],m[3]);var x=this.computedMatrix;a(x,v);var T=x[15];if(Math.abs(T)>1e-6){var d=x[12]/T,M=x[13]/T,A=x[14]/T;this.recalcMatrix(f);var C=Math.exp(this.computedRadius[0]);this.center.set(f,d-x[2]*C,M-x[6]*C,A-x[10]*C),this.radius.idle(f)}else this.center.idle(f),this.radius.idle(f)},g.setDistance=function(f,v){v>0&&this.radius.set(f,Math.log(v))},g.setDistanceLimits=function(f,v){f=f>0?Math.log(f):-1/0,v=v>0?Math.log(v):1/0,v=Math.max(v,f),this.radius.bounds[0][0]=f,this.radius.bounds[1][0]=v},g.getDistanceLimits=function(f){var v=this.radius.bounds;return f?(f[0]=Math.exp(v[0][0]),f[1]=Math.exp(v[1][0]),f):[Math.exp(v[0][0]),Math.exp(v[1][0])]},g.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]}},g.fromJSON=function(f){var v=this.lastT(),m=f.center;m&&this.center.set(v,m[0],m[1],m[2]);var x=f.rotation;x&&this.rotation.set(v,x[0],x[1],x[2],x[3]);var T=f.distance;T&&T>0&&this.radius.set(v,Math.log(T)),this.setDistanceLimits(f.zoomMin,f.zoomMax)}},4930:function(h,l,t){var o=t(6184);h.exports=function(r,n,a){return o(a=a!==void 0?a+"":" ",n)+r}},4405:function(h){h.exports=function(l,t){t||(t=[0,""]),l=String(l);var o=parseFloat(l,10);return t[0]=o,t[1]=l.match(/[\d.\-\+]*\s*(.*)/)[1]||"",t}},4166:function(h,l,t){h.exports=function(r,n){for(var a=0|n.length,s=r.length,u=[new Array(a),new Array(a)],p=0;p<a;++p)u[0][p]=[],u[1][p]=[];for(p=0;p<s;++p){var c=r[p];u[0][c[0]].push(c),u[1][c[1]].push(c)}var b=[];for(p=0;p<a;++p)u[0][p].length+u[1][p].length===0&&b.push([p]);function g(M,A){var C=u[A][M[A]];C.splice(C.indexOf(M),1)}function f(M,A,C){for(var P,O,z,B=0;B<2;++B)if(u[B][A].length>0){P=u[B][A][0],z=B;break}O=P[1^z];for(var Y=0;Y<2;++Y)for(var D=u[Y][A],G=0;G<D.length;++G){var V=D[G],j=V[1^Y];o(n[M],n[A],n[O],n[j])>0&&(P=V,O=j,z=Y)}return C||P&&g(P,z),O}function v(M,A){var C=u[A][M][0],P=[M];g(C,A);for(var O=C[1^A];;){for(;O!==M;)P.push(O),O=f(P[P.length-2],O,!1);if(u[0][M].length+u[1][M].length===0)break;var z=P[P.length-1],B=M,Y=P[1],D=f(z,B,!0);if(o(n[z],n[B],n[Y],n[D])<0)break;P.push(M),O=f(z,B)}return P}function m(M,A){return A[1]===A[A.length-1]}for(p=0;p<a;++p)for(var x=0;x<2;++x){for(var T=[];u[x][p].length>0;){u[0][p].length;var d=v(p,x);m(0,d)?T.push.apply(T,d):(T.length>0&&b.push(T),T=d)}T.length>0&&b.push(T)}return b};var o=t(9398)},3959:function(h,l,t){h.exports=function(r,n){for(var a=o(r,n.length),s=new Array(n.length),u=new Array(n.length),p=[],c=0;c<n.length;++c){var b=a[c].length;u[c]=b,s[c]=!0,b<=1&&p.push(c)}for(;p.length>0;){s[x=p.pop()]=!1;var g=a[x];for(c=0;c<g.length;++c){var f=g[c];--u[f]==0&&p.push(f)}}var v=new Array(n.length),m=[];for(c=0;c<n.length;++c)if(s[c]){var x=m.length;v[c]=x,m.push(n[c])}else v[c]=-1;var T=[];for(c=0;c<r.length;++c){var d=r[c];s[d[0]]&&s[d[1]]&&T.push([v[d[0]],v[d[1]]])}return[T,m]};var o=t(8348)},8040:function(h,l,t){h.exports=function(b,g){var f=p(b,g);b=f[0];for(var v=(g=f[1]).length,m=(b.length,o(b,g.length)),x=0;x<v;++x)if(m[x].length%2==1)throw new Error("planar-graph-to-polyline: graph must be manifold");var T=r(b,g),d=(T=T.filter(function(De){for(var Ee=De.length,Me=[0],he=0;he<Ee;++he){var fe=g[De[he]],ae=g[De[(he+1)%Ee]],be=a(-fe[0],fe[1]),Ie=a(-fe[0],ae[1]),Te=a(ae[0],fe[1]),Ne=a(ae[0],ae[1]);Me=s(Me,s(s(be,Ie),s(Te,Ne)))}return Me[Me.length-1]>0})).length,M=new Array(d),A=new Array(d);for(x=0;x<d;++x){M[x]=x;var C=new Array(d),P=T[x].map(function(De){return g[De]}),O=n([P]),z=0;e:for(var B=0;B<d;++B)if(C[B]=0,x!==B){for(var Y=(we=T[B]).length,D=0;D<Y;++D){var G=O(g[we[D]]);if(G!==0){G<0&&(C[B]=1,z+=1);continue e}}C[B]=1,z+=1}A[x]=[z,x,C]}for(A.sort(function(De,Ee){return Ee[0]-De[0]}),x=0;x<d;++x){var V=(C=A[x])[1],j=C[2];for(B=0;B<d;++B)j[B]&&(M[B]=V)}var W=function(De){for(var Ee=new Array(De),Me=0;Me<De;++Me)Ee[Me]=[];return Ee}(d);for(x=0;x<d;++x)W[x].push(M[x]),W[M[x]].push(x);var Z={},ie=c(v,!1);for(x=0;x<d;++x)for(Y=(we=T[x]).length,B=0;B<Y;++B){var te=we[B],J=we[(B+1)%Y],X=Math.min(te,J)+":"+Math.max(te,J);if(X in Z){var ee=Z[X];W[ee].push(x),W[x].push(ee),ie[te]=ie[J]=!0}else Z[X]=x}function re(De){for(var Ee=De.length,Me=0;Me<Ee;++Me)if(!ie[De[Me]])return!1;return!0}var oe=[],ue=c(d,-1);for(x=0;x<d;++x)M[x]!==x||re(T[x])?ue[x]=-1:(oe.push(x),ue[x]=0);for(f=[];oe.length>0;){var ce=oe.pop(),de=W[ce];u(de,function(De,Ee){return De-Ee});var me,_e=de.length,Se=ue[ce];for(Se===0&&(me=[we=T[ce]]),x=0;x<_e;++x){var we,xe=de[x];ue[xe]>=0||(ue[xe]=1^Se,oe.push(xe),Se===0&&(re(we=T[xe])||(we.reverse(),me.push(we))))}Se===0&&f.push(me)}return f};var o=t(8348),r=t(4166),n=t(211),a=t(9660),s=t(9662),u=t(1215),p=t(3959);function c(b,g){for(var f=new Array(b),v=0;v<b;++v)f[v]=g;return f}},211:function(h,l,t){h.exports=function(c){for(var b=c.length,g=[],f=[],v=0;v<b;++v)for(var m=c[v],x=m.length,T=x-1,d=0;d<x;T=d++){var M=m[T],A=m[d];M[0]===A[0]?f.push([M,A]):g.push([M,A])}if(g.length===0)return f.length===0?p:(C=u(f),function(z){return C(z[0],z[1])?0:1});var C,P=r(g),O=function(z,B){return function(Y){var D=a.le(B,Y[0]);if(D<0)return 1;var G=z[D];if(!G){if(!(D>0&&B[D]===Y[0]))return 1;G=z[D-1]}for(var V=1;G;){var j=G.key,W=o(Y,j[0],j[1]);if(j[0][0]<j[1][0])if(W<0)G=G.left;else{if(!(W>0))return 0;V=-1,G=G.right}else if(W>0)G=G.left;else{if(!(W<0))return 0;V=1,G=G.right}}return V}}(P.slabs,P.coordinates);return f.length===0?O:function(z,B){return function(Y){return z(Y[0],Y[1])?0:B(Y)}}(u(f),O)};var o=t(417)[3],r=t(4385),n=t(9014),a=t(5070);function s(){return!0}function u(c){for(var b={},g=0;g<c.length;++g){var f=c[g],v=f[0][0],m=f[0][1],x=f[1][1],T=[Math.min(m,x),Math.max(m,x)];v in b?b[v].push(T):b[v]=[T]}var d={},M=Object.keys(b);for(g=0;g<M.length;++g){var A=b[M[g]];d[M[g]]=n(A)}return function(C){return function(P,O){var z=C[P];return!!z&&!!z.queryPoint(O,s)}}(d)}function p(c){return 1}},7309:function(h){var l=new Float64Array(4),t=new Float64Array(4),o=new Float64Array(4);h.exports=function(r,n,a,s,u){l.length<s.length&&(l=new Float64Array(s.length),t=new Float64Array(s.length),o=new Float64Array(s.length));for(var p=0;p<s.length;++p)l[p]=r[p]-s[p],t[p]=n[p]-r[p],o[p]=a[p]-r[p];var c=0,b=0,g=0,f=0,v=0,m=0;for(p=0;p<s.length;++p){var x=t[p],T=o[p],d=l[p];c+=x*x,b+=x*T,g+=T*T,f+=d*x,v+=d*T,m+=d*d}var M,A,C,P,O,z=Math.abs(c*g-b*b),B=b*v-g*f,Y=b*f-c*v;if(B+Y<=z)if(B<0)Y<0&&f<0?(Y=0,-f>=c?(B=1,M=c+2*f+m):M=f*(B=-f/c)+m):(B=0,v>=0?(Y=0,M=m):-v>=g?(Y=1,M=g+2*v+m):M=v*(Y=-v/g)+m);else if(Y<0)Y=0,f>=0?(B=0,M=m):-f>=c?(B=1,M=c+2*f+m):M=f*(B=-f/c)+m;else{var D=1/z;M=(B*=D)*(c*B+b*(Y*=D)+2*f)+Y*(b*B+g*Y+2*v)+m}else B<0?(C=g+v)>(A=b+f)?(P=C-A)>=(O=c-2*b+g)?(B=1,Y=0,M=c+2*f+m):M=(B=P/O)*(c*B+b*(Y=1-B)+2*f)+Y*(b*B+g*Y+2*v)+m:(B=0,C<=0?(Y=1,M=g+2*v+m):v>=0?(Y=0,M=m):M=v*(Y=-v/g)+m):Y<0?(C=c+f)>(A=b+v)?(P=C-A)>=(O=c-2*b+g)?(Y=1,B=0,M=g+2*v+m):M=(B=1-(Y=P/O))*(c*B+b*Y+2*f)+Y*(b*B+g*Y+2*v)+m:(Y=0,C<=0?(B=1,M=c+2*f+m):f>=0?(B=0,M=m):M=f*(B=-f/c)+m):(P=g+v-b-f)<=0?(B=0,Y=1,M=g+2*v+m):P>=(O=c-2*b+g)?(B=1,Y=0,M=c+2*f+m):M=(B=P/O)*(c*B+b*(Y=1-B)+2*f)+Y*(b*B+g*Y+2*v)+m;var G=1-B-Y;for(p=0;p<s.length;++p)u[p]=G*r[p]+B*n[p]+Y*a[p];return M<0?0:M}},1116:function(h,l,t){h.exports=t(6093)},7584:function(h,l,t){var o=t(1539);h.exports=function(r,n){for(var a=r.length,s=new Array(a),u=0;u<a;++u)s[u]=o(r[u],n[u]);return s}},2826:function(h,l,t){h.exports=function(r){for(var n=new Array(r.length),a=0;a<r.length;++a)n[a]=o(r[a]);return n};var o=t(5125)},4469:function(h,l,t){var o=t(5125),r=t(3962);h.exports=function(n,a){for(var s=o(a),u=n.length,p=new Array(u),c=0;c<u;++c)p[c]=r(n[c],s);return p}},6695:function(h,l,t){var o=t(4354);h.exports=function(r,n){for(var a=r.length,s=new Array(a),u=0;u<a;++u)s[u]=o(r[u],n[u]);return s}},7037:function(h,l,t){var o=t(9209),r=t(1284),n=t(9887);h.exports=function(a){a.sort(r);for(var s=a.length,u=0,p=0;p<s;++p){var c=a[p],b=n(c);if(b!==0){if(u>0){var g=a[u-1];if(o(c,g)===0&&n(g)!==b){u-=1;continue}}a[u++]=c}}return a.length=u,a}},6184:function(h){var l,t="";h.exports=function(o,r){if(typeof o!="string")throw new TypeError("expected a string");if(r===1)return o;if(r===2)return o+o;var n=o.length*r;if(l!==o||l===void 0)l=o,t="";else if(t.length>=n)return t.substr(0,n);for(;n>t.length&&r>1;)1&r&&(t+=o),r>>=1,o+=o;return t=(t+=o).substr(0,n)}},8161:function(h,l,t){h.exports=t.g.performance&&t.g.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}},402:function(h){h.exports=function(l){for(var t=l.length,o=l[l.length-1],r=t,n=t-2;n>=0;--n){var a=o;(p=(u=l[n])-((o=a+u)-a))&&(l[--r]=o,o=p)}var s=0;for(n=r;n<t;++n){var u,p;(p=(u=o)-((o=(a=l[n])+u)-a))&&(l[s++]=p)}return l[s++]=o,l.length=s,l}},8167:function(h,l,t){var o=t(9660),r=t(9662),n=t(8289),a=t(402);function s(v,m,x,T){return function(d){return T(v(x(d[0][0],d[1][1]),x(-d[0][1],d[1][0])))}}function u(v,m,x,T){return function(d){return T(v(m(v(x(d[1][1],d[2][2]),x(-d[1][2],d[2][1])),d[0][0]),v(m(v(x(d[1][0],d[2][2]),x(-d[1][2],d[2][0])),-d[0][1]),m(v(x(d[1][0],d[2][1]),x(-d[1][1],d[2][0])),d[0][2]))))}}function p(v,m,x,T){return function(d){return T(v(v(m(v(m(v(x(d[2][2],d[3][3]),x(-d[2][3],d[3][2])),d[1][1]),v(m(v(x(d[2][1],d[3][3]),x(-d[2][3],d[3][1])),-d[1][2]),m(v(x(d[2][1],d[3][2]),x(-d[2][2],d[3][1])),d[1][3]))),d[0][0]),m(v(m(v(x(d[2][2],d[3][3]),x(-d[2][3],d[3][2])),d[1][0]),v(m(v(x(d[2][0],d[3][3]),x(-d[2][3],d[3][0])),-d[1][2]),m(v(x(d[2][0],d[3][2]),x(-d[2][2],d[3][0])),d[1][3]))),-d[0][1])),v(m(v(m(v(x(d[2][1],d[3][3]),x(-d[2][3],d[3][1])),d[1][0]),v(m(v(x(d[2][0],d[3][3]),x(-d[2][3],d[3][0])),-d[1][1]),m(v(x(d[2][0],d[3][1]),x(-d[2][1],d[3][0])),d[1][3]))),d[0][2]),m(v(m(v(x(d[2][1],d[3][2]),x(-d[2][2],d[3][1])),d[1][0]),v(m(v(x(d[2][0],d[3][2]),x(-d[2][2],d[3][0])),-d[1][1]),m(v(x(d[2][0],d[3][1]),x(-d[2][1],d[3][0])),d[1][2]))),-d[0][3]))))}}function c(v,m,x,T){return function(d){return T(v(v(m(v(v(m(v(m(v(x(d[3][3],d[4][4]),x(-d[3][4],d[4][3])),d[2][2]),v(m(v(x(d[3][2],d[4][4]),x(-d[3][4],d[4][2])),-d[2][3]),m(v(x(d[3][2],d[4][3]),x(-d[3][3],d[4][2])),d[2][4]))),d[1][1]),m(v(m(v(x(d[3][3],d[4][4]),x(-d[3][4],d[4][3])),d[2][1]),v(m(v(x(d[3][1],d[4][4]),x(-d[3][4],d[4][1])),-d[2][3]),m(v(x(d[3][1],d[4][3]),x(-d[3][3],d[4][1])),d[2][4]))),-d[1][2])),v(m(v(m(v(x(d[3][2],d[4][4]),x(-d[3][4],d[4][2])),d[2][1]),v(m(v(x(d[3][1],d[4][4]),x(-d[3][4],d[4][1])),-d[2][2]),m(v(x(d[3][1],d[4][2]),x(-d[3][2],d[4][1])),d[2][4]))),d[1][3]),m(v(m(v(x(d[3][2],d[4][3]),x(-d[3][3],d[4][2])),d[2][1]),v(m(v(x(d[3][1],d[4][3]),x(-d[3][3],d[4][1])),-d[2][2]),m(v(x(d[3][1],d[4][2]),x(-d[3][2],d[4][1])),d[2][3]))),-d[1][4]))),d[0][0]),m(v(v(m(v(m(v(x(d[3][3],d[4][4]),x(-d[3][4],d[4][3])),d[2][2]),v(m(v(x(d[3][2],d[4][4]),x(-d[3][4],d[4][2])),-d[2][3]),m(v(x(d[3][2],d[4][3]),x(-d[3][3],d[4][2])),d[2][4]))),d[1][0]),m(v(m(v(x(d[3][3],d[4][4]),x(-d[3][4],d[4][3])),d[2][0]),v(m(v(x(d[3][0],d[4][4]),x(-d[3][4],d[4][0])),-d[2][3]),m(v(x(d[3][0],d[4][3]),x(-d[3][3],d[4][0])),d[2][4]))),-d[1][2])),v(m(v(m(v(x(d[3][2],d[4][4]),x(-d[3][4],d[4][2])),d[2][0]),v(m(v(x(d[3][0],d[4][4]),x(-d[3][4],d[4][0])),-d[2][2]),m(v(x(d[3][0],d[4][2]),x(-d[3][2],d[4][0])),d[2][4]))),d[1][3]),m(v(m(v(x(d[3][2],d[4][3]),x(-d[3][3],d[4][2])),d[2][0]),v(m(v(x(d[3][0],d[4][3]),x(-d[3][3],d[4][0])),-d[2][2]),m(v(x(d[3][0],d[4][2]),x(-d[3][2],d[4][0])),d[2][3]))),-d[1][4]))),-d[0][1])),v(m(v(v(m(v(m(v(x(d[3][3],d[4][4]),x(-d[3][4],d[4][3])),d[2][1]),v(m(v(x(d[3][1],d[4][4]),x(-d[3][4],d[4][1])),-d[2][3]),m(v(x(d[3][1],d[4][3]),x(-d[3][3],d[4][1])),d[2][4]))),d[1][0]),m(v(m(v(x(d[3][3],d[4][4]),x(-d[3][4],d[4][3])),d[2][0]),v(m(v(x(d[3][0],d[4][4]),x(-d[3][4],d[4][0])),-d[2][3]),m(v(x(d[3][0],d[4][3]),x(-d[3][3],d[4][0])),d[2][4]))),-d[1][1])),v(m(v(m(v(x(d[3][1],d[4][4]),x(-d[3][4],d[4][1])),d[2][0]),v(m(v(x(d[3][0],d[4][4]),x(-d[3][4],d[4][0])),-d[2][1]),m(v(x(d[3][0],d[4][1]),x(-d[3][1],d[4][0])),d[2][4]))),d[1][3]),m(v(m(v(x(d[3][1],d[4][3]),x(-d[3][3],d[4][1])),d[2][0]),v(m(v(x(d[3][0],d[4][3]),x(-d[3][3],d[4][0])),-d[2][1]),m(v(x(d[3][0],d[4][1]),x(-d[3][1],d[4][0])),d[2][3]))),-d[1][4]))),d[0][2]),v(m(v(v(m(v(m(v(x(d[3][2],d[4][4]),x(-d[3][4],d[4][2])),d[2][1]),v(m(v(x(d[3][1],d[4][4]),x(-d[3][4],d[4][1])),-d[2][2]),m(v(x(d[3][1],d[4][2]),x(-d[3][2],d[4][1])),d[2][4]))),d[1][0]),m(v(m(v(x(d[3][2],d[4][4]),x(-d[3][4],d[4][2])),d[2][0]),v(m(v(x(d[3][0],d[4][4]),x(-d[3][4],d[4][0])),-d[2][2]),m(v(x(d[3][0],d[4][2]),x(-d[3][2],d[4][0])),d[2][4]))),-d[1][1])),v(m(v(m(v(x(d[3][1],d[4][4]),x(-d[3][4],d[4][1])),d[2][0]),v(m(v(x(d[3][0],d[4][4]),x(-d[3][4],d[4][0])),-d[2][1]),m(v(x(d[3][0],d[4][1]),x(-d[3][1],d[4][0])),d[2][4]))),d[1][2]),m(v(m(v(x(d[3][1],d[4][2]),x(-d[3][2],d[4][1])),d[2][0]),v(m(v(x(d[3][0],d[4][2]),x(-d[3][2],d[4][0])),-d[2][1]),m(v(x(d[3][0],d[4][1]),x(-d[3][1],d[4][0])),d[2][2]))),-d[1][4]))),-d[0][3]),m(v(v(m(v(m(v(x(d[3][2],d[4][3]),x(-d[3][3],d[4][2])),d[2][1]),v(m(v(x(d[3][1],d[4][3]),x(-d[3][3],d[4][1])),-d[2][2]),m(v(x(d[3][1],d[4][2]),x(-d[3][2],d[4][1])),d[2][3]))),d[1][0]),m(v(m(v(x(d[3][2],d[4][3]),x(-d[3][3],d[4][2])),d[2][0]),v(m(v(x(d[3][0],d[4][3]),x(-d[3][3],d[4][0])),-d[2][2]),m(v(x(d[3][0],d[4][2]),x(-d[3][2],d[4][0])),d[2][3]))),-d[1][1])),v(m(v(m(v(x(d[3][1],d[4][3]),x(-d[3][3],d[4][1])),d[2][0]),v(m(v(x(d[3][0],d[4][3]),x(-d[3][3],d[4][0])),-d[2][1]),m(v(x(d[3][0],d[4][1]),x(-d[3][1],d[4][0])),d[2][3]))),d[1][2]),m(v(m(v(x(d[3][1],d[4][2]),x(-d[3][2],d[4][1])),d[2][0]),v(m(v(x(d[3][0],d[4][2]),x(-d[3][2],d[4][0])),-d[2][1]),m(v(x(d[3][0],d[4][1]),x(-d[3][1],d[4][0])),d[2][2]))),-d[1][3]))),d[0][4])))))}}function b(v){return(v===2?s:v===3?u:v===4?p:v===5?c:void 0)(r,n,o,a)}var g=[function(){return[0]},function(v){return[v[0][0]]}];function f(v,m,x,T,d,M,A,C){return function(P){switch(P.length){case 0:return v(P);case 1:return m(P);case 2:return x(P);case 3:return T(P);case 4:return d(P);case 5:return M(P)}var O=A[P.length];return O||(O=A[P.length]=C(P.length)),O(P)}}(function(){for(;g.length<6;)g.push(b(g.length));h.exports=f.apply(void 0,g.concat([g,b]));for(var v=0;v<g.length;++v)h.exports[v]=g[v]})()},9130:function(h,l,t){var o=t(9660),r=t(9662);h.exports=function(n,a){for(var s=o(n[0],a[0]),u=1;u<n.length;++u)s=r(s,o(n[u],a[u]));return s}},2227:function(h,l,t){var o=t(9660),r=t(9662),n=t(4078),a=t(8289);function s(m){return(m===3?u:m===4?p:m===5?c:b)(r,n,o,a)}function u(m,x,T,d){return function(M,A,C){var P=T(M[0],M[0]),O=d(P,A[0]),z=d(P,C[0]),B=T(A[0],A[0]),Y=d(B,M[0]),D=d(B,C[0]),G=T(C[0],C[0]),V=d(G,M[0]),j=d(G,A[0]),W=m(x(j,D),x(Y,O)),Z=x(V,z),ie=x(W,Z);return ie[ie.length-1]}}function p(m,x,T,d){return function(M,A,C,P){var O=m(T(M[0],M[0]),T(M[1],M[1])),z=d(O,A[0]),B=d(O,C[0]),Y=d(O,P[0]),D=m(T(A[0],A[0]),T(A[1],A[1])),G=d(D,M[0]),V=d(D,C[0]),j=d(D,P[0]),W=m(T(C[0],C[0]),T(C[1],C[1])),Z=d(W,M[0]),ie=d(W,A[0]),te=d(W,P[0]),J=m(T(P[0],P[0]),T(P[1],P[1])),X=d(J,M[0]),ee=d(J,A[0]),re=d(J,C[0]),oe=m(m(d(x(re,te),A[1]),m(d(x(ee,j),-C[1]),d(x(ie,V),P[1]))),m(d(x(ee,j),M[1]),m(d(x(X,Y),-A[1]),d(x(G,z),P[1])))),ue=m(m(d(x(re,te),M[1]),m(d(x(X,Y),-C[1]),d(x(Z,B),P[1]))),m(d(x(ie,V),M[1]),m(d(x(Z,B),-A[1]),d(x(G,z),C[1])))),ce=x(oe,ue);return ce[ce.length-1]}}function c(m,x,T,d){return function(M,A,C,P,O){var z=m(T(M[0],M[0]),m(T(M[1],M[1]),T(M[2],M[2]))),B=d(z,A[0]),Y=d(z,C[0]),D=d(z,P[0]),G=d(z,O[0]),V=m(T(A[0],A[0]),m(T(A[1],A[1]),T(A[2],A[2]))),j=d(V,M[0]),W=d(V,C[0]),Z=d(V,P[0]),ie=d(V,O[0]),te=m(T(C[0],C[0]),m(T(C[1],C[1]),T(C[2],C[2]))),J=d(te,M[0]),X=d(te,A[0]),ee=d(te,P[0]),re=d(te,O[0]),oe=m(T(P[0],P[0]),m(T(P[1],P[1]),T(P[2],P[2]))),ue=d(oe,M[0]),ce=d(oe,A[0]),de=d(oe,C[0]),me=d(oe,O[0]),_e=m(T(O[0],O[0]),m(T(O[1],O[1]),T(O[2],O[2]))),Se=d(_e,M[0]),we=d(_e,A[0]),xe=d(_e,C[0]),De=d(_e,P[0]),Ee=m(m(m(d(m(d(x(De,me),C[1]),m(d(x(xe,re),-P[1]),d(x(de,ee),O[1]))),A[2]),m(d(m(d(x(De,me),A[1]),m(d(x(we,ie),-P[1]),d(x(ce,Z),O[1]))),-C[2]),d(m(d(x(xe,re),A[1]),m(d(x(we,ie),-C[1]),d(x(X,W),O[1]))),P[2]))),m(d(m(d(x(de,ee),A[1]),m(d(x(ce,Z),-C[1]),d(x(X,W),P[1]))),-O[2]),m(d(m(d(x(De,me),A[1]),m(d(x(we,ie),-P[1]),d(x(ce,Z),O[1]))),M[2]),d(m(d(x(De,me),M[1]),m(d(x(Se,G),-P[1]),d(x(ue,D),O[1]))),-A[2])))),m(m(d(m(d(x(we,ie),M[1]),m(d(x(Se,G),-A[1]),d(x(j,B),O[1]))),P[2]),m(d(m(d(x(ce,Z),M[1]),m(d(x(ue,D),-A[1]),d(x(j,B),P[1]))),-O[2]),d(m(d(x(de,ee),A[1]),m(d(x(ce,Z),-C[1]),d(x(X,W),P[1]))),M[2]))),m(d(m(d(x(de,ee),M[1]),m(d(x(ue,D),-C[1]),d(x(J,Y),P[1]))),-A[2]),m(d(m(d(x(ce,Z),M[1]),m(d(x(ue,D),-A[1]),d(x(j,B),P[1]))),C[2]),d(m(d(x(X,W),M[1]),m(d(x(J,Y),-A[1]),d(x(j,B),C[1]))),-P[2]))))),Me=m(m(m(d(m(d(x(De,me),C[1]),m(d(x(xe,re),-P[1]),d(x(de,ee),O[1]))),M[2]),d(m(d(x(De,me),M[1]),m(d(x(Se,G),-P[1]),d(x(ue,D),O[1]))),-C[2])),m(d(m(d(x(xe,re),M[1]),m(d(x(Se,G),-C[1]),d(x(J,Y),O[1]))),P[2]),d(m(d(x(de,ee),M[1]),m(d(x(ue,D),-C[1]),d(x(J,Y),P[1]))),-O[2]))),m(m(d(m(d(x(xe,re),A[1]),m(d(x(we,ie),-C[1]),d(x(X,W),O[1]))),M[2]),d(m(d(x(xe,re),M[1]),m(d(x(Se,G),-C[1]),d(x(J,Y),O[1]))),-A[2])),m(d(m(d(x(we,ie),M[1]),m(d(x(Se,G),-A[1]),d(x(j,B),O[1]))),C[2]),d(m(d(x(X,W),M[1]),m(d(x(J,Y),-A[1]),d(x(j,B),C[1]))),-O[2])))),he=x(Ee,Me);return he[he.length-1]}}function b(m,x,T,d){return function(M,A,C,P,O,z){var B=m(m(T(M[0],M[0]),T(M[1],M[1])),m(T(M[2],M[2]),T(M[3],M[3]))),Y=d(B,A[0]),D=d(B,C[0]),G=d(B,P[0]),V=d(B,O[0]),j=d(B,z[0]),W=m(m(T(A[0],A[0]),T(A[1],A[1])),m(T(A[2],A[2]),T(A[3],A[3]))),Z=d(W,M[0]),ie=d(W,C[0]),te=d(W,P[0]),J=d(W,O[0]),X=d(W,z[0]),ee=m(m(T(C[0],C[0]),T(C[1],C[1])),m(T(C[2],C[2]),T(C[3],C[3]))),re=d(ee,M[0]),oe=d(ee,A[0]),ue=d(ee,P[0]),ce=d(ee,O[0]),de=d(ee,z[0]),me=m(m(T(P[0],P[0]),T(P[1],P[1])),m(T(P[2],P[2]),T(P[3],P[3]))),_e=d(me,M[0]),Se=d(me,A[0]),we=d(me,C[0]),xe=d(me,O[0]),De=d(me,z[0]),Ee=m(m(T(O[0],O[0]),T(O[1],O[1])),m(T(O[2],O[2]),T(O[3],O[3]))),Me=d(Ee,M[0]),he=d(Ee,A[0]),fe=d(Ee,C[0]),ae=d(Ee,P[0]),be=d(Ee,z[0]),Ie=m(m(T(z[0],z[0]),T(z[1],z[1])),m(T(z[2],z[2]),T(z[3],z[3]))),Te=d(Ie,M[0]),Ne=d(Ie,A[0]),qe=d(Ie,C[0]),ve=d(Ie,P[0]),Ce=d(Ie,O[0]),Ae=m(m(m(d(m(m(d(m(d(x(Ce,be),P[1]),m(d(x(ve,De),-O[1]),d(x(ae,xe),z[1]))),C[2]),d(m(d(x(Ce,be),C[1]),m(d(x(qe,de),-O[1]),d(x(fe,ce),z[1]))),-P[2])),m(d(m(d(x(ve,De),C[1]),m(d(x(qe,de),-P[1]),d(x(we,ue),z[1]))),O[2]),d(m(d(x(ae,xe),C[1]),m(d(x(fe,ce),-P[1]),d(x(we,ue),O[1]))),-z[2]))),A[3]),m(d(m(m(d(m(d(x(Ce,be),P[1]),m(d(x(ve,De),-O[1]),d(x(ae,xe),z[1]))),A[2]),d(m(d(x(Ce,be),A[1]),m(d(x(Ne,X),-O[1]),d(x(he,J),z[1]))),-P[2])),m(d(m(d(x(ve,De),A[1]),m(d(x(Ne,X),-P[1]),d(x(Se,te),z[1]))),O[2]),d(m(d(x(ae,xe),A[1]),m(d(x(he,J),-P[1]),d(x(Se,te),O[1]))),-z[2]))),-C[3]),d(m(m(d(m(d(x(Ce,be),C[1]),m(d(x(qe,de),-O[1]),d(x(fe,ce),z[1]))),A[2]),d(m(d(x(Ce,be),A[1]),m(d(x(Ne,X),-O[1]),d(x(he,J),z[1]))),-C[2])),m(d(m(d(x(qe,de),A[1]),m(d(x(Ne,X),-C[1]),d(x(oe,ie),z[1]))),O[2]),d(m(d(x(fe,ce),A[1]),m(d(x(he,J),-C[1]),d(x(oe,ie),O[1]))),-z[2]))),P[3]))),m(m(d(m(m(d(m(d(x(ve,De),C[1]),m(d(x(qe,de),-P[1]),d(x(we,ue),z[1]))),A[2]),d(m(d(x(ve,De),A[1]),m(d(x(Ne,X),-P[1]),d(x(Se,te),z[1]))),-C[2])),m(d(m(d(x(qe,de),A[1]),m(d(x(Ne,X),-C[1]),d(x(oe,ie),z[1]))),P[2]),d(m(d(x(we,ue),A[1]),m(d(x(Se,te),-C[1]),d(x(oe,ie),P[1]))),-z[2]))),-O[3]),d(m(m(d(m(d(x(ae,xe),C[1]),m(d(x(fe,ce),-P[1]),d(x(we,ue),O[1]))),A[2]),d(m(d(x(ae,xe),A[1]),m(d(x(he,J),-P[1]),d(x(Se,te),O[1]))),-C[2])),m(d(m(d(x(fe,ce),A[1]),m(d(x(he,J),-C[1]),d(x(oe,ie),O[1]))),P[2]),d(m(d(x(we,ue),A[1]),m(d(x(Se,te),-C[1]),d(x(oe,ie),P[1]))),-O[2]))),z[3])),m(d(m(m(d(m(d(x(Ce,be),P[1]),m(d(x(ve,De),-O[1]),d(x(ae,xe),z[1]))),A[2]),d(m(d(x(Ce,be),A[1]),m(d(x(Ne,X),-O[1]),d(x(he,J),z[1]))),-P[2])),m(d(m(d(x(ve,De),A[1]),m(d(x(Ne,X),-P[1]),d(x(Se,te),z[1]))),O[2]),d(m(d(x(ae,xe),A[1]),m(d(x(he,J),-P[1]),d(x(Se,te),O[1]))),-z[2]))),M[3]),d(m(m(d(m(d(x(Ce,be),P[1]),m(d(x(ve,De),-O[1]),d(x(ae,xe),z[1]))),M[2]),d(m(d(x(Ce,be),M[1]),m(d(x(Te,j),-O[1]),d(x(Me,V),z[1]))),-P[2])),m(d(m(d(x(ve,De),M[1]),m(d(x(Te,j),-P[1]),d(x(_e,G),z[1]))),O[2]),d(m(d(x(ae,xe),M[1]),m(d(x(Me,V),-P[1]),d(x(_e,G),O[1]))),-z[2]))),-A[3])))),m(m(m(d(m(m(d(m(d(x(Ce,be),A[1]),m(d(x(Ne,X),-O[1]),d(x(he,J),z[1]))),M[2]),d(m(d(x(Ce,be),M[1]),m(d(x(Te,j),-O[1]),d(x(Me,V),z[1]))),-A[2])),m(d(m(d(x(Ne,X),M[1]),m(d(x(Te,j),-A[1]),d(x(Z,Y),z[1]))),O[2]),d(m(d(x(he,J),M[1]),m(d(x(Me,V),-A[1]),d(x(Z,Y),O[1]))),-z[2]))),P[3]),d(m(m(d(m(d(x(ve,De),A[1]),m(d(x(Ne,X),-P[1]),d(x(Se,te),z[1]))),M[2]),d(m(d(x(ve,De),M[1]),m(d(x(Te,j),-P[1]),d(x(_e,G),z[1]))),-A[2])),m(d(m(d(x(Ne,X),M[1]),m(d(x(Te,j),-A[1]),d(x(Z,Y),z[1]))),P[2]),d(m(d(x(Se,te),M[1]),m(d(x(_e,G),-A[1]),d(x(Z,Y),P[1]))),-z[2]))),-O[3])),m(d(m(m(d(m(d(x(ae,xe),A[1]),m(d(x(he,J),-P[1]),d(x(Se,te),O[1]))),M[2]),d(m(d(x(ae,xe),M[1]),m(d(x(Me,V),-P[1]),d(x(_e,G),O[1]))),-A[2])),m(d(m(d(x(he,J),M[1]),m(d(x(Me,V),-A[1]),d(x(Z,Y),O[1]))),P[2]),d(m(d(x(Se,te),M[1]),m(d(x(_e,G),-A[1]),d(x(Z,Y),P[1]))),-O[2]))),z[3]),d(m(m(d(m(d(x(ve,De),C[1]),m(d(x(qe,de),-P[1]),d(x(we,ue),z[1]))),A[2]),d(m(d(x(ve,De),A[1]),m(d(x(Ne,X),-P[1]),d(x(Se,te),z[1]))),-C[2])),m(d(m(d(x(qe,de),A[1]),m(d(x(Ne,X),-C[1]),d(x(oe,ie),z[1]))),P[2]),d(m(d(x(we,ue),A[1]),m(d(x(Se,te),-C[1]),d(x(oe,ie),P[1]))),-z[2]))),M[3]))),m(m(d(m(m(d(m(d(x(ve,De),C[1]),m(d(x(qe,de),-P[1]),d(x(we,ue),z[1]))),M[2]),d(m(d(x(ve,De),M[1]),m(d(x(Te,j),-P[1]),d(x(_e,G),z[1]))),-C[2])),m(d(m(d(x(qe,de),M[1]),m(d(x(Te,j),-C[1]),d(x(re,D),z[1]))),P[2]),d(m(d(x(we,ue),M[1]),m(d(x(_e,G),-C[1]),d(x(re,D),P[1]))),-z[2]))),-A[3]),d(m(m(d(m(d(x(ve,De),A[1]),m(d(x(Ne,X),-P[1]),d(x(Se,te),z[1]))),M[2]),d(m(d(x(ve,De),M[1]),m(d(x(Te,j),-P[1]),d(x(_e,G),z[1]))),-A[2])),m(d(m(d(x(Ne,X),M[1]),m(d(x(Te,j),-A[1]),d(x(Z,Y),z[1]))),P[2]),d(m(d(x(Se,te),M[1]),m(d(x(_e,G),-A[1]),d(x(Z,Y),P[1]))),-z[2]))),C[3])),m(d(m(m(d(m(d(x(qe,de),A[1]),m(d(x(Ne,X),-C[1]),d(x(oe,ie),z[1]))),M[2]),d(m(d(x(qe,de),M[1]),m(d(x(Te,j),-C[1]),d(x(re,D),z[1]))),-A[2])),m(d(m(d(x(Ne,X),M[1]),m(d(x(Te,j),-A[1]),d(x(Z,Y),z[1]))),C[2]),d(m(d(x(oe,ie),M[1]),m(d(x(re,D),-A[1]),d(x(Z,Y),C[1]))),-z[2]))),-P[3]),d(m(m(d(m(d(x(we,ue),A[1]),m(d(x(Se,te),-C[1]),d(x(oe,ie),P[1]))),M[2]),d(m(d(x(we,ue),M[1]),m(d(x(_e,G),-C[1]),d(x(re,D),P[1]))),-A[2])),m(d(m(d(x(Se,te),M[1]),m(d(x(_e,G),-A[1]),d(x(Z,Y),P[1]))),C[2]),d(m(d(x(oe,ie),M[1]),m(d(x(re,D),-A[1]),d(x(Z,Y),C[1]))),-P[2]))),z[3]))))),ze=m(m(m(d(m(m(d(m(d(x(Ce,be),P[1]),m(d(x(ve,De),-O[1]),d(x(ae,xe),z[1]))),C[2]),d(m(d(x(Ce,be),C[1]),m(d(x(qe,de),-O[1]),d(x(fe,ce),z[1]))),-P[2])),m(d(m(d(x(ve,De),C[1]),m(d(x(qe,de),-P[1]),d(x(we,ue),z[1]))),O[2]),d(m(d(x(ae,xe),C[1]),m(d(x(fe,ce),-P[1]),d(x(we,ue),O[1]))),-z[2]))),M[3]),m(d(m(m(d(m(d(x(Ce,be),P[1]),m(d(x(ve,De),-O[1]),d(x(ae,xe),z[1]))),M[2]),d(m(d(x(Ce,be),M[1]),m(d(x(Te,j),-O[1]),d(x(Me,V),z[1]))),-P[2])),m(d(m(d(x(ve,De),M[1]),m(d(x(Te,j),-P[1]),d(x(_e,G),z[1]))),O[2]),d(m(d(x(ae,xe),M[1]),m(d(x(Me,V),-P[1]),d(x(_e,G),O[1]))),-z[2]))),-C[3]),d(m(m(d(m(d(x(Ce,be),C[1]),m(d(x(qe,de),-O[1]),d(x(fe,ce),z[1]))),M[2]),d(m(d(x(Ce,be),M[1]),m(d(x(Te,j),-O[1]),d(x(Me,V),z[1]))),-C[2])),m(d(m(d(x(qe,de),M[1]),m(d(x(Te,j),-C[1]),d(x(re,D),z[1]))),O[2]),d(m(d(x(fe,ce),M[1]),m(d(x(Me,V),-C[1]),d(x(re,D),O[1]))),-z[2]))),P[3]))),m(m(d(m(m(d(m(d(x(ve,De),C[1]),m(d(x(qe,de),-P[1]),d(x(we,ue),z[1]))),M[2]),d(m(d(x(ve,De),M[1]),m(d(x(Te,j),-P[1]),d(x(_e,G),z[1]))),-C[2])),m(d(m(d(x(qe,de),M[1]),m(d(x(Te,j),-C[1]),d(x(re,D),z[1]))),P[2]),d(m(d(x(we,ue),M[1]),m(d(x(_e,G),-C[1]),d(x(re,D),P[1]))),-z[2]))),-O[3]),d(m(m(d(m(d(x(ae,xe),C[1]),m(d(x(fe,ce),-P[1]),d(x(we,ue),O[1]))),M[2]),d(m(d(x(ae,xe),M[1]),m(d(x(Me,V),-P[1]),d(x(_e,G),O[1]))),-C[2])),m(d(m(d(x(fe,ce),M[1]),m(d(x(Me,V),-C[1]),d(x(re,D),O[1]))),P[2]),d(m(d(x(we,ue),M[1]),m(d(x(_e,G),-C[1]),d(x(re,D),P[1]))),-O[2]))),z[3])),m(d(m(m(d(m(d(x(Ce,be),C[1]),m(d(x(qe,de),-O[1]),d(x(fe,ce),z[1]))),A[2]),d(m(d(x(Ce,be),A[1]),m(d(x(Ne,X),-O[1]),d(x(he,J),z[1]))),-C[2])),m(d(m(d(x(qe,de),A[1]),m(d(x(Ne,X),-C[1]),d(x(oe,ie),z[1]))),O[2]),d(m(d(x(fe,ce),A[1]),m(d(x(he,J),-C[1]),d(x(oe,ie),O[1]))),-z[2]))),M[3]),d(m(m(d(m(d(x(Ce,be),C[1]),m(d(x(qe,de),-O[1]),d(x(fe,ce),z[1]))),M[2]),d(m(d(x(Ce,be),M[1]),m(d(x(Te,j),-O[1]),d(x(Me,V),z[1]))),-C[2])),m(d(m(d(x(qe,de),M[1]),m(d(x(Te,j),-C[1]),d(x(re,D),z[1]))),O[2]),d(m(d(x(fe,ce),M[1]),m(d(x(Me,V),-C[1]),d(x(re,D),O[1]))),-z[2]))),-A[3])))),m(m(m(d(m(m(d(m(d(x(Ce,be),A[1]),m(d(x(Ne,X),-O[1]),d(x(he,J),z[1]))),M[2]),d(m(d(x(Ce,be),M[1]),m(d(x(Te,j),-O[1]),d(x(Me,V),z[1]))),-A[2])),m(d(m(d(x(Ne,X),M[1]),m(d(x(Te,j),-A[1]),d(x(Z,Y),z[1]))),O[2]),d(m(d(x(he,J),M[1]),m(d(x(Me,V),-A[1]),d(x(Z,Y),O[1]))),-z[2]))),C[3]),d(m(m(d(m(d(x(qe,de),A[1]),m(d(x(Ne,X),-C[1]),d(x(oe,ie),z[1]))),M[2]),d(m(d(x(qe,de),M[1]),m(d(x(Te,j),-C[1]),d(x(re,D),z[1]))),-A[2])),m(d(m(d(x(Ne,X),M[1]),m(d(x(Te,j),-A[1]),d(x(Z,Y),z[1]))),C[2]),d(m(d(x(oe,ie),M[1]),m(d(x(re,D),-A[1]),d(x(Z,Y),C[1]))),-z[2]))),-O[3])),m(d(m(m(d(m(d(x(fe,ce),A[1]),m(d(x(he,J),-C[1]),d(x(oe,ie),O[1]))),M[2]),d(m(d(x(fe,ce),M[1]),m(d(x(Me,V),-C[1]),d(x(re,D),O[1]))),-A[2])),m(d(m(d(x(he,J),M[1]),m(d(x(Me,V),-A[1]),d(x(Z,Y),O[1]))),C[2]),d(m(d(x(oe,ie),M[1]),m(d(x(re,D),-A[1]),d(x(Z,Y),C[1]))),-O[2]))),z[3]),d(m(m(d(m(d(x(ae,xe),C[1]),m(d(x(fe,ce),-P[1]),d(x(we,ue),O[1]))),A[2]),d(m(d(x(ae,xe),A[1]),m(d(x(he,J),-P[1]),d(x(Se,te),O[1]))),-C[2])),m(d(m(d(x(fe,ce),A[1]),m(d(x(he,J),-C[1]),d(x(oe,ie),O[1]))),P[2]),d(m(d(x(we,ue),A[1]),m(d(x(Se,te),-C[1]),d(x(oe,ie),P[1]))),-O[2]))),M[3]))),m(m(d(m(m(d(m(d(x(ae,xe),C[1]),m(d(x(fe,ce),-P[1]),d(x(we,ue),O[1]))),M[2]),d(m(d(x(ae,xe),M[1]),m(d(x(Me,V),-P[1]),d(x(_e,G),O[1]))),-C[2])),m(d(m(d(x(fe,ce),M[1]),m(d(x(Me,V),-C[1]),d(x(re,D),O[1]))),P[2]),d(m(d(x(we,ue),M[1]),m(d(x(_e,G),-C[1]),d(x(re,D),P[1]))),-O[2]))),-A[3]),d(m(m(d(m(d(x(ae,xe),A[1]),m(d(x(he,J),-P[1]),d(x(Se,te),O[1]))),M[2]),d(m(d(x(ae,xe),M[1]),m(d(x(Me,V),-P[1]),d(x(_e,G),O[1]))),-A[2])),m(d(m(d(x(he,J),M[1]),m(d(x(Me,V),-A[1]),d(x(Z,Y),O[1]))),P[2]),d(m(d(x(Se,te),M[1]),m(d(x(_e,G),-A[1]),d(x(Z,Y),P[1]))),-O[2]))),C[3])),m(d(m(m(d(m(d(x(fe,ce),A[1]),m(d(x(he,J),-C[1]),d(x(oe,ie),O[1]))),M[2]),d(m(d(x(fe,ce),M[1]),m(d(x(Me,V),-C[1]),d(x(re,D),O[1]))),-A[2])),m(d(m(d(x(he,J),M[1]),m(d(x(Me,V),-A[1]),d(x(Z,Y),O[1]))),C[2]),d(m(d(x(oe,ie),M[1]),m(d(x(re,D),-A[1]),d(x(Z,Y),C[1]))),-O[2]))),-P[3]),d(m(m(d(m(d(x(we,ue),A[1]),m(d(x(Se,te),-C[1]),d(x(oe,ie),P[1]))),M[2]),d(m(d(x(we,ue),M[1]),m(d(x(_e,G),-C[1]),d(x(re,D),P[1]))),-A[2])),m(d(m(d(x(Se,te),M[1]),m(d(x(_e,G),-A[1]),d(x(Z,Y),P[1]))),C[2]),d(m(d(x(oe,ie),M[1]),m(d(x(re,D),-A[1]),d(x(Z,Y),C[1]))),-P[2]))),O[3]))))),Ue=x(Ae,ze);return Ue[Ue.length-1]}}var g=[function(){return 0},function(){return 0},function(){return 0}];function f(m){var x=g[m.length];return x||(x=g[m.length]=s(m.length)),x.apply(void 0,m)}function v(m,x,T,d,M,A,C,P){return function(O,z,B,Y,D,G){switch(arguments.length){case 0:case 1:return 0;case 2:return d(O,z);case 3:return M(O,z,B);case 4:return A(O,z,B,Y);case 5:return C(O,z,B,Y,D);case 6:return P(O,z,B,Y,D,G)}for(var V=new Array(arguments.length),j=0;j<arguments.length;++j)V[j]=arguments[j];return m(V)}}(function(){for(;g.length<=6;)g.push(s(g.length));h.exports=v.apply(void 0,[f].concat(g));for(var m=0;m<=6;++m)h.exports[m]=g[m]})()},6606:function(h,l,t){var o=t(8167);function r(g){return(g===2?n:g===3?a:g===4?s:g===5?u:p)(g<6?o[g]:o)}function n(g){return function(f,v){return[g([[+v[0],+f[0][1]],[+v[1],+f[1][1]]]),g([[+f[0][0],+v[0]],[+f[1][0],+v[1]]]),g(f)]}}function a(g){return function(f,v){return[g([[+v[0],+f[0][1],+f[0][2]],[+v[1],+f[1][1],+f[1][2]],[+v[2],+f[2][1],+f[2][2]]]),g([[+f[0][0],+v[0],+f[0][2]],[+f[1][0],+v[1],+f[1][2]],[+f[2][0],+v[2],+f[2][2]]]),g([[+f[0][0],+f[0][1],+v[0]],[+f[1][0],+f[1][1],+v[1]],[+f[2][0],+f[2][1],+v[2]]]),g(f)]}}function s(g){return function(f,v){return[g([[+v[0],+f[0][1],+f[0][2],+f[0][3]],[+v[1],+f[1][1],+f[1][2],+f[1][3]],[+v[2],+f[2][1],+f[2][2],+f[2][3]],[+v[3],+f[3][1],+f[3][2],+f[3][3]]]),g([[+f[0][0],+v[0],+f[0][2],+f[0][3]],[+f[1][0],+v[1],+f[1][2],+f[1][3]],[+f[2][0],+v[2],+f[2][2],+f[2][3]],[+f[3][0],+v[3],+f[3][2],+f[3][3]]]),g([[+f[0][0],+f[0][1],+v[0],+f[0][3]],[+f[1][0],+f[1][1],+v[1],+f[1][3]],[+f[2][0],+f[2][1],+v[2],+f[2][3]],[+f[3][0],+f[3][1],+v[3],+f[3][3]]]),g([[+f[0][0],+f[0][1],+f[0][2],+v[0]],[+f[1][0],+f[1][1],+f[1][2],+v[1]],[+f[2][0],+f[2][1],+f[2][2],+v[2]],[+f[3][0],+f[3][1],+f[3][2],+v[3]]]),g(f)]}}function u(g){return function(f,v){return[g([[+v[0],+f[0][1],+f[0][2],+f[0][3],+f[0][4]],[+v[1],+f[1][1],+f[1][2],+f[1][3],+f[1][4]],[+v[2],+f[2][1],+f[2][2],+f[2][3],+f[2][4]],[+v[3],+f[3][1],+f[3][2],+f[3][3],+f[3][4]],[+v[4],+f[4][1],+f[4][2],+f[4][3],+f[4][4]]]),g([[+f[0][0],+v[0],+f[0][2],+f[0][3],+f[0][4]],[+f[1][0],+v[1],+f[1][2],+f[1][3],+f[1][4]],[+f[2][0],+v[2],+f[2][2],+f[2][3],+f[2][4]],[+f[3][0],+v[3],+f[3][2],+f[3][3],+f[3][4]],[+f[4][0],+v[4],+f[4][2],+f[4][3],+f[4][4]]]),g([[+f[0][0],+f[0][1],+v[0],+f[0][3],+f[0][4]],[+f[1][0],+f[1][1],+v[1],+f[1][3],+f[1][4]],[+f[2][0],+f[2][1],+v[2],+f[2][3],+f[2][4]],[+f[3][0],+f[3][1],+v[3],+f[3][3],+f[3][4]],[+f[4][0],+f[4][1],+v[4],+f[4][3],+f[4][4]]]),g([[+f[0][0],+f[0][1],+f[0][2],+v[0],+f[0][4]],[+f[1][0],+f[1][1],+f[1][2],+v[1],+f[1][4]],[+f[2][0],+f[2][1],+f[2][2],+v[2],+f[2][4]],[+f[3][0],+f[3][1],+f[3][2],+v[3],+f[3][4]],[+f[4][0],+f[4][1],+f[4][2],+v[4],+f[4][4]]]),g([[+f[0][0],+f[0][1],+f[0][2],+f[0][3],+v[0]],[+f[1][0],+f[1][1],+f[1][2],+f[1][3],+v[1]],[+f[2][0],+f[2][1],+f[2][2],+f[2][3],+v[2]],[+f[3][0],+f[3][1],+f[3][2],+f[3][3],+v[3]],[+f[4][0],+f[4][1],+f[4][2],+f[4][3],+v[4]]]),g(f)]}}function p(g){return function(f,v){return[g([[+v[0],+f[0][1],+f[0][2],+f[0][3],+f[0][4],+f[0][5]],[+v[1],+f[1][1],+f[1][2],+f[1][3],+f[1][4],+f[1][5]],[+v[2],+f[2][1],+f[2][2],+f[2][3],+f[2][4],+f[2][5]],[+v[3],+f[3][1],+f[3][2],+f[3][3],+f[3][4],+f[3][5]],[+v[4],+f[4][1],+f[4][2],+f[4][3],+f[4][4],+f[4][5]],[+v[5],+f[5][1],+f[5][2],+f[5][3],+f[5][4],+f[5][5]]]),g([[+f[0][0],+v[0],+f[0][2],+f[0][3],+f[0][4],+f[0][5]],[+f[1][0],+v[1],+f[1][2],+f[1][3],+f[1][4],+f[1][5]],[+f[2][0],+v[2],+f[2][2],+f[2][3],+f[2][4],+f[2][5]],[+f[3][0],+v[3],+f[3][2],+f[3][3],+f[3][4],+f[3][5]],[+f[4][0],+v[4],+f[4][2],+f[4][3],+f[4][4],+f[4][5]],[+f[5][0],+v[5],+f[5][2],+f[5][3],+f[5][4],+f[5][5]]]),g([[+f[0][0],+f[0][1],+v[0],+f[0][3],+f[0][4],+f[0][5]],[+f[1][0],+f[1][1],+v[1],+f[1][3],+f[1][4],+f[1][5]],[+f[2][0],+f[2][1],+v[2],+f[2][3],+f[2][4],+f[2][5]],[+f[3][0],+f[3][1],+v[3],+f[3][3],+f[3][4],+f[3][5]],[+f[4][0],+f[4][1],+v[4],+f[4][3],+f[4][4],+f[4][5]],[+f[5][0],+f[5][1],+v[5],+f[5][3],+f[5][4],+f[5][5]]]),g([[+f[0][0],+f[0][1],+f[0][2],+v[0],+f[0][4],+f[0][5]],[+f[1][0],+f[1][1],+f[1][2],+v[1],+f[1][4],+f[1][5]],[+f[2][0],+f[2][1],+f[2][2],+v[2],+f[2][4],+f[2][5]],[+f[3][0],+f[3][1],+f[3][2],+v[3],+f[3][4],+f[3][5]],[+f[4][0],+f[4][1],+f[4][2],+v[4],+f[4][4],+f[4][5]],[+f[5][0],+f[5][1],+f[5][2],+v[5],+f[5][4],+f[5][5]]]),g([[+f[0][0],+f[0][1],+f[0][2],+f[0][3],+v[0],+f[0][5]],[+f[1][0],+f[1][1],+f[1][2],+f[1][3],+v[1],+f[1][5]],[+f[2][0],+f[2][1],+f[2][2],+f[2][3],+v[2],+f[2][5]],[+f[3][0],+f[3][1],+f[3][2],+f[3][3],+v[3],+f[3][5]],[+f[4][0],+f[4][1],+f[4][2],+f[4][3],+v[4],+f[4][5]],[+f[5][0],+f[5][1],+f[5][2],+f[5][3],+v[5],+f[5][5]]]),g([[+f[0][0],+f[0][1],+f[0][2],+f[0][3],+f[0][4],+v[0]],[+f[1][0],+f[1][1],+f[1][2],+f[1][3],+f[1][4],+v[1]],[+f[2][0],+f[2][1],+f[2][2],+f[2][3],+f[2][4],+v[2]],[+f[3][0],+f[3][1],+f[3][2],+f[3][3],+f[3][4],+v[3]],[+f[4][0],+f[4][1],+f[4][2],+f[4][3],+f[4][4],+v[4]],[+f[5][0],+f[5][1],+f[5][2],+f[5][3],+f[5][4],+v[5]]]),g(f)]}}var c=[function(){return[[0]]},function(g,f){return[[f[0]],[g[0][0]]]}];function b(g,f,v,m,x,T,d,M){return function(A,C){switch(A.length){case 0:return g(A,C);case 1:return f(A,C);case 2:return v(A,C);case 3:return m(A,C);case 4:return x(A,C);case 5:return T(A,C)}var P=d[A.length];return P||(P=d[A.length]=M(A.length)),P(A,C)}}(function(){for(;c.length<6;)c.push(r(c.length));h.exports=b.apply(void 0,c.concat([c,r]));for(var g=0;g<6;++g)h.exports[g]=c[g]})()},417:function(h,l,t){var o=t(9660),r=t(9662),n=t(8289),a=t(4078);function s(x,T,d,M){return function(A,C,P){var O=x(x(T(C[1],P[0]),T(-P[1],C[0])),x(T(A[1],C[0]),T(-C[1],A[0]))),z=x(T(A[1],P[0]),T(-P[1],A[0])),B=M(O,z);return B[B.length-1]}}function u(x,T,d,M){return function(A,C,P,O){var z=x(x(d(x(T(P[1],O[0]),T(-O[1],P[0])),C[2]),x(d(x(T(C[1],O[0]),T(-O[1],C[0])),-P[2]),d(x(T(C[1],P[0]),T(-P[1],C[0])),O[2]))),x(d(x(T(C[1],O[0]),T(-O[1],C[0])),A[2]),x(d(x(T(A[1],O[0]),T(-O[1],A[0])),-C[2]),d(x(T(A[1],C[0]),T(-C[1],A[0])),O[2])))),B=x(x(d(x(T(P[1],O[0]),T(-O[1],P[0])),A[2]),x(d(x(T(A[1],O[0]),T(-O[1],A[0])),-P[2]),d(x(T(A[1],P[0]),T(-P[1],A[0])),O[2]))),x(d(x(T(C[1],P[0]),T(-P[1],C[0])),A[2]),x(d(x(T(A[1],P[0]),T(-P[1],A[0])),-C[2]),d(x(T(A[1],C[0]),T(-C[1],A[0])),P[2])))),Y=M(z,B);return Y[Y.length-1]}}function p(x,T,d,M){return function(A,C,P,O,z){var B=x(x(x(d(x(d(x(T(O[1],z[0]),T(-z[1],O[0])),P[2]),x(d(x(T(P[1],z[0]),T(-z[1],P[0])),-O[2]),d(x(T(P[1],O[0]),T(-O[1],P[0])),z[2]))),C[3]),x(d(x(d(x(T(O[1],z[0]),T(-z[1],O[0])),C[2]),x(d(x(T(C[1],z[0]),T(-z[1],C[0])),-O[2]),d(x(T(C[1],O[0]),T(-O[1],C[0])),z[2]))),-P[3]),d(x(d(x(T(P[1],z[0]),T(-z[1],P[0])),C[2]),x(d(x(T(C[1],z[0]),T(-z[1],C[0])),-P[2]),d(x(T(C[1],P[0]),T(-P[1],C[0])),z[2]))),O[3]))),x(d(x(d(x(T(P[1],O[0]),T(-O[1],P[0])),C[2]),x(d(x(T(C[1],O[0]),T(-O[1],C[0])),-P[2]),d(x(T(C[1],P[0]),T(-P[1],C[0])),O[2]))),-z[3]),x(d(x(d(x(T(O[1],z[0]),T(-z[1],O[0])),C[2]),x(d(x(T(C[1],z[0]),T(-z[1],C[0])),-O[2]),d(x(T(C[1],O[0]),T(-O[1],C[0])),z[2]))),A[3]),d(x(d(x(T(O[1],z[0]),T(-z[1],O[0])),A[2]),x(d(x(T(A[1],z[0]),T(-z[1],A[0])),-O[2]),d(x(T(A[1],O[0]),T(-O[1],A[0])),z[2]))),-C[3])))),x(x(d(x(d(x(T(C[1],z[0]),T(-z[1],C[0])),A[2]),x(d(x(T(A[1],z[0]),T(-z[1],A[0])),-C[2]),d(x(T(A[1],C[0]),T(-C[1],A[0])),z[2]))),O[3]),x(d(x(d(x(T(C[1],O[0]),T(-O[1],C[0])),A[2]),x(d(x(T(A[1],O[0]),T(-O[1],A[0])),-C[2]),d(x(T(A[1],C[0]),T(-C[1],A[0])),O[2]))),-z[3]),d(x(d(x(T(P[1],O[0]),T(-O[1],P[0])),C[2]),x(d(x(T(C[1],O[0]),T(-O[1],C[0])),-P[2]),d(x(T(C[1],P[0]),T(-P[1],C[0])),O[2]))),A[3]))),x(d(x(d(x(T(P[1],O[0]),T(-O[1],P[0])),A[2]),x(d(x(T(A[1],O[0]),T(-O[1],A[0])),-P[2]),d(x(T(A[1],P[0]),T(-P[1],A[0])),O[2]))),-C[3]),x(d(x(d(x(T(C[1],O[0]),T(-O[1],C[0])),A[2]),x(d(x(T(A[1],O[0]),T(-O[1],A[0])),-C[2]),d(x(T(A[1],C[0]),T(-C[1],A[0])),O[2]))),P[3]),d(x(d(x(T(C[1],P[0]),T(-P[1],C[0])),A[2]),x(d(x(T(A[1],P[0]),T(-P[1],A[0])),-C[2]),d(x(T(A[1],C[0]),T(-C[1],A[0])),P[2]))),-O[3]))))),Y=x(x(x(d(x(d(x(T(O[1],z[0]),T(-z[1],O[0])),P[2]),x(d(x(T(P[1],z[0]),T(-z[1],P[0])),-O[2]),d(x(T(P[1],O[0]),T(-O[1],P[0])),z[2]))),A[3]),d(x(d(x(T(O[1],z[0]),T(-z[1],O[0])),A[2]),x(d(x(T(A[1],z[0]),T(-z[1],A[0])),-O[2]),d(x(T(A[1],O[0]),T(-O[1],A[0])),z[2]))),-P[3])),x(d(x(d(x(T(P[1],z[0]),T(-z[1],P[0])),A[2]),x(d(x(T(A[1],z[0]),T(-z[1],A[0])),-P[2]),d(x(T(A[1],P[0]),T(-P[1],A[0])),z[2]))),O[3]),d(x(d(x(T(P[1],O[0]),T(-O[1],P[0])),A[2]),x(d(x(T(A[1],O[0]),T(-O[1],A[0])),-P[2]),d(x(T(A[1],P[0]),T(-P[1],A[0])),O[2]))),-z[3]))),x(x(d(x(d(x(T(P[1],z[0]),T(-z[1],P[0])),C[2]),x(d(x(T(C[1],z[0]),T(-z[1],C[0])),-P[2]),d(x(T(C[1],P[0]),T(-P[1],C[0])),z[2]))),A[3]),d(x(d(x(T(P[1],z[0]),T(-z[1],P[0])),A[2]),x(d(x(T(A[1],z[0]),T(-z[1],A[0])),-P[2]),d(x(T(A[1],P[0]),T(-P[1],A[0])),z[2]))),-C[3])),x(d(x(d(x(T(C[1],z[0]),T(-z[1],C[0])),A[2]),x(d(x(T(A[1],z[0]),T(-z[1],A[0])),-C[2]),d(x(T(A[1],C[0]),T(-C[1],A[0])),z[2]))),P[3]),d(x(d(x(T(C[1],P[0]),T(-P[1],C[0])),A[2]),x(d(x(T(A[1],P[0]),T(-P[1],A[0])),-C[2]),d(x(T(A[1],C[0]),T(-C[1],A[0])),P[2]))),-z[3])))),D=M(B,Y);return D[D.length-1]}}function c(x){return(x===3?s:x===4?u:p)(r,o,n,a)}var b=c(3),g=c(4),f=[function(){return 0},function(){return 0},function(x,T){return T[0]-x[0]},function(x,T,d){var M,A=(x[1]-d[1])*(T[0]-d[0]),C=(x[0]-d[0])*(T[1]-d[1]),P=A-C;if(A>0){if(C<=0)return P;M=A+C}else{if(!(A<0)||C>=0)return P;M=-(A+C)}var O=33306690738754716e-32*M;return P>=O||P<=-O?P:b(x,T,d)},function(x,T,d,M){var A=x[0]-M[0],C=T[0]-M[0],P=d[0]-M[0],O=x[1]-M[1],z=T[1]-M[1],B=d[1]-M[1],Y=x[2]-M[2],D=T[2]-M[2],G=d[2]-M[2],V=C*B,j=P*z,W=P*O,Z=A*B,ie=A*z,te=C*O,J=Y*(V-j)+D*(W-Z)+G*(ie-te),X=7771561172376103e-31*((Math.abs(V)+Math.abs(j))*Math.abs(Y)+(Math.abs(W)+Math.abs(Z))*Math.abs(D)+(Math.abs(ie)+Math.abs(te))*Math.abs(G));return J>X||-J>X?J:g(x,T,d,M)}];function v(x){var T=f[x.length];return T||(T=f[x.length]=c(x.length)),T.apply(void 0,x)}function m(x,T,d,M,A,C,P){return function(O,z,B,Y,D){switch(arguments.length){case 0:case 1:return 0;case 2:return M(O,z);case 3:return A(O,z,B);case 4:return C(O,z,B,Y);case 5:return P(O,z,B,Y,D)}for(var G=new Array(arguments.length),V=0;V<arguments.length;++V)G[V]=arguments[V];return x(G)}}(function(){for(;f.length<=5;)f.push(c(f.length));h.exports=m.apply(void 0,[v].concat(f));for(var x=0;x<=5;++x)h.exports[x]=f[x]})()},2019:function(h,l,t){var o=t(9662),r=t(8289);h.exports=function(n,a){if(n.length===1)return r(a,n[0]);if(a.length===1)return r(n,a[0]);if(n.length===0||a.length===0)return[0];var s=[0];if(n.length<a.length)for(var u=0;u<n.length;++u)s=o(s,r(a,n[u]));else for(u=0;u<a.length;++u)s=o(s,r(n,a[u]));return s}},8289:function(h,l,t){var o=t(9660),r=t(87);h.exports=function(n,a){var s=n.length;if(s===1){var u=o(n[0],a);return u[0]?u:[u[1]]}var p=new Array(2*s),c=[.1,.1],b=[.1,.1],g=0;o(n[0],a,c),c[0]&&(p[g++]=c[0]);for(var f=1;f<s;++f){o(n[f],a,b);var v=c[1];r(v,b[0],c),c[0]&&(p[g++]=c[0]);var m=b[1],x=c[1],T=m+x,d=x-(T-m);c[1]=T,d&&(p[g++]=d)}return c[1]&&(p[g++]=c[1]),g===0&&(p[g++]=0),p.length=g,p}},4434:function(h,l,t){h.exports=function(r,n,a,s){var u=o(r,a,s),p=o(n,a,s);if(u>0&&p>0||u<0&&p<0)return!1;var c=o(a,r,n),b=o(s,r,n);return!(c>0&&b>0||c<0&&b<0)&&(u!==0||p!==0||c!==0||b!==0||function(g,f,v,m){for(var x=0;x<2;++x){var T=g[x],d=f[x],M=Math.min(T,d),A=Math.max(T,d),C=v[x],P=m[x],O=Math.min(C,P);if(Math.max(C,P)<M||A<O)return!1}return!0}(r,n,a,s))};var o=t(417)[3]},4078:function(h){h.exports=function(l,t){var o=0|l.length,r=0|t.length;if(o===1&&r===1)return function(O,z){var B=O+z,Y=B-O,D=O-(B-Y)+(z-Y);return D?[D,B]:[B]}(l[0],-t[0]);var n,a,s=new Array(o+r),u=0,p=0,c=0,b=Math.abs,g=l[p],f=b(g),v=-t[c],m=b(v);f<m?(a=g,(p+=1)<o&&(f=b(g=l[p]))):(a=v,(c+=1)<r&&(m=b(v=-t[c]))),p<o&&f<m||c>=r?(n=g,(p+=1)<o&&(f=b(g=l[p]))):(n=v,(c+=1)<r&&(m=b(v=-t[c])));for(var x,T,d=n+a,M=d-n,A=a-M,C=A,P=d;p<o&&c<r;)f<m?(n=g,(p+=1)<o&&(f=b(g=l[p]))):(n=v,(c+=1)<r&&(m=b(v=-t[c]))),(A=(a=C)-(M=(d=n+a)-n))&&(s[u++]=A),C=P-((x=P+d)-(T=x-P))+(d-T),P=x;for(;p<o;)(A=(a=C)-(M=(d=(n=g)+a)-n))&&(s[u++]=A),C=P-((x=P+d)-(T=x-P))+(d-T),P=x,(p+=1)<o&&(g=l[p]);for(;c<r;)(A=(a=C)-(M=(d=(n=v)+a)-n))&&(s[u++]=A),C=P-((x=P+d)-(T=x-P))+(d-T),P=x,(c+=1)<r&&(v=-t[c]);return C&&(s[u++]=C),P&&(s[u++]=P),u||(s[u++]=0),s.length=u,s}},9662:function(h){h.exports=function(l,t){var o=0|l.length,r=0|t.length;if(o===1&&r===1)return function(O,z){var B=O+z,Y=B-O,D=O-(B-Y)+(z-Y);return D?[D,B]:[B]}(l[0],t[0]);var n,a,s=new Array(o+r),u=0,p=0,c=0,b=Math.abs,g=l[p],f=b(g),v=t[c],m=b(v);f<m?(a=g,(p+=1)<o&&(f=b(g=l[p]))):(a=v,(c+=1)<r&&(m=b(v=t[c]))),p<o&&f<m||c>=r?(n=g,(p+=1)<o&&(f=b(g=l[p]))):(n=v,(c+=1)<r&&(m=b(v=t[c])));for(var x,T,d=n+a,M=d-n,A=a-M,C=A,P=d;p<o&&c<r;)f<m?(n=g,(p+=1)<o&&(f=b(g=l[p]))):(n=v,(c+=1)<r&&(m=b(v=t[c]))),(A=(a=C)-(M=(d=n+a)-n))&&(s[u++]=A),C=P-((x=P+d)-(T=x-P))+(d-T),P=x;for(;p<o;)(A=(a=C)-(M=(d=(n=g)+a)-n))&&(s[u++]=A),C=P-((x=P+d)-(T=x-P))+(d-T),P=x,(p+=1)<o&&(g=l[p]);for(;c<r;)(A=(a=C)-(M=(d=(n=v)+a)-n))&&(s[u++]=A),C=P-((x=P+d)-(T=x-P))+(d-T),P=x,(c+=1)<r&&(v=t[c]);return C&&(s[u++]=C),P&&(s[u++]=P),u||(s[u++]=0),s.length=u,s}},8691:function(h,l,t){h.exports=function(n){return r(o(n))};var o=t(2692),r=t(7037)},7212:function(h,l,t){h.exports=function(s,u,p,c){if(p=p||0,c===void 0&&(c=function(d){for(var M=d.length,A=0,C=0;C<M;++C)A=0|Math.max(A,d[C].length);return A-1}(s)),s.length===0||c<1)return{cells:[],vertexIds:[],vertexWeights:[]};var b=function(d,M){for(var A=d.length,C=r.mallocUint8(A),P=0;P<A;++P)C[P]=d[P]<M|0;return C}(u,+p),g=function(d,M){for(var A=d.length,C=M*(M+1)/2*A|0,P=r.mallocUint32(2*C),O=0,z=0;z<A;++z)for(var B=d[z],Y=(M=B.length,0);Y<M;++Y)for(var D=0;D<Y;++D){var G=B[D],V=B[Y];P[O++]=0|Math.min(G,V),P[O++]=0|Math.max(G,V)}n(o(P,[O/2|0,2]));var j=2;for(z=2;z<O;z+=2)P[z-2]===P[z]&&P[z-1]===P[z+1]||(P[j++]=P[z],P[j++]=P[z+1]);return o(P,[j/2|0,2])}(s,c),f=function(d,M,A,C){for(var P=d.data,O=d.shape[0],z=r.mallocDouble(O),B=0,Y=0;Y<O;++Y){var D=P[2*Y],G=P[2*Y+1];if(A[D]!==A[G]){var V=M[D],j=M[G];P[2*B]=D,P[2*B+1]=G,z[B++]=(j-C)/(j-V)}}return d.shape[0]=B,o(z,[B])}(g,u,b,+p),v=function(d,M){var A=r.mallocInt32(2*M),C=d.shape[0],P=d.data;A[0]=0;for(var O=0,z=0;z<C;++z){var B=P[2*z];if(B!==O){for(A[2*O+1]=z;++O<B;)A[2*O]=z,A[2*O+1]=z;A[2*O]=z}}for(A[2*O+1]=C;++O<M;)A[2*O]=A[2*O+1]=C;return A}(g,0|u.length),m=a(c)(s,g.data,v,b),x=function(d){for(var M=0|d.shape[0],A=d.data,C=new Array(M),P=0;P<M;++P)C[P]=[A[2*P],A[2*P+1]];return C}(g),T=[].slice.call(f.data,0,f.shape[0]);return r.free(b),r.free(g.data),r.free(f.data),r.free(v),{cells:m,vertexIds:x,vertexWeights:T}};var o=t(5050),r=t(5306),n=t(8729),a=t(1168)},1168:function(h){h.exports=function(t){return l[t]()};var l=[function(){return function(t,o,r,n){for(var a=t.length,s=0;s<a;++s)t[s].length;return[]}},function(){function t(o,r,n,a){for(var s=0|Math.min(n,a),u=0|Math.max(n,a),p=o[2*s],c=o[2*s+1];p<c;){var b=p+c>>1,g=r[2*b+1];if(g===u)return b;u<g?c=b:p=b+1}return p}return function(o,r,n,a){for(var s=o.length,u=[],p=0;p<s;++p){var c=o[p];if(c.length===2){var b=(a[c[0]]<<0)+(a[c[1]]<<1);if(b===0||b===3)continue;switch(b){case 0:case 3:break;case 1:u.push([t(n,r,c[0],c[1])]);break;case 2:u.push([t(n,r,c[1],c[0])])}}}return u}},function(){function t(o,r,n,a){for(var s=0|Math.min(n,a),u=0|Math.max(n,a),p=o[2*s],c=o[2*s+1];p<c;){var b=p+c>>1,g=r[2*b+1];if(g===u)return b;u<g?c=b:p=b+1}return p}return function(o,r,n,a){for(var s=o.length,u=[],p=0;p<s;++p){var c=o[p],b=c.length;if(b===3){if((g=(a[c[0]]<<0)+(a[c[1]]<<1)+(a[c[2]]<<2))==0||g===7)continue;switch(g){case 0:case 7:break;case 1:u.push([t(n,r,c[0],c[2]),t(n,r,c[0],c[1])]);break;case 2:u.push([t(n,r,c[1],c[0]),t(n,r,c[1],c[2])]);break;case 3:u.push([t(n,r,c[0],c[2]),t(n,r,c[1],c[2])]);break;case 4:u.push([t(n,r,c[2],c[1]),t(n,r,c[2],c[0])]);break;case 5:u.push([t(n,r,c[2],c[1]),t(n,r,c[0],c[1])]);break;case 6:u.push([t(n,r,c[1],c[0]),t(n,r,c[2],c[0])])}}else if(b===2){var g;if((g=(a[c[0]]<<0)+(a[c[1]]<<1))==0||g===3)continue;switch(g){case 0:case 3:break;case 1:u.push([t(n,r,c[0],c[1])]);break;case 2:u.push([t(n,r,c[1],c[0])])}}}return u}},function(){function t(o,r,n,a){for(var s=0|Math.min(n,a),u=0|Math.max(n,a),p=o[2*s],c=o[2*s+1];p<c;){var b=p+c>>1,g=r[2*b+1];if(g===u)return b;u<g?c=b:p=b+1}return p}return function(o,r,n,a){for(var s=o.length,u=[],p=0;p<s;++p){var c=o[p],b=c.length;if(b===4){if((g=(a[c[0]]<<0)+(a[c[1]]<<1)+(a[c[2]]<<2)+(a[c[3]]<<3))==0||g===15)continue;switch(g){case 0:case 15:break;case 1:u.push([t(n,r,c[0],c[1]),t(n,r,c[0],c[2]),t(n,r,c[0],c[3])]);break;case 2:u.push([t(n,r,c[1],c[2]),t(n,r,c[1],c[0]),t(n,r,c[1],c[3])]);break;case 3:u.push([t(n,r,c[1],c[2]),t(n,r,c[0],c[2]),t(n,r,c[0],c[3])],[t(n,r,c[1],c[3]),t(n,r,c[1],c[2]),t(n,r,c[0],c[3])]);break;case 4:u.push([t(n,r,c[2],c[0]),t(n,r,c[2],c[1]),t(n,r,c[2],c[3])]);break;case 5:u.push([t(n,r,c[0],c[1]),t(n,r,c[2],c[1]),t(n,r,c[0],c[3])],[t(n,r,c[2],c[1]),t(n,r,c[2],c[3]),t(n,r,c[0],c[3])]);break;case 6:u.push([t(n,r,c[2],c[0]),t(n,r,c[1],c[0]),t(n,r,c[1],c[3])],[t(n,r,c[2],c[3]),t(n,r,c[2],c[0]),t(n,r,c[1],c[3])]);break;case 7:u.push([t(n,r,c[0],c[3]),t(n,r,c[1],c[3]),t(n,r,c[2],c[3])]);break;case 8:u.push([t(n,r,c[3],c[1]),t(n,r,c[3],c[0]),t(n,r,c[3],c[2])]);break;case 9:u.push([t(n,r,c[3],c[1]),t(n,r,c[0],c[1]),t(n,r,c[0],c[2])],[t(n,r,c[3],c[2]),t(n,r,c[3],c[1]),t(n,r,c[0],c[2])]);break;case 10:u.push([t(n,r,c[1],c[0]),t(n,r,c[3],c[0]),t(n,r,c[1],c[2])],[t(n,r,c[3],c[0]),t(n,r,c[3],c[2]),t(n,r,c[1],c[2])]);break;case 11:u.push([t(n,r,c[1],c[2]),t(n,r,c[0],c[2]),t(n,r,c[3],c[2])]);break;case 12:u.push([t(n,r,c[3],c[0]),t(n,r,c[2],c[0]),t(n,r,c[2],c[1])],[t(n,r,c[3],c[1]),t(n,r,c[3],c[0]),t(n,r,c[2],c[1])]);break;case 13:u.push([t(n,r,c[0],c[1]),t(n,r,c[2],c[1]),t(n,r,c[3],c[1])]);break;case 14:u.push([t(n,r,c[2],c[0]),t(n,r,c[1],c[0]),t(n,r,c[3],c[0])])}}else if(b===3){if((g=(a[c[0]]<<0)+(a[c[1]]<<1)+(a[c[2]]<<2))==0||g===7)continue;switch(g){case 0:case 7:break;case 1:u.push([t(n,r,c[0],c[2]),t(n,r,c[0],c[1])]);break;case 2:u.push([t(n,r,c[1],c[0]),t(n,r,c[1],c[2])]);break;case 3:u.push([t(n,r,c[0],c[2]),t(n,r,c[1],c[2])]);break;case 4:u.push([t(n,r,c[2],c[1]),t(n,r,c[2],c[0])]);break;case 5:u.push([t(n,r,c[2],c[1]),t(n,r,c[0],c[1])]);break;case 6:u.push([t(n,r,c[1],c[0]),t(n,r,c[2],c[0])])}}else if(b===2){var g;if((g=(a[c[0]]<<0)+(a[c[1]]<<1))==0||g===3)continue;switch(g){case 0:case 3:break;case 1:u.push([t(n,r,c[0],c[1])]);break;case 2:u.push([t(n,r,c[1],c[0])])}}}return u}}]},8211:function(h,l,t){t(2288),t(1731),l.H=function(o,r){var n=o.length,a=o.length-r.length,s=Math.min;if(a)return a;switch(n){case 0:return 0;case 1:return o[0]-r[0];case 2:return(c=o[0]+o[1]-r[0]-r[1])||s(o[0],o[1])-s(r[0],r[1]);case 3:var u=o[0]+o[1],p=r[0]+r[1];if(c=u+o[2]-(p+r[2]))return c;var c,b=s(o[0],o[1]),g=s(r[0],r[1]);return(c=s(b,o[2])-s(g,r[2]))||s(b+o[2],u)-s(g+r[2],p);default:var f=o.slice(0);f.sort();var v=r.slice(0);v.sort();for(var m=0;m<n;++m)if(a=f[m]-v[m])return a;return 0}}},9392:function(h,l){function t(r){var n=32;return(r&=-r)&&n--,65535&r&&(n-=16),16711935&r&&(n-=8),252645135&r&&(n-=4),858993459&r&&(n-=2),1431655765&r&&(n-=1),n}l.INT_BITS=32,l.INT_MAX=2147483647,l.INT_MIN=-2147483648,l.sign=function(r){return(r>0)-(r<0)},l.abs=function(r){var n=r>>31;return(r^n)-n},l.min=function(r,n){return n^(r^n)&-(r<n)},l.max=function(r,n){return r^(r^n)&-(r<n)},l.isPow2=function(r){return!(r&r-1||!r)},l.log2=function(r){var n,a;return n=(r>65535)<<4,n|=a=((r>>>=n)>255)<<3,n|=a=((r>>>=a)>15)<<2,(n|=a=((r>>>=a)>3)<<1)|(r>>>=a)>>1},l.log10=function(r){return r>=1e9?9:r>=1e8?8:r>=1e7?7:r>=1e6?6:r>=1e5?5:r>=1e4?4:r>=1e3?3:r>=100?2:r>=10?1:0},l.popCount=function(r){return 16843009*((r=(858993459&(r-=r>>>1&1431655765))+(r>>>2&858993459))+(r>>>4)&252645135)>>>24},l.countTrailingZeros=t,l.nextPow2=function(r){return r+=r===0,--r,r|=r>>>1,r|=r>>>2,r|=r>>>4,1+((r|=r>>>8)|r>>>16)},l.prevPow2=function(r){return r|=r>>>1,r|=r>>>2,r|=r>>>4,r|=r>>>8,(r|=r>>>16)-(r>>>1)},l.parity=function(r){return r^=r>>>16,r^=r>>>8,r^=r>>>4,27030>>>(r&=15)&1};var o=new Array(256);(function(r){for(var n=0;n<256;++n){var a=n,s=n,u=7;for(a>>>=1;a;a>>>=1)s<<=1,s|=1&a,--u;r[n]=s<<u&255}})(o),l.reverse=function(r){return o[255&r]<<24|o[r>>>8&255]<<16|o[r>>>16&255]<<8|o[r>>>24&255]},l.interleave2=function(r,n){return(r=1431655765&((r=858993459&((r=252645135&((r=16711935&((r&=65535)|r<<8))|r<<4))|r<<2))|r<<1))|(n=1431655765&((n=858993459&((n=252645135&((n=16711935&((n&=65535)|n<<8))|n<<4))|n<<2))|n<<1))<<1},l.deinterleave2=function(r,n){return(r=65535&((r=16711935&((r=252645135&((r=858993459&((r=r>>>n&1431655765)|r>>>1))|r>>>2))|r>>>4))|r>>>16))<<16>>16},l.interleave3=function(r,n,a){return r=1227133513&((r=3272356035&((r=251719695&((r=4278190335&((r&=1023)|r<<16))|r<<8))|r<<4))|r<<2),(r|=(n=1227133513&((n=3272356035&((n=251719695&((n=4278190335&((n&=1023)|n<<16))|n<<8))|n<<4))|n<<2))<<1)|(a=1227133513&((a=3272356035&((a=251719695&((a=4278190335&((a&=1023)|a<<16))|a<<8))|a<<4))|a<<2))<<2},l.deinterleave3=function(r,n){return(r=1023&((r=4278190335&((r=251719695&((r=3272356035&((r=r>>>n&1227133513)|r>>>2))|r>>>4))|r>>>8))|r>>>16))<<22>>22},l.nextCombination=function(r){var n=r|r-1;return n+1|(~n&-~n)-1>>>t(r)+1}},6656:function(h,l,t){var o=t(9392),r=t(9521);function n(g,f){var v=g.length,m=g.length-f.length,x=Math.min;if(m)return m;switch(v){case 0:return 0;case 1:return g[0]-f[0];case 2:return(M=g[0]+g[1]-f[0]-f[1])||x(g[0],g[1])-x(f[0],f[1]);case 3:var T=g[0]+g[1],d=f[0]+f[1];if(M=T+g[2]-(d+f[2]))return M;var M,A=x(g[0],g[1]),C=x(f[0],f[1]);return(M=x(A,g[2])-x(C,f[2]))||x(A+g[2],T)-x(C+f[2],d);default:var P=g.slice(0);P.sort();var O=f.slice(0);O.sort();for(var z=0;z<v;++z)if(m=P[z]-O[z])return m;return 0}}function a(g,f){return n(g[0],f[0])}function s(g,f){if(f){for(var v=g.length,m=new Array(v),x=0;x<v;++x)m[x]=[g[x],f[x]];for(m.sort(a),x=0;x<v;++x)g[x]=m[x][0],f[x]=m[x][1];return g}return g.sort(n),g}function u(g){if(g.length===0)return[];for(var f=1,v=g.length,m=1;m<v;++m){var x=g[m];if(n(x,g[m-1])){if(m===f){f++;continue}g[f++]=x}}return g.length=f,g}function p(g,f){for(var v=0,m=g.length-1,x=-1;v<=m;){var T=v+m>>1,d=n(g[T],f);d<=0?(d===0&&(x=T),v=T+1):d>0&&(m=T-1)}return x}function c(g,f){for(var v=new Array(g.length),m=0,x=v.length;m<x;++m)v[m]=[];for(var T=[],d=(m=0,f.length);m<d;++m)for(var M=f[m],A=M.length,C=1,P=1<<A;C<P;++C){T.length=o.popCount(C);for(var O=0,z=0;z<A;++z)C&1<<z&&(T[O++]=M[z]);var B=p(g,T);if(!(B<0))for(;v[B++].push(m),!(B>=g.length||n(g[B],T)!==0););}return v}function b(g,f){if(f<0)return[];for(var v=[],m=(1<<f+1)-1,x=0;x<g.length;++x)for(var T=g[x],d=m;d<1<<T.length;d=o.nextCombination(d)){for(var M=new Array(f+1),A=0,C=0;C<T.length;++C)d&1<<C&&(M[A++]=T[C]);v.push(M)}return s(v)}l.dimension=function(g){for(var f=0,v=Math.max,m=0,x=g.length;m<x;++m)f=v(f,g[m].length);return f-1},l.countVertices=function(g){for(var f=-1,v=Math.max,m=0,x=g.length;m<x;++m)for(var T=g[m],d=0,M=T.length;d<M;++d)f=v(f,T[d]);return f+1},l.cloneCells=function(g){for(var f=new Array(g.length),v=0,m=g.length;v<m;++v)f[v]=g[v].slice(0);return f},l.compareCells=n,l.normalize=s,l.unique=u,l.findCell=p,l.incidence=c,l.dual=function(g,f){if(!f)return c(u(b(g,0)),g);for(var v=new Array(f),m=0;m<f;++m)v[m]=[];m=0;for(var x=g.length;m<x;++m)for(var T=g[m],d=0,M=T.length;d<M;++d)v[T[d]].push(m);return v},l.explode=function(g){for(var f=[],v=0,m=g.length;v<m;++v)for(var x=g[v],T=0|x.length,d=1,M=1<<T;d<M;++d){for(var A=[],C=0;C<T;++C)d>>>C&1&&A.push(x[C]);f.push(A)}return s(f)},l.skeleton=b,l.boundary=function(g){for(var f=[],v=0,m=g.length;v<m;++v)for(var x=g[v],T=0,d=x.length;T<d;++T){for(var M=new Array(x.length-1),A=0,C=0;A<d;++A)A!==T&&(M[C++]=x[A]);f.push(M)}return s(f)},l.connectedComponents=function(g,f){return f?function(v,m){for(var x=new r(m),T=0;T<v.length;++T)for(var d=v[T],M=0;M<d.length;++M)for(var A=M+1;A<d.length;++A)x.link(d[M],d[A]);var C=[],P=x.ranks;for(T=0;T<P.length;++T)P[T]=-1;for(T=0;T<v.length;++T){var O=x.find(v[T][0]);P[O]<0?(P[O]=C.length,C.push([v[T].slice(0)])):C[P[O]].push(v[T].slice(0))}return C}(g,f):function(v){for(var m=u(s(b(v,0))),x=new r(m.length),T=0;T<v.length;++T)for(var d=v[T],M=0;M<d.length;++M)for(var A=p(m,[d[M]]),C=M+1;C<d.length;++C)x.link(A,p(m,[d[C]]));var P=[],O=x.ranks;for(T=0;T<O.length;++T)O[T]=-1;for(T=0;T<v.length;++T){var z=x.find(p(m,[v[T][0]]));O[z]<0?(O[z]=P.length,P.push([v[T].slice(0)])):P[O[z]].push(v[T].slice(0))}return P}(g)}},9521:function(h){function l(t){this.roots=new Array(t),this.ranks=new Array(t);for(var o=0;o<t;++o)this.roots[o]=o,this.ranks[o]=0}h.exports=l,l.prototype.length=function(){return this.roots.length},l.prototype.makeSet=function(){var t=this.roots.length;return this.roots.push(t),this.ranks.push(0),t},l.prototype.find=function(t){for(var o=this.roots;o[t]!==t;){var r=o[t];o[t]=o[r],t=r}return t},l.prototype.link=function(t,o){var r=this.find(t),n=this.find(o);if(r!==n){var a=this.ranks,s=this.roots,u=a[r],p=a[n];u<p?s[r]=n:p<u?s[n]=r:(s[n]=r,++a[r])}}},8243:function(h,l,t){h.exports=function(n,a,s){for(var u=a.length,p=n.length,c=new Array(u),b=new Array(u),g=new Array(u),f=new Array(u),v=0;v<u;++v)c[v]=b[v]=-1,g[v]=1/0,f[v]=!1;for(v=0;v<p;++v){var m=n[v];if(m.length!==2)throw new Error("Input must be a graph");var x=m[1],T=m[0];b[T]!==-1?b[T]=-2:b[T]=x,c[x]!==-1?c[x]=-2:c[x]=T}function d(te){if(f[te])return 1/0;var J,X,ee,re=c[te],oe=b[te];return re<0||oe<0?1/0:(J=a[te],X=a[re],ee=a[oe],Math.abs(o(J,X,ee))/Math.sqrt(Math.pow(X[0]-ee[0],2)+Math.pow(X[1]-ee[1],2)))}function M(te,J){var X=D[te],ee=D[J];D[te]=ee,D[J]=X,G[X]=J,G[ee]=te}function A(te){return g[D[te]]}function C(te){return 1&te?te-1>>1:(te>>1)-1}function P(te){for(var J=A(te);;){var X=J,ee=2*te+1,re=2*(te+1),oe=te;if(ee<V){var ue=A(ee);ue<X&&(oe=ee,X=ue)}if(re<V&&A(re)<X&&(oe=re),oe===te)return te;M(te,oe),te=oe}}function O(te){for(var J=A(te);te>0;){var X=C(te);if(!(X>=0&&J<A(X)))return te;M(te,X),te=X}}function z(){if(V>0){var te=D[0];return M(0,V-1),V-=1,P(0),te}return-1}function B(te,J){var X=D[te];return g[X]===J?te:(g[X]=-1/0,O(te),z(),g[X]=J,O((V+=1)-1))}function Y(te){if(!f[te]){f[te]=!0;var J=c[te],X=b[te];c[X]>=0&&(c[X]=J),b[J]>=0&&(b[J]=X),G[J]>=0&&B(G[J],d(J)),G[X]>=0&&B(G[X],d(X))}}var D=[],G=new Array(u);for(v=0;v<u;++v)(g[v]=d(v))<1/0?(G[v]=D.length,D.push(v)):G[v]=-1;var V=D.length;for(v=V>>1;v>=0;--v)P(v);for(;;){var j=z();if(j<0||g[j]>s)break;Y(j)}var W=[];for(v=0;v<u;++v)f[v]||(G[v]=W.length,W.push(a[v].slice()));function Z(te,J){if(te[J]<0)return J;var X=J,ee=J;do{var re=te[ee];if(!f[ee]||re<0||re===ee||(re=te[ee=re],!f[ee]||re<0||re===ee))break;ee=re,X=te[X]}while(X!==ee);for(var oe=J;oe!==ee;oe=te[oe])te[oe]=ee;return ee}W.length;var ie=[];return n.forEach(function(te){var J=Z(c,te[0]),X=Z(b,te[1]);if(J>=0&&X>=0&&J!==X){var ee=G[J],re=G[X];ee!==re&&ie.push([ee,re])}}),r.unique(r.normalize(ie)),{positions:W,edges:ie}};var o=t(417),r=t(6656)},6638:function(h,l,t){h.exports=function(n,a){var s,u,p,c;if(a[0][0]<a[1][0])s=a[0],u=a[1];else{if(!(a[0][0]>a[1][0]))return r(a,n);s=a[1],u=a[0]}if(n[0][0]<n[1][0])p=n[0],c=n[1];else{if(!(n[0][0]>n[1][0]))return-r(n,a);p=n[1],c=n[0]}var b=o(s,u,c),g=o(s,u,p);if(b<0){if(g<=0)return b}else if(b>0){if(g>=0)return b}else if(g)return g;if(b=o(c,p,u),g=o(c,p,s),b<0){if(g<=0)return b}else if(b>0){if(g>=0)return b}else if(g)return g;return u[0]-c[0]};var o=t(417);function r(n,a){var s,u,p,c;if(a[0][0]<a[1][0])s=a[0],u=a[1];else{if(!(a[0][0]>a[1][0])){var b=Math.min(n[0][1],n[1][1]),g=Math.max(n[0][1],n[1][1]),f=Math.min(a[0][1],a[1][1]),v=Math.max(a[0][1],a[1][1]);return g<f?g-f:b>v?b-v:g-v}s=a[1],u=a[0]}n[0][1]<n[1][1]?(p=n[0],c=n[1]):(p=n[1],c=n[0]);var m=o(u,s,p);return m||(m=o(u,s,c))||c-u}},4385:function(h,l,t){h.exports=function(g){for(var f=g.length,v=2*f,m=new Array(v),x=0;x<f;++x){var T=g[x],d=T[0][0]<T[1][0];m[2*x]=new b(T[0][0],T,d,x),m[2*x+1]=new b(T[1][0],T,!d,x)}m.sort(function(Y,D){var G=Y.x-D.x;return G||(G=Y.create-D.create)||Math.min(Y.segment[0][1],Y.segment[1][1])-Math.min(D.segment[0][1],D.segment[1][1])});var M=r(a),A=[],C=[],P=[];for(x=0;x<v;){for(var O=m[x].x,z=[];x<v;){var B=m[x];if(B.x!==O)break;x+=1,B.segment[0][0]===B.x&&B.segment[1][0]===B.x?B.create&&(B.segment[0][1]<B.segment[1][1]?(z.push(new c(B.segment[0][1],B.index,!0,!0)),z.push(new c(B.segment[1][1],B.index,!1,!1))):(z.push(new c(B.segment[1][1],B.index,!0,!1)),z.push(new c(B.segment[0][1],B.index,!1,!0)))):M=B.create?M.insert(B.segment,B.index):M.remove(B.segment)}A.push(M.root),C.push(O),P.push(z)}return new s(A,C,P)};var o=t(5070),r=t(7080),n=t(417),a=t(6638);function s(g,f,v){this.slabs=g,this.coordinates=f,this.horizontal=v}function u(g,f){return g.y-f}function p(g,f){for(var v=null;g;){var m,x,T=g.key;T[0][0]<T[1][0]?(m=T[0],x=T[1]):(m=T[1],x=T[0]);var d=n(m,x,f);if(d<0)g=g.left;else if(d>0)if(f[0]!==T[1][0])v=g,g=g.right;else{if(M=p(g.right,f))return M;g=g.left}else{if(f[0]!==T[1][0])return g;var M;if(M=p(g.right,f))return M;g=g.left}}return v}function c(g,f,v,m){this.y=g,this.index=f,this.start=v,this.closed=m}function b(g,f,v,m){this.x=g,this.segment=f,this.create=v,this.index=m}s.prototype.castUp=function(g){var f=o.le(this.coordinates,g[0]);if(f<0)return-1;this.slabs[f];var v=p(this.slabs[f],g),m=-1;if(v&&(m=v.value),this.coordinates[f]===g[0]){var x=null;if(v&&(x=v.key),f>0){var T=p(this.slabs[f-1],g);T&&(x?a(T.key,x)>0&&(x=T.key,m=T.value):(m=T.value,x=T.key))}var d=this.horizontal[f];if(d.length>0){var M=o.ge(d,g[1],u);if(M<d.length){var A=d[M];if(g[1]===A.y){if(A.closed)return A.index;for(;M<d.length-1&&d[M+1].y===g[1];)if((A=d[M+=1]).closed)return A.index;if(A.y===g[1]&&!A.start){if((M+=1)>=d.length)return m;A=d[M]}}if(A.start)if(x){var C=n(x[0],x[1],[g[0],A.y]);x[0][0]>x[1][0]&&(C=-C),C>0&&(m=A.index)}else m=A.index;else A.y!==g[1]&&(m=A.index)}}}return m}},4670:function(h,l,t){var o=t(9130),r=t(9662);function n(s,u){var p=r(o(s,u),[u[u.length-1]]);return p[p.length-1]}function a(s,u,p,c){var b=-u/(c-u);b<0?b=0:b>1&&(b=1);for(var g=1-b,f=s.length,v=new Array(f),m=0;m<f;++m)v[m]=b*s[m]+g*p[m];return v}h.exports=function(s,u){for(var p=[],c=[],b=n(s[s.length-1],u),g=s[s.length-1],f=s[0],v=0;v<s.length;++v,g=f){var m=n(f=s[v],u);if(b<0&&m>0||b>0&&m<0){var x=a(g,m,f,b);p.push(x),c.push(x.slice())}m<0?c.push(f.slice()):m>0?p.push(f.slice()):(p.push(f.slice()),c.push(f.slice())),b=m}return{positive:p,negative:c}},h.exports.positive=function(s,u){for(var p=[],c=n(s[s.length-1],u),b=s[s.length-1],g=s[0],f=0;f<s.length;++f,b=g){var v=n(g=s[f],u);(c<0&&v>0||c>0&&v<0)&&p.push(a(b,v,g,c)),v>=0&&p.push(g.slice()),c=v}return p},h.exports.negative=function(s,u){for(var p=[],c=n(s[s.length-1],u),b=s[s.length-1],g=s[0],f=0;f<s.length;++f,b=g){var v=n(g=s[f],u);(c<0&&v>0||c>0&&v<0)&&p.push(a(b,v,g,c)),v<=0&&p.push(g.slice()),c=v}return p}},8974:function(h,l,t){var o;(function(){var r={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 n(u){return function(p,c){var b,g,f,v,m,x,T,d,M,A=1,C=p.length,P="";for(g=0;g<C;g++)if(typeof p[g]=="string")P+=p[g];else if(typeof p[g]=="object"){if((v=p[g]).keys)for(b=c[A],f=0;f<v.keys.length;f++){if(b==null)throw new Error(n('[sprintf] Cannot access property "%s" of undefined value "%s"',v.keys[f],v.keys[f-1]));b=b[v.keys[f]]}else b=v.param_no?c[v.param_no]:c[A++];if(r.not_type.test(v.type)&&r.not_primitive.test(v.type)&&b instanceof Function&&(b=b()),r.numeric_arg.test(v.type)&&typeof b!="number"&&isNaN(b))throw new TypeError(n("[sprintf] expecting number but found %T",b));switch(r.number.test(v.type)&&(d=b>=0),v.type){case"b":b=parseInt(b,10).toString(2);break;case"c":b=String.fromCharCode(parseInt(b,10));break;case"d":case"i":b=parseInt(b,10);break;case"j":b=JSON.stringify(b,null,v.width?parseInt(v.width):0);break;case"e":b=v.precision?parseFloat(b).toExponential(v.precision):parseFloat(b).toExponential();break;case"f":b=v.precision?parseFloat(b).toFixed(v.precision):parseFloat(b);break;case"g":b=v.precision?String(Number(b.toPrecision(v.precision))):parseFloat(b);break;case"o":b=(parseInt(b,10)>>>0).toString(8);break;case"s":b=String(b),b=v.precision?b.substring(0,v.precision):b;break;case"t":b=String(!!b),b=v.precision?b.substring(0,v.precision):b;break;case"T":b=Object.prototype.toString.call(b).slice(8,-1).toLowerCase(),b=v.precision?b.substring(0,v.precision):b;break;case"u":b=parseInt(b,10)>>>0;break;case"v":b=b.valueOf(),b=v.precision?b.substring(0,v.precision):b;break;case"x":b=(parseInt(b,10)>>>0).toString(16);break;case"X":b=(parseInt(b,10)>>>0).toString(16).toUpperCase()}r.json.test(v.type)?P+=b:(!r.number.test(v.type)||d&&!v.sign?M="":(M=d?"+":"-",b=b.toString().replace(r.sign,"")),x=v.pad_char?v.pad_char==="0"?"0":v.pad_char.charAt(1):" ",T=v.width-(M+b).length,m=v.width&&T>0?x.repeat(T):"",P+=v.align?M+b+m:x==="0"?M+m+b:m+M+b)}return P}(function(p){if(s[p])return s[p];for(var c,b=p,g=[],f=0;b;){if((c=r.text.exec(b))!==null)g.push(c[0]);else if((c=r.modulo.exec(b))!==null)g.push("%");else{if((c=r.placeholder.exec(b))===null)throw new SyntaxError("[sprintf] unexpected placeholder");if(c[2]){f|=1;var v=[],m=c[2],x=[];if((x=r.key.exec(m))===null)throw new SyntaxError("[sprintf] failed to parse named argument key");for(v.push(x[1]);(m=m.substring(x[0].length))!=="";)if((x=r.key_access.exec(m))!==null)v.push(x[1]);else{if((x=r.index_access.exec(m))===null)throw new SyntaxError("[sprintf] failed to parse named argument key");v.push(x[1])}c[2]=v}else f|=2;if(f===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");g.push({placeholder:c[0],param_no:c[1],keys:c[2],sign:c[3],pad_char:c[4],align:c[5],width:c[6],precision:c[7],type:c[8]})}b=b.substring(c[0].length)}return s[p]=g}(u),arguments)}function a(u,p){return n.apply(null,[u].concat(p||[]))}var s=Object.create(null);l.sprintf=n,l.vsprintf=a,typeof window<"u"&&(window.sprintf=n,window.vsprintf=a,(o=function(){return{sprintf:n,vsprintf:a}}.call(l,t,l,h))===void 0||(h.exports=o))})()},4162:function(h,l,t){h.exports=function(s,u){if(s.dimension<=0)return{positions:[],cells:[]};if(s.dimension===1)return function(b,g){for(var f=r(b,g),v=f.length,m=new Array(v),x=new Array(v),T=0;T<v;++T)m[T]=[f[T]],x[T]=[T];return{positions:m,cells:x}}(s,u);var p=s.order.join()+"-"+s.dtype,c=a[p];return u=+u||0,c||(c=a[p]=function(b,g){var f=b.length+"d",v=n[f];if(v)return v(o,b,g)}(s.order,s.dtype)),c(s,u)};var o=t(9284),r=t(9584),n={"2d":function(s,u,p){var c=s({order:u,scalarArguments:3,getters:p==="generic"?[0]:void 0,phase:function(b,g,f,v){return b>v|0},vertex:function(b,g,f,v,m,x,T,d,M,A,C,P,O){var z=(T<<0)+(d<<1)+(M<<2)+(A<<3)|0;if(z!==0&&z!==15)switch(z){case 0:case 15:C.push([b-.5,g-.5]);break;case 1:C.push([b-.25-.25*(v+f-2*O)/(f-v),g-.25-.25*(m+f-2*O)/(f-m)]);break;case 2:C.push([b-.75-.25*(-v-f+2*O)/(v-f),g-.25-.25*(x+v-2*O)/(v-x)]);break;case 3:C.push([b-.5,g-.5-.5*(m+f+x+v-4*O)/(f-m+v-x)]);break;case 4:C.push([b-.25-.25*(x+m-2*O)/(m-x),g-.75-.25*(-m-f+2*O)/(m-f)]);break;case 5:C.push([b-.5-.5*(v+f+x+m-4*O)/(f-v+m-x),g-.5]);break;case 6:C.push([b-.5-.25*(-v-f+x+m)/(v-f+m-x),g-.5-.25*(-m-f+x+v)/(m-f+v-x)]);break;case 7:C.push([b-.75-.25*(x+m-2*O)/(m-x),g-.75-.25*(x+v-2*O)/(v-x)]);break;case 8:C.push([b-.75-.25*(-x-m+2*O)/(x-m),g-.75-.25*(-x-v+2*O)/(x-v)]);break;case 9:C.push([b-.5-.25*(v+f+-x-m)/(f-v+x-m),g-.5-.25*(m+f+-x-v)/(f-m+x-v)]);break;case 10:C.push([b-.5-.5*(-v-f-x-m+4*O)/(v-f+x-m),g-.5]);break;case 11:C.push([b-.25-.25*(-x-m+2*O)/(x-m),g-.75-.25*(m+f-2*O)/(f-m)]);break;case 12:C.push([b-.5,g-.5-.5*(-m-f-x-v+4*O)/(m-f+x-v)]);break;case 13:C.push([b-.75-.25*(v+f-2*O)/(f-v),g-.25-.25*(-x-v+2*O)/(x-v)]);break;case 14:C.push([b-.25-.25*(-v-f+2*O)/(v-f),g-.25-.25*(-m-f+2*O)/(m-f)])}},cell:function(b,g,f,v,m,x,T,d,M){m?d.push([b,g]):d.push([g,b])}});return function(b,g){var f=[],v=[];return c(b,f,v,g),{positions:f,cells:v}}}},a={}},6946:function(h,l,t){h.exports=function a(s,u,p){p=p||{};var c=n[s];c||(c=n[s]={" ":{data:new Float32Array(0),shape:.2}});var b=c[u];if(!b)if(u.length<=1||!/\d/.test(u))b=c[u]=function(P){for(var O=P.cells,z=P.positions,B=new Float32Array(6*O.length),Y=0,D=0,G=0;G<O.length;++G)for(var V=O[G],j=0;j<3;++j){var W=z[V[j]];B[Y++]=W[0],B[Y++]=W[1]+1.4,D=Math.max(W[0],D)}return{data:B,shape:D}}(o(u,{triangles:!0,font:s,textAlign:p.textAlign||"left",textBaseline:"alphabetic",styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0}}));else{for(var g=u.split(/(\d|\s)/),f=new Array(g.length),v=0,m=0,x=0;x<g.length;++x)f[x]=a(s,g[x]),v+=f[x].data.length,m+=f[x].shape,x>0&&(m+=.02);var T=new Float32Array(v),d=0,M=-.5*m;for(x=0;x<f.length;++x){for(var A=f[x].data,C=0;C<A.length;C+=2)T[d++]=A[C]+M,T[d++]=A[C+1];M+=f[x].shape+.02}b=c[u]={data:T,shape:m}}return b};var o=t(875),r=window||k.global||{},n=r.__TEXT_CACHE||{};r.__TEXT_CACHE={}},14:function(h,l,t){var o=t(4405);h.exports=a;var r=96;function n(s,u){var p=o(getComputedStyle(s).getPropertyValue(u));return p[0]*a(p[1],s)}function a(s,u){switch(u=u||document.body,s=(s||"px").trim().toLowerCase(),u!==window&&u!==document||(u=document.body),s){case"%":return u.clientHeight/100;case"ch":case"ex":return function(p,c){var b=document.createElement("div");b.style["font-size"]="128"+p,c.appendChild(b);var g=n(b,"font-size")/128;return c.removeChild(b),g}(s,u);case"em":return n(u,"font-size");case"rem":return n(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 r;case"cm":return r/2.54;case"mm":return r/25.4;case"pt":return r/72;case"pc":return r/6}return 1}},3440:function(h,l,t){h.exports=function(m){var x=(m=m||{}).center||[0,0,0],T=m.up||[0,1,0],d=m.right||b(T),M=m.radius||1,A=m.theta||0,C=m.phi||0;if(x=[].slice.call(x,0,3),T=[].slice.call(T,0,3),s(T,T),d=[].slice.call(d,0,3),s(d,d),"eye"in m){var P=m.eye,O=[P[0]-x[0],P[1]-x[1],P[2]-x[2]];a(d,O,T),p(d[0],d[1],d[2])<1e-6?d=b(T):s(d,d),M=p(O[0],O[1],O[2]);var z=u(T,O)/M,B=u(d,O)/M;C=Math.acos(z),A=Math.acos(B)}return M=Math.log(M),new g(m.zoomMin,m.zoomMax,x,T,d,M,A,C)};var o=t(8444),r=t(7437),n=t(4422),a=t(903),s=t(899),u=t(9305);function p(m,x,T){return Math.sqrt(Math.pow(m,2)+Math.pow(x,2)+Math.pow(T,2))}function c(m){return Math.min(1,Math.max(-1,m))}function b(m){var x=Math.abs(m[0]),T=Math.abs(m[1]),d=Math.abs(m[2]),M=[0,0,0];x>Math.max(T,d)?M[2]=1:T>Math.max(x,d)?M[0]=1:M[1]=1;for(var A=0,C=0,P=0;P<3;++P)A+=m[P]*m[P],C+=M[P]*m[P];for(P=0;P<3;++P)M[P]-=C/A*m[P];return s(M,M),M}function g(m,x,T,d,M,A,C,P){this.center=o(T),this.up=o(d),this.right=o(M),this.radius=o([A]),this.angle=o([C,P]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(m,x),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 O=0;O<16;++O)this.computedMatrix[O]=.5;this.recalcMatrix(0)}var f=g.prototype;f.setDistanceLimits=function(m,x){m=m>0?Math.log(m):-1/0,x=x>0?Math.log(x):1/0,x=Math.max(x,m),this.radius.bounds[0][0]=m,this.radius.bounds[1][0]=x},f.getDistanceLimits=function(m){var x=this.radius.bounds[0];return m?(m[0]=Math.exp(x[0][0]),m[1]=Math.exp(x[1][0]),m):[Math.exp(x[0][0]),Math.exp(x[1][0])]},f.recalcMatrix=function(m){this.center.curve(m),this.up.curve(m),this.right.curve(m),this.radius.curve(m),this.angle.curve(m);for(var x=this.computedUp,T=this.computedRight,d=0,M=0,A=0;A<3;++A)M+=x[A]*T[A],d+=x[A]*x[A];var C=Math.sqrt(d),P=0;for(A=0;A<3;++A)T[A]-=x[A]*M/d,P+=T[A]*T[A],x[A]/=C;var O=Math.sqrt(P);for(A=0;A<3;++A)T[A]/=O;var z=this.computedToward;a(z,x,T),s(z,z);var B=Math.exp(this.computedRadius[0]),Y=this.computedAngle[0],D=this.computedAngle[1],G=Math.cos(Y),V=Math.sin(Y),j=Math.cos(D),W=Math.sin(D),Z=this.computedCenter,ie=G*j,te=V*j,J=W,X=-G*W,ee=-V*W,re=j,oe=this.computedEye,ue=this.computedMatrix;for(A=0;A<3;++A){var ce=ie*T[A]+te*z[A]+J*x[A];ue[4*A+1]=X*T[A]+ee*z[A]+re*x[A],ue[4*A+2]=ce,ue[4*A+3]=0}var de=ue[1],me=ue[5],_e=ue[9],Se=ue[2],we=ue[6],xe=ue[10],De=me*xe-_e*we,Ee=_e*Se-de*xe,Me=de*we-me*Se,he=p(De,Ee,Me);for(De/=he,Ee/=he,Me/=he,ue[0]=De,ue[4]=Ee,ue[8]=Me,A=0;A<3;++A)oe[A]=Z[A]+ue[2+4*A]*B;for(A=0;A<3;++A){P=0;for(var fe=0;fe<3;++fe)P+=ue[A+4*fe]*oe[fe];ue[12+A]=-P}ue[15]=1},f.getMatrix=function(m,x){this.recalcMatrix(m);var T=this.computedMatrix;if(x){for(var d=0;d<16;++d)x[d]=T[d];return x}return T};var v=[0,0,0];f.rotate=function(m,x,T,d){if(this.angle.move(m,x,T),d){this.recalcMatrix(m);var M=this.computedMatrix;v[0]=M[2],v[1]=M[6],v[2]=M[10];for(var A=this.computedUp,C=this.computedRight,P=this.computedToward,O=0;O<3;++O)M[4*O]=A[O],M[4*O+1]=C[O],M[4*O+2]=P[O];for(n(M,M,d,v),O=0;O<3;++O)A[O]=M[4*O],C[O]=M[4*O+1];this.up.set(m,A[0],A[1],A[2]),this.right.set(m,C[0],C[1],C[2])}},f.pan=function(m,x,T,d){x=x||0,T=T||0,d=d||0,this.recalcMatrix(m);var M=this.computedMatrix,A=(Math.exp(this.computedRadius[0]),M[1]),C=M[5],P=M[9],O=p(A,C,P);A/=O,C/=O,P/=O;var z=M[0],B=M[4],Y=M[8],D=z*A+B*C+Y*P,G=p(z-=A*D,B-=C*D,Y-=P*D),V=(z/=G)*x+A*T,j=(B/=G)*x+C*T,W=(Y/=G)*x+P*T;this.center.move(m,V,j,W);var Z=Math.exp(this.computedRadius[0]);Z=Math.max(1e-4,Z+d),this.radius.set(m,Math.log(Z))},f.translate=function(m,x,T,d){this.center.move(m,x||0,T||0,d||0)},f.setMatrix=function(m,x,T,d){var M=1;typeof T=="number"&&(M=0|T),(M<0||M>3)&&(M=1);var A=(M+2)%3;x||(this.recalcMatrix(m),x=this.computedMatrix);var C=x[M],P=x[M+4],O=x[M+8];if(d){var z=Math.abs(C),B=Math.abs(P),Y=Math.abs(O),D=Math.max(z,B,Y);z===D?(C=C<0?-1:1,P=O=0):Y===D?(O=O<0?-1:1,C=P=0):(P=P<0?-1:1,C=O=0)}else{var G=p(C,P,O);C/=G,P/=G,O/=G}var V,j,W=x[A],Z=x[A+4],ie=x[A+8],te=W*C+Z*P+ie*O,J=p(W-=C*te,Z-=P*te,ie-=O*te),X=P*(ie/=J)-O*(Z/=J),ee=O*(W/=J)-C*ie,re=C*Z-P*W,oe=p(X,ee,re);if(X/=oe,ee/=oe,re/=oe,this.center.jump(m,Te,Ne,qe),this.radius.idle(m),this.up.jump(m,C,P,O),this.right.jump(m,W,Z,ie),M===2){var ue=x[1],ce=x[5],de=x[9],me=ue*W+ce*Z+de*ie,_e=ue*X+ce*ee+de*re;V=De<0?-Math.PI/2:Math.PI/2,j=Math.atan2(_e,me)}else{var Se=x[2],we=x[6],xe=x[10],De=Se*C+we*P+xe*O,Ee=Se*W+we*Z+xe*ie,Me=Se*X+we*ee+xe*re;V=Math.asin(c(De)),j=Math.atan2(Me,Ee)}this.angle.jump(m,j,V),this.recalcMatrix(m);var he=x[2],fe=x[6],ae=x[10],be=this.computedMatrix;r(be,x);var Ie=be[15],Te=be[12]/Ie,Ne=be[13]/Ie,qe=be[14]/Ie,ve=Math.exp(this.computedRadius[0]);this.center.jump(m,Te-he*ve,Ne-fe*ve,qe-ae*ve)},f.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},f.idle=function(m){this.center.idle(m),this.up.idle(m),this.right.idle(m),this.radius.idle(m),this.angle.idle(m)},f.flush=function(m){this.center.flush(m),this.up.flush(m),this.right.flush(m),this.radius.flush(m),this.angle.flush(m)},f.setDistance=function(m,x){x>0&&this.radius.set(m,Math.log(x))},f.lookAt=function(m,x,T,d){this.recalcMatrix(m),x=x||this.computedEye,T=T||this.computedCenter;var M=(d=d||this.computedUp)[0],A=d[1],C=d[2],P=p(M,A,C);if(!(P<1e-6)){M/=P,A/=P,C/=P;var O=x[0]-T[0],z=x[1]-T[1],B=x[2]-T[2],Y=p(O,z,B);if(!(Y<1e-6)){O/=Y,z/=Y,B/=Y;var D=this.computedRight,G=D[0],V=D[1],j=D[2],W=M*G+A*V+C*j,Z=p(G-=W*M,V-=W*A,j-=W*C);if(!(Z<.01&&(Z=p(G=A*B-C*z,V=C*O-M*B,j=M*z-A*O))<1e-6)){G/=Z,V/=Z,j/=Z,this.up.set(m,M,A,C),this.right.set(m,G,V,j),this.center.set(m,T[0],T[1],T[2]),this.radius.set(m,Math.log(Y));var ie=A*j-C*V,te=C*G-M*j,J=M*V-A*G,X=p(ie,te,J),ee=M*O+A*z+C*B,re=G*O+V*z+j*B,oe=(ie/=X)*O+(te/=X)*z+(J/=X)*B,ue=Math.asin(c(ee)),ce=Math.atan2(oe,re),de=this.angle._state,me=de[de.length-1],_e=de[de.length-2];me%=2*Math.PI;var Se=Math.abs(me+2*Math.PI-ce),we=Math.abs(me-ce),xe=Math.abs(me-2*Math.PI-ce);Se<we&&(me+=2*Math.PI),xe<we&&(me-=2*Math.PI),this.angle.jump(this.angle.lastT(),me,_e),this.angle.set(m,ce,ue)}}}}},9660:function(h){h.exports=function(t,o,r){var n=t*o,a=l*t,s=a-(a-t),u=t-s,p=l*o,c=p-(p-o),b=o-c,g=u*b-(n-s*c-u*c-s*b);return r?(r[0]=g,r[1]=n,r):[g,n]};var l=+(Math.pow(2,27)+1)},87:function(h){h.exports=function(l,t,o){var r=l+t,n=r-l,a=t-n,s=l-(r-n);return o?(o[0]=s+a,o[1]=r,o):[s+a,r]}},5306:function(h,l,t){var o=t(2288),r=t(3094),n=t(2146).lW;t.g.__TYPEDARRAY_POOL||(t.g.__TYPEDARRAY_POOL={UINT8:r([32,0]),UINT16:r([32,0]),UINT32:r([32,0]),BIGUINT64:r([32,0]),INT8:r([32,0]),INT16:r([32,0]),INT32:r([32,0]),BIGINT64:r([32,0]),FLOAT:r([32,0]),DOUBLE:r([32,0]),DATA:r([32,0]),UINT8C:r([32,0]),BUFFER:r([32,0])});var a=typeof Uint8ClampedArray<"u",s=typeof BigUint64Array<"u",u=typeof BigInt64Array<"u",p=t.g.__TYPEDARRAY_POOL;p.UINT8C||(p.UINT8C=r([32,0])),p.BIGUINT64||(p.BIGUINT64=r([32,0])),p.BIGINT64||(p.BIGINT64=r([32,0])),p.BUFFER||(p.BUFFER=r([32,0]));var c=p.DATA,b=p.BUFFER;function g(D){if(D){var G=D.length||D.byteLength,V=o.log2(G);c[V].push(D)}}function f(D){D=o.nextPow2(D);var G=o.log2(D),V=c[G];return V.length>0?V.pop():new ArrayBuffer(D)}function v(D){return new Uint8Array(f(D),0,D)}function m(D){return new Uint16Array(f(2*D),0,D)}function x(D){return new Uint32Array(f(4*D),0,D)}function T(D){return new Int8Array(f(D),0,D)}function d(D){return new Int16Array(f(2*D),0,D)}function M(D){return new Int32Array(f(4*D),0,D)}function A(D){return new Float32Array(f(4*D),0,D)}function C(D){return new Float64Array(f(8*D),0,D)}function P(D){return a?new Uint8ClampedArray(f(D),0,D):v(D)}function O(D){return s?new BigUint64Array(f(8*D),0,D):null}function z(D){return u?new BigInt64Array(f(8*D),0,D):null}function B(D){return new DataView(f(D),0,D)}function Y(D){D=o.nextPow2(D);var G=o.log2(D),V=b[G];return V.length>0?V.pop():new n(D)}l.free=function(D){if(n.isBuffer(D))b[o.log2(D.length)].push(D);else{if(Object.prototype.toString.call(D)!=="[object ArrayBuffer]"&&(D=D.buffer),!D)return;var G=D.length||D.byteLength,V=0|o.log2(G);c[V].push(D)}},l.freeUint8=l.freeUint16=l.freeUint32=l.freeBigUint64=l.freeInt8=l.freeInt16=l.freeInt32=l.freeBigInt64=l.freeFloat32=l.freeFloat=l.freeFloat64=l.freeDouble=l.freeUint8Clamped=l.freeDataView=function(D){g(D.buffer)},l.freeArrayBuffer=g,l.freeBuffer=function(D){b[o.log2(D.length)].push(D)},l.malloc=function(D,G){if(G===void 0||G==="arraybuffer")return f(D);switch(G){case"uint8":return v(D);case"uint16":return m(D);case"uint32":return x(D);case"int8":return T(D);case"int16":return d(D);case"int32":return M(D);case"float":case"float32":return A(D);case"double":case"float64":return C(D);case"uint8_clamped":return P(D);case"bigint64":return z(D);case"biguint64":return O(D);case"buffer":return Y(D);case"data":case"dataview":return B(D);default:return null}return null},l.mallocArrayBuffer=f,l.mallocUint8=v,l.mallocUint16=m,l.mallocUint32=x,l.mallocInt8=T,l.mallocInt16=d,l.mallocInt32=M,l.mallocFloat32=l.mallocFloat=A,l.mallocFloat64=l.mallocDouble=C,l.mallocUint8Clamped=P,l.mallocBigUint64=O,l.mallocBigInt64=z,l.mallocDataView=B,l.mallocBuffer=Y,l.clearCache=function(){for(var D=0;D<32;++D)p.UINT8[D].length=0,p.UINT16[D].length=0,p.UINT32[D].length=0,p.INT8[D].length=0,p.INT16[D].length=0,p.INT32[D].length=0,p.FLOAT[D].length=0,p.DOUBLE[D].length=0,p.BIGUINT64[D].length=0,p.BIGINT64[D].length=0,p.UINT8C[D].length=0,c[D].length=0,b[D].length=0}},1731:function(h){function l(o){this.roots=new Array(o),this.ranks=new Array(o);for(var r=0;r<o;++r)this.roots[r]=r,this.ranks[r]=0}h.exports=l;var t=l.prototype;Object.defineProperty(t,"length",{get:function(){return this.roots.length}}),t.makeSet=function(){var o=this.roots.length;return this.roots.push(o),this.ranks.push(0),o},t.find=function(o){for(var r=o,n=this.roots;n[o]!==o;)o=n[o];for(;n[r]!==o;){var a=n[r];n[r]=o,r=a}return o},t.link=function(o,r){var n=this.find(o),a=this.find(r);if(n!==a){var s=this.ranks,u=this.roots,p=s[n],c=s[a];p<c?u[n]=a:c<p?u[a]=n:(u[a]=n,++s[n])}}},1215:function(h){h.exports=function(l,t,o){return l.length===0?l:t?(o||l.sort(t),function(r,n){for(var a=1,s=r.length,u=r[0],p=r[0],c=1;c<s;++c)if(p=u,n(u=r[c],p)){if(c===a){a++;continue}r[a++]=u}return r.length=a,r}(l,t)):(o||l.sort(),function(r){for(var n=1,a=r.length,s=r[0],u=r[0],p=1;p<a;++p,u=s)if(u=s,(s=r[p])!==u){if(p===n){n++;continue}r[n++]=s}return r.length=n,r}(l))}},875:function(h,l,t){h.exports=function(a,s){return typeof s=="object"&&s!==null||(s={}),o(a,s.canvas||r,s.context||n,s)};var o=t(712),r=null,n=null;typeof document<"u"&&((r=document.createElement("canvas")).width=8192,r.height=1024,n=r.getContext("2d"))},712:function(h,l,t){h.exports=function(O,z,B,Y){var D=64,G=1.25,V={breaklines:!1,bolds:!1,italics:!1,subscripts:!1,superscripts:!1};return Y&&(Y.size&&Y.size>0&&(D=Y.size),Y.lineSpacing&&Y.lineSpacing>0&&(G=Y.lineSpacing),Y.styletags&&Y.styletags.breaklines&&(V.breaklines=!!Y.styletags.breaklines),Y.styletags&&Y.styletags.bolds&&(V.bolds=!!Y.styletags.bolds),Y.styletags&&Y.styletags.italics&&(V.italics=!!Y.styletags.italics),Y.styletags&&Y.styletags.subscripts&&(V.subscripts=!!Y.styletags.subscripts),Y.styletags&&Y.styletags.superscripts&&(V.superscripts=!!Y.styletags.superscripts)),B.font=[Y.fontStyle,Y.fontVariant,Y.fontWeight,D+"px",Y.font].filter(function(j){return j}).join(" "),B.textAlign="start",B.textBaseline="alphabetic",B.direction="ltr",P(function(j,W,Z,ie,te,J){Z=Z.replace(/\n/g,""),Z=J.breaklines===!0?Z.replace(/\<br\>/g,`
|
||
`):Z.replace(/\<br\>/g," ");var X="",ee=[];for(ce=0;ce<Z.length;++ce)ee[ce]=X;J.bolds===!0&&(ee=M(p,c,Z,ee)),J.italics===!0&&(ee=M(b,g,Z,ee)),J.superscripts===!0&&(ee=M(f,m,Z,ee)),J.subscripts===!0&&(ee=M(x,d,Z,ee));var re=[],oe="";for(ce=0;ce<Z.length;++ce)ee[ce]!==null&&(oe+=Z[ce],re.push(ee[ce]));var ue,ce,de,me,_e,Se=oe.split(`
|
||
`),we=Se.length,xe=Math.round(te*ie),De=ie,Ee=2*ie,Me=0,he=we*xe+Ee;j.height<he&&(j.height=he),W.fillStyle="#000",W.fillRect(0,0,j.width,j.height),W.fillStyle="#fff";var fe=0,ae="";function be(){if(ae!==""){var ze=W.measureText(ae).width;W.fillText(ae,De+de,Ee+me),de+=ze}}function Ie(){return Math.round(_e)+"px "}function Te(ze,Ue){var Ve=""+W.font;if(J.subscripts===!0){var Ye=ze.indexOf(T),$e=Ue.indexOf(T),rt=Ye>-1?parseInt(ze[1+Ye]):0,ht=$e>-1?parseInt(Ue[1+$e]):0;rt!==ht&&(Ve=Ve.replace(Ie(),"?px "),_e*=Math.pow(.75,ht-rt),Ve=Ve.replace("?px ",Ie())),me+=.25*xe*(ht-rt)}if(J.superscripts===!0){var nt=ze.indexOf(v),bt=Ue.indexOf(v),wt=nt>-1?parseInt(ze[1+nt]):0,ut=bt>-1?parseInt(Ue[1+bt]):0;wt!==ut&&(Ve=Ve.replace(Ie(),"?px "),_e*=Math.pow(.75,ut-wt),Ve=Ve.replace("?px ",Ie())),me-=.25*xe*(ut-wt)}if(J.bolds===!0){var lt=ze.indexOf(c)>-1,Tt=Ue.indexOf(c)>-1;!lt&&Tt&&(Ve=Et?Ve.replace("italic ","italic bold "):"bold "+Ve),lt&&!Tt&&(Ve=Ve.replace("bold ",""))}if(J.italics===!0){var Et=ze.indexOf(g)>-1,St=Ue.indexOf(g)>-1;!Et&&St&&(Ve="italic "+Ve),Et&&!St&&(Ve=Ve.replace("italic ",""))}W.font=Ve}for(ue=0;ue<we;++ue){var Ne=Se[ue]+`
|
||
`;for(de=0,me=ue*xe,_e=ie,ae="",ce=0;ce<Ne.length;++ce){var qe=ce+fe<re.length?re[ce+fe]:re[re.length-1];X===qe?ae+=Ne[ce]:(be(),ae=Ne[ce],qe!==void 0&&(Te(X,qe),X=qe))}be(),fe+=Ne.length;var ve=0|Math.round(de+2*De);Me<ve&&(Me=ve)}var Ce=Me,Ae=Ee+xe*we;return r(W.getImageData(0,0,Ce,Ae).data,[Ae,Ce,4]).pick(-1,-1,0).transpose(1,0)}(z,B,O,D,G,V),Y,D)},h.exports.processPixels=P;var o=t(4162),r=t(5050),n=t(8243),a=t(197),s=t(7761),u=t(8040),p="b",c="b|",b="i",g="i|",f="sup",v="+",m="+1",x="sub",T="-",d="-1";function M(O,z,B,Y){for(var D="<"+O+">",G="</"+O+">",V=D.length,j=G.length,W=z[0]===v||z[0]===T,Z=0,ie=-j;Z>-1&&(Z=B.indexOf(D,Z))!==-1&&(ie=B.indexOf(G,Z+V))!==-1&&!(ie<=Z);){for(var te=Z;te<ie+j;++te)if(te<Z+V||te>=ie)Y[te]=null,B=B.substr(0,te)+" "+B.substr(te+1);else if(Y[te]!==null){var J=Y[te].indexOf(z[0]);J===-1?Y[te]+=z:W&&(Y[te]=Y[te].substr(0,J+1)+(1+parseInt(Y[te][J+1]))+Y[te].substr(J+2))}var X=Z+V,ee=B.substr(X,ie-X).indexOf(D);Z=ee!==-1?ee:ie+j}return Y}function A(O,z){var B=o(O,128);return z?n(B.cells,B.positions,.25):{edges:B.cells,positions:B.positions}}function C(O,z,B,Y){var D=A(O,Y),G=function(ue,ce,de){for(var me=ce.textAlign||"start",_e=ce.textBaseline||"alphabetic",Se=[1<<30,1<<30],we=[0,0],xe=ue.length,De=0;De<xe;++De)for(var Ee=ue[De],Me=0;Me<2;++Me)Se[Me]=0|Math.min(Se[Me],Ee[Me]),we[Me]=0|Math.max(we[Me],Ee[Me]);var he=0;switch(me){case"center":he=-.5*(Se[0]+we[0]);break;case"right":case"end":he=-we[0];break;case"left":case"start":he=-Se[0];break;default:throw new Error("vectorize-text: Unrecognized textAlign: '"+me+"'")}var fe=0;switch(_e){case"hanging":case"top":fe=-Se[1];break;case"middle":fe=-.5*(Se[1]+we[1]);break;case"alphabetic":case"ideographic":fe=-3*de;break;case"bottom":fe=-we[1];break;default:throw new Error("vectorize-text: Unrecoginized textBaseline: '"+_e+"'")}var ae=1/de;return"lineHeight"in ce?ae*=+ce.lineHeight:"width"in ce?ae=ce.width/(we[0]-Se[0]):"height"in ce&&(ae=ce.height/(we[1]-Se[1])),ue.map(function(be){return[ae*(be[0]+he),ae*(be[1]+fe)]})}(D.positions,z,B),V=D.edges,j=z.orientation==="ccw";if(a(G,V),z.polygons||z.polygon||z.polyline){for(var W=u(V,G),Z=new Array(W.length),ie=0;ie<W.length;++ie){for(var te=W[ie],J=new Array(te.length),X=0;X<te.length;++X){for(var ee=te[X],re=new Array(ee.length),oe=0;oe<ee.length;++oe)re[oe]=G[ee[oe]].slice();j&&re.reverse(),J[X]=re}Z[ie]=J}return Z}return z.triangles||z.triangulate||z.triangle?{cells:s(G,V,{delaunay:!1,exterior:!1,interior:!0}),positions:G}:{edges:V,positions:G}}function P(O,z,B){try{return C(O,z,B,!0)}catch{}try{return C(O,z,B,!1)}catch{}return z.polygons||z.polyline||z.polygon?[]:z.triangles||z.triangulate||z.triangle?{cells:[],positions:[]}:{edges:[],positions:[]}}},5346:function(h){(function(){if(typeof ses>"u"||!ses.ok||ses.ok()){typeof ses<"u"&&(ses.weakMapPermitHostObjects=x);var l=!1;if(typeof WeakMap=="function"){var t=WeakMap;if(!(typeof navigator<"u"&&/Firefox/.test(navigator.userAgent))){var o=new t,r=Object.freeze({});if(o.set(r,1),o.get(r)===1)return void(h.exports=WeakMap);l=!0}}var n=Object.getOwnPropertyNames,a=Object.defineProperty,s=Object.isExtensible,u="weakmap:",p=u+"ident:"+Math.random()+"___";if(typeof crypto<"u"&&typeof crypto.getRandomValues=="function"&&typeof ArrayBuffer=="function"&&typeof Uint8Array=="function"){var c=new ArrayBuffer(25),b=new Uint8Array(c);crypto.getRandomValues(b),p=u+"rand:"+Array.prototype.map.call(b,function(C){return(C%36).toString(36)}).join("")+"___"}if(a(Object,"getOwnPropertyNames",{value:function(C){return n(C).filter(T)}}),"getPropertyNames"in Object){var g=Object.getPropertyNames;a(Object,"getPropertyNames",{value:function(C){return g(C).filter(T)}})}(function(){var C=Object.freeze;a(Object,"freeze",{value:function(z){return d(z),C(z)}});var P=Object.seal;a(Object,"seal",{value:function(z){return d(z),P(z)}});var O=Object.preventExtensions;a(Object,"preventExtensions",{value:function(z){return d(z),O(z)}})})();var f=!1,v=0,m=function(){this instanceof m||A();var C=[],P=[],O=v++;return Object.create(m.prototype,{get___:{value:M(function(z,B){var Y,D=d(z);return D?O in D?D[O]:B:(Y=C.indexOf(z))>=0?P[Y]:B})},has___:{value:M(function(z){var B=d(z);return B?O in B:C.indexOf(z)>=0})},set___:{value:M(function(z,B){var Y,D=d(z);return D?D[O]=B:(Y=C.indexOf(z))>=0?P[Y]=B:(Y=C.length,P[Y]=B,C[Y]=z),this})},delete___:{value:M(function(z){var B,Y,D=d(z);return D?O in D&&delete D[O]:!((B=C.indexOf(z))<0||(Y=C.length-1,C[B]=void 0,P[B]=P[Y],C[B]=C[Y],C.length=Y,P.length=Y,0))})}})};m.prototype=Object.create(Object.prototype,{get:{value:function(C,P){return this.get___(C,P)},writable:!0,configurable:!0},has:{value:function(C){return this.has___(C)},writable:!0,configurable:!0},set:{value:function(C,P){return this.set___(C,P)},writable:!0,configurable:!0},delete:{value:function(C){return this.delete___(C)},writable:!0,configurable:!0}}),typeof t=="function"?function(){function C(){this instanceof m||A();var P,O=new t,z=void 0,B=!1;return P=l?function(Y,D){return O.set(Y,D),O.has(Y)||(z||(z=new m),z.set(Y,D)),this}:function(Y,D){if(B)try{O.set(Y,D)}catch{z||(z=new m),z.set___(Y,D)}else O.set(Y,D);return this},Object.create(m.prototype,{get___:{value:M(function(Y,D){return z?O.has(Y)?O.get(Y):z.get___(Y,D):O.get(Y,D)})},has___:{value:M(function(Y){return O.has(Y)||!!z&&z.has___(Y)})},set___:{value:M(P)},delete___:{value:M(function(Y){var D=!!O.delete(Y);return z&&z.delete___(Y)||D})},permitHostObjects___:{value:M(function(Y){if(Y!==x)throw new Error("bogus call to permitHostObjects___");B=!0})}})}l&&typeof Proxy<"u"&&(Proxy=void 0),C.prototype=m.prototype,h.exports=C,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy<"u"&&(Proxy=void 0),h.exports=m)}function x(C){C.permitHostObjects___&&C.permitHostObjects___(x)}function T(C){return!(C.substr(0,8)==u&&C.substr(C.length-3)==="___")}function d(C){if(C!==Object(C))throw new TypeError("Not an object: "+C);var P=C[p];if(P&&P.key===C)return P;if(s(C)){P={key:C};try{return a(C,p,{value:P,writable:!1,enumerable:!1,configurable:!1}),P}catch{return}}}function M(C){return C.prototype=null,Object.freeze(C)}function A(){f||typeof console>"u"||(f=!0,console.warn("WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future."))}})()},9222:function(h,l,t){var o=t(7178);h.exports=function(){var r={};return function(n){if((typeof n!="object"||n===null)&&typeof n!="function")throw new Error("Weakmap-shim: Key must be object");var a=n.valueOf(r);return a&&a.identity===r?a:o(n,r)}}},7178:function(h){h.exports=function(l,t){var o={identity:t},r=l.valueOf;return Object.defineProperty(l,"valueOf",{value:function(n){return n!==t?r.apply(this,arguments):o},writable:!0}),o}},4037:function(h,l,t){var o=t(9222);h.exports=function(){var r=o();return{get:function(n,a){var s=r(n);return s.hasOwnProperty("value")?s.value:a},set:function(n,a){return r(n).value=a,this},has:function(n){return"value"in r(n)},delete:function(n){return delete r(n).value}}}},6183:function(h){h.exports=function(l){var t={};return function(o,r,n){var a=o.dtype,s=o.order,u=[a,s.join()].join(),p=t[u];return p||(t[u]=p=l([a,s])),p(o.shape.slice(0),o.data,o.stride,0|o.offset,r,n)}}(function(){return function(l,t,o,r,n,a){var s=l[0],u=o[0],p=[0],c=u;r|=0;var b=0,g=u;for(b=0;b<s;++b){var f=t[r]-a,v=t[r+c]-a;f>=0!=v>=0&&n.push(p[0]+.5+.5*(f+v)/(f-v)),r+=g,++p[0]}}}.bind(void 0,{funcName:"zeroCrossings"}))},9584:function(h,l,t){h.exports=function(r,n){var a=[];return n=+n||0,o(r.hi(r.shape[0]-1),a,n),a};var o=t(6183)},6601:function(){}},_={};function y(h){var l=_[h];if(l!==void 0)return l.exports;var t=_[h]={id:h,loaded:!1,exports:{}};return i[h].call(t.exports,t,t.exports,y),t.loaded=!0,t.exports}return y.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),y.nmd=function(h){return h.paths=[],h.children||(h.children=[]),h},y(7386)}()},R.exports=w()},12856:function(R,E,e){function w(he,fe){for(var ae=0;ae<fe.length;ae++){var be=fe[ae];be.enumerable=be.enumerable||!1,be.configurable=!0,"value"in be&&(be.writable=!0),Object.defineProperty(he,be.key,be)}}function k(he,fe){return k=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(ae,be){return ae.__proto__=be,ae},k(he,fe)}function i(he){if(he===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return he}function _(he){return _=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(fe){return fe.__proto__||Object.getPrototypeOf(fe)},_(he)}function y(he){return y=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(fe){return typeof fe}:function(fe){return fe&&typeof Symbol=="function"&&fe.constructor===Symbol&&fe!==Symbol.prototype?"symbol":typeof fe},y(he)}var h=e(95341),l=e(95280),t=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;E.Buffer=n,E.SlowBuffer=function(he){return+he!=he&&(he=0),n.alloc(+he)},E.INSPECT_MAX_BYTES=50;var o=2147483647;function r(he){if(he>o)throw new RangeError('The value "'+he+'" is invalid for option "size"');var fe=new Uint8Array(he);return Object.setPrototypeOf(fe,n.prototype),fe}function n(he,fe,ae){if(typeof he=="number"){if(typeof fe=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return u(he)}return a(he,fe,ae)}function a(he,fe,ae){if(typeof he=="string")return function(Te,Ne){if(typeof Ne=="string"&&Ne!==""||(Ne="utf8"),!n.isEncoding(Ne))throw new TypeError("Unknown encoding: "+Ne);var qe=0|g(Te,Ne),ve=r(qe),Ce=ve.write(Te,Ne);return Ce!==qe&&(ve=ve.slice(0,Ce)),ve}(he,fe);if(ArrayBuffer.isView(he))return function(Te){if(we(Te,Uint8Array)){var Ne=new Uint8Array(Te);return c(Ne.buffer,Ne.byteOffset,Ne.byteLength)}return p(Te)}(he);if(he==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+y(he));if(we(he,ArrayBuffer)||he&&we(he.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(we(he,SharedArrayBuffer)||he&&we(he.buffer,SharedArrayBuffer)))return c(he,fe,ae);if(typeof he=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var be=he.valueOf&&he.valueOf();if(be!=null&&be!==he)return n.from(be,fe,ae);var Ie=function(Te){if(n.isBuffer(Te)){var Ne=0|b(Te.length),qe=r(Ne);return qe.length===0||Te.copy(qe,0,0,Ne),qe}return Te.length!==void 0?typeof Te.length!="number"||xe(Te.length)?r(0):p(Te):Te.type==="Buffer"&&Array.isArray(Te.data)?p(Te.data):void 0}(he);if(Ie)return Ie;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof he[Symbol.toPrimitive]=="function")return n.from(he[Symbol.toPrimitive]("string"),fe,ae);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+y(he))}function s(he){if(typeof he!="number")throw new TypeError('"size" argument must be of type number');if(he<0)throw new RangeError('The value "'+he+'" is invalid for option "size"')}function u(he){return s(he),r(he<0?0:0|b(he))}function p(he){for(var fe=he.length<0?0:0|b(he.length),ae=r(fe),be=0;be<fe;be+=1)ae[be]=255&he[be];return ae}function c(he,fe,ae){if(fe<0||he.byteLength<fe)throw new RangeError('"offset" is outside of buffer bounds');if(he.byteLength<fe+(ae||0))throw new RangeError('"length" is outside of buffer bounds');var be;return be=fe===void 0&&ae===void 0?new Uint8Array(he):ae===void 0?new Uint8Array(he,fe):new Uint8Array(he,fe,ae),Object.setPrototypeOf(be,n.prototype),be}function b(he){if(he>=o)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o.toString(16)+" bytes");return 0|he}function g(he,fe){if(n.isBuffer(he))return he.length;if(ArrayBuffer.isView(he)||we(he,ArrayBuffer))return he.byteLength;if(typeof he!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+y(he));var ae=he.length,be=arguments.length>2&&arguments[2]===!0;if(!be&&ae===0)return 0;for(var Ie=!1;;)switch(fe){case"ascii":case"latin1":case"binary":return ae;case"utf8":case"utf-8":return me(he).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*ae;case"hex":return ae>>>1;case"base64":return _e(he).length;default:if(Ie)return be?-1:me(he).length;fe=(""+fe).toLowerCase(),Ie=!0}}function f(he,fe,ae){var be=!1;if((fe===void 0||fe<0)&&(fe=0),fe>this.length||((ae===void 0||ae>this.length)&&(ae=this.length),ae<=0)||(ae>>>=0)<=(fe>>>=0))return"";for(he||(he="utf8");;)switch(he){case"hex":return D(this,fe,ae);case"utf8":case"utf-8":return O(this,fe,ae);case"ascii":return B(this,fe,ae);case"latin1":case"binary":return Y(this,fe,ae);case"base64":return P(this,fe,ae);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return G(this,fe,ae);default:if(be)throw new TypeError("Unknown encoding: "+he);he=(he+"").toLowerCase(),be=!0}}function v(he,fe,ae){var be=he[fe];he[fe]=he[ae],he[ae]=be}function m(he,fe,ae,be,Ie){if(he.length===0)return-1;if(typeof ae=="string"?(be=ae,ae=0):ae>2147483647?ae=2147483647:ae<-2147483648&&(ae=-2147483648),xe(ae=+ae)&&(ae=Ie?0:he.length-1),ae<0&&(ae=he.length+ae),ae>=he.length){if(Ie)return-1;ae=he.length-1}else if(ae<0){if(!Ie)return-1;ae=0}if(typeof fe=="string"&&(fe=n.from(fe,be)),n.isBuffer(fe))return fe.length===0?-1:x(he,fe,ae,be,Ie);if(typeof fe=="number")return fe&=255,typeof Uint8Array.prototype.indexOf=="function"?Ie?Uint8Array.prototype.indexOf.call(he,fe,ae):Uint8Array.prototype.lastIndexOf.call(he,fe,ae):x(he,[fe],ae,be,Ie);throw new TypeError("val must be string, number or Buffer")}function x(he,fe,ae,be,Ie){var Te,Ne=1,qe=he.length,ve=fe.length;if(be!==void 0&&((be=String(be).toLowerCase())==="ucs2"||be==="ucs-2"||be==="utf16le"||be==="utf-16le")){if(he.length<2||fe.length<2)return-1;Ne=2,qe/=2,ve/=2,ae/=2}function Ce(Ve,Ye){return Ne===1?Ve[Ye]:Ve.readUInt16BE(Ye*Ne)}if(Ie){var Ae=-1;for(Te=ae;Te<qe;Te++)if(Ce(he,Te)===Ce(fe,Ae===-1?0:Te-Ae)){if(Ae===-1&&(Ae=Te),Te-Ae+1===ve)return Ae*Ne}else Ae!==-1&&(Te-=Te-Ae),Ae=-1}else for(ae+ve>qe&&(ae=qe-ve),Te=ae;Te>=0;Te--){for(var ze=!0,Ue=0;Ue<ve;Ue++)if(Ce(he,Te+Ue)!==Ce(fe,Ue)){ze=!1;break}if(ze)return Te}return-1}function T(he,fe,ae,be){ae=Number(ae)||0;var Ie=he.length-ae;be?(be=Number(be))>Ie&&(be=Ie):be=Ie;var Te,Ne=fe.length;for(be>Ne/2&&(be=Ne/2),Te=0;Te<be;++Te){var qe=parseInt(fe.substr(2*Te,2),16);if(xe(qe))return Te;he[ae+Te]=qe}return Te}function d(he,fe,ae,be){return Se(me(fe,he.length-ae),he,ae,be)}function M(he,fe,ae,be){return Se(function(Ie){for(var Te=[],Ne=0;Ne<Ie.length;++Ne)Te.push(255&Ie.charCodeAt(Ne));return Te}(fe),he,ae,be)}function A(he,fe,ae,be){return Se(_e(fe),he,ae,be)}function C(he,fe,ae,be){return Se(function(Ie,Te){for(var Ne,qe,ve,Ce=[],Ae=0;Ae<Ie.length&&!((Te-=2)<0);++Ae)qe=(Ne=Ie.charCodeAt(Ae))>>8,ve=Ne%256,Ce.push(ve),Ce.push(qe);return Ce}(fe,he.length-ae),he,ae,be)}function P(he,fe,ae){return fe===0&&ae===he.length?h.fromByteArray(he):h.fromByteArray(he.slice(fe,ae))}function O(he,fe,ae){ae=Math.min(he.length,ae);for(var be=[],Ie=fe;Ie<ae;){var Te=he[Ie],Ne=null,qe=Te>239?4:Te>223?3:Te>191?2:1;if(Ie+qe<=ae){var ve=void 0,Ce=void 0,Ae=void 0,ze=void 0;switch(qe){case 1:Te<128&&(Ne=Te);break;case 2:(192&(ve=he[Ie+1]))==128&&(ze=(31&Te)<<6|63&ve)>127&&(Ne=ze);break;case 3:ve=he[Ie+1],Ce=he[Ie+2],(192&ve)==128&&(192&Ce)==128&&(ze=(15&Te)<<12|(63&ve)<<6|63&Ce)>2047&&(ze<55296||ze>57343)&&(Ne=ze);break;case 4:ve=he[Ie+1],Ce=he[Ie+2],Ae=he[Ie+3],(192&ve)==128&&(192&Ce)==128&&(192&Ae)==128&&(ze=(15&Te)<<18|(63&ve)<<12|(63&Ce)<<6|63&Ae)>65535&&ze<1114112&&(Ne=ze)}}Ne===null?(Ne=65533,qe=1):Ne>65535&&(Ne-=65536,be.push(Ne>>>10&1023|55296),Ne=56320|1023&Ne),be.push(Ne),Ie+=qe}return function(Ue){var Ve=Ue.length;if(Ve<=z)return String.fromCharCode.apply(String,Ue);for(var Ye="",$e=0;$e<Ve;)Ye+=String.fromCharCode.apply(String,Ue.slice($e,$e+=z));return Ye}(be)}E.kMaxLength=o,n.TYPED_ARRAY_SUPPORT=function(){try{var he=new Uint8Array(1),fe={foo:function(){return 42}};return Object.setPrototypeOf(fe,Uint8Array.prototype),Object.setPrototypeOf(he,fe),he.foo()===42}catch{return!1}}(),n.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."),Object.defineProperty(n.prototype,"parent",{enumerable:!0,get:function(){if(n.isBuffer(this))return this.buffer}}),Object.defineProperty(n.prototype,"offset",{enumerable:!0,get:function(){if(n.isBuffer(this))return this.byteOffset}}),n.poolSize=8192,n.from=function(he,fe,ae){return a(he,fe,ae)},Object.setPrototypeOf(n.prototype,Uint8Array.prototype),Object.setPrototypeOf(n,Uint8Array),n.alloc=function(he,fe,ae){return function(be,Ie,Te){return s(be),be<=0?r(be):Ie!==void 0?typeof Te=="string"?r(be).fill(Ie,Te):r(be).fill(Ie):r(be)}(he,fe,ae)},n.allocUnsafe=function(he){return u(he)},n.allocUnsafeSlow=function(he){return u(he)},n.isBuffer=function(he){return he!=null&&he._isBuffer===!0&&he!==n.prototype},n.compare=function(he,fe){if(we(he,Uint8Array)&&(he=n.from(he,he.offset,he.byteLength)),we(fe,Uint8Array)&&(fe=n.from(fe,fe.offset,fe.byteLength)),!n.isBuffer(he)||!n.isBuffer(fe))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(he===fe)return 0;for(var ae=he.length,be=fe.length,Ie=0,Te=Math.min(ae,be);Ie<Te;++Ie)if(he[Ie]!==fe[Ie]){ae=he[Ie],be=fe[Ie];break}return ae<be?-1:be<ae?1:0},n.isEncoding=function(he){switch(String(he).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},n.concat=function(he,fe){if(!Array.isArray(he))throw new TypeError('"list" argument must be an Array of Buffers');if(he.length===0)return n.alloc(0);var ae;if(fe===void 0)for(fe=0,ae=0;ae<he.length;++ae)fe+=he[ae].length;var be=n.allocUnsafe(fe),Ie=0;for(ae=0;ae<he.length;++ae){var Te=he[ae];if(we(Te,Uint8Array))Ie+Te.length>be.length?(n.isBuffer(Te)||(Te=n.from(Te)),Te.copy(be,Ie)):Uint8Array.prototype.set.call(be,Te,Ie);else{if(!n.isBuffer(Te))throw new TypeError('"list" argument must be an Array of Buffers');Te.copy(be,Ie)}Ie+=Te.length}return be},n.byteLength=g,n.prototype._isBuffer=!0,n.prototype.swap16=function(){var he=this.length;if(he%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var fe=0;fe<he;fe+=2)v(this,fe,fe+1);return this},n.prototype.swap32=function(){var he=this.length;if(he%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var fe=0;fe<he;fe+=4)v(this,fe,fe+3),v(this,fe+1,fe+2);return this},n.prototype.swap64=function(){var he=this.length;if(he%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var fe=0;fe<he;fe+=8)v(this,fe,fe+7),v(this,fe+1,fe+6),v(this,fe+2,fe+5),v(this,fe+3,fe+4);return this},n.prototype.toString=function(){var he=this.length;return he===0?"":arguments.length===0?O(this,0,he):f.apply(this,arguments)},n.prototype.toLocaleString=n.prototype.toString,n.prototype.equals=function(he){if(!n.isBuffer(he))throw new TypeError("Argument must be a Buffer");return this===he||n.compare(this,he)===0},n.prototype.inspect=function(){var he="",fe=E.INSPECT_MAX_BYTES;return he=this.toString("hex",0,fe).replace(/(.{2})/g,"$1 ").trim(),this.length>fe&&(he+=" ... "),"<Buffer "+he+">"},t&&(n.prototype[t]=n.prototype.inspect),n.prototype.compare=function(he,fe,ae,be,Ie){if(we(he,Uint8Array)&&(he=n.from(he,he.offset,he.byteLength)),!n.isBuffer(he))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+y(he));if(fe===void 0&&(fe=0),ae===void 0&&(ae=he?he.length:0),be===void 0&&(be=0),Ie===void 0&&(Ie=this.length),fe<0||ae>he.length||be<0||Ie>this.length)throw new RangeError("out of range index");if(be>=Ie&&fe>=ae)return 0;if(be>=Ie)return-1;if(fe>=ae)return 1;if(this===he)return 0;for(var Te=(Ie>>>=0)-(be>>>=0),Ne=(ae>>>=0)-(fe>>>=0),qe=Math.min(Te,Ne),ve=this.slice(be,Ie),Ce=he.slice(fe,ae),Ae=0;Ae<qe;++Ae)if(ve[Ae]!==Ce[Ae]){Te=ve[Ae],Ne=Ce[Ae];break}return Te<Ne?-1:Ne<Te?1:0},n.prototype.includes=function(he,fe,ae){return this.indexOf(he,fe,ae)!==-1},n.prototype.indexOf=function(he,fe,ae){return m(this,he,fe,ae,!0)},n.prototype.lastIndexOf=function(he,fe,ae){return m(this,he,fe,ae,!1)},n.prototype.write=function(he,fe,ae,be){if(fe===void 0)be="utf8",ae=this.length,fe=0;else if(ae===void 0&&typeof fe=="string")be=fe,ae=this.length,fe=0;else{if(!isFinite(fe))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");fe>>>=0,isFinite(ae)?(ae>>>=0,be===void 0&&(be="utf8")):(be=ae,ae=void 0)}var Ie=this.length-fe;if((ae===void 0||ae>Ie)&&(ae=Ie),he.length>0&&(ae<0||fe<0)||fe>this.length)throw new RangeError("Attempt to write outside buffer bounds");be||(be="utf8");for(var Te=!1;;)switch(be){case"hex":return T(this,he,fe,ae);case"utf8":case"utf-8":return d(this,he,fe,ae);case"ascii":case"latin1":case"binary":return M(this,he,fe,ae);case"base64":return A(this,he,fe,ae);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return C(this,he,fe,ae);default:if(Te)throw new TypeError("Unknown encoding: "+be);be=(""+be).toLowerCase(),Te=!0}},n.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var z=4096;function B(he,fe,ae){var be="";ae=Math.min(he.length,ae);for(var Ie=fe;Ie<ae;++Ie)be+=String.fromCharCode(127&he[Ie]);return be}function Y(he,fe,ae){var be="";ae=Math.min(he.length,ae);for(var Ie=fe;Ie<ae;++Ie)be+=String.fromCharCode(he[Ie]);return be}function D(he,fe,ae){var be=he.length;(!fe||fe<0)&&(fe=0),(!ae||ae<0||ae>be)&&(ae=be);for(var Ie="",Te=fe;Te<ae;++Te)Ie+=De[he[Te]];return Ie}function G(he,fe,ae){for(var be=he.slice(fe,ae),Ie="",Te=0;Te<be.length-1;Te+=2)Ie+=String.fromCharCode(be[Te]+256*be[Te+1]);return Ie}function V(he,fe,ae){if(he%1!=0||he<0)throw new RangeError("offset is not uint");if(he+fe>ae)throw new RangeError("Trying to access beyond buffer length")}function j(he,fe,ae,be,Ie,Te){if(!n.isBuffer(he))throw new TypeError('"buffer" argument must be a Buffer instance');if(fe>Ie||fe<Te)throw new RangeError('"value" argument is out of bounds');if(ae+be>he.length)throw new RangeError("Index out of range")}function W(he,fe,ae,be,Ie){oe(fe,be,Ie,he,ae,7);var Te=Number(fe&BigInt(4294967295));he[ae++]=Te,Te>>=8,he[ae++]=Te,Te>>=8,he[ae++]=Te,Te>>=8,he[ae++]=Te;var Ne=Number(fe>>BigInt(32)&BigInt(4294967295));return he[ae++]=Ne,Ne>>=8,he[ae++]=Ne,Ne>>=8,he[ae++]=Ne,Ne>>=8,he[ae++]=Ne,ae}function Z(he,fe,ae,be,Ie){oe(fe,be,Ie,he,ae,7);var Te=Number(fe&BigInt(4294967295));he[ae+7]=Te,Te>>=8,he[ae+6]=Te,Te>>=8,he[ae+5]=Te,Te>>=8,he[ae+4]=Te;var Ne=Number(fe>>BigInt(32)&BigInt(4294967295));return he[ae+3]=Ne,Ne>>=8,he[ae+2]=Ne,Ne>>=8,he[ae+1]=Ne,Ne>>=8,he[ae]=Ne,ae+8}function ie(he,fe,ae,be,Ie,Te){if(ae+be>he.length)throw new RangeError("Index out of range");if(ae<0)throw new RangeError("Index out of range")}function te(he,fe,ae,be,Ie){return fe=+fe,ae>>>=0,Ie||ie(he,0,ae,4),l.write(he,fe,ae,be,23,4),ae+4}function J(he,fe,ae,be,Ie){return fe=+fe,ae>>>=0,Ie||ie(he,0,ae,8),l.write(he,fe,ae,be,52,8),ae+8}n.prototype.slice=function(he,fe){var ae=this.length;(he=~~he)<0?(he+=ae)<0&&(he=0):he>ae&&(he=ae),(fe=fe===void 0?ae:~~fe)<0?(fe+=ae)<0&&(fe=0):fe>ae&&(fe=ae),fe<he&&(fe=he);var be=this.subarray(he,fe);return Object.setPrototypeOf(be,n.prototype),be},n.prototype.readUintLE=n.prototype.readUIntLE=function(he,fe,ae){he>>>=0,fe>>>=0,ae||V(he,fe,this.length);for(var be=this[he],Ie=1,Te=0;++Te<fe&&(Ie*=256);)be+=this[he+Te]*Ie;return be},n.prototype.readUintBE=n.prototype.readUIntBE=function(he,fe,ae){he>>>=0,fe>>>=0,ae||V(he,fe,this.length);for(var be=this[he+--fe],Ie=1;fe>0&&(Ie*=256);)be+=this[he+--fe]*Ie;return be},n.prototype.readUint8=n.prototype.readUInt8=function(he,fe){return he>>>=0,fe||V(he,1,this.length),this[he]},n.prototype.readUint16LE=n.prototype.readUInt16LE=function(he,fe){return he>>>=0,fe||V(he,2,this.length),this[he]|this[he+1]<<8},n.prototype.readUint16BE=n.prototype.readUInt16BE=function(he,fe){return he>>>=0,fe||V(he,2,this.length),this[he]<<8|this[he+1]},n.prototype.readUint32LE=n.prototype.readUInt32LE=function(he,fe){return he>>>=0,fe||V(he,4,this.length),(this[he]|this[he+1]<<8|this[he+2]<<16)+16777216*this[he+3]},n.prototype.readUint32BE=n.prototype.readUInt32BE=function(he,fe){return he>>>=0,fe||V(he,4,this.length),16777216*this[he]+(this[he+1]<<16|this[he+2]<<8|this[he+3])},n.prototype.readBigUInt64LE=Ee(function(he){ue(he>>>=0,"offset");var fe=this[he],ae=this[he+7];fe!==void 0&&ae!==void 0||ce(he,this.length-8);var be=fe+this[++he]*Math.pow(2,8)+this[++he]*Math.pow(2,16)+this[++he]*Math.pow(2,24),Ie=this[++he]+this[++he]*Math.pow(2,8)+this[++he]*Math.pow(2,16)+ae*Math.pow(2,24);return BigInt(be)+(BigInt(Ie)<<BigInt(32))}),n.prototype.readBigUInt64BE=Ee(function(he){ue(he>>>=0,"offset");var fe=this[he],ae=this[he+7];fe!==void 0&&ae!==void 0||ce(he,this.length-8);var be=fe*Math.pow(2,24)+this[++he]*Math.pow(2,16)+this[++he]*Math.pow(2,8)+this[++he],Ie=this[++he]*Math.pow(2,24)+this[++he]*Math.pow(2,16)+this[++he]*Math.pow(2,8)+ae;return(BigInt(be)<<BigInt(32))+BigInt(Ie)}),n.prototype.readIntLE=function(he,fe,ae){he>>>=0,fe>>>=0,ae||V(he,fe,this.length);for(var be=this[he],Ie=1,Te=0;++Te<fe&&(Ie*=256);)be+=this[he+Te]*Ie;return be>=(Ie*=128)&&(be-=Math.pow(2,8*fe)),be},n.prototype.readIntBE=function(he,fe,ae){he>>>=0,fe>>>=0,ae||V(he,fe,this.length);for(var be=fe,Ie=1,Te=this[he+--be];be>0&&(Ie*=256);)Te+=this[he+--be]*Ie;return Te>=(Ie*=128)&&(Te-=Math.pow(2,8*fe)),Te},n.prototype.readInt8=function(he,fe){return he>>>=0,fe||V(he,1,this.length),128&this[he]?-1*(255-this[he]+1):this[he]},n.prototype.readInt16LE=function(he,fe){he>>>=0,fe||V(he,2,this.length);var ae=this[he]|this[he+1]<<8;return 32768&ae?4294901760|ae:ae},n.prototype.readInt16BE=function(he,fe){he>>>=0,fe||V(he,2,this.length);var ae=this[he+1]|this[he]<<8;return 32768&ae?4294901760|ae:ae},n.prototype.readInt32LE=function(he,fe){return he>>>=0,fe||V(he,4,this.length),this[he]|this[he+1]<<8|this[he+2]<<16|this[he+3]<<24},n.prototype.readInt32BE=function(he,fe){return he>>>=0,fe||V(he,4,this.length),this[he]<<24|this[he+1]<<16|this[he+2]<<8|this[he+3]},n.prototype.readBigInt64LE=Ee(function(he){ue(he>>>=0,"offset");var fe=this[he],ae=this[he+7];fe!==void 0&&ae!==void 0||ce(he,this.length-8);var be=this[he+4]+this[he+5]*Math.pow(2,8)+this[he+6]*Math.pow(2,16)+(ae<<24);return(BigInt(be)<<BigInt(32))+BigInt(fe+this[++he]*Math.pow(2,8)+this[++he]*Math.pow(2,16)+this[++he]*Math.pow(2,24))}),n.prototype.readBigInt64BE=Ee(function(he){ue(he>>>=0,"offset");var fe=this[he],ae=this[he+7];fe!==void 0&&ae!==void 0||ce(he,this.length-8);var be=(fe<<24)+this[++he]*Math.pow(2,16)+this[++he]*Math.pow(2,8)+this[++he];return(BigInt(be)<<BigInt(32))+BigInt(this[++he]*Math.pow(2,24)+this[++he]*Math.pow(2,16)+this[++he]*Math.pow(2,8)+ae)}),n.prototype.readFloatLE=function(he,fe){return he>>>=0,fe||V(he,4,this.length),l.read(this,he,!0,23,4)},n.prototype.readFloatBE=function(he,fe){return he>>>=0,fe||V(he,4,this.length),l.read(this,he,!1,23,4)},n.prototype.readDoubleLE=function(he,fe){return he>>>=0,fe||V(he,8,this.length),l.read(this,he,!0,52,8)},n.prototype.readDoubleBE=function(he,fe){return he>>>=0,fe||V(he,8,this.length),l.read(this,he,!1,52,8)},n.prototype.writeUintLE=n.prototype.writeUIntLE=function(he,fe,ae,be){he=+he,fe>>>=0,ae>>>=0,be||j(this,he,fe,ae,Math.pow(2,8*ae)-1,0);var Ie=1,Te=0;for(this[fe]=255&he;++Te<ae&&(Ie*=256);)this[fe+Te]=he/Ie&255;return fe+ae},n.prototype.writeUintBE=n.prototype.writeUIntBE=function(he,fe,ae,be){he=+he,fe>>>=0,ae>>>=0,be||j(this,he,fe,ae,Math.pow(2,8*ae)-1,0);var Ie=ae-1,Te=1;for(this[fe+Ie]=255&he;--Ie>=0&&(Te*=256);)this[fe+Ie]=he/Te&255;return fe+ae},n.prototype.writeUint8=n.prototype.writeUInt8=function(he,fe,ae){return he=+he,fe>>>=0,ae||j(this,he,fe,1,255,0),this[fe]=255&he,fe+1},n.prototype.writeUint16LE=n.prototype.writeUInt16LE=function(he,fe,ae){return he=+he,fe>>>=0,ae||j(this,he,fe,2,65535,0),this[fe]=255&he,this[fe+1]=he>>>8,fe+2},n.prototype.writeUint16BE=n.prototype.writeUInt16BE=function(he,fe,ae){return he=+he,fe>>>=0,ae||j(this,he,fe,2,65535,0),this[fe]=he>>>8,this[fe+1]=255&he,fe+2},n.prototype.writeUint32LE=n.prototype.writeUInt32LE=function(he,fe,ae){return he=+he,fe>>>=0,ae||j(this,he,fe,4,4294967295,0),this[fe+3]=he>>>24,this[fe+2]=he>>>16,this[fe+1]=he>>>8,this[fe]=255&he,fe+4},n.prototype.writeUint32BE=n.prototype.writeUInt32BE=function(he,fe,ae){return he=+he,fe>>>=0,ae||j(this,he,fe,4,4294967295,0),this[fe]=he>>>24,this[fe+1]=he>>>16,this[fe+2]=he>>>8,this[fe+3]=255&he,fe+4},n.prototype.writeBigUInt64LE=Ee(function(he){return W(this,he,arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))}),n.prototype.writeBigUInt64BE=Ee(function(he){return Z(this,he,arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,BigInt(0),BigInt("0xffffffffffffffff"))}),n.prototype.writeIntLE=function(he,fe,ae,be){if(he=+he,fe>>>=0,!be){var Ie=Math.pow(2,8*ae-1);j(this,he,fe,ae,Ie-1,-Ie)}var Te=0,Ne=1,qe=0;for(this[fe]=255&he;++Te<ae&&(Ne*=256);)he<0&&qe===0&&this[fe+Te-1]!==0&&(qe=1),this[fe+Te]=(he/Ne>>0)-qe&255;return fe+ae},n.prototype.writeIntBE=function(he,fe,ae,be){if(he=+he,fe>>>=0,!be){var Ie=Math.pow(2,8*ae-1);j(this,he,fe,ae,Ie-1,-Ie)}var Te=ae-1,Ne=1,qe=0;for(this[fe+Te]=255&he;--Te>=0&&(Ne*=256);)he<0&&qe===0&&this[fe+Te+1]!==0&&(qe=1),this[fe+Te]=(he/Ne>>0)-qe&255;return fe+ae},n.prototype.writeInt8=function(he,fe,ae){return he=+he,fe>>>=0,ae||j(this,he,fe,1,127,-128),he<0&&(he=255+he+1),this[fe]=255&he,fe+1},n.prototype.writeInt16LE=function(he,fe,ae){return he=+he,fe>>>=0,ae||j(this,he,fe,2,32767,-32768),this[fe]=255&he,this[fe+1]=he>>>8,fe+2},n.prototype.writeInt16BE=function(he,fe,ae){return he=+he,fe>>>=0,ae||j(this,he,fe,2,32767,-32768),this[fe]=he>>>8,this[fe+1]=255&he,fe+2},n.prototype.writeInt32LE=function(he,fe,ae){return he=+he,fe>>>=0,ae||j(this,he,fe,4,2147483647,-2147483648),this[fe]=255&he,this[fe+1]=he>>>8,this[fe+2]=he>>>16,this[fe+3]=he>>>24,fe+4},n.prototype.writeInt32BE=function(he,fe,ae){return he=+he,fe>>>=0,ae||j(this,he,fe,4,2147483647,-2147483648),he<0&&(he=4294967295+he+1),this[fe]=he>>>24,this[fe+1]=he>>>16,this[fe+2]=he>>>8,this[fe+3]=255&he,fe+4},n.prototype.writeBigInt64LE=Ee(function(he){return W(this,he,arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),n.prototype.writeBigInt64BE=Ee(function(he){return Z(this,he,arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),n.prototype.writeFloatLE=function(he,fe,ae){return te(this,he,fe,!0,ae)},n.prototype.writeFloatBE=function(he,fe,ae){return te(this,he,fe,!1,ae)},n.prototype.writeDoubleLE=function(he,fe,ae){return J(this,he,fe,!0,ae)},n.prototype.writeDoubleBE=function(he,fe,ae){return J(this,he,fe,!1,ae)},n.prototype.copy=function(he,fe,ae,be){if(!n.isBuffer(he))throw new TypeError("argument should be a Buffer");if(ae||(ae=0),be||be===0||(be=this.length),fe>=he.length&&(fe=he.length),fe||(fe=0),be>0&&be<ae&&(be=ae),be===ae||he.length===0||this.length===0)return 0;if(fe<0)throw new RangeError("targetStart out of bounds");if(ae<0||ae>=this.length)throw new RangeError("Index out of range");if(be<0)throw new RangeError("sourceEnd out of bounds");be>this.length&&(be=this.length),he.length-fe<be-ae&&(be=he.length-fe+ae);var Ie=be-ae;return this===he&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(fe,ae,be):Uint8Array.prototype.set.call(he,this.subarray(ae,be),fe),Ie},n.prototype.fill=function(he,fe,ae,be){if(typeof he=="string"){if(typeof fe=="string"?(be=fe,fe=0,ae=this.length):typeof ae=="string"&&(be=ae,ae=this.length),be!==void 0&&typeof be!="string")throw new TypeError("encoding must be a string");if(typeof be=="string"&&!n.isEncoding(be))throw new TypeError("Unknown encoding: "+be);if(he.length===1){var Ie=he.charCodeAt(0);(be==="utf8"&&Ie<128||be==="latin1")&&(he=Ie)}}else typeof he=="number"?he&=255:typeof he=="boolean"&&(he=Number(he));if(fe<0||this.length<fe||this.length<ae)throw new RangeError("Out of range index");if(ae<=fe)return this;var Te;if(fe>>>=0,ae=ae===void 0?this.length:ae>>>0,he||(he=0),typeof he=="number")for(Te=fe;Te<ae;++Te)this[Te]=he;else{var Ne=n.isBuffer(he)?he:n.from(he,be),qe=Ne.length;if(qe===0)throw new TypeError('The value "'+he+'" is invalid for argument "value"');for(Te=0;Te<ae-fe;++Te)this[Te+fe]=Ne[Te%qe]}return this};var X={};function ee(he,fe,ae){X[he]=function(be){(function(Ae,ze){if(typeof ze!="function"&&ze!==null)throw new TypeError("Super expression must either be null or a function");Ae.prototype=Object.create(ze&&ze.prototype,{constructor:{value:Ae,writable:!0,configurable:!0}}),Object.defineProperty(Ae,"prototype",{writable:!1}),ze&&k(Ae,ze)})(Ce,be);var Ie,Te,Ne,qe,ve=(Ne=Ce,qe=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}(),function(){var Ae,ze=_(Ne);if(qe){var Ue=_(this).constructor;Ae=Reflect.construct(ze,arguments,Ue)}else Ae=ze.apply(this,arguments);return function(Ve,Ye){if(Ye&&(y(Ye)==="object"||typeof Ye=="function"))return Ye;if(Ye!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return i(Ve)}(this,Ae)});function Ce(){var Ae;return function(ze,Ue){if(!(ze instanceof Ue))throw new TypeError("Cannot call a class as a function")}(this,Ce),Ae=ve.call(this),Object.defineProperty(i(Ae),"message",{value:fe.apply(i(Ae),arguments),writable:!0,configurable:!0}),Ae.name="".concat(Ae.name," [").concat(he,"]"),Ae.stack,delete Ae.name,Ae}return Ie=Ce,(Te=[{key:"code",get:function(){return he},set:function(Ae){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:Ae,writable:!0})}},{key:"toString",value:function(){return"".concat(this.name," [").concat(he,"]: ").concat(this.message)}}])&&w(Ie.prototype,Te),Object.defineProperty(Ie,"prototype",{writable:!1}),Ce}(ae)}function re(he){for(var fe="",ae=he.length,be=he[0]==="-"?1:0;ae>=be+4;ae-=3)fe="_".concat(he.slice(ae-3,ae)).concat(fe);return"".concat(he.slice(0,ae)).concat(fe)}function oe(he,fe,ae,be,Ie,Te){if(he>ae||he<fe){var Ne,qe=typeof fe=="bigint"?"n":"";throw Ne=Te>3?fe===0||fe===BigInt(0)?">= 0".concat(qe," and < 2").concat(qe," ** ").concat(8*(Te+1)).concat(qe):">= -(2".concat(qe," ** ").concat(8*(Te+1)-1).concat(qe,") and < 2 ** ")+"".concat(8*(Te+1)-1).concat(qe):">= ".concat(fe).concat(qe," and <= ").concat(ae).concat(qe),new X.ERR_OUT_OF_RANGE("value",Ne,he)}(function(ve,Ce,Ae){ue(Ce,"offset"),ve[Ce]!==void 0&&ve[Ce+Ae]!==void 0||ce(Ce,ve.length-(Ae+1))})(be,Ie,Te)}function ue(he,fe){if(typeof he!="number")throw new X.ERR_INVALID_ARG_TYPE(fe,"number",he)}function ce(he,fe,ae){throw Math.floor(he)!==he?(ue(he,ae),new X.ERR_OUT_OF_RANGE(ae||"offset","an integer",he)):fe<0?new X.ERR_BUFFER_OUT_OF_BOUNDS:new X.ERR_OUT_OF_RANGE(ae||"offset",">= ".concat(ae?1:0," and <= ").concat(fe),he)}ee("ERR_BUFFER_OUT_OF_BOUNDS",function(he){return he?"".concat(he," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"},RangeError),ee("ERR_INVALID_ARG_TYPE",function(he,fe){return'The "'.concat(he,'" argument must be of type number. Received type ').concat(y(fe))},TypeError),ee("ERR_OUT_OF_RANGE",function(he,fe,ae){var be='The value of "'.concat(he,'" is out of range.'),Ie=ae;return Number.isInteger(ae)&&Math.abs(ae)>Math.pow(2,32)?Ie=re(String(ae)):typeof ae=="bigint"&&(Ie=String(ae),(ae>Math.pow(BigInt(2),BigInt(32))||ae<-Math.pow(BigInt(2),BigInt(32)))&&(Ie=re(Ie)),Ie+="n"),be+" It must be ".concat(fe,". Received ").concat(Ie)},RangeError);var de=/[^+/0-9A-Za-z-_]/g;function me(he,fe){var ae;fe=fe||1/0;for(var be=he.length,Ie=null,Te=[],Ne=0;Ne<be;++Ne){if((ae=he.charCodeAt(Ne))>55295&&ae<57344){if(!Ie){if(ae>56319){(fe-=3)>-1&&Te.push(239,191,189);continue}if(Ne+1===be){(fe-=3)>-1&&Te.push(239,191,189);continue}Ie=ae;continue}if(ae<56320){(fe-=3)>-1&&Te.push(239,191,189),Ie=ae;continue}ae=65536+(Ie-55296<<10|ae-56320)}else Ie&&(fe-=3)>-1&&Te.push(239,191,189);if(Ie=null,ae<128){if((fe-=1)<0)break;Te.push(ae)}else if(ae<2048){if((fe-=2)<0)break;Te.push(ae>>6|192,63&ae|128)}else if(ae<65536){if((fe-=3)<0)break;Te.push(ae>>12|224,ae>>6&63|128,63&ae|128)}else{if(!(ae<1114112))throw new Error("Invalid code point");if((fe-=4)<0)break;Te.push(ae>>18|240,ae>>12&63|128,ae>>6&63|128,63&ae|128)}}return Te}function _e(he){return h.toByteArray(function(fe){if((fe=(fe=fe.split("=")[0]).trim().replace(de,"")).length<2)return"";for(;fe.length%4!=0;)fe+="=";return fe}(he))}function Se(he,fe,ae,be){var Ie;for(Ie=0;Ie<be&&!(Ie+ae>=fe.length||Ie>=he.length);++Ie)fe[Ie+ae]=he[Ie];return Ie}function we(he,fe){return he instanceof fe||he!=null&&he.constructor!=null&&he.constructor.name!=null&&he.constructor.name===fe.name}function xe(he){return he!=he}var De=function(){for(var he="0123456789abcdef",fe=new Array(256),ae=0;ae<16;++ae)for(var be=16*ae,Ie=0;Ie<16;++Ie)fe[be+Ie]=he[ae]+he[Ie];return fe}();function Ee(he){return typeof BigInt>"u"?Me:he}function Me(){throw new Error("BigInt not supported")}},35791:function(R){R.exports=k,R.exports.isMobile=k,R.exports.default=k;var E=/(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,e=/CrOS/,w=/android|ipad|playbook|silk/i;function k(i){i||(i={});var _=i.ua;if(_||typeof navigator>"u"||(_=navigator.userAgent),_&&_.headers&&typeof _.headers["user-agent"]=="string"&&(_=_.headers["user-agent"]),typeof _!="string")return!1;var y=E.test(_)&&!e.test(_)||!!i.tablet&&w.test(_);return!y&&i.tablet&&i.featureDetect&&navigator&&navigator.maxTouchPoints>1&&_.indexOf("Macintosh")!==-1&&_.indexOf("Safari")!==-1&&(y=!0),y}},86781:function(R,E,e){e.r(E),e.d(E,{sankeyCenter:function(){return r},sankeyCircular:function(){return P},sankeyJustify:function(){return o},sankeyLeft:function(){return l},sankeyRight:function(){return t}});var w=e(33064),k=e(15140),i=e(45879),_=e(2502),y=e.n(_);function h(Se){return Se.target.depth}function l(Se){return Se.depth}function t(Se,we){return we-1-Se.height}function o(Se,we){return Se.sourceLinks.length?Se.depth:we-1}function r(Se){return Se.targetLinks.length?Se.depth:Se.sourceLinks.length?(0,w.VV)(Se.sourceLinks,h)-1:0}function n(Se){return function(){return Se}}var a=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Se){return typeof Se}:function(Se){return Se&&typeof Symbol=="function"&&Se.constructor===Symbol&&Se!==Symbol.prototype?"symbol":typeof Se};function s(Se,we){return p(Se.source,we.source)||Se.index-we.index}function u(Se,we){return p(Se.target,we.target)||Se.index-we.index}function p(Se,we){return Se.partOfCycle===we.partOfCycle?Se.y0-we.y0:Se.circularLinkType==="top"||we.circularLinkType==="bottom"?-1:1}function c(Se){return Se.value}function b(Se){return(Se.y0+Se.y1)/2}function g(Se){return b(Se.source)}function f(Se){return b(Se.target)}function v(Se){return Se.index}function m(Se){return Se.nodes}function x(Se){return Se.links}function T(Se,we){var xe=Se.get(we);if(!xe)throw new Error("missing: "+we);return xe}function d(Se,we){return we(Se)}var M=25,A=10,C=.3;function P(){var Se,we,xe=0,De=0,Ee=1,Me=1,he=24,fe=v,ae=o,be=m,Ie=x,Te=32,Ne=2,qe=null;function ve(){var Ae={nodes:be.apply(null,arguments),links:Ie.apply(null,arguments)};(function(Ue){Ue.nodes.forEach(function(Ye,$e){Ye.index=$e,Ye.sourceLinks=[],Ye.targetLinks=[]});var Ve=(0,k.UI)(Ue.nodes,fe);Ue.links.forEach(function(Ye,$e){Ye.index=$e;var rt=Ye.source,ht=Ye.target;(rt===void 0?"undefined":a(rt))!=="object"&&(rt=Ye.source=T(Ve,rt)),(ht===void 0?"undefined":a(ht))!=="object"&&(ht=Ye.target=T(Ve,ht)),rt.sourceLinks.push(Ye),ht.targetLinks.push(Ye)})})(Ae),function(Ue,Ve,Ye){var $e=0;if(Ye===null){for(var rt=[],ht=0;ht<Ue.links.length;ht++){var nt=Ue.links[ht],bt=nt.source.index,wt=nt.target.index;rt[bt]||(rt[bt]=[]),rt[wt]||(rt[wt]=[]),rt[bt].indexOf(wt)===-1&&rt[bt].push(wt)}var ut=y()(rt);ut.sort(function(Et,St){return Et.length-St.length});var lt={};for(ht=0;ht<ut.length;ht++){var Tt=ut[ht].slice(-2);lt[Tt[0]]||(lt[Tt[0]]={}),lt[Tt[0]][Tt[1]]=!0}Ue.links.forEach(function(Et){var St=Et.target.index,Ft=Et.source.index;St===Ft||lt[Ft]&<[Ft][St]?(Et.circular=!0,Et.circularLinkID=$e,$e+=1):Et.circular=!1})}else Ue.links.forEach(function(Et){Et.source[Ye]<Et.target[Ye]?Et.circular=!1:(Et.circular=!0,Et.circularLinkID=$e,$e+=1)})}(Ae,0,qe),function(Ue){Ue.nodes.forEach(function(Ve){Ve.partOfCycle=!1,Ve.value=Math.max((0,w.Sm)(Ve.sourceLinks,c),(0,w.Sm)(Ve.targetLinks,c)),Ve.sourceLinks.forEach(function(Ye){Ye.circular&&(Ve.partOfCycle=!0,Ve.circularLinkType=Ye.circularLinkType)}),Ve.targetLinks.forEach(function(Ye){Ye.circular&&(Ve.partOfCycle=!0,Ve.circularLinkType=Ye.circularLinkType)})})}(Ae),function(Ue){var Ve,Ye,$e;for(Ve=Ue.nodes,Ye=[],$e=0;Ve.length;++$e,Ve=Ye,Ye=[])Ve.forEach(function(rt){rt.depth=$e,rt.sourceLinks.forEach(function(ht){Ye.indexOf(ht.target)<0&&!ht.circular&&Ye.push(ht.target)})});for(Ve=Ue.nodes,Ye=[],$e=0;Ve.length;++$e,Ve=Ye,Ye=[])Ve.forEach(function(rt){rt.height=$e,rt.targetLinks.forEach(function(ht){Ye.indexOf(ht.source)<0&&!ht.circular&&Ye.push(ht.source)})});Ue.nodes.forEach(function(rt){rt.column=Math.floor(ae.call(null,rt,$e))})}(Ae),O(Ae,fe),function(Ue,Ve,Ye){var $e=(0,k.b1)().key(function(wt){return wt.column}).sortKeys(w.j2).entries(Ue.nodes).map(function(wt){return wt.values});(function(wt){if(we){var ut=1/0;$e.forEach(function(St){var Ft=Me*we/(St.length+1);ut=Ft<ut?Ft:ut}),Se=ut}var lt=(0,w.VV)($e,function(St){return(Me-De-(St.length-1)*Se)/(0,w.Sm)(St,c)});lt*=C,Ue.links.forEach(function(St){St.width=St.value*lt});var Tt=function(St){var Ft=0,zt=0,Je=0,et=0,Ze=(0,w.Fp)(St.nodes,function(Qe){return Qe.column});return St.links.forEach(function(Qe){Qe.circular&&(Qe.circularLinkType=="top"?Ft+=Qe.width:zt+=Qe.width,Qe.target.column==0&&(et+=Qe.width),Qe.source.column==Ze&&(Je+=Qe.width))}),{top:Ft=Ft>0?Ft+M+A:Ft,bottom:zt=zt>0?zt+M+A:zt,left:et=et>0?et+M+A:et,right:Je=Je>0?Je+M+A:Je}}(Ue),Et=function(St,Ft){var zt=(0,w.Fp)(St.nodes,function(st){return st.column}),Je=Ee-xe,et=Me-De,Ze=Je/(Je+Ft.right+Ft.left),Qe=et/(et+Ft.top+Ft.bottom);return xe=xe*Ze+Ft.left,Ee=Ft.right==0?Ee:Ee*Ze,De=De*Qe+Ft.top,Me*=Qe,St.nodes.forEach(function(st){st.x0=xe+st.column*((Ee-xe-he)/zt),st.x1=st.x0+he}),Qe}(Ue,Tt);lt*=Et,Ue.links.forEach(function(St){St.width=St.value*lt}),$e.forEach(function(St){var Ft=St.length;St.forEach(function(zt,Je){zt.depth==$e.length-1&&Ft==1||zt.depth==0&&Ft==1?(zt.y0=Me/2-zt.value*lt,zt.y1=zt.y0+zt.value*lt):zt.partOfCycle?B(zt,wt)==0?(zt.y0=Me/2+Je,zt.y1=zt.y0+zt.value*lt):zt.circularLinkType=="top"?(zt.y0=De+Je,zt.y1=zt.y0+zt.value*lt):(zt.y0=Me-zt.value*lt-Je,zt.y1=zt.y0+zt.value*lt):Tt.top==0||Tt.bottom==0?(zt.y0=(Me-De)/Ft*Je,zt.y1=zt.y0+zt.value*lt):(zt.y0=(Me-De)/2-Ft/2+Je,zt.y1=zt.y0+zt.value*lt)})})})(Ye),bt();for(var rt=1,ht=Ve;ht>0;--ht)nt(rt*=.99,Ye),bt();function nt(wt,ut){var lt=$e.length;$e.forEach(function(Tt){var Et=Tt.length,St=Tt[0].depth;Tt.forEach(function(Ft){var zt;if((Ft.sourceLinks.length||Ft.targetLinks.length)&&!(Ft.partOfCycle&&B(Ft,ut)>0))if(St==0&&Et==1)zt=Ft.y1-Ft.y0,Ft.y0=Me/2-zt/2,Ft.y1=Me/2+zt/2;else if(St==lt-1&&Et==1)zt=Ft.y1-Ft.y0,Ft.y0=Me/2-zt/2,Ft.y1=Me/2+zt/2;else{var Je=(0,w.J6)(Ft.sourceLinks,f),et=(0,w.J6)(Ft.targetLinks,g),Ze=((Je&&et?(Je+et)/2:Je||et)-b(Ft))*wt;Ft.y0+=Ze,Ft.y1+=Ze}})})}function bt(){$e.forEach(function(wt){var ut,lt,Tt,Et=De,St=wt.length;for(wt.sort(p),Tt=0;Tt<St;++Tt)(lt=Et-(ut=wt[Tt]).y0)>0&&(ut.y0+=lt,ut.y1+=lt),Et=ut.y1+Se;if((lt=Et-Se-Me)>0)for(Et=ut.y0-=lt,ut.y1-=lt,Tt=St-2;Tt>=0;--Tt)(lt=(ut=wt[Tt]).y1+Se-Et)>0&&(ut.y0-=lt,ut.y1-=lt),Et=ut.y0})}}(Ae,Te,fe),Ce(Ae);for(var ze=0;ze<4;ze++)ue(Ae,Me,fe),ce(Ae,0,fe),re(Ae,De,Me,fe),ue(Ae,Me,fe),ce(Ae,0,fe);return function(Ue,Ve,Ye){var $e=Ue.nodes,rt=Ue.links,ht=!1,nt=!1;if(rt.forEach(function(ut){ut.circularLinkType=="top"?ht=!0:ut.circularLinkType=="bottom"&&(nt=!0)}),ht==0||nt==0){var bt=(0,w.VV)($e,function(ut){return ut.y0}),wt=(Ye-Ve)/((0,w.Fp)($e,function(ut){return ut.y1})-bt);$e.forEach(function(ut){var lt=(ut.y1-ut.y0)*wt;ut.y0=(ut.y0-bt)*wt,ut.y1=ut.y0+lt}),rt.forEach(function(ut){ut.y0=(ut.y0-bt)*wt,ut.y1=(ut.y1-bt)*wt,ut.width=ut.width*wt})}}(Ae,De,Me),G(Ae,Ne,Me,fe),Ae}function Ce(Ae){Ae.nodes.forEach(function(ze){ze.sourceLinks.sort(u),ze.targetLinks.sort(s)}),Ae.nodes.forEach(function(ze){var Ue=ze.y0,Ve=Ue,Ye=ze.y1,$e=Ye;ze.sourceLinks.forEach(function(rt){rt.circular?(rt.y0=Ye-rt.width/2,Ye-=rt.width):(rt.y0=Ue+rt.width/2,Ue+=rt.width)}),ze.targetLinks.forEach(function(rt){rt.circular?(rt.y1=$e-rt.width/2,$e-=rt.width):(rt.y1=Ve+rt.width/2,Ve+=rt.width)})})}return ve.nodeId=function(Ae){return arguments.length?(fe=typeof Ae=="function"?Ae:n(Ae),ve):fe},ve.nodeAlign=function(Ae){return arguments.length?(ae=typeof Ae=="function"?Ae:n(Ae),ve):ae},ve.nodeWidth=function(Ae){return arguments.length?(he=+Ae,ve):he},ve.nodePadding=function(Ae){return arguments.length?(Se=+Ae,ve):Se},ve.nodes=function(Ae){return arguments.length?(be=typeof Ae=="function"?Ae:n(Ae),ve):be},ve.links=function(Ae){return arguments.length?(Ie=typeof Ae=="function"?Ae:n(Ae),ve):Ie},ve.size=function(Ae){return arguments.length?(xe=De=0,Ee=+Ae[0],Me=+Ae[1],ve):[Ee-xe,Me-De]},ve.extent=function(Ae){return arguments.length?(xe=+Ae[0][0],Ee=+Ae[1][0],De=+Ae[0][1],Me=+Ae[1][1],ve):[[xe,De],[Ee,Me]]},ve.iterations=function(Ae){return arguments.length?(Te=+Ae,ve):Te},ve.circularLinkGap=function(Ae){return arguments.length?(Ne=+Ae,ve):Ne},ve.nodePaddingRatio=function(Ae){return arguments.length?(we=+Ae,ve):we},ve.sortNodes=function(Ae){return arguments.length?(qe=Ae,ve):qe},ve.update=function(Ae){return O(Ae,fe),Ce(Ae),Ae.links.forEach(function(ze){ze.circular&&(ze.circularLinkType=ze.y0+ze.y1<Me?"top":"bottom",ze.source.circularLinkType=ze.circularLinkType,ze.target.circularLinkType=ze.circularLinkType)}),ue(Ae,Me,fe,!1),ce(Ae,0,fe),G(Ae,Ne,Me,fe),Ae},ve}function O(Se,we){var xe=0,De=0;Se.links.forEach(function(Ee){Ee.circular&&(Ee.source.circularLinkType||Ee.target.circularLinkType?Ee.circularLinkType=Ee.source.circularLinkType?Ee.source.circularLinkType:Ee.target.circularLinkType:Ee.circularLinkType=xe<De?"top":"bottom",Ee.circularLinkType=="top"?xe+=1:De+=1,Se.nodes.forEach(function(Me){d(Me,we)!=d(Ee.source,we)&&d(Me,we)!=d(Ee.target,we)||(Me.circularLinkType=Ee.circularLinkType)}))}),Se.links.forEach(function(Ee){Ee.circular&&(Ee.source.circularLinkType==Ee.target.circularLinkType&&(Ee.circularLinkType=Ee.source.circularLinkType),_e(Ee,we)&&(Ee.circularLinkType=Ee.source.circularLinkType))})}function z(Se){var we=Math.abs(Se.y1-Se.y0),xe=Math.abs(Se.target.x0-Se.source.x1);return Math.atan(xe/we)}function B(Se,we){var xe=0;Se.sourceLinks.forEach(function(Ee){xe=Ee.circular&&!_e(Ee,we)?xe+1:xe});var De=0;return Se.targetLinks.forEach(function(Ee){De=Ee.circular&&!_e(Ee,we)?De+1:De}),xe+De}function Y(Se){var we=Se.source.sourceLinks,xe=0;we.forEach(function(Me){xe=Me.circular?xe+1:xe});var De=Se.target.targetLinks,Ee=0;return De.forEach(function(Me){Ee=Me.circular?Ee+1:Ee}),!(xe>1||Ee>1)}function D(Se,we,xe){return Se.sort(V),Se.forEach(function(De,Ee){var Me,he,fe=0;if(_e(De,xe)&&Y(De))De.circularPathData.verticalBuffer=fe+De.width/2;else{for(var ae=0;ae<Ee;ae++)if(Me=Se[Ee],he=Se[ae],!(Me.source.column<he.target.column||Me.target.column>he.source.column)){var be=Se[ae].circularPathData.verticalBuffer+Se[ae].width/2+we;fe=be>fe?be:fe}De.circularPathData.verticalBuffer=fe+De.width/2}}),Se}function G(Se,we,xe,De){var Ee=(0,w.VV)(Se.links,function(Me){return Me.source.y0});Se.links.forEach(function(Me){Me.circular&&(Me.circularPathData={})}),D(Se.links.filter(function(Me){return Me.circularLinkType=="top"}),we,De),D(Se.links.filter(function(Me){return Me.circularLinkType=="bottom"}),we,De),Se.links.forEach(function(Me){if(Me.circular){if(Me.circularPathData.arcRadius=Me.width+A,Me.circularPathData.leftNodeBuffer=5,Me.circularPathData.rightNodeBuffer=5,Me.circularPathData.sourceWidth=Me.source.x1-Me.source.x0,Me.circularPathData.sourceX=Me.source.x0+Me.circularPathData.sourceWidth,Me.circularPathData.targetX=Me.target.x0,Me.circularPathData.sourceY=Me.y0,Me.circularPathData.targetY=Me.y1,_e(Me,De)&&Y(Me))Me.circularPathData.leftSmallArcRadius=A+Me.width/2,Me.circularPathData.leftLargeArcRadius=A+Me.width/2,Me.circularPathData.rightSmallArcRadius=A+Me.width/2,Me.circularPathData.rightLargeArcRadius=A+Me.width/2,Me.circularLinkType=="bottom"?(Me.circularPathData.verticalFullExtent=Me.source.y1+M+Me.circularPathData.verticalBuffer,Me.circularPathData.verticalLeftInnerExtent=Me.circularPathData.verticalFullExtent-Me.circularPathData.leftLargeArcRadius,Me.circularPathData.verticalRightInnerExtent=Me.circularPathData.verticalFullExtent-Me.circularPathData.rightLargeArcRadius):(Me.circularPathData.verticalFullExtent=Me.source.y0-M-Me.circularPathData.verticalBuffer,Me.circularPathData.verticalLeftInnerExtent=Me.circularPathData.verticalFullExtent+Me.circularPathData.leftLargeArcRadius,Me.circularPathData.verticalRightInnerExtent=Me.circularPathData.verticalFullExtent+Me.circularPathData.rightLargeArcRadius);else{var he=Me.source.column,fe=Me.circularLinkType,ae=Se.links.filter(function(Te){return Te.source.column==he&&Te.circularLinkType==fe});Me.circularLinkType=="bottom"?ae.sort(W):ae.sort(j);var be=0;ae.forEach(function(Te,Ne){Te.circularLinkID==Me.circularLinkID&&(Me.circularPathData.leftSmallArcRadius=A+Me.width/2+be,Me.circularPathData.leftLargeArcRadius=A+Me.width/2+Ne*we+be),be+=Te.width}),he=Me.target.column,ae=Se.links.filter(function(Te){return Te.target.column==he&&Te.circularLinkType==fe}),Me.circularLinkType=="bottom"?ae.sort(ie):ae.sort(Z),be=0,ae.forEach(function(Te,Ne){Te.circularLinkID==Me.circularLinkID&&(Me.circularPathData.rightSmallArcRadius=A+Me.width/2+be,Me.circularPathData.rightLargeArcRadius=A+Me.width/2+Ne*we+be),be+=Te.width}),Me.circularLinkType=="bottom"?(Me.circularPathData.verticalFullExtent=Math.max(xe,Me.source.y1,Me.target.y1)+M+Me.circularPathData.verticalBuffer,Me.circularPathData.verticalLeftInnerExtent=Me.circularPathData.verticalFullExtent-Me.circularPathData.leftLargeArcRadius,Me.circularPathData.verticalRightInnerExtent=Me.circularPathData.verticalFullExtent-Me.circularPathData.rightLargeArcRadius):(Me.circularPathData.verticalFullExtent=Ee-M-Me.circularPathData.verticalBuffer,Me.circularPathData.verticalLeftInnerExtent=Me.circularPathData.verticalFullExtent+Me.circularPathData.leftLargeArcRadius,Me.circularPathData.verticalRightInnerExtent=Me.circularPathData.verticalFullExtent+Me.circularPathData.rightLargeArcRadius)}Me.circularPathData.leftInnerExtent=Me.circularPathData.sourceX+Me.circularPathData.leftNodeBuffer,Me.circularPathData.rightInnerExtent=Me.circularPathData.targetX-Me.circularPathData.rightNodeBuffer,Me.circularPathData.leftFullExtent=Me.circularPathData.sourceX+Me.circularPathData.leftLargeArcRadius+Me.circularPathData.leftNodeBuffer,Me.circularPathData.rightFullExtent=Me.circularPathData.targetX-Me.circularPathData.rightLargeArcRadius-Me.circularPathData.rightNodeBuffer}if(Me.circular)Me.path=function(Te){return Te.circularLinkType=="top"?"M"+Te.circularPathData.sourceX+" "+Te.circularPathData.sourceY+" L"+Te.circularPathData.leftInnerExtent+" "+Te.circularPathData.sourceY+" A"+Te.circularPathData.leftLargeArcRadius+" "+Te.circularPathData.leftSmallArcRadius+" 0 0 0 "+Te.circularPathData.leftFullExtent+" "+(Te.circularPathData.sourceY-Te.circularPathData.leftSmallArcRadius)+" L"+Te.circularPathData.leftFullExtent+" "+Te.circularPathData.verticalLeftInnerExtent+" A"+Te.circularPathData.leftLargeArcRadius+" "+Te.circularPathData.leftLargeArcRadius+" 0 0 0 "+Te.circularPathData.leftInnerExtent+" "+Te.circularPathData.verticalFullExtent+" L"+Te.circularPathData.rightInnerExtent+" "+Te.circularPathData.verticalFullExtent+" A"+Te.circularPathData.rightLargeArcRadius+" "+Te.circularPathData.rightLargeArcRadius+" 0 0 0 "+Te.circularPathData.rightFullExtent+" "+Te.circularPathData.verticalRightInnerExtent+" L"+Te.circularPathData.rightFullExtent+" "+(Te.circularPathData.targetY-Te.circularPathData.rightSmallArcRadius)+" A"+Te.circularPathData.rightLargeArcRadius+" "+Te.circularPathData.rightSmallArcRadius+" 0 0 0 "+Te.circularPathData.rightInnerExtent+" "+Te.circularPathData.targetY+" L"+Te.circularPathData.targetX+" "+Te.circularPathData.targetY:"M"+Te.circularPathData.sourceX+" "+Te.circularPathData.sourceY+" L"+Te.circularPathData.leftInnerExtent+" "+Te.circularPathData.sourceY+" A"+Te.circularPathData.leftLargeArcRadius+" "+Te.circularPathData.leftSmallArcRadius+" 0 0 1 "+Te.circularPathData.leftFullExtent+" "+(Te.circularPathData.sourceY+Te.circularPathData.leftSmallArcRadius)+" L"+Te.circularPathData.leftFullExtent+" "+Te.circularPathData.verticalLeftInnerExtent+" A"+Te.circularPathData.leftLargeArcRadius+" "+Te.circularPathData.leftLargeArcRadius+" 0 0 1 "+Te.circularPathData.leftInnerExtent+" "+Te.circularPathData.verticalFullExtent+" L"+Te.circularPathData.rightInnerExtent+" "+Te.circularPathData.verticalFullExtent+" A"+Te.circularPathData.rightLargeArcRadius+" "+Te.circularPathData.rightLargeArcRadius+" 0 0 1 "+Te.circularPathData.rightFullExtent+" "+Te.circularPathData.verticalRightInnerExtent+" L"+Te.circularPathData.rightFullExtent+" "+(Te.circularPathData.targetY+Te.circularPathData.rightSmallArcRadius)+" A"+Te.circularPathData.rightLargeArcRadius+" "+Te.circularPathData.rightSmallArcRadius+" 0 0 1 "+Te.circularPathData.rightInnerExtent+" "+Te.circularPathData.targetY+" L"+Te.circularPathData.targetX+" "+Te.circularPathData.targetY}(Me);else{var Ie=(0,i.h5)().source(function(Te){return[Te.source.x0+(Te.source.x1-Te.source.x0),Te.y0]}).target(function(Te){return[Te.target.x0,Te.y1]});Me.path=Ie(Me)}})}function V(Se,we){return te(Se)==te(we)?Se.circularLinkType=="bottom"?W(Se,we):j(Se,we):te(we)-te(Se)}function j(Se,we){return Se.y0-we.y0}function W(Se,we){return we.y0-Se.y0}function Z(Se,we){return Se.y1-we.y1}function ie(Se,we){return we.y1-Se.y1}function te(Se){return Se.target.column-Se.source.column}function J(Se){return Se.target.x0-Se.source.x1}function X(Se,we){var xe=z(Se),De=J(we)/Math.tan(xe);return me(Se)=="up"?Se.y1+De:Se.y1-De}function ee(Se,we){var xe=z(Se),De=J(we)/Math.tan(xe);return me(Se)=="up"?Se.y1-De:Se.y1+De}function re(Se,we,xe,De){Se.links.forEach(function(Ee){if(!Ee.circular&&Ee.target.column-Ee.source.column>1){var Me=Ee.source.column+1,he=Ee.target.column-1,fe=1,ae=he-Me+1;for(fe=1;Me<=he;Me++,fe++)Se.nodes.forEach(function(be){if(be.column==Me){var Ie,Te=fe/(ae+1),Ne=Math.pow(1-Te,3),qe=3*Te*Math.pow(1-Te,2),ve=3*Math.pow(Te,2)*(1-Te),Ce=Math.pow(Te,3),Ae=Ne*Ee.y0+qe*Ee.y0+ve*Ee.y1+Ce*Ee.y1,ze=Ae-Ee.width/2,Ue=Ae+Ee.width/2;ze>be.y0&&ze<be.y1?(Ie=be.y1-ze+10,Ie=be.circularLinkType=="bottom"?Ie:-Ie,be=oe(be,Ie,we,xe),Se.nodes.forEach(function(Ve){var Ye,$e;d(Ve,De)!=d(be,De)&&Ve.column==be.column&&($e=Ve,(Ye=be).y0>$e.y0&&Ye.y0<$e.y1||Ye.y1>$e.y0&&Ye.y1<$e.y1||Ye.y0<$e.y0&&Ye.y1>$e.y1)&&oe(Ve,Ie,we,xe)})):(Ue>be.y0&&Ue<be.y1||ze<be.y0&&Ue>be.y1)&&(Ie=Ue-be.y0+10,be=oe(be,Ie,we,xe),Se.nodes.forEach(function(Ve){d(Ve,De)!=d(be,De)&&Ve.column==be.column&&Ve.y0<be.y1&&Ve.y1>be.y1&&oe(Ve,Ie,we,xe)}))}})}})}function oe(Se,we,xe,De){return Se.y0+we>=xe&&Se.y1+we<=De&&(Se.y0=Se.y0+we,Se.y1=Se.y1+we,Se.targetLinks.forEach(function(Ee){Ee.y1=Ee.y1+we}),Se.sourceLinks.forEach(function(Ee){Ee.y0=Ee.y0+we})),Se}function ue(Se,we,xe,De){Se.nodes.forEach(function(Ee){De&&Ee.y+(Ee.y1-Ee.y0)>we&&(Ee.y=Ee.y-(Ee.y+(Ee.y1-Ee.y0)-we));var Me=Se.links.filter(function(ae){return d(ae.source,xe)==d(Ee,xe)}),he=Me.length;he>1&&Me.sort(function(ae,be){if(!ae.circular&&!be.circular){if(ae.target.column==be.target.column||!de(ae,be))return ae.y1-be.y1;if(ae.target.column>be.target.column){var Ie=ee(be,ae);return ae.y1-Ie}if(be.target.column>ae.target.column)return ee(ae,be)-be.y1}return ae.circular&&!be.circular?ae.circularLinkType=="top"?-1:1:be.circular&&!ae.circular?be.circularLinkType=="top"?1:-1:ae.circular&&be.circular?ae.circularLinkType===be.circularLinkType&&ae.circularLinkType=="top"?ae.target.column===be.target.column?ae.target.y1-be.target.y1:be.target.column-ae.target.column:ae.circularLinkType===be.circularLinkType&&ae.circularLinkType=="bottom"?ae.target.column===be.target.column?be.target.y1-ae.target.y1:ae.target.column-be.target.column:ae.circularLinkType=="top"?-1:1:void 0});var fe=Ee.y0;Me.forEach(function(ae){ae.y0=fe+ae.width/2,fe+=ae.width}),Me.forEach(function(ae,be){if(ae.circularLinkType=="bottom"){for(var Ie=be+1,Te=0;Ie<he;Ie++)Te+=Me[Ie].width;ae.y0=Ee.y1-Te-ae.width/2}})})}function ce(Se,we,xe){Se.nodes.forEach(function(De){var Ee=Se.links.filter(function(fe){return d(fe.target,xe)==d(De,xe)}),Me=Ee.length;Me>1&&Ee.sort(function(fe,ae){if(!fe.circular&&!ae.circular){if(fe.source.column==ae.source.column||!de(fe,ae))return fe.y0-ae.y0;if(ae.source.column<fe.source.column){var be=X(ae,fe);return fe.y0-be}if(fe.source.column<ae.source.column)return X(fe,ae)-ae.y0}return fe.circular&&!ae.circular?fe.circularLinkType=="top"?-1:1:ae.circular&&!fe.circular?ae.circularLinkType=="top"?1:-1:fe.circular&&ae.circular?fe.circularLinkType===ae.circularLinkType&&fe.circularLinkType=="top"?fe.source.column===ae.source.column?fe.source.y1-ae.source.y1:fe.source.column-ae.source.column:fe.circularLinkType===ae.circularLinkType&&fe.circularLinkType=="bottom"?fe.source.column===ae.source.column?fe.source.y1-ae.source.y1:ae.source.column-fe.source.column:fe.circularLinkType=="top"?-1:1:void 0});var he=De.y0;Ee.forEach(function(fe){fe.y1=he+fe.width/2,he+=fe.width}),Ee.forEach(function(fe,ae){if(fe.circularLinkType=="bottom"){for(var be=ae+1,Ie=0;be<Me;be++)Ie+=Ee[be].width;fe.y1=De.y1-Ie-fe.width/2}})})}function de(Se,we){return me(Se)==me(we)}function me(Se){return Se.y0-Se.y1>0?"up":"down"}function _e(Se,we){return d(Se.source,we)==d(Se.target,we)}},30838:function(R,E,e){e.r(E),e.d(E,{sankey:function(){return v},sankeyCenter:function(){return l},sankeyJustify:function(){return h},sankeyLeft:function(){return _},sankeyLinkHorizontal:function(){return d},sankeyRight:function(){return y}});var w=e(33064),k=e(15140);function i(M){return M.target.depth}function _(M){return M.depth}function y(M,A){return A-1-M.height}function h(M,A){return M.sourceLinks.length?M.depth:A-1}function l(M){return M.targetLinks.length?M.depth:M.sourceLinks.length?(0,w.VV)(M.sourceLinks,i)-1:0}function t(M){return function(){return M}}function o(M,A){return n(M.source,A.source)||M.index-A.index}function r(M,A){return n(M.target,A.target)||M.index-A.index}function n(M,A){return M.y0-A.y0}function a(M){return M.value}function s(M){return(M.y0+M.y1)/2}function u(M){return s(M.source)*M.value}function p(M){return s(M.target)*M.value}function c(M){return M.index}function b(M){return M.nodes}function g(M){return M.links}function f(M,A){var C=M.get(A);if(!C)throw new Error("missing: "+A);return C}function v(){var M=0,A=0,C=1,P=1,O=24,z=8,B=c,Y=h,D=b,G=g,V=32;function j(){var Z={nodes:D.apply(null,arguments),links:G.apply(null,arguments)};return function(ie){ie.nodes.forEach(function(J,X){J.index=X,J.sourceLinks=[],J.targetLinks=[]});var te=(0,k.UI)(ie.nodes,B);ie.links.forEach(function(J,X){J.index=X;var ee=J.source,re=J.target;typeof ee!="object"&&(ee=J.source=f(te,ee)),typeof re!="object"&&(re=J.target=f(te,re)),ee.sourceLinks.push(J),re.targetLinks.push(J)})}(Z),function(ie){ie.nodes.forEach(function(te){te.value=Math.max((0,w.Sm)(te.sourceLinks,a),(0,w.Sm)(te.targetLinks,a))})}(Z),function(ie){var te,J,X;for(te=ie.nodes,J=[],X=0;te.length;++X,te=J,J=[])te.forEach(function(re){re.depth=X,re.sourceLinks.forEach(function(oe){J.indexOf(oe.target)<0&&J.push(oe.target)})});for(te=ie.nodes,J=[],X=0;te.length;++X,te=J,J=[])te.forEach(function(re){re.height=X,re.targetLinks.forEach(function(oe){J.indexOf(oe.source)<0&&J.push(oe.source)})});var ee=(C-M-O)/(X-1);ie.nodes.forEach(function(re){re.x1=(re.x0=M+Math.max(0,Math.min(X-1,Math.floor(Y.call(null,re,X))))*ee)+O})}(Z),function(ie){var te=(0,k.b1)().key(function(ue){return ue.x0}).sortKeys(w.j2).entries(ie.nodes).map(function(ue){return ue.values});(function(){var ue=(0,w.Fp)(te,function(me){return me.length}),ce=.6666666666666666*(P-A)/(ue-1);z>ce&&(z=ce);var de=(0,w.VV)(te,function(me){return(P-A-(me.length-1)*z)/(0,w.Sm)(me,a)});te.forEach(function(me){me.forEach(function(_e,Se){_e.y1=(_e.y0=Se)+_e.value*de})}),ie.links.forEach(function(me){me.width=me.value*de})})(),oe();for(var J=1,X=V;X>0;--X)re(J*=.99),oe(),ee(J),oe();function ee(ue){te.forEach(function(ce){ce.forEach(function(de){if(de.targetLinks.length){var me=((0,w.Sm)(de.targetLinks,u)/(0,w.Sm)(de.targetLinks,a)-s(de))*ue;de.y0+=me,de.y1+=me}})})}function re(ue){te.slice().reverse().forEach(function(ce){ce.forEach(function(de){if(de.sourceLinks.length){var me=((0,w.Sm)(de.sourceLinks,p)/(0,w.Sm)(de.sourceLinks,a)-s(de))*ue;de.y0+=me,de.y1+=me}})})}function oe(){te.forEach(function(ue){var ce,de,me,_e=A,Se=ue.length;for(ue.sort(n),me=0;me<Se;++me)(de=_e-(ce=ue[me]).y0)>0&&(ce.y0+=de,ce.y1+=de),_e=ce.y1+z;if((de=_e-z-P)>0)for(_e=ce.y0-=de,ce.y1-=de,me=Se-2;me>=0;--me)(de=(ce=ue[me]).y1+z-_e)>0&&(ce.y0-=de,ce.y1-=de),_e=ce.y0})}}(Z),W(Z),Z}function W(Z){Z.nodes.forEach(function(ie){ie.sourceLinks.sort(r),ie.targetLinks.sort(o)}),Z.nodes.forEach(function(ie){var te=ie.y0,J=te;ie.sourceLinks.forEach(function(X){X.y0=te+X.width/2,te+=X.width}),ie.targetLinks.forEach(function(X){X.y1=J+X.width/2,J+=X.width})})}return j.update=function(Z){return W(Z),Z},j.nodeId=function(Z){return arguments.length?(B=typeof Z=="function"?Z:t(Z),j):B},j.nodeAlign=function(Z){return arguments.length?(Y=typeof Z=="function"?Z:t(Z),j):Y},j.nodeWidth=function(Z){return arguments.length?(O=+Z,j):O},j.nodePadding=function(Z){return arguments.length?(z=+Z,j):z},j.nodes=function(Z){return arguments.length?(D=typeof Z=="function"?Z:t(Z),j):D},j.links=function(Z){return arguments.length?(G=typeof Z=="function"?Z:t(Z),j):G},j.size=function(Z){return arguments.length?(M=A=0,C=+Z[0],P=+Z[1],j):[C-M,P-A]},j.extent=function(Z){return arguments.length?(M=+Z[0][0],C=+Z[1][0],A=+Z[0][1],P=+Z[1][1],j):[[M,A],[C,P]]},j.iterations=function(Z){return arguments.length?(V=+Z,j):V},j}var m=e(45879);function x(M){return[M.source.x1,M.y0]}function T(M){return[M.target.x0,M.y1]}function d(){return(0,m.h5)().source(x).target(T)}},39898:function(R,E,e){var w,k;(function(){var i={version:"3.8.0"},_=[].slice,y=function(U){return _.call(U)},h=self.document;function l(U){return U&&(U.ownerDocument||U.document||U).documentElement}function t(U){return U&&(U.ownerDocument&&U.ownerDocument.defaultView||U.document&&U||U.defaultView)}if(h)try{y(h.documentElement.childNodes)[0].nodeType}catch{y=function(ne){for(var le=ne.length,ye=new Array(le);le--;)ye[le]=ne[le];return ye}}if(Date.now||(Date.now=function(){return+new Date}),h)try{h.createElement("DIV").style.setProperty("opacity",0,"")}catch{var o=this.Element.prototype,r=o.setAttribute,n=o.setAttributeNS,a=this.CSSStyleDeclaration.prototype,s=a.setProperty;o.setAttribute=function(ne,le){r.call(this,ne,le+"")},o.setAttributeNS=function(ne,le,ye){n.call(this,ne,le,ye+"")},a.setProperty=function(ne,le,ye){s.call(this,ne,le+"",ye)}}function u(U,ne){return U<ne?-1:U>ne?1:U>=ne?0:NaN}function p(U){return U===null?NaN:+U}function c(U){return!isNaN(U)}function b(U){return{left:function(ne,le,ye,ke){for(arguments.length<3&&(ye=0),arguments.length<4&&(ke=ne.length);ye<ke;){var Re=ye+ke>>>1;U(ne[Re],le)<0?ye=Re+1:ke=Re}return ye},right:function(ne,le,ye,ke){for(arguments.length<3&&(ye=0),arguments.length<4&&(ke=ne.length);ye<ke;){var Re=ye+ke>>>1;U(ne[Re],le)>0?ke=Re:ye=Re+1}return ye}}}i.ascending=u,i.descending=function(U,ne){return ne<U?-1:ne>U?1:ne>=U?0:NaN},i.min=function(U,ne){var le,ye,ke=-1,Re=U.length;if(arguments.length===1){for(;++ke<Re;)if((ye=U[ke])!=null&&ye>=ye){le=ye;break}for(;++ke<Re;)(ye=U[ke])!=null&&le>ye&&(le=ye)}else{for(;++ke<Re;)if((ye=ne.call(U,U[ke],ke))!=null&&ye>=ye){le=ye;break}for(;++ke<Re;)(ye=ne.call(U,U[ke],ke))!=null&&le>ye&&(le=ye)}return le},i.max=function(U,ne){var le,ye,ke=-1,Re=U.length;if(arguments.length===1){for(;++ke<Re;)if((ye=U[ke])!=null&&ye>=ye){le=ye;break}for(;++ke<Re;)(ye=U[ke])!=null&&ye>le&&(le=ye)}else{for(;++ke<Re;)if((ye=ne.call(U,U[ke],ke))!=null&&ye>=ye){le=ye;break}for(;++ke<Re;)(ye=ne.call(U,U[ke],ke))!=null&&ye>le&&(le=ye)}return le},i.extent=function(U,ne){var le,ye,ke,Re=-1,He=U.length;if(arguments.length===1){for(;++Re<He;)if((ye=U[Re])!=null&&ye>=ye){le=ke=ye;break}for(;++Re<He;)(ye=U[Re])!=null&&(le>ye&&(le=ye),ke<ye&&(ke=ye))}else{for(;++Re<He;)if((ye=ne.call(U,U[Re],Re))!=null&&ye>=ye){le=ke=ye;break}for(;++Re<He;)(ye=ne.call(U,U[Re],Re))!=null&&(le>ye&&(le=ye),ke<ye&&(ke=ye))}return[le,ke]},i.sum=function(U,ne){var le,ye=0,ke=U.length,Re=-1;if(arguments.length===1)for(;++Re<ke;)c(le=+U[Re])&&(ye+=le);else for(;++Re<ke;)c(le=+ne.call(U,U[Re],Re))&&(ye+=le);return ye},i.mean=function(U,ne){var le,ye=0,ke=U.length,Re=-1,He=ke;if(arguments.length===1)for(;++Re<ke;)c(le=p(U[Re]))?ye+=le:--He;else for(;++Re<ke;)c(le=p(ne.call(U,U[Re],Re)))?ye+=le:--He;if(He)return ye/He},i.quantile=function(U,ne){var le=(U.length-1)*ne+1,ye=Math.floor(le),ke=+U[ye-1],Re=le-ye;return Re?ke+Re*(U[ye]-ke):ke},i.median=function(U,ne){var le,ye=[],ke=U.length,Re=-1;if(arguments.length===1)for(;++Re<ke;)c(le=p(U[Re]))&&ye.push(le);else for(;++Re<ke;)c(le=p(ne.call(U,U[Re],Re)))&&ye.push(le);if(ye.length)return i.quantile(ye.sort(u),.5)},i.variance=function(U,ne){var le,ye,ke=U.length,Re=0,He=0,We=-1,Xe=0;if(arguments.length===1)for(;++We<ke;)c(le=p(U[We]))&&(He+=(ye=le-Re)*(le-(Re+=ye/++Xe)));else for(;++We<ke;)c(le=p(ne.call(U,U[We],We)))&&(He+=(ye=le-Re)*(le-(Re+=ye/++Xe)));if(Xe>1)return He/(Xe-1)},i.deviation=function(){var U=i.variance.apply(this,arguments);return U&&Math.sqrt(U)};var g=b(u);function f(U){return U.length}i.bisectLeft=g.left,i.bisect=i.bisectRight=g.right,i.bisector=function(U){return b(U.length===1?function(ne,le){return u(U(ne),le)}:U)},i.shuffle=function(U,ne,le){(Re=arguments.length)<3&&(le=U.length,Re<2&&(ne=0));for(var ye,ke,Re=le-ne;Re;)ke=Math.random()*Re--|0,ye=U[Re+ne],U[Re+ne]=U[ke+ne],U[ke+ne]=ye;return U},i.permute=function(U,ne){for(var le=ne.length,ye=new Array(le);le--;)ye[le]=U[ne[le]];return ye},i.pairs=function(U){for(var ne=0,le=U.length-1,ye=U[0],ke=new Array(le<0?0:le);ne<le;)ke[ne]=[ye,ye=U[++ne]];return ke},i.transpose=function(U){if(!(ke=U.length))return[];for(var ne=-1,le=i.min(U,f),ye=new Array(le);++ne<le;)for(var ke,Re=-1,He=ye[ne]=new Array(ke);++Re<ke;)He[Re]=U[Re][ne];return ye},i.zip=function(){return i.transpose(arguments)},i.keys=function(U){var ne=[];for(var le in U)ne.push(le);return ne},i.values=function(U){var ne=[];for(var le in U)ne.push(U[le]);return ne},i.entries=function(U){var ne=[];for(var le in U)ne.push({key:le,value:U[le]});return ne},i.merge=function(U){for(var ne,le,ye,ke=U.length,Re=-1,He=0;++Re<ke;)He+=U[Re].length;for(le=new Array(He);--ke>=0;)for(ne=(ye=U[ke]).length;--ne>=0;)le[--He]=ye[ne];return le};var v=Math.abs;function m(U,ne){for(var le in ne)Object.defineProperty(U.prototype,le,{value:ne[le],enumerable:!1})}function x(){this._=Object.create(null)}i.range=function(U,ne,le){if(arguments.length<3&&(le=1,arguments.length<2&&(ne=U,U=0)),(ne-U)/le==1/0)throw new Error("infinite range");var ye,ke=[],Re=function(We){for(var Xe=1;We*Xe%1;)Xe*=10;return Xe}(v(le)),He=-1;if(U*=Re,ne*=Re,(le*=Re)<0)for(;(ye=U+le*++He)>ne;)ke.push(ye/Re);else for(;(ye=U+le*++He)<ne;)ke.push(ye/Re);return ke},i.map=function(U,ne){var le=new x;if(U instanceof x)U.forEach(function(We,Xe){le.set(We,Xe)});else if(Array.isArray(U)){var ye,ke=-1,Re=U.length;if(arguments.length===1)for(;++ke<Re;)le.set(ke,U[ke]);else for(;++ke<Re;)le.set(ne.call(U,ye=U[ke],ke),ye)}else for(var He in U)le.set(He,U[He]);return le};var T="__proto__",d="\0";function M(U){return(U+="")===T||U[0]===d?d+U:U}function A(U){return(U+="")[0]===d?U.slice(1):U}function C(U){return M(U)in this._}function P(U){return(U=M(U))in this._&&delete this._[U]}function O(){var U=[];for(var ne in this._)U.push(A(ne));return U}function z(){var U=0;for(var ne in this._)++U;return U}function B(){for(var U in this._)return!1;return!0}function Y(){this._=Object.create(null)}function D(U){return U}function G(U,ne,le){return function(){var ye=le.apply(ne,arguments);return ye===ne?U:ye}}function V(U,ne){if(ne in U)return ne;ne=ne.charAt(0).toUpperCase()+ne.slice(1);for(var le=0,ye=j.length;le<ye;++le){var ke=j[le]+ne;if(ke in U)return ke}}m(x,{has:C,get:function(U){return this._[M(U)]},set:function(U,ne){return this._[M(U)]=ne},remove:P,keys:O,values:function(){var U=[];for(var ne in this._)U.push(this._[ne]);return U},entries:function(){var U=[];for(var ne in this._)U.push({key:A(ne),value:this._[ne]});return U},size:z,empty:B,forEach:function(U){for(var ne in this._)U.call(this,A(ne),this._[ne])}}),i.nest=function(){var U,ne,le={},ye=[],ke=[];function Re(We,Xe,Ke){if(Ke>=ye.length)return ne?ne.call(le,Xe):U?Xe.sort(U):Xe;for(var it,pt,mt,Ot,Rt=-1,Pt=Xe.length,Vt=ye[Ke++],It=new x;++Rt<Pt;)(Ot=It.get(it=Vt(pt=Xe[Rt])))?Ot.push(pt):It.set(it,[pt]);return We?(pt=We(),mt=function(on,Kt){pt.set(on,Re(We,Kt,Ke))}):(pt={},mt=function(on,Kt){pt[on]=Re(We,Kt,Ke)}),It.forEach(mt),pt}function He(We,Xe){if(Xe>=ye.length)return We;var Ke=[],it=ke[Xe++];return We.forEach(function(pt,mt){Ke.push({key:pt,values:He(mt,Xe)})}),it?Ke.sort(function(pt,mt){return it(pt.key,mt.key)}):Ke}return le.map=function(We,Xe){return Re(Xe,We,0)},le.entries=function(We){return He(Re(i.map,We,0),0)},le.key=function(We){return ye.push(We),le},le.sortKeys=function(We){return ke[ye.length-1]=We,le},le.sortValues=function(We){return U=We,le},le.rollup=function(We){return ne=We,le},le},i.set=function(U){var ne=new Y;if(U)for(var le=0,ye=U.length;le<ye;++le)ne.add(U[le]);return ne},m(Y,{has:C,add:function(U){return this._[M(U+="")]=!0,U},remove:P,values:O,size:z,empty:B,forEach:function(U){for(var ne in this._)U.call(this,A(ne))}}),i.behavior={},i.rebind=function(U,ne){for(var le,ye=1,ke=arguments.length;++ye<ke;)U[le=arguments[ye]]=G(U,ne,ne[le]);return U};var j=["webkit","ms","moz","Moz","o","O"];function W(){}function Z(){}function ie(U){var ne=[],le=new x;function ye(){for(var ke,Re=ne,He=-1,We=Re.length;++He<We;)(ke=Re[He].on)&&ke.apply(this,arguments);return U}return ye.on=function(ke,Re){var He,We=le.get(ke);return arguments.length<2?We&&We.on:(We&&(We.on=null,ne=ne.slice(0,He=ne.indexOf(We)).concat(ne.slice(He+1)),le.remove(ke)),Re&&ne.push(le.set(ke,{on:Re})),U)},ye}function te(){i.event.preventDefault()}function J(){for(var U,ne=i.event;U=ne.sourceEvent;)ne=U;return ne}function X(U){for(var ne=new Z,le=0,ye=arguments.length;++le<ye;)ne[arguments[le]]=ie(ne);return ne.of=function(ke,Re){return function(He){try{var We=He.sourceEvent=i.event;He.target=U,i.event=He,ne[He.type].apply(ke,Re)}finally{i.event=We}}},ne}i.dispatch=function(){for(var U=new Z,ne=-1,le=arguments.length;++ne<le;)U[arguments[ne]]=ie(U);return U},Z.prototype.on=function(U,ne){var le=U.indexOf("."),ye="";if(le>=0&&(ye=U.slice(le+1),U=U.slice(0,le)),U)return arguments.length<2?this[U].on(ye):this[U].on(ye,ne);if(arguments.length===2){if(ne==null)for(U in this)this.hasOwnProperty(U)&&this[U].on(ye,null);return this}},i.event=null,i.requote=function(U){return U.replace(ee,"\\$&")};var ee=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,re={}.__proto__?function(U,ne){U.__proto__=ne}:function(U,ne){for(var le in ne)U[le]=ne[le]};function oe(U){return re(U,me),U}var ue=function(U,ne){return ne.querySelector(U)},ce=function(U,ne){return ne.querySelectorAll(U)},de=function(U,ne){var le=U.matches||U[V(U,"matchesSelector")];return de=function(ye,ke){return le.call(ye,ke)},de(U,ne)};typeof Sizzle=="function"&&(ue=function(U,ne){return Sizzle(U,ne)[0]||null},ce=Sizzle,de=Sizzle.matchesSelector),i.selection=function(){return i.select(h.documentElement)};var me=i.selection.prototype=[];function _e(U){return typeof U=="function"?U:function(){return ue(U,this)}}function Se(U){return typeof U=="function"?U:function(){return ce(U,this)}}me.select=function(U){var ne,le,ye,ke,Re=[];U=_e(U);for(var He=-1,We=this.length;++He<We;){Re.push(ne=[]),ne.parentNode=(ye=this[He]).parentNode;for(var Xe=-1,Ke=ye.length;++Xe<Ke;)(ke=ye[Xe])?(ne.push(le=U.call(ke,ke.__data__,Xe,He)),le&&"__data__"in ke&&(le.__data__=ke.__data__)):ne.push(null)}return oe(Re)},me.selectAll=function(U){var ne,le,ye=[];U=Se(U);for(var ke=-1,Re=this.length;++ke<Re;)for(var He=this[ke],We=-1,Xe=He.length;++We<Xe;)(le=He[We])&&(ye.push(ne=y(U.call(le,le.__data__,We,ke))),ne.parentNode=le);return oe(ye)};var we="http://www.w3.org/1999/xhtml",xe={svg:"http://www.w3.org/2000/svg",xhtml:we,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function De(U,ne){return U=i.ns.qualify(U),ne==null?U.local?function(){this.removeAttributeNS(U.space,U.local)}:function(){this.removeAttribute(U)}:typeof ne=="function"?U.local?function(){var le=ne.apply(this,arguments);le==null?this.removeAttributeNS(U.space,U.local):this.setAttributeNS(U.space,U.local,le)}:function(){var le=ne.apply(this,arguments);le==null?this.removeAttribute(U):this.setAttribute(U,le)}:U.local?function(){this.setAttributeNS(U.space,U.local,ne)}:function(){this.setAttribute(U,ne)}}function Ee(U){return U.trim().replace(/\s+/g," ")}function Me(U){return new RegExp("(?:^|\\s+)"+i.requote(U)+"(?:\\s+|$)","g")}function he(U){return(U+"").trim().split(/^|\s+/)}function fe(U,ne){var le=(U=he(U).map(ae)).length;return typeof ne=="function"?function(){for(var ye=-1,ke=ne.apply(this,arguments);++ye<le;)U[ye](this,ke)}:function(){for(var ye=-1;++ye<le;)U[ye](this,ne)}}function ae(U){var ne=Me(U);return function(le,ye){if(ke=le.classList)return ye?ke.add(U):ke.remove(U);var ke=le.getAttribute("class")||"";ye?(ne.lastIndex=0,ne.test(ke)||le.setAttribute("class",Ee(ke+" "+U))):le.setAttribute("class",Ee(ke.replace(ne," ")))}}function be(U,ne,le){return ne==null?function(){this.style.removeProperty(U)}:typeof ne=="function"?function(){var ye=ne.apply(this,arguments);ye==null?this.style.removeProperty(U):this.style.setProperty(U,ye,le)}:function(){this.style.setProperty(U,ne,le)}}function Ie(U,ne){return ne==null?function(){delete this[U]}:typeof ne=="function"?function(){var le=ne.apply(this,arguments);le==null?delete this[U]:this[U]=le}:function(){this[U]=ne}}function Te(U){return typeof U=="function"?U:(U=i.ns.qualify(U)).local?function(){return this.ownerDocument.createElementNS(U.space,U.local)}:function(){var ne=this.ownerDocument,le=this.namespaceURI;return le===we&&ne.documentElement.namespaceURI===we?ne.createElement(U):ne.createElementNS(le,U)}}function Ne(){var U=this.parentNode;U&&U.removeChild(this)}function qe(U){return{__data__:U}}function ve(U){return function(){return de(this,U)}}function Ce(U){return arguments.length||(U=u),function(ne,le){return ne&&le?U(ne.__data__,le.__data__):!ne-!le}}function Ae(U,ne){for(var le=0,ye=U.length;le<ye;le++)for(var ke,Re=U[le],He=0,We=Re.length;He<We;He++)(ke=Re[He])&&ne(ke,He,le);return U}function ze(U){return re(U,Ue),U}i.ns={prefix:xe,qualify:function(U){var ne=U.indexOf(":"),le=U;return ne>=0&&(le=U.slice(0,ne))!=="xmlns"&&(U=U.slice(ne+1)),xe.hasOwnProperty(le)?{space:xe[le],local:U}:U}},me.attr=function(U,ne){if(arguments.length<2){if(typeof U=="string"){var le=this.node();return(U=i.ns.qualify(U)).local?le.getAttributeNS(U.space,U.local):le.getAttribute(U)}for(ne in U)this.each(De(ne,U[ne]));return this}return this.each(De(U,ne))},me.classed=function(U,ne){if(arguments.length<2){if(typeof U=="string"){var le=this.node(),ye=(U=he(U)).length,ke=-1;if(ne=le.classList){for(;++ke<ye;)if(!ne.contains(U[ke]))return!1}else for(ne=le.getAttribute("class");++ke<ye;)if(!Me(U[ke]).test(ne))return!1;return!0}for(ne in U)this.each(fe(ne,U[ne]));return this}return this.each(fe(U,ne))},me.style=function(U,ne,le){var ye=arguments.length;if(ye<3){if(typeof U!="string"){for(le in ye<2&&(ne=""),U)this.each(be(le,U[le],ne));return this}if(ye<2){var ke=this.node();return t(ke).getComputedStyle(ke,null).getPropertyValue(U)}le=""}return this.each(be(U,ne,le))},me.property=function(U,ne){if(arguments.length<2){if(typeof U=="string")return this.node()[U];for(ne in U)this.each(Ie(ne,U[ne]));return this}return this.each(Ie(U,ne))},me.text=function(U){return arguments.length?this.each(typeof U=="function"?function(){var ne=U.apply(this,arguments);this.textContent=ne??""}:U==null?function(){this.textContent=""}:function(){this.textContent=U}):this.node().textContent},me.html=function(U){return arguments.length?this.each(typeof U=="function"?function(){var ne=U.apply(this,arguments);this.innerHTML=ne??""}:U==null?function(){this.innerHTML=""}:function(){this.innerHTML=U}):this.node().innerHTML},me.append=function(U){return U=Te(U),this.select(function(){return this.appendChild(U.apply(this,arguments))})},me.insert=function(U,ne){return U=Te(U),ne=_e(ne),this.select(function(){return this.insertBefore(U.apply(this,arguments),ne.apply(this,arguments)||null)})},me.remove=function(){return this.each(Ne)},me.data=function(U,ne){var le,ye,ke=-1,Re=this.length;if(!arguments.length){for(U=new Array(Re=(le=this[0]).length);++ke<Re;)(ye=le[ke])&&(U[ke]=ye.__data__);return U}function He(it,pt){var mt,Ot,Rt,Pt=it.length,Vt=pt.length,It=Math.min(Pt,Vt),on=new Array(Vt),Kt=new Array(Vt),Zt=new Array(Pt);if(ne){var yn,_n=new x,Un=new Array(Pt);for(mt=-1;++mt<Pt;)(Ot=it[mt])&&(_n.has(yn=ne.call(Ot,Ot.__data__,mt))?Zt[mt]=Ot:_n.set(yn,Ot),Un[mt]=yn);for(mt=-1;++mt<Vt;)(Ot=_n.get(yn=ne.call(pt,Rt=pt[mt],mt)))?Ot!==!0&&(on[mt]=Ot,Ot.__data__=Rt):Kt[mt]=qe(Rt),_n.set(yn,!0);for(mt=-1;++mt<Pt;)mt in Un&&_n.get(Un[mt])!==!0&&(Zt[mt]=it[mt])}else{for(mt=-1;++mt<It;)Ot=it[mt],Rt=pt[mt],Ot?(Ot.__data__=Rt,on[mt]=Ot):Kt[mt]=qe(Rt);for(;mt<Vt;++mt)Kt[mt]=qe(pt[mt]);for(;mt<Pt;++mt)Zt[mt]=it[mt]}Kt.update=on,Kt.parentNode=on.parentNode=Zt.parentNode=it.parentNode,We.push(Kt),Xe.push(on),Ke.push(Zt)}var We=ze([]),Xe=oe([]),Ke=oe([]);if(typeof U=="function")for(;++ke<Re;)He(le=this[ke],U.call(le,le.parentNode.__data__,ke));else for(;++ke<Re;)He(le=this[ke],U);return Xe.enter=function(){return We},Xe.exit=function(){return Ke},Xe},me.datum=function(U){return arguments.length?this.property("__data__",U):this.property("__data__")},me.filter=function(U){var ne,le,ye,ke=[];typeof U!="function"&&(U=ve(U));for(var Re=0,He=this.length;Re<He;Re++){ke.push(ne=[]),ne.parentNode=(le=this[Re]).parentNode;for(var We=0,Xe=le.length;We<Xe;We++)(ye=le[We])&&U.call(ye,ye.__data__,We,Re)&&ne.push(ye)}return oe(ke)},me.order=function(){for(var U=-1,ne=this.length;++U<ne;)for(var le,ye=this[U],ke=ye.length-1,Re=ye[ke];--ke>=0;)(le=ye[ke])&&(Re&&Re!==le.nextSibling&&Re.parentNode.insertBefore(le,Re),Re=le);return this},me.sort=function(U){U=Ce.apply(this,arguments);for(var ne=-1,le=this.length;++ne<le;)this[ne].sort(U);return this.order()},me.each=function(U){return Ae(this,function(ne,le,ye){U.call(ne,ne.__data__,le,ye)})},me.call=function(U){var ne=y(arguments);return U.apply(ne[0]=this,ne),this},me.empty=function(){return!this.node()},me.node=function(){for(var U=0,ne=this.length;U<ne;U++)for(var le=this[U],ye=0,ke=le.length;ye<ke;ye++){var Re=le[ye];if(Re)return Re}return null},me.size=function(){var U=0;return Ae(this,function(){++U}),U};var Ue=[];function Ve(U,ne,le){var ye="__on"+U,ke=U.indexOf("."),Re=$e;ke>0&&(U=U.slice(0,ke));var He=Ye.get(U);function We(){var Xe=this[ye];Xe&&(this.removeEventListener(U,Xe,Xe.$),delete this[ye])}return He&&(U=He,Re=rt),ke?ne?function(){var Xe=Re(ne,y(arguments));We.call(this),this.addEventListener(U,this[ye]=Xe,Xe.$=le),Xe._=ne}:We:ne?W:function(){var Xe,Ke=new RegExp("^__on([^.]+)"+i.requote(U)+"$");for(var it in this)if(Xe=it.match(Ke)){var pt=this[it];this.removeEventListener(Xe[1],pt,pt.$),delete this[it]}}}i.selection.enter=ze,i.selection.enter.prototype=Ue,Ue.append=me.append,Ue.empty=me.empty,Ue.node=me.node,Ue.call=me.call,Ue.size=me.size,Ue.select=function(U){for(var ne,le,ye,ke,Re,He=[],We=-1,Xe=this.length;++We<Xe;){ye=(ke=this[We]).update,He.push(ne=[]),ne.parentNode=ke.parentNode;for(var Ke=-1,it=ke.length;++Ke<it;)(Re=ke[Ke])?(ne.push(ye[Ke]=le=U.call(ke.parentNode,Re.__data__,Ke,We)),le.__data__=Re.__data__):ne.push(null)}return oe(He)},Ue.insert=function(U,ne){var le,ye,ke;return arguments.length<2&&(le=this,ne=function(Re,He,We){var Xe,Ke=le[We].update,it=Ke.length;for(We!=ke&&(ke=We,ye=0),He>=ye&&(ye=He+1);!(Xe=Ke[ye])&&++ye<it;);return Xe}),me.insert.call(this,U,ne)},i.select=function(U){var ne;return typeof U=="string"?(ne=[ue(U,h)]).parentNode=h.documentElement:(ne=[U]).parentNode=l(U),oe([ne])},i.selectAll=function(U){var ne;return typeof U=="string"?(ne=y(ce(U,h))).parentNode=h.documentElement:(ne=y(U)).parentNode=null,oe([ne])},me.on=function(U,ne,le){var ye=arguments.length;if(ye<3){if(typeof U!="string"){for(le in ye<2&&(ne=!1),U)this.each(Ve(le,U[le],ne));return this}if(ye<2)return(ye=this.node()["__on"+U])&&ye._;le=!1}return this.each(Ve(U,ne,le))};var Ye=i.map({mouseenter:"mouseover",mouseleave:"mouseout"});function $e(U,ne){return function(le){var ye=i.event;i.event=le,ne[0]=this.__data__;try{U.apply(this,ne)}finally{i.event=ye}}}function rt(U,ne){var le=$e(U,ne);return function(ye){var ke=this,Re=ye.relatedTarget;Re&&(Re===ke||8&Re.compareDocumentPosition(ke))||le.call(ke,ye)}}h&&Ye.forEach(function(U){"on"+U in h&&Ye.remove(U)});var ht,nt=0;function bt(U){var ne=".dragsuppress-"+ ++nt,le="click"+ne,ye=i.select(t(U)).on("touchmove"+ne,te).on("dragstart"+ne,te).on("selectstart"+ne,te);if(ht==null&&(ht=!("onselectstart"in U)&&V(U.style,"userSelect")),ht){var ke=l(U).style,Re=ke[ht];ke[ht]="none"}return function(He){if(ye.on(ne,null),ht&&(ke[ht]=Re),He){var We=function(){ye.on(le,null)};ye.on(le,function(){te(),We()},!0),setTimeout(We,0)}}}i.mouse=function(U){return ut(U,J())};var wt=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function ut(U,ne){ne.changedTouches&&(ne=ne.changedTouches[0]);var le=U.ownerSVGElement||U;if(le.createSVGPoint){var ye=le.createSVGPoint();if(wt<0){var ke=t(U);if(ke.scrollX||ke.scrollY){var Re=(le=i.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important"))[0][0].getScreenCTM();wt=!(Re.f||Re.e),le.remove()}}return wt?(ye.x=ne.pageX,ye.y=ne.pageY):(ye.x=ne.clientX,ye.y=ne.clientY),[(ye=ye.matrixTransform(U.getScreenCTM().inverse())).x,ye.y]}var He=U.getBoundingClientRect();return[ne.clientX-He.left-U.clientLeft,ne.clientY-He.top-U.clientTop]}function lt(){return i.event.changedTouches[0].identifier}i.touch=function(U,ne,le){if(arguments.length<3&&(le=ne,ne=J().changedTouches),ne){for(var ye,ke=0,Re=ne.length;ke<Re;++ke)if((ye=ne[ke]).identifier===le)return ut(U,ye)}},i.behavior.drag=function(){var U=X(ke,"drag","dragstart","dragend"),ne=null,le=Re(W,i.mouse,t,"mousemove","mouseup"),ye=Re(lt,i.touch,D,"touchmove","touchend");function ke(){this.on("mousedown.drag",le).on("touchstart.drag",ye)}function Re(He,We,Xe,Ke,it){return function(){var pt,mt=this,Ot=i.event.target.correspondingElement||i.event.target,Rt=mt.parentNode,Pt=U.of(mt,arguments),Vt=0,It=He(),on=".drag"+(It==null?"":"-"+It),Kt=i.select(Xe(Ot)).on(Ke+on,function(){var _n,Un,Vn=We(Rt,It);Vn&&(_n=Vn[0]-yn[0],Un=Vn[1]-yn[1],Vt|=_n|Un,yn=Vn,Pt({type:"drag",x:Vn[0]+pt[0],y:Vn[1]+pt[1],dx:_n,dy:Un}))}).on(it+on,function(){We(Rt,It)&&(Kt.on(Ke+on,null).on(it+on,null),Zt(Vt),Pt({type:"dragend"}))}),Zt=bt(Ot),yn=We(Rt,It);pt=ne?[(pt=ne.apply(mt,arguments)).x-yn[0],pt.y-yn[1]]:[0,0],Pt({type:"dragstart"})}}return ke.origin=function(He){return arguments.length?(ne=He,ke):ne},i.rebind(ke,U,"on")},i.touches=function(U,ne){return arguments.length<2&&(ne=J().touches),ne?y(ne).map(function(le){var ye=ut(U,le);return ye.identifier=le.identifier,ye}):[]};var Tt=1e-6,Et=Tt*Tt,St=Math.PI,Ft=2*St,zt=Ft-Tt,Je=St/2,et=St/180,Ze=180/St;function Qe(U){return U>1?Je:U<-1?-Je:Math.asin(U)}function st(U){return((U=Math.exp(U))+1/U)/2}var ft=Math.SQRT2;i.interpolateZoom=function(U,ne){var le,ye,ke=U[0],Re=U[1],He=U[2],We=ne[0],Xe=ne[1],Ke=ne[2],it=We-ke,pt=Xe-Re,mt=it*it+pt*pt;if(mt<Et)ye=Math.log(Ke/He)/ft,le=function(on){return[ke+on*it,Re+on*pt,He*Math.exp(ft*on*ye)]};else{var Ot=Math.sqrt(mt),Rt=(Ke*Ke-He*He+4*mt)/(2*He*2*Ot),Pt=(Ke*Ke-He*He-4*mt)/(2*Ke*2*Ot),Vt=Math.log(Math.sqrt(Rt*Rt+1)-Rt),It=Math.log(Math.sqrt(Pt*Pt+1)-Pt);ye=(It-Vt)/ft,le=function(on){var Kt,Zt=on*ye,yn=st(Vt),_n=He/(2*Ot)*(yn*(Kt=ft*Zt+Vt,((Kt=Math.exp(2*Kt))-1)/(Kt+1))-function(Un){return((Un=Math.exp(Un))-1/Un)/2}(Vt));return[ke+_n*it,Re+_n*pt,He*yn/st(ft*Zt+Vt)]}}return le.duration=1e3*ye,le},i.behavior.zoom=function(){var U,ne,le,ye,ke,Re,He,We,Xe,Ke={x:0,y:0,k:1},it=[960,500],pt=at,mt=250,Ot=0,Rt="mousedown.zoom",Pt="mousemove.zoom",Vt="mouseup.zoom",It="touchstart.zoom",on=X(Kt,"zoomstart","zoom","zoomend");function Kt(qn){qn.on(Rt,cr).on(je+".zoom",Ar).on("dblclick.zoom",Br).on(It,mr)}function Zt(qn){return[(qn[0]-Ke.x)/Ke.k,(qn[1]-Ke.y)/Ke.k]}function yn(qn){Ke.k=Math.max(pt[0],Math.min(pt[1],qn))}function _n(qn,ur){ur=function(yr){return[yr[0]*Ke.k+Ke.x,yr[1]*Ke.k+Ke.y]}(ur),Ke.x+=qn[0]-ur[0],Ke.y+=qn[1]-ur[1]}function Un(qn,ur,yr,Mr){qn.__chart__={x:Ke.x,y:Ke.y,k:Ke.k},yn(Math.pow(2,Mr)),_n(ne=ur,yr),qn=i.select(qn),mt>0&&(qn=qn.transition().duration(mt)),qn.call(Kt.event)}function Vn(){He&&He.domain(Re.range().map(function(qn){return(qn-Ke.x)/Ke.k}).map(Re.invert)),Xe&&Xe.domain(We.range().map(function(qn){return(qn-Ke.y)/Ke.k}).map(We.invert))}function Zn(qn){Ot++||qn({type:"zoomstart"})}function Qn(qn){Vn(),qn({type:"zoom",scale:Ke.k,translate:[Ke.x,Ke.y]})}function pr(qn){--Ot||(qn({type:"zoomend"}),ne=null)}function cr(){var qn=this,ur=on.of(qn,arguments),yr=0,Mr=i.select(t(qn)).on(Pt,function(){yr=1,_n(i.mouse(qn),Rr),Qn(ur)}).on(Vt,function(){Mr.on(Pt,null).on(Vt,null),Vr(yr),pr(ur)}),Rr=Zt(i.mouse(qn)),Vr=bt(qn);va.call(qn),Zn(ur)}function mr(){var qn,ur=this,yr=on.of(ur,arguments),Mr={},Rr=0,Vr=".zoom-"+i.event.changedTouches[0].identifier,$r="touchmove"+Vr,ai="touchend"+Vr,bi=[],_i=i.select(ur),oi=bt(ur);function Fi(){var ei=i.touches(ur);return qn=Ke.k,ei.forEach(function(Yr){Yr.identifier in Mr&&(Mr[Yr.identifier]=Zt(Yr))}),ei}function la(){var ei=i.event.target;i.select(ei).on($r,Wi).on(ai,ea),bi.push(ei);for(var Yr=i.event.changedTouches,wi=0,gi=Yr.length;wi<gi;++wi)Mr[Yr[wi].identifier]=null;var Mi=Fi(),za=Date.now();if(Mi.length===1){if(za-ke<500){var Oi=Mi[0];Un(ur,Oi,Mr[Oi.identifier],Math.floor(Math.log(Ke.k)/Math.LN2)+1),te()}ke=za}else if(Mi.length>1){Oi=Mi[0];var si=Mi[1],sl=Oi[0]-si[0],Wa=Oi[1]-si[1];Rr=sl*sl+Wa*Wa}}function Wi(){var ei,Yr,wi,gi,Mi=i.touches(ur);va.call(ur);for(var za=0,Oi=Mi.length;za<Oi;++za,gi=null)if(wi=Mi[za],gi=Mr[wi.identifier]){if(Yr)break;ei=wi,Yr=gi}if(gi){var si=(si=wi[0]-ei[0])*si+(si=wi[1]-ei[1])*si,sl=Rr&&Math.sqrt(si/Rr);ei=[(ei[0]+wi[0])/2,(ei[1]+wi[1])/2],Yr=[(Yr[0]+gi[0])/2,(Yr[1]+gi[1])/2],yn(sl*qn)}ke=null,_n(ei,Yr),Qn(yr)}function ea(){if(i.event.touches.length){for(var ei=i.event.changedTouches,Yr=0,wi=ei.length;Yr<wi;++Yr)delete Mr[ei[Yr].identifier];for(var gi in Mr)return void Fi()}i.selectAll(bi).on(Vr,null),_i.on(Rt,cr).on(It,mr),oi(),pr(yr)}la(),Zn(yr),_i.on(Rt,null).on(It,la)}function Ar(){var qn=on.of(this,arguments);ye?clearTimeout(ye):(va.call(this),U=Zt(ne=le||i.mouse(this)),Zn(qn)),ye=setTimeout(function(){ye=null,pr(qn)},50),te(),yn(Math.pow(2,.002*Be())*Ke.k),_n(ne,U),Qn(qn)}function Br(){var qn=i.mouse(this),ur=Math.log(Ke.k)/Math.LN2;Un(this,qn,Zt(qn),i.event.shiftKey?Math.ceil(ur)-1:Math.floor(ur)+1)}return je||(je="onwheel"in h?(Be=function(){return-i.event.deltaY*(i.event.deltaMode?120:1)},"wheel"):"onmousewheel"in h?(Be=function(){return i.event.wheelDelta},"mousewheel"):(Be=function(){return-i.event.detail},"MozMousePixelScroll")),Kt.event=function(qn){qn.each(function(){var ur=on.of(this,arguments),yr=Ke;Is?i.select(this).transition().each("start.zoom",function(){Ke=this.__chart__||{x:0,y:0,k:1},Zn(ur)}).tween("zoom:zoom",function(){var Mr=it[0],Rr=it[1],Vr=ne?ne[0]:Mr/2,$r=ne?ne[1]:Rr/2,ai=i.interpolateZoom([(Vr-Ke.x)/Ke.k,($r-Ke.y)/Ke.k,Mr/Ke.k],[(Vr-yr.x)/yr.k,($r-yr.y)/yr.k,Mr/yr.k]);return function(bi){var _i=ai(bi),oi=Mr/_i[2];this.__chart__=Ke={x:Vr-_i[0]*oi,y:$r-_i[1]*oi,k:oi},Qn(ur)}}).each("interrupt.zoom",function(){pr(ur)}).each("end.zoom",function(){pr(ur)}):(this.__chart__=Ke,Zn(ur),Qn(ur),pr(ur))})},Kt.translate=function(qn){return arguments.length?(Ke={x:+qn[0],y:+qn[1],k:Ke.k},Vn(),Kt):[Ke.x,Ke.y]},Kt.scale=function(qn){return arguments.length?(Ke={x:Ke.x,y:Ke.y,k:null},yn(+qn),Vn(),Kt):Ke.k},Kt.scaleExtent=function(qn){return arguments.length?(pt=qn==null?at:[+qn[0],+qn[1]],Kt):pt},Kt.center=function(qn){return arguments.length?(le=qn&&[+qn[0],+qn[1]],Kt):le},Kt.size=function(qn){return arguments.length?(it=qn&&[+qn[0],+qn[1]],Kt):it},Kt.duration=function(qn){return arguments.length?(mt=+qn,Kt):mt},Kt.x=function(qn){return arguments.length?(He=qn,Re=qn.copy(),Ke={x:0,y:0,k:1},Kt):He},Kt.y=function(qn){return arguments.length?(Xe=qn,We=qn.copy(),Ke={x:0,y:0,k:1},Kt):Xe},i.rebind(Kt,on,"on")};var Be,je,at=[0,1/0];function ot(){}function xt(U,ne,le){return this instanceof xt?(this.h=+U,this.s=+ne,void(this.l=+le)):arguments.length<2?U instanceof xt?new xt(U.h,U.s,U.l):fn(""+U,mn,xt):new xt(U,ne,le)}i.color=ot,ot.prototype.toString=function(){return this.rgb()+""},i.hsl=xt;var yt=xt.prototype=new ot;function _t(U,ne,le){var ye,ke;function Re(He){return Math.round(255*function(We){return We>360?We-=360:We<0&&(We+=360),We<60?ye+(ke-ye)*We/60:We<180?ke:We<240?ye+(ke-ye)*(240-We)/60:ye}(He))}return U=isNaN(U)?0:(U%=360)<0?U+360:U,ne=isNaN(ne)||ne<0?0:ne>1?1:ne,ye=2*(le=le<0?0:le>1?1:le)-(ke=le<=.5?le*(1+ne):le+ne-le*ne),new Tn(Re(U+120),Re(U),Re(U-120))}function gt(U,ne,le){return this instanceof gt?(this.h=+U,this.c=+ne,void(this.l=+le)):arguments.length<2?U instanceof gt?new gt(U.h,U.c,U.l):function(ye,ke,Re){return ye>0?new gt(Math.atan2(Re,ke)*Ze,Math.sqrt(ke*ke+Re*Re),ye):new gt(NaN,NaN,ye)}(U instanceof vt?U.l:(U=xn((U=i.rgb(U)).r,U.g,U.b)).l,U.a,U.b):new gt(U,ne,le)}yt.brighter=function(U){return U=Math.pow(.7,arguments.length?U:1),new xt(this.h,this.s,this.l/U)},yt.darker=function(U){return U=Math.pow(.7,arguments.length?U:1),new xt(this.h,this.s,U*this.l)},yt.rgb=function(){return _t(this.h,this.s,this.l)},i.hcl=gt;var Ct=gt.prototype=new ot;function dt(U,ne,le){return isNaN(U)&&(U=0),isNaN(ne)&&(ne=0),new vt(le,Math.cos(U*=et)*ne,Math.sin(U)*ne)}function vt(U,ne,le){return this instanceof vt?(this.l=+U,this.a=+ne,void(this.b=+le)):arguments.length<2?U instanceof vt?new vt(U.l,U.a,U.b):U instanceof gt?dt(U.h,U.c,U.l):xn((U=Tn(U)).r,U.g,U.b):new vt(U,ne,le)}Ct.brighter=function(U){return new gt(this.h,this.c,Math.min(100,this.l+At*(arguments.length?U:1)))},Ct.darker=function(U){return new gt(this.h,this.c,Math.max(0,this.l-At*(arguments.length?U:1)))},Ct.rgb=function(){return dt(this.h,this.c,this.l).rgb()},i.lab=vt;var At=18,Bt=.95047,jt=1,Ut=1.08883,tn=vt.prototype=new ot;function Xt(U,ne,le){var ye=(U+16)/116,ke=ye+ne/500,Re=ye-le/200;return new Tn(vn(3.2404542*(ke=Qt(ke)*Bt)-1.5371385*(ye=Qt(ye)*jt)-.4985314*(Re=Qt(Re)*Ut)),vn(-.969266*ke+1.8760108*ye+.041556*Re),vn(.0556434*ke-.2040259*ye+1.0572252*Re))}function Qt(U){return U>.206893034?U*U*U:(U-.13793103448275862)/7.787037}function Gt(U){return U>.008856?Math.pow(U,.3333333333333333):7.787037*U+.13793103448275862}function vn(U){return Math.round(255*(U<=.00304?12.92*U:1.055*Math.pow(U,.4166666666666667)-.055))}function Tn(U,ne,le){return this instanceof Tn?(this.r=~~U,this.g=~~ne,void(this.b=~~le)):arguments.length<2?U instanceof Tn?new Tn(U.r,U.g,U.b):fn(""+U,Tn,_t):new Tn(U,ne,le)}function dn(U){return new Tn(U>>16,U>>8&255,255&U)}function Yt(U){return dn(U)+""}tn.brighter=function(U){return new vt(Math.min(100,this.l+At*(arguments.length?U:1)),this.a,this.b)},tn.darker=function(U){return new vt(Math.max(0,this.l-At*(arguments.length?U:1)),this.a,this.b)},tn.rgb=function(){return Xt(this.l,this.a,this.b)},i.rgb=Tn;var ln=Tn.prototype=new ot;function nn(U){return U<16?"0"+Math.max(0,U).toString(16):Math.min(255,U).toString(16)}function fn(U,ne,le){var ye,ke,Re,He=0,We=0,Xe=0;if(ye=/([a-z]+)\((.*)\)/.exec(U=U.toLowerCase()))switch(ke=ye[2].split(","),ye[1]){case"hsl":return le(parseFloat(ke[0]),parseFloat(ke[1])/100,parseFloat(ke[2])/100);case"rgb":return ne(Dn(ke[0]),Dn(ke[1]),Dn(ke[2]))}return(Re=En.get(U))?ne(Re.r,Re.g,Re.b):(U==null||U.charAt(0)!=="#"||isNaN(Re=parseInt(U.slice(1),16))||(U.length===4?(He=(3840&Re)>>4,He|=He>>4,We=240&Re,We|=We>>4,Xe=15&Re,Xe|=Xe<<4):U.length===7&&(He=(16711680&Re)>>16,We=(65280&Re)>>8,Xe=255&Re)),ne(He,We,Xe))}function mn(U,ne,le){var ye,ke,Re=Math.min(U/=255,ne/=255,le/=255),He=Math.max(U,ne,le),We=He-Re,Xe=(He+Re)/2;return We?(ke=Xe<.5?We/(He+Re):We/(2-He-Re),ye=U==He?(ne-le)/We+(ne<le?6:0):ne==He?(le-U)/We+2:(U-ne)/We+4,ye*=60):(ye=NaN,ke=Xe>0&&Xe<1?0:ye),new xt(ye,ke,Xe)}function xn(U,ne,le){var ye=Gt((.4124564*(U=Pn(U))+.3575761*(ne=Pn(ne))+.1804375*(le=Pn(le)))/Bt),ke=Gt((.2126729*U+.7151522*ne+.072175*le)/jt);return vt(116*ke-16,500*(ye-ke),200*(ke-Gt((.0193339*U+.119192*ne+.9503041*le)/Ut)))}function Pn(U){return(U/=255)<=.04045?U/12.92:Math.pow((U+.055)/1.055,2.4)}function Dn(U){var ne=parseFloat(U);return U.charAt(U.length-1)==="%"?Math.round(2.55*ne):ne}ln.brighter=function(U){U=Math.pow(.7,arguments.length?U:1);var ne=this.r,le=this.g,ye=this.b,ke=30;return ne||le||ye?(ne&&ne<ke&&(ne=ke),le&&le<ke&&(le=ke),ye&&ye<ke&&(ye=ke),new Tn(Math.min(255,ne/U),Math.min(255,le/U),Math.min(255,ye/U))):new Tn(ke,ke,ke)},ln.darker=function(U){return new Tn((U=Math.pow(.7,arguments.length?U:1))*this.r,U*this.g,U*this.b)},ln.hsl=function(){return mn(this.r,this.g,this.b)},ln.toString=function(){return"#"+nn(this.r)+nn(this.g)+nn(this.b)};var En=i.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});function Fn(U){return typeof U=="function"?U:function(){return U}}function er(U){return function(ne,le,ye){return arguments.length===2&&typeof le=="function"&&(ye=le,le=null),ir(ne,le,U,ye)}}function ir(U,ne,le,ye){var ke={},Re=i.dispatch("beforesend","progress","load","error"),He={},We=new XMLHttpRequest,Xe=null;function Ke(){var it,pt=We.status;if(!pt&&function(mt){var Ot=mt.responseType;return Ot&&Ot!=="text"?mt.response:mt.responseText}(We)||pt>=200&&pt<300||pt===304){try{it=le.call(ke,We)}catch(mt){return void Re.error.call(ke,mt)}Re.load.call(ke,it)}else Re.error.call(ke,We)}return self.XDomainRequest&&!("withCredentials"in We)&&/^(http(s)?:)?\/\//.test(U)&&(We=new XDomainRequest),"onload"in We?We.onload=We.onerror=Ke:We.onreadystatechange=function(){We.readyState>3&&Ke()},We.onprogress=function(it){var pt=i.event;i.event=it;try{Re.progress.call(ke,We)}finally{i.event=pt}},ke.header=function(it,pt){return it=(it+"").toLowerCase(),arguments.length<2?He[it]:(pt==null?delete He[it]:He[it]=pt+"",ke)},ke.mimeType=function(it){return arguments.length?(ne=it==null?null:it+"",ke):ne},ke.responseType=function(it){return arguments.length?(Xe=it,ke):Xe},ke.response=function(it){return le=it,ke},["get","post"].forEach(function(it){ke[it]=function(){return ke.send.apply(ke,[it].concat(y(arguments)))}}),ke.send=function(it,pt,mt){if(arguments.length===2&&typeof pt=="function"&&(mt=pt,pt=null),We.open(it,U,!0),ne==null||"accept"in He||(He.accept=ne+",*/*"),We.setRequestHeader)for(var Ot in He)We.setRequestHeader(Ot,He[Ot]);return ne!=null&&We.overrideMimeType&&We.overrideMimeType(ne),Xe!=null&&(We.responseType=Xe),mt!=null&&ke.on("error",mt).on("load",function(Rt){mt(null,Rt)}),Re.beforesend.call(ke,We),We.send(pt??null),ke},ke.abort=function(){return We.abort(),ke},i.rebind(ke,Re,"on"),ye==null?ke:ke.get(function(it){return it.length===1?function(pt,mt){it(pt==null?mt:null)}:it}(ye))}En.forEach(function(U,ne){En.set(U,dn(ne))}),i.functor=Fn,i.xhr=er(D),i.dsv=function(U,ne){var le=new RegExp('["'+U+`
|
||
]`),ye=U.charCodeAt(0);function ke(Ke,it,pt){arguments.length<3&&(pt=it,it=null);var mt=ir(Ke,ne,it==null?Re:He(it),pt);return mt.row=function(Ot){return arguments.length?mt.response((it=Ot)==null?Re:He(Ot)):it},mt}function Re(Ke){return ke.parse(Ke.responseText)}function He(Ke){return function(it){return ke.parse(it.responseText,Ke)}}function We(Ke){return Ke.map(Xe).join(U)}function Xe(Ke){return le.test(Ke)?'"'+Ke.replace(/\"/g,'""')+'"':Ke}return ke.parse=function(Ke,it){var pt;return ke.parseRows(Ke,function(mt,Ot){if(pt)return pt(mt,Ot-1);var Rt=function(Pt){for(var Vt={},It=mt.length,on=0;on<It;++on)Vt[mt[on]]=Pt[on];return Vt};pt=it?function(Pt,Vt){return it(Rt(Pt),Vt)}:Rt})},ke.parseRows=function(Ke,it){var pt,mt,Ot={},Rt={},Pt=[],Vt=Ke.length,It=0,on=0;function Kt(){if(It>=Vt)return Rt;if(mt)return mt=!1,Ot;var yn=It;if(Ke.charCodeAt(yn)===34){for(var _n=yn;_n++<Vt;)if(Ke.charCodeAt(_n)===34){if(Ke.charCodeAt(_n+1)!==34)break;++_n}return It=_n+2,(Un=Ke.charCodeAt(_n+1))===13?(mt=!0,Ke.charCodeAt(_n+2)===10&&++It):Un===10&&(mt=!0),Ke.slice(yn+1,_n).replace(/""/g,'"')}for(;It<Vt;){var Un,Vn=1;if((Un=Ke.charCodeAt(It++))===10)mt=!0;else if(Un===13)mt=!0,Ke.charCodeAt(It)===10&&(++It,++Vn);else if(Un!==ye)continue;return Ke.slice(yn,It-Vn)}return Ke.slice(yn)}for(;(pt=Kt())!==Rt;){for(var Zt=[];pt!==Ot&&pt!==Rt;)Zt.push(pt),pt=Kt();it&&(Zt=it(Zt,on++))==null||Pt.push(Zt)}return Pt},ke.format=function(Ke){if(Array.isArray(Ke[0]))return ke.formatRows(Ke);var it=new Y,pt=[];return Ke.forEach(function(mt){for(var Ot in mt)it.has(Ot)||pt.push(it.add(Ot))}),[pt.map(Xe).join(U)].concat(Ke.map(function(mt){return pt.map(function(Ot){return Xe(mt[Ot])}).join(U)})).join(`
|
||
`)},ke.formatRows=function(Ke){return Ke.map(We).join(`
|
||
`)},ke},i.csv=i.dsv(",","text/csv"),i.tsv=i.dsv(" ","text/tab-separated-values");var fr,ar,Kn,wr,Ht=this[V(this,"requestAnimationFrame")]||function(U){setTimeout(U,17)};function sn(U,ne,le){var ye=arguments.length;ye<2&&(ne=0),ye<3&&(le=Date.now());var ke={c:U,t:le+ne,n:null};return ar?ar.n=ke:fr=ke,ar=ke,Kn||(wr=clearTimeout(wr),Kn=1,Ht(gn)),ke}function gn(){var U=bn(),ne=Cn()-U;ne>24?(isFinite(ne)&&(clearTimeout(wr),wr=setTimeout(gn,ne)),Kn=0):(Kn=1,Ht(gn))}function bn(){for(var U=Date.now(),ne=fr;ne;)U>=ne.t&&ne.c(U-ne.t)&&(ne.c=null),ne=ne.n;return U}function Cn(){for(var U,ne=fr,le=1/0;ne;)ne.c?(ne.t<le&&(le=ne.t),ne=(U=ne).n):ne=U?U.n=ne.n:fr=ne.n;return ar=U,le}function Yn(U){return U[0]}function Nn(U){return U[1]}function jn(U){for(var ne,le,ye,ke=U.length,Re=[0,1],He=2,We=2;We<ke;We++){for(;He>1&&(ne=U[Re[He-2]],le=U[Re[He-1]],ye=U[We],(le[0]-ne[0])*(ye[1]-ne[1])-(le[1]-ne[1])*(ye[0]-ne[0])<=0);)--He;Re[He++]=We}return Re.slice(0,He)}function rr(U,ne){return U[0]-ne[0]||U[1]-ne[1]}i.timer=function(){sn.apply(this,arguments)},i.timer.flush=function(){bn(),Cn()},i.round=function(U,ne){return ne?Math.round(U*(ne=Math.pow(10,ne)))/ne:Math.round(U)},i.geom={},i.geom.hull=function(U){var ne=Yn,le=Nn;if(arguments.length)return ye(U);function ye(ke){if(ke.length<3)return[];var Re,He=Fn(ne),We=Fn(le),Xe=ke.length,Ke=[],it=[];for(Re=0;Re<Xe;Re++)Ke.push([+He.call(this,ke[Re],Re),+We.call(this,ke[Re],Re),Re]);for(Ke.sort(rr),Re=0;Re<Xe;Re++)it.push([Ke[Re][0],-Ke[Re][1]]);var pt=jn(Ke),mt=jn(it),Ot=mt[0]===pt[0],Rt=mt[mt.length-1]===pt[pt.length-1],Pt=[];for(Re=pt.length-1;Re>=0;--Re)Pt.push(ke[Ke[pt[Re]][2]]);for(Re=+Ot;Re<mt.length-Rt;++Re)Pt.push(ke[Ke[mt[Re]][2]]);return Pt}return ye.x=function(ke){return arguments.length?(ne=ke,ye):ne},ye.y=function(ke){return arguments.length?(le=ke,ye):le},ye},i.geom.polygon=function(U){return re(U,Wt),U};var Wt=i.geom.polygon.prototype=[];function An(U,ne,le){return(le[0]-ne[0])*(U[1]-ne[1])<(le[1]-ne[1])*(U[0]-ne[0])}function Lt(U,ne,le,ye){var ke=U[0],Re=le[0],He=ne[0]-ke,We=ye[0]-Re,Xe=U[1],Ke=le[1],it=ne[1]-Xe,pt=ye[1]-Ke,mt=(We*(Xe-Ke)-pt*(ke-Re))/(pt*He-We*it);return[ke+mt*He,Xe+mt*it]}function $t(U){var ne=U[0],le=U[U.length-1];return!(ne[0]-le[0]||ne[1]-le[1])}Wt.area=function(){for(var U,ne=-1,le=this.length,ye=this[le-1],ke=0;++ne<le;)U=ye,ye=this[ne],ke+=U[1]*ye[0]-U[0]*ye[1];return .5*ke},Wt.centroid=function(U){var ne,le,ye=-1,ke=this.length,Re=0,He=0,We=this[ke-1];for(arguments.length||(U=-1/(6*this.area()));++ye<ke;)ne=We,We=this[ye],le=ne[0]*We[1]-We[0]*ne[1],Re+=(ne[0]+We[0])*le,He+=(ne[1]+We[1])*le;return[Re*U,He*U]},Wt.clip=function(U){for(var ne,le,ye,ke,Re,He,We=$t(U),Xe=-1,Ke=this.length-$t(this),it=this[Ke-1];++Xe<Ke;){for(ne=U.slice(),U.length=0,ke=this[Xe],Re=ne[(ye=ne.length-We)-1],le=-1;++le<ye;)An(He=ne[le],it,ke)?(An(Re,it,ke)||U.push(Lt(Re,He,it,ke)),U.push(He)):An(Re,it,ke)&&U.push(Lt(Re,He,it,ke)),Re=He;We&&U.push(U[0]),it=ke}return U};var rn,wn,kn,Ln,hn,Jt=[],en=[];function cn(){xi(this),this.edge=this.site=this.circle=null}function pn(U){var ne=Jt.pop()||new cn;return ne.site=U,ne}function On(U){gr(U),kn.remove(U),Jt.push(U),xi(U)}function Rn(U){var ne=U.circle,le=ne.x,ye=ne.cy,ke={x:le,y:ye},Re=U.P,He=U.N,We=[U];On(U);for(var Xe=Re;Xe.circle&&v(le-Xe.circle.x)<Tt&&v(ye-Xe.circle.cy)<Tt;)Re=Xe.P,We.unshift(Xe),On(Xe),Xe=Re;We.unshift(Xe),gr(Xe);for(var Ke=He;Ke.circle&&v(le-Ke.circle.x)<Tt&&v(ye-Ke.circle.cy)<Tt;)He=Ke.N,We.push(Ke),On(Ke),Ke=He;We.push(Ke),gr(Ke);var it,pt=We.length;for(it=1;it<pt;++it)Ke=We[it],Xe=We[it-1],br(Ke.edge,Xe.site,Ke.site,ke);Xe=We[0],(Ke=We[pt-1]).edge=Jn(Xe.site,Ke.site,null,ke),sr(Xe),sr(Ke)}function Wn(U){for(var ne,le,ye,ke,Re=U.x,He=U.y,We=kn._;We;)if((ye=Hn(We,He)-Re)>Tt)We=We.L;else{if(!((ke=Re-tr(We,He))>Tt)){ye>-Tt?(ne=We.P,le=We):ke>-Tt?(ne=We,le=We.N):ne=le=We;break}if(!We.R){ne=We;break}We=We.R}var Xe=pn(U);if(kn.insert(ne,Xe),ne||le){if(ne===le)return gr(ne),le=pn(ne.site),kn.insert(Xe,le),Xe.edge=le.edge=Jn(ne.site,Xe.site),sr(ne),void sr(le);if(le){gr(ne),gr(le);var Ke=ne.site,it=Ke.x,pt=Ke.y,mt=U.x-it,Ot=U.y-pt,Rt=le.site,Pt=Rt.x-it,Vt=Rt.y-pt,It=2*(mt*Vt-Ot*Pt),on=mt*mt+Ot*Ot,Kt=Pt*Pt+Vt*Vt,Zt={x:(Vt*on-Ot*Kt)/It+it,y:(mt*Kt-Pt*on)/It+pt};br(le.edge,Ke,Rt,Zt),Xe.edge=Jn(Ke,U,null,Zt),le.edge=Jn(U,Rt,null,Zt),sr(ne),sr(le)}else Xe.edge=Jn(ne.site,Xe.site)}}function Hn(U,ne){var le=U.site,ye=le.x,ke=le.y,Re=ke-ne;if(!Re)return ye;var He=U.P;if(!He)return-1/0;var We=(le=He.site).x,Xe=le.y,Ke=Xe-ne;if(!Ke)return We;var it=We-ye,pt=1/Re-1/Ke,mt=it/Ke;return pt?(-mt+Math.sqrt(mt*mt-2*pt*(it*it/(-2*Ke)-Xe+Ke/2+ke-Re/2)))/pt+ye:(ye+We)/2}function tr(U,ne){var le=U.N;if(le)return Hn(le,ne);var ye=U.site;return ye.y===ne?ye.x:1/0}function Xn(U){this.site=U,this.edges=[]}function lr(U,ne){return ne.angle-U.angle}function or(){xi(this),this.x=this.y=this.arc=this.site=this.cy=null}function sr(U){var ne=U.P,le=U.N;if(ne&&le){var ye=ne.site,ke=U.site,Re=le.site;if(ye!==Re){var He=ke.x,We=ke.y,Xe=ye.x-He,Ke=ye.y-We,it=Re.x-He,pt=2*(Xe*(Vt=Re.y-We)-Ke*it);if(!(pt>=-Et)){var mt=Xe*Xe+Ke*Ke,Ot=it*it+Vt*Vt,Rt=(Vt*mt-Ke*Ot)/pt,Pt=(Xe*Ot-it*mt)/pt,Vt=Pt+We,It=en.pop()||new or;It.arc=U,It.site=ke,It.x=Rt+He,It.y=Vt+Math.sqrt(Rt*Rt+Pt*Pt),It.cy=Vt,U.circle=It;for(var on=null,Kt=hn._;Kt;)if(It.y<Kt.y||It.y===Kt.y&&It.x<=Kt.x){if(!Kt.L){on=Kt.P;break}Kt=Kt.L}else{if(!Kt.R){on=Kt;break}Kt=Kt.R}hn.insert(on,It),on||(Ln=It)}}}}function gr(U){var ne=U.circle;ne&&(ne.P||(Ln=ne.N),hn.remove(ne),en.push(ne),xi(ne),U.circle=null)}function vr(U,ne){var le=U.b;if(le)return!0;var ye,ke,Re=U.a,He=ne[0][0],We=ne[1][0],Xe=ne[0][1],Ke=ne[1][1],it=U.l,pt=U.r,mt=it.x,Ot=it.y,Rt=pt.x,Pt=pt.y,Vt=(mt+Rt)/2,It=(Ot+Pt)/2;if(Pt===Ot){if(Vt<He||Vt>=We)return;if(mt>Rt){if(Re){if(Re.y>=Ke)return}else Re={x:Vt,y:Xe};le={x:Vt,y:Ke}}else{if(Re){if(Re.y<Xe)return}else Re={x:Vt,y:Ke};le={x:Vt,y:Xe}}}else if(ke=It-(ye=(mt-Rt)/(Pt-Ot))*Vt,ye<-1||ye>1)if(mt>Rt){if(Re){if(Re.y>=Ke)return}else Re={x:(Xe-ke)/ye,y:Xe};le={x:(Ke-ke)/ye,y:Ke}}else{if(Re){if(Re.y<Xe)return}else Re={x:(Ke-ke)/ye,y:Ke};le={x:(Xe-ke)/ye,y:Xe}}else if(Ot<Pt){if(Re){if(Re.x>=We)return}else Re={x:He,y:ye*He+ke};le={x:We,y:ye*We+ke}}else{if(Re){if(Re.x<He)return}else Re={x:We,y:ye*We+ke};le={x:He,y:ye*He+ke}}return U.a=Re,U.b=le,!0}function Er(U,ne){this.l=U,this.r=ne,this.a=this.b=null}function Jn(U,ne,le,ye){var ke=new Er(U,ne);return rn.push(ke),le&&br(ke,U,ne,le),ye&&br(ke,ne,U,ye),wn[U.i].edges.push(new zr(ke,U,ne)),wn[ne.i].edges.push(new zr(ke,ne,U)),ke}function br(U,ne,le,ye){U.a||U.b?U.l===le?U.b=ye:U.a=ye:(U.a=ye,U.l=ne,U.r=le)}function zr(U,ne,le){var ye=U.a,ke=U.b;this.edge=U,this.site=ne,this.angle=le?Math.atan2(le.y-ne.y,le.x-ne.x):U.l===ne?Math.atan2(ke.x-ye.x,ye.y-ke.y):Math.atan2(ye.x-ke.x,ke.y-ye.y)}function ii(){this._=null}function xi(U){U.U=U.C=U.L=U.R=U.P=U.N=null}function vi(U,ne){var le=ne,ye=ne.R,ke=le.U;ke?ke.L===le?ke.L=ye:ke.R=ye:U._=ye,ye.U=ke,le.U=ye,le.R=ye.L,le.R&&(le.R.U=le),ye.L=le}function Ai(U,ne){var le=ne,ye=ne.L,ke=le.U;ke?ke.L===le?ke.L=ye:ke.R=ye:U._=ye,ye.U=ke,le.U=ye,le.L=ye.R,le.L&&(le.L.U=le),ye.R=le}function ci(U){for(;U.L;)U=U.L;return U}function zi(U,ne){var le,ye,ke,Re=U.sort(Do).pop();for(rn=[],wn=new Array(U.length),kn=new ii,hn=new ii;;)if(ke=Ln,Re&&(!ke||Re.y<ke.y||Re.y===ke.y&&Re.x<ke.x))Re.x===le&&Re.y===ye||(wn[Re.i]=new Xn(Re),Wn(Re),le=Re.x,ye=Re.y),Re=U.pop();else{if(!ke)break;Rn(ke.arc)}ne&&(function(We){for(var Xe,Ke,it,pt,mt,Ot=rn,Rt=(Ke=We[0][0],it=We[0][1],pt=We[1][0],mt=We[1][1],function(Vt){var It,on=Vt.a,Kt=Vt.b,Zt=on.x,yn=on.y,_n=0,Un=1,Vn=Kt.x-Zt,Zn=Kt.y-yn;if(It=Ke-Zt,Vn||!(It>0)){if(It/=Vn,Vn<0){if(It<_n)return;It<Un&&(Un=It)}else if(Vn>0){if(It>Un)return;It>_n&&(_n=It)}if(It=pt-Zt,Vn||!(It<0)){if(It/=Vn,Vn<0){if(It>Un)return;It>_n&&(_n=It)}else if(Vn>0){if(It<_n)return;It<Un&&(Un=It)}if(It=it-yn,Zn||!(It>0)){if(It/=Zn,Zn<0){if(It<_n)return;It<Un&&(Un=It)}else if(Zn>0){if(It>Un)return;It>_n&&(_n=It)}if(It=mt-yn,Zn||!(It<0)){if(It/=Zn,Zn<0){if(It>Un)return;It>_n&&(_n=It)}else if(Zn>0){if(It<_n)return;It<Un&&(Un=It)}return _n>0&&(Vt.a={x:Zt+_n*Vn,y:yn+_n*Zn}),Un<1&&(Vt.b={x:Zt+Un*Vn,y:yn+Un*Zn}),Vt}}}}}),Pt=Ot.length;Pt--;)(!vr(Xe=Ot[Pt],We)||!Rt(Xe)||v(Xe.a.x-Xe.b.x)<Tt&&v(Xe.a.y-Xe.b.y)<Tt)&&(Xe.a=Xe.b=null,Ot.splice(Pt,1))}(ne),function(We){for(var Xe,Ke,it,pt,mt,Ot,Rt,Pt,Vt,It,on=We[0][0],Kt=We[1][0],Zt=We[0][1],yn=We[1][1],_n=wn,Un=_n.length;Un--;)if((mt=_n[Un])&&mt.prepare())for(Pt=(Rt=mt.edges).length,Ot=0;Ot<Pt;)it=(It=Rt[Ot].end()).x,pt=It.y,Xe=(Vt=Rt[++Ot%Pt].start()).x,Ke=Vt.y,(v(it-Xe)>Tt||v(pt-Ke)>Tt)&&(Rt.splice(Ot,0,new zr((Vn=mt.site,Zn=It,Qn=v(it-on)<Tt&&yn-pt>Tt?{x:on,y:v(Xe-on)<Tt?Ke:yn}:v(pt-yn)<Tt&&Kt-it>Tt?{x:v(Ke-yn)<Tt?Xe:Kt,y:yn}:v(it-Kt)<Tt&&pt-Zt>Tt?{x:Kt,y:v(Xe-Kt)<Tt?Ke:Zt}:v(pt-Zt)<Tt&&it-on>Tt?{x:v(Ke-Zt)<Tt?Xe:on,y:Zt}:null,pr=void 0,(pr=new Er(Vn,null)).a=Zn,pr.b=Qn,rn.push(pr),pr),mt.site,null)),++Pt);var Vn,Zn,Qn,pr}(ne));var He={cells:wn,edges:rn};return kn=hn=rn=wn=null,He}function Do(U,ne){return ne.y-U.y||ne.x-U.x}Xn.prototype.prepare=function(){for(var U,ne=this.edges,le=ne.length;le--;)(U=ne[le].edge).b&&U.a||ne.splice(le,1);return ne.sort(lr),ne.length},zr.prototype={start:function(){return this.edge.l===this.site?this.edge.a:this.edge.b},end:function(){return this.edge.l===this.site?this.edge.b:this.edge.a}},ii.prototype={insert:function(U,ne){var le,ye,ke;if(U){if(ne.P=U,ne.N=U.N,U.N&&(U.N.P=ne),U.N=ne,U.R){for(U=U.R;U.L;)U=U.L;U.L=ne}else U.R=ne;le=U}else this._?(U=ci(this._),ne.P=null,ne.N=U,U.P=U.L=ne,le=U):(ne.P=ne.N=null,this._=ne,le=null);for(ne.L=ne.R=null,ne.U=le,ne.C=!0,U=ne;le&&le.C;)le===(ye=le.U).L?(ke=ye.R)&&ke.C?(le.C=ke.C=!1,ye.C=!0,U=ye):(U===le.R&&(vi(this,le),le=(U=le).U),le.C=!1,ye.C=!0,Ai(this,ye)):(ke=ye.L)&&ke.C?(le.C=ke.C=!1,ye.C=!0,U=ye):(U===le.L&&(Ai(this,le),le=(U=le).U),le.C=!1,ye.C=!0,vi(this,ye)),le=U.U;this._.C=!1},remove:function(U){U.N&&(U.N.P=U.P),U.P&&(U.P.N=U.N),U.N=U.P=null;var ne,le,ye,ke=U.U,Re=U.L,He=U.R;if(le=Re?He?ci(He):Re:He,ke?ke.L===U?ke.L=le:ke.R=le:this._=le,Re&&He?(ye=le.C,le.C=U.C,le.L=Re,Re.U=le,le!==He?(ke=le.U,le.U=U.U,U=le.R,ke.L=U,le.R=He,He.U=le):(le.U=ke,ke=le,U=le.R)):(ye=U.C,U=le),U&&(U.U=ke),!ye)if(U&&U.C)U.C=!1;else{do{if(U===this._)break;if(U===ke.L){if((ne=ke.R).C&&(ne.C=!1,ke.C=!0,vi(this,ke),ne=ke.R),ne.L&&ne.L.C||ne.R&&ne.R.C){ne.R&&ne.R.C||(ne.L.C=!1,ne.C=!0,Ai(this,ne),ne=ke.R),ne.C=ke.C,ke.C=ne.R.C=!1,vi(this,ke),U=this._;break}}else if((ne=ke.L).C&&(ne.C=!1,ke.C=!0,Ai(this,ke),ne=ke.L),ne.L&&ne.L.C||ne.R&&ne.R.C){ne.L&&ne.L.C||(ne.R.C=!1,ne.C=!0,vi(this,ne),ne=ke.L),ne.C=ke.C,ke.C=ne.L.C=!1,Ai(this,ke),U=this._;break}ne.C=!0,U=ke,ke=ke.U}while(!U.C);U&&(U.C=!1)}}},i.geom.voronoi=function(U){var ne=Yn,le=Nn,ye=ne,ke=le,Re=Ha;if(U)return He(U);function He(Xe){var Ke=new Array(Xe.length),it=Re[0][0],pt=Re[0][1],mt=Re[1][0],Ot=Re[1][1];return zi(We(Xe),Re).cells.forEach(function(Rt,Pt){var Vt=Rt.edges,It=Rt.site;(Ke[Pt]=Vt.length?Vt.map(function(on){var Kt=on.start();return[Kt.x,Kt.y]}):It.x>=it&&It.x<=mt&&It.y>=pt&&It.y<=Ot?[[it,Ot],[mt,Ot],[mt,pt],[it,pt]]:[]).point=Xe[Pt]}),Ke}function We(Xe){return Xe.map(function(Ke,it){return{x:Math.round(ye(Ke,it)/Tt)*Tt,y:Math.round(ke(Ke,it)/Tt)*Tt,i:it}})}return He.links=function(Xe){return zi(We(Xe)).edges.filter(function(Ke){return Ke.l&&Ke.r}).map(function(Ke){return{source:Xe[Ke.l.i],target:Xe[Ke.r.i]}})},He.triangles=function(Xe){var Ke=[];return zi(We(Xe)).cells.forEach(function(it,pt){for(var mt,Ot,Rt,Pt,Vt=it.site,It=it.edges.sort(lr),on=-1,Kt=It.length,Zt=It[Kt-1].edge,yn=Zt.l===Vt?Zt.r:Zt.l;++on<Kt;)mt=yn,yn=(Zt=It[on].edge).l===Vt?Zt.r:Zt.l,pt<mt.i&&pt<yn.i&&(Rt=mt,Pt=yn,((Ot=Vt).x-Pt.x)*(Rt.y-Ot.y)-(Ot.x-Rt.x)*(Pt.y-Ot.y)<0)&&Ke.push([Xe[pt],Xe[mt.i],Xe[yn.i]])}),Ke},He.x=function(Xe){return arguments.length?(ye=Fn(ne=Xe),He):ne},He.y=function(Xe){return arguments.length?(ke=Fn(le=Xe),He):le},He.clipExtent=function(Xe){return arguments.length?(Re=Xe??Ha,He):Re===Ha?null:Re},He.size=function(Xe){return arguments.length?He.clipExtent(Xe&&[[0,0],Xe]):Re===Ha?null:Re&&Re[1]},He};var Ha=[[-1e6,-1e6],[1e6,1e6]];function Ko(U){return U.x}function Eu(U){return U.y}function qs(U,ne,le,ye,ke,Re){if(!U(ne,le,ye,ke,Re)){var He=.5*(le+ke),We=.5*(ye+Re),Xe=ne.nodes;Xe[0]&&qs(U,Xe[0],le,ye,He,We),Xe[1]&&qs(U,Xe[1],He,ye,ke,We),Xe[2]&&qs(U,Xe[2],le,We,He,Re),Xe[3]&&qs(U,Xe[3],He,We,ke,Re)}}function zl(U,ne){U=i.rgb(U),ne=i.rgb(ne);var le=U.r,ye=U.g,ke=U.b,Re=ne.r-le,He=ne.g-ye,We=ne.b-ke;return function(Xe){return"#"+nn(Math.round(le+Re*Xe))+nn(Math.round(ye+He*Xe))+nn(Math.round(ke+We*Xe))}}function Cu(U,ne){var le,ye={},ke={};for(le in U)le in ne?ye[le]=Bo(U[le],ne[le]):ke[le]=U[le];for(le in ne)le in U||(ke[le]=ne[le]);return function(Re){for(le in ye)ke[le]=ye[le](Re);return ke}}function Fo(U,ne){return U=+U,ne=+ne,function(le){return U*(1-le)+ne*le}}function ac(U,ne){var le,ye,ke,Re=Gs.lastIndex=Ws.lastIndex=0,He=-1,We=[],Xe=[];for(U+="",ne+="";(le=Gs.exec(U))&&(ye=Ws.exec(ne));)(ke=ye.index)>Re&&(ke=ne.slice(Re,ke),We[He]?We[He]+=ke:We[++He]=ke),(le=le[0])===(ye=ye[0])?We[He]?We[He]+=ye:We[++He]=ye:(We[++He]=null,Xe.push({i:He,x:Fo(le,ye)})),Re=Ws.lastIndex;return Re<ne.length&&(ke=ne.slice(Re),We[He]?We[He]+=ke:We[++He]=ke),We.length<2?Xe[0]?(ne=Xe[0].x,function(Ke){return ne(Ke)+""}):function(){return ne}:(ne=Xe.length,function(Ke){for(var it,pt=0;pt<ne;++pt)We[(it=Xe[pt]).i]=it.x(Ke);return We.join("")})}i.geom.delaunay=function(U){return i.geom.voronoi().triangles(U)},i.geom.quadtree=function(U,ne,le,ye,ke){var Re,He=Yn,We=Nn;if(Re=arguments.length)return He=Ko,We=Eu,Re===3&&(ke=le,ye=ne,le=ne=0),Xe(U);function Xe(Ke){var it,pt,mt,Ot,Rt,Pt,Vt,It,on,Kt=Fn(He),Zt=Fn(We);if(ne!=null)Pt=ne,Vt=le,It=ye,on=ke;else if(It=on=-(Pt=Vt=1/0),pt=[],mt=[],Rt=Ke.length,Re)for(Ot=0;Ot<Rt;++Ot)(it=Ke[Ot]).x<Pt&&(Pt=it.x),it.y<Vt&&(Vt=it.y),it.x>It&&(It=it.x),it.y>on&&(on=it.y),pt.push(it.x),mt.push(it.y);else for(Ot=0;Ot<Rt;++Ot){var yn=+Kt(it=Ke[Ot],Ot),_n=+Zt(it,Ot);yn<Pt&&(Pt=yn),_n<Vt&&(Vt=_n),yn>It&&(It=yn),_n>on&&(on=_n),pt.push(yn),mt.push(_n)}var Un=It-Pt,Vn=on-Vt;function Zn(cr,mr,Ar,Br,qn,ur,yr,Mr){if(!isNaN(Ar)&&!isNaN(Br))if(cr.leaf){var Rr=cr.x,Vr=cr.y;if(Rr!=null)if(v(Rr-Ar)+v(Vr-Br)<.01)Qn(cr,mr,Ar,Br,qn,ur,yr,Mr);else{var $r=cr.point;cr.x=cr.y=cr.point=null,Qn(cr,$r,Rr,Vr,qn,ur,yr,Mr),Qn(cr,mr,Ar,Br,qn,ur,yr,Mr)}else cr.x=Ar,cr.y=Br,cr.point=mr}else Qn(cr,mr,Ar,Br,qn,ur,yr,Mr)}function Qn(cr,mr,Ar,Br,qn,ur,yr,Mr){var Rr=.5*(qn+yr),Vr=.5*(ur+Mr),$r=Ar>=Rr,ai=Br>=Vr,bi=ai<<1|$r;cr.leaf=!1,$r?qn=Rr:yr=Rr,ai?ur=Vr:Mr=Vr,Zn(cr=cr.nodes[bi]||(cr.nodes[bi]={leaf:!0,nodes:[],point:null,x:null,y:null}),mr,Ar,Br,qn,ur,yr,Mr)}Un>Vn?on=Vt+Un:It=Pt+Vn;var pr={leaf:!0,nodes:[],point:null,x:null,y:null,add:function(cr){Zn(pr,cr,+Kt(cr,++Ot),+Zt(cr,Ot),Pt,Vt,It,on)}};if(pr.visit=function(cr){qs(cr,pr,Pt,Vt,It,on)},pr.find=function(cr){return function(mr,Ar,Br,qn,ur,yr,Mr){var Rr,Vr=1/0;return function $r(ai,bi,_i,oi,Fi){if(!(bi>yr||_i>Mr||oi<qn||Fi<ur)){if(la=ai.point){var la,Wi=Ar-ai.x,ea=Br-ai.y,ei=Wi*Wi+ea*ea;if(ei<Vr){var Yr=Math.sqrt(Vr=ei);qn=Ar-Yr,ur=Br-Yr,yr=Ar+Yr,Mr=Br+Yr,Rr=la}}for(var wi=ai.nodes,gi=.5*(bi+oi),Mi=.5*(_i+Fi),za=(Br>=Mi)<<1|Ar>=gi,Oi=za+4;za<Oi;++za)if(ai=wi[3&za])switch(3&za){case 0:$r(ai,bi,_i,gi,Mi);break;case 1:$r(ai,gi,_i,oi,Mi);break;case 2:$r(ai,bi,Mi,gi,Fi);break;case 3:$r(ai,gi,Mi,oi,Fi)}}}(mr,qn,ur,yr,Mr),Rr}(pr,cr[0],cr[1],Pt,Vt,It,on)},Ot=-1,ne==null){for(;++Ot<Rt;)Zn(pr,Ke[Ot],pt[Ot],mt[Ot],Pt,Vt,It,on);--Ot}else Ke.forEach(pr.add);return pt=mt=Ke=it=null,pr}return Xe.x=function(Ke){return arguments.length?(He=Ke,Xe):He},Xe.y=function(Ke){return arguments.length?(We=Ke,Xe):We},Xe.extent=function(Ke){return arguments.length?(Ke==null?ne=le=ye=ke=null:(ne=+Ke[0][0],le=+Ke[0][1],ye=+Ke[1][0],ke=+Ke[1][1]),Xe):ne==null?null:[[ne,le],[ye,ke]]},Xe.size=function(Ke){return arguments.length?(Ke==null?ne=le=ye=ke=null:(ne=le=0,ye=+Ke[0],ke=+Ke[1]),Xe):ne==null?null:[ye-ne,ke-le]},Xe},i.interpolateRgb=zl,i.interpolateObject=Cu,i.interpolateNumber=Fo,i.interpolateString=ac;var Gs=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Ws=new RegExp(Gs.source,"g");function Bo(U,ne){for(var le,ye=i.interpolators.length;--ye>=0&&!(le=i.interpolators[ye](U,ne)););return le}function qi(U,ne){var le,ye=[],ke=[],Re=U.length,He=ne.length,We=Math.min(U.length,ne.length);for(le=0;le<We;++le)ye.push(Bo(U[le],ne[le]));for(;le<Re;++le)ke[le]=U[le];for(;le<He;++le)ke[le]=ne[le];return function(Xe){for(le=0;le<We;++le)ke[le]=ye[le](Xe);return ke}}i.interpolate=Bo,i.interpolators=[function(U,ne){var le=typeof ne;return(le==="string"?En.has(ne.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(ne)?zl:ac:ne instanceof ot?zl:Array.isArray(ne)?qi:le==="object"&&isNaN(ne)?Cu:Fo)(U,ne)}],i.interpolateArray=qi;var Dl=function(){return D},ti=i.map({linear:Dl,poly:function(U){return function(ne){return Math.pow(ne,U)}},quad:function(){return xo},cubic:function(){return xs},sin:function(){return es},exp:function(){return ou},circle:function(){return oc},elastic:function(U,ne){var le;return arguments.length<2&&(ne=.45),arguments.length?le=ne/Ft*Math.asin(1/U):(U=1,le=ne/4),function(ye){return 1+U*Math.pow(2,-10*ye)*Math.sin((ye-le)*Ft/ne)}},back:function(U){return U||(U=1.70158),function(ne){return ne*ne*((U+1)*ne-U)}},bounce:function(){return bs}}),No=i.map({in:D,out:Qa,"in-out":Jo,"out-in":function(U){return Jo(Qa(U))}});function Qa(U){return function(ne){return 1-U(1-ne)}}function Jo(U){return function(ne){return .5*(ne<.5?U(2*ne):2-U(2-2*ne))}}function xo(U){return U*U}function xs(U){return U*U*U}function Qo(U){if(U<=0)return 0;if(U>=1)return 1;var ne=U*U,le=ne*U;return 4*(U<.5?le:3*(U-ne)+le-.75)}function es(U){return 1-Math.cos(U*Je)}function ou(U){return Math.pow(2,10*(U-1))}function oc(U){return 1-Math.sqrt(1-U*U)}function bs(U){return U<.36363636363636365?7.5625*U*U:U<.7272727272727273?7.5625*(U-=.5454545454545454)*U+.75:U<.9090909090909091?7.5625*(U-=.8181818181818182)*U+.9375:7.5625*(U-=.9545454545454546)*U+.984375}function sc(U,ne){return ne-=U,function(le){return Math.round(U+ne*le)}}function Lu(U){var ne,le,ye,ke=[U.a,U.b],Re=[U.c,U.d],He=Pu(ke),We=lc(ke,Re),Xe=Pu(((ne=Re)[0]+=(ye=-We)*(le=ke)[0],ne[1]+=ye*le[1],ne))||0;ke[0]*Re[1]<Re[0]*ke[1]&&(ke[0]*=-1,ke[1]*=-1,He*=-1,We*=-1),this.rotate=(He?Math.atan2(ke[1],ke[0]):Math.atan2(-Re[0],Re[1]))*Ze,this.translate=[U.e,U.f],this.scale=[He,Xe],this.skew=Xe?Math.atan2(We,Xe)*Ze:0}function lc(U,ne){return U[0]*ne[0]+U[1]*ne[1]}function Pu(U){var ne=Math.sqrt(lc(U,U));return ne&&(U[0]/=ne,U[1]/=ne),ne}i.ease=function(U){var ne,le=U.indexOf("-"),ye=le>=0?U.slice(0,le):U,ke=le>=0?U.slice(le+1):"in";return ye=ti.get(ye)||Dl,ke=No.get(ke)||D,ne=ke(ye.apply(null,_.call(arguments,1))),function(Re){return Re<=0?0:Re>=1?1:ne(Re)}},i.interpolateHcl=function(U,ne){U=i.hcl(U),ne=i.hcl(ne);var le=U.h,ye=U.c,ke=U.l,Re=ne.h-le,He=ne.c-ye,We=ne.l-ke;return isNaN(He)&&(He=0,ye=isNaN(ye)?ne.c:ye),isNaN(Re)?(Re=0,le=isNaN(le)?ne.h:le):Re>180?Re-=360:Re<-180&&(Re+=360),function(Xe){return dt(le+Re*Xe,ye+He*Xe,ke+We*Xe)+""}},i.interpolateHsl=function(U,ne){U=i.hsl(U),ne=i.hsl(ne);var le=U.h,ye=U.s,ke=U.l,Re=ne.h-le,He=ne.s-ye,We=ne.l-ke;return isNaN(He)&&(He=0,ye=isNaN(ye)?ne.s:ye),isNaN(Re)?(Re=0,le=isNaN(le)?ne.h:le):Re>180?Re-=360:Re<-180&&(Re+=360),function(Xe){return _t(le+Re*Xe,ye+He*Xe,ke+We*Xe)+""}},i.interpolateLab=function(U,ne){U=i.lab(U),ne=i.lab(ne);var le=U.l,ye=U.a,ke=U.b,Re=ne.l-le,He=ne.a-ye,We=ne.b-ke;return function(Xe){return Xt(le+Re*Xe,ye+He*Xe,ke+We*Xe)+""}},i.interpolateRound=sc,i.transform=function(U){var ne=h.createElementNS(i.ns.prefix.svg,"g");return(i.transform=function(le){if(le!=null){ne.setAttribute("transform",le);var ye=ne.transform.baseVal.consolidate()}return new Lu(ye?ye.matrix:uc)})(U)},Lu.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};var uc={a:1,b:0,c:0,d:1,e:0,f:0};function vl(U){return U.length?U.pop()+",":""}function _s(U,ne){var le=[],ye=[];return U=i.transform(U),ne=i.transform(ne),function(ke,Re,He,We){if(ke[0]!==Re[0]||ke[1]!==Re[1]){var Xe=He.push("translate(",null,",",null,")");We.push({i:Xe-4,x:Fo(ke[0],Re[0])},{i:Xe-2,x:Fo(ke[1],Re[1])})}else(Re[0]||Re[1])&&He.push("translate("+Re+")")}(U.translate,ne.translate,le,ye),function(ke,Re,He,We){ke!==Re?(ke-Re>180?Re+=360:Re-ke>180&&(ke+=360),We.push({i:He.push(vl(He)+"rotate(",null,")")-2,x:Fo(ke,Re)})):Re&&He.push(vl(He)+"rotate("+Re+")")}(U.rotate,ne.rotate,le,ye),function(ke,Re,He,We){ke!==Re?We.push({i:He.push(vl(He)+"skewX(",null,")")-2,x:Fo(ke,Re)}):Re&&He.push(vl(He)+"skewX("+Re+")")}(U.skew,ne.skew,le,ye),function(ke,Re,He,We){if(ke[0]!==Re[0]||ke[1]!==Re[1]){var Xe=He.push(vl(He)+"scale(",null,",",null,")");We.push({i:Xe-4,x:Fo(ke[0],Re[0])},{i:Xe-2,x:Fo(ke[1],Re[1])})}else Re[0]===1&&Re[1]===1||He.push(vl(He)+"scale("+Re+")")}(U.scale,ne.scale,le,ye),U=ne=null,function(ke){for(var Re,He=-1,We=ye.length;++He<We;)le[(Re=ye[He]).i]=Re.x(ke);return le.join("")}}function Zs(U,ne){return ne=(ne-=U=+U)||1/ne,function(le){return(le-U)/ne}}function ml(U,ne){return ne=(ne-=U=+U)||1/ne,function(le){return Math.max(0,Math.min(1,(le-U)/ne))}}function su(U){for(var ne=U.source,le=U.target,ye=function(He,We){if(He===We)return He;for(var Xe=Ou(He),Ke=Ou(We),it=Xe.pop(),pt=Ke.pop(),mt=null;it===pt;)mt=it,it=Xe.pop(),pt=Ke.pop();return mt}(ne,le),ke=[ne];ne!==ye;)ne=ne.parent,ke.push(ne);for(var Re=ke.length;le!==ye;)ke.splice(Re,0,le),le=le.parent;return ke}function Ou(U){for(var ne=[],le=U.parent;le!=null;)ne.push(U),U=le,le=le.parent;return ne.push(U),ne}function Iu(U){U.fixed|=2}function so(U){U.fixed&=-7}function Ys(U){U.fixed|=4,U.px=U.x,U.py=U.y}function jo(U){U.fixed&=-5}function ts(U,ne,le){var ye=0,ke=0;if(U.charge=0,!U.leaf)for(var Re,He=U.nodes,We=He.length,Xe=-1;++Xe<We;)(Re=He[Xe])!=null&&(ts(Re,ne,le),U.charge+=Re.charge,ye+=Re.charge*Re.cx,ke+=Re.charge*Re.cy);if(U.point){U.leaf||(U.point.x+=Math.random()-.5,U.point.y+=Math.random()-.5);var Ke=ne*le[U.point.index];U.charge+=U.pointCharge=Ke,ye+=Ke*U.point.x,ke+=Ke*U.point.y}U.cx=ye/U.charge,U.cy=ke/U.charge}i.interpolateTransform=_s,i.layout={},i.layout.bundle=function(){return function(U){for(var ne=[],le=-1,ye=U.length;++le<ye;)ne.push(su(U[le]));return ne}},i.layout.chord=function(){var U,ne,le,ye,ke,Re,He,We={},Xe=0;function Ke(){var pt,mt,Ot,Rt,Pt,Vt={},It=[],on=i.range(ye),Kt=[];for(U=[],ne=[],pt=0,Rt=-1;++Rt<ye;){for(mt=0,Pt=-1;++Pt<ye;)mt+=le[Rt][Pt];It.push(mt),Kt.push(i.range(ye)),pt+=mt}for(ke&&on.sort(function(pr,cr){return ke(It[pr],It[cr])}),Re&&Kt.forEach(function(pr,cr){pr.sort(function(mr,Ar){return Re(le[cr][mr],le[cr][Ar])})}),pt=(Ft-Xe*ye)/pt,mt=0,Rt=-1;++Rt<ye;){for(Ot=mt,Pt=-1;++Pt<ye;){var Zt=on[Rt],yn=Kt[Zt][Pt],_n=le[Zt][yn],Un=mt,Vn=mt+=_n*pt;Vt[Zt+"-"+yn]={index:Zt,subindex:yn,startAngle:Un,endAngle:Vn,value:_n}}ne[Zt]={index:Zt,startAngle:Ot,endAngle:mt,value:It[Zt]},mt+=Xe}for(Rt=-1;++Rt<ye;)for(Pt=Rt-1;++Pt<ye;){var Zn=Vt[Rt+"-"+Pt],Qn=Vt[Pt+"-"+Rt];(Zn.value||Qn.value)&&U.push(Zn.value<Qn.value?{source:Qn,target:Zn}:{source:Zn,target:Qn})}He&&it()}function it(){U.sort(function(pt,mt){return He((pt.source.value+pt.target.value)/2,(mt.source.value+mt.target.value)/2)})}return We.matrix=function(pt){return arguments.length?(ye=(le=pt)&&le.length,U=ne=null,We):le},We.padding=function(pt){return arguments.length?(Xe=pt,U=ne=null,We):Xe},We.sortGroups=function(pt){return arguments.length?(ke=pt,U=ne=null,We):ke},We.sortSubgroups=function(pt){return arguments.length?(Re=pt,U=null,We):Re},We.sortChords=function(pt){return arguments.length?(He=pt,U&&it(),We):He},We.chords=function(){return U||Ke(),U},We.groups=function(){return ne||Ke(),ne},We},i.layout.force=function(){var U,ne,le,ye,ke,Re,He={},We=i.dispatch("start","tick","end"),Xe=[1,1],Ke=.9,it=cc,pt=ws,mt=-30,Ot=fi,Rt=.1,Pt=.64,Vt=[],It=[];function on(Zt){return function(yn,_n,Un,Vn){if(yn.point!==Zt){var Zn=yn.cx-Zt.x,Qn=yn.cy-Zt.y,pr=Vn-_n,cr=Zn*Zn+Qn*Qn;if(pr*pr/Pt<cr){if(cr<Ot){var mr=yn.charge/cr;Zt.px-=Zn*mr,Zt.py-=Qn*mr}return!0}yn.point&&cr&&cr<Ot&&(mr=yn.pointCharge/cr,Zt.px-=Zn*mr,Zt.py-=Qn*mr)}return!yn.charge}}function Kt(Zt){Zt.px=i.event.x,Zt.py=i.event.y,He.resume()}return He.tick=function(){if((le*=.99)<.005)return U=null,We.end({type:"end",alpha:le=0}),!0;var Zt,yn,_n,Un,Vn,Zn,Qn,pr,cr,mr=Vt.length,Ar=It.length;for(yn=0;yn<Ar;++yn)Un=(_n=It[yn]).source,(Zn=(pr=(Vn=_n.target).x-Un.x)*pr+(cr=Vn.y-Un.y)*cr)&&(pr*=Zn=le*ke[yn]*((Zn=Math.sqrt(Zn))-ye[yn])/Zn,cr*=Zn,Vn.x-=pr*(Qn=Un.weight+Vn.weight?Un.weight/(Un.weight+Vn.weight):.5),Vn.y-=cr*Qn,Un.x+=pr*(Qn=1-Qn),Un.y+=cr*Qn);if((Qn=le*Rt)&&(pr=Xe[0]/2,cr=Xe[1]/2,yn=-1,Qn))for(;++yn<mr;)(_n=Vt[yn]).x+=(pr-_n.x)*Qn,_n.y+=(cr-_n.y)*Qn;if(mt)for(ts(Zt=i.geom.quadtree(Vt),le,Re),yn=-1;++yn<mr;)(_n=Vt[yn]).fixed||Zt.visit(on(_n));for(yn=-1;++yn<mr;)(_n=Vt[yn]).fixed?(_n.x=_n.px,_n.y=_n.py):(_n.x-=(_n.px-(_n.px=_n.x))*Ke,_n.y-=(_n.py-(_n.py=_n.y))*Ke);We.tick({type:"tick",alpha:le})},He.nodes=function(Zt){return arguments.length?(Vt=Zt,He):Vt},He.links=function(Zt){return arguments.length?(It=Zt,He):It},He.size=function(Zt){return arguments.length?(Xe=Zt,He):Xe},He.linkDistance=function(Zt){return arguments.length?(it=typeof Zt=="function"?Zt:+Zt,He):it},He.distance=He.linkDistance,He.linkStrength=function(Zt){return arguments.length?(pt=typeof Zt=="function"?Zt:+Zt,He):pt},He.friction=function(Zt){return arguments.length?(Ke=+Zt,He):Ke},He.charge=function(Zt){return arguments.length?(mt=typeof Zt=="function"?Zt:+Zt,He):mt},He.chargeDistance=function(Zt){return arguments.length?(Ot=Zt*Zt,He):Math.sqrt(Ot)},He.gravity=function(Zt){return arguments.length?(Rt=+Zt,He):Rt},He.theta=function(Zt){return arguments.length?(Pt=Zt*Zt,He):Math.sqrt(Pt)},He.alpha=function(Zt){return arguments.length?(Zt=+Zt,le?Zt>0?le=Zt:(U.c=null,U.t=NaN,U=null,We.end({type:"end",alpha:le=0})):Zt>0&&(We.start({type:"start",alpha:le=Zt}),U=sn(He.tick)),He):le},He.start=function(){var Zt,yn,_n,Un=Vt.length,Vn=It.length,Zn=Xe[0],Qn=Xe[1];for(Zt=0;Zt<Un;++Zt)(_n=Vt[Zt]).index=Zt,_n.weight=0;for(Zt=0;Zt<Vn;++Zt)typeof(_n=It[Zt]).source=="number"&&(_n.source=Vt[_n.source]),typeof _n.target=="number"&&(_n.target=Vt[_n.target]),++_n.source.weight,++_n.target.weight;for(Zt=0;Zt<Un;++Zt)_n=Vt[Zt],isNaN(_n.x)&&(_n.x=pr("x",Zn)),isNaN(_n.y)&&(_n.y=pr("y",Qn)),isNaN(_n.px)&&(_n.px=_n.x),isNaN(_n.py)&&(_n.py=_n.y);if(ye=[],typeof it=="function")for(Zt=0;Zt<Vn;++Zt)ye[Zt]=+it.call(this,It[Zt],Zt);else for(Zt=0;Zt<Vn;++Zt)ye[Zt]=it;if(ke=[],typeof pt=="function")for(Zt=0;Zt<Vn;++Zt)ke[Zt]=+pt.call(this,It[Zt],Zt);else for(Zt=0;Zt<Vn;++Zt)ke[Zt]=pt;if(Re=[],typeof mt=="function")for(Zt=0;Zt<Un;++Zt)Re[Zt]=+mt.call(this,Vt[Zt],Zt);else for(Zt=0;Zt<Un;++Zt)Re[Zt]=mt;function pr(cr,mr){if(!yn){for(yn=new Array(Un),ur=0;ur<Un;++ur)yn[ur]=[];for(ur=0;ur<Vn;++ur){var Ar=It[ur];yn[Ar.source.index].push(Ar.target),yn[Ar.target.index].push(Ar.source)}}for(var Br,qn=yn[Zt],ur=-1,yr=qn.length;++ur<yr;)if(!isNaN(Br=qn[ur][cr]))return Br;return Math.random()*mr}return He.resume()},He.resume=function(){return He.alpha(.1)},He.stop=function(){return He.alpha(0)},He.drag=function(){if(ne||(ne=i.behavior.drag().origin(D).on("dragstart.force",Iu).on("drag.force",Kt).on("dragend.force",so)),!arguments.length)return ne;this.on("mouseover.force",Ys).on("mouseout.force",jo).call(ne)},i.rebind(He,We,"on")};var cc=20,ws=1,fi=1/0;function bo(U,ne){return i.rebind(U,ne,"sort","children","value"),U.nodes=U,U.links=fc,U}function Fl(U,ne){for(var le=[U];(U=le.pop())!=null;)if(ne(U),(ke=U.children)&&(ye=ke.length))for(var ye,ke;--ye>=0;)le.push(ke[ye])}function lo(U,ne){for(var le=[U],ye=[];(U=le.pop())!=null;)if(ye.push(U),(Re=U.children)&&(ke=Re.length))for(var ke,Re,He=-1;++He<ke;)le.push(Re[He]);for(;(U=ye.pop())!=null;)ne(U)}function Xs(U){return U.children}function $c(U){return U.value}function lu(U,ne){return ne.value-U.value}function fc(U){return i.merge(U.map(function(ne){return(ne.children||[]).map(function(le){return{source:ne,target:le}})}))}i.layout.hierarchy=function(){var U=lu,ne=Xs,le=$c;function ye(ke){var Re,He=[ke],We=[];for(ke.depth=0;(Re=He.pop())!=null;)if(We.push(Re),(Ke=ne.call(ye,Re,Re.depth))&&(Xe=Ke.length)){for(var Xe,Ke,it;--Xe>=0;)He.push(it=Ke[Xe]),it.parent=Re,it.depth=Re.depth+1;le&&(Re.value=0),Re.children=Ke}else le&&(Re.value=+le.call(ye,Re,Re.depth)||0),delete Re.children;return lo(ke,function(pt){var mt,Ot;U&&(mt=pt.children)&&mt.sort(U),le&&(Ot=pt.parent)&&(Ot.value+=pt.value)}),We}return ye.sort=function(ke){return arguments.length?(U=ke,ye):U},ye.children=function(ke){return arguments.length?(ne=ke,ye):ne},ye.value=function(ke){return arguments.length?(le=ke,ye):le},ye.revalue=function(ke){return le&&(Fl(ke,function(Re){Re.children&&(Re.value=0)}),lo(ke,function(Re){var He;Re.children||(Re.value=+le.call(ye,Re,Re.depth)||0),(He=Re.parent)&&(He.value+=Re.value)})),ke},ye},i.layout.partition=function(){var U=i.layout.hierarchy(),ne=[1,1];function le(Re,He,We,Xe){var Ke=Re.children;if(Re.x=He,Re.y=Re.depth*Xe,Re.dx=We,Re.dy=Xe,Ke&&(it=Ke.length)){var it,pt,mt,Ot=-1;for(We=Re.value?We/Re.value:0;++Ot<it;)le(pt=Ke[Ot],He,mt=pt.value*We,Xe),He+=mt}}function ye(Re){var He=Re.children,We=0;if(He&&(Xe=He.length))for(var Xe,Ke=-1;++Ke<Xe;)We=Math.max(We,ye(He[Ke]));return 1+We}function ke(Re,He){var We=U.call(this,Re,He);return le(We[0],0,ne[0],ne[1]/ye(We[0])),We}return ke.size=function(Re){return arguments.length?(ne=Re,ke):ne},bo(ke,U)},i.layout.pie=function(){var U=Number,ne=hc,le=0,ye=Ft,ke=0;function Re(He){var We,Xe=He.length,Ke=He.map(function(on,Kt){return+U.call(Re,on,Kt)}),it=+(typeof le=="function"?le.apply(this,arguments):le),pt=(typeof ye=="function"?ye.apply(this,arguments):ye)-it,mt=Math.min(Math.abs(pt)/Xe,+(typeof ke=="function"?ke.apply(this,arguments):ke)),Ot=mt*(pt<0?-1:1),Rt=i.sum(Ke),Pt=Rt?(pt-Xe*Ot)/Rt:0,Vt=i.range(Xe),It=[];return ne!=null&&Vt.sort(ne===hc?function(on,Kt){return Ke[Kt]-Ke[on]}:function(on,Kt){return ne(He[on],He[Kt])}),Vt.forEach(function(on){It[on]={data:He[on],value:We=Ke[on],startAngle:it,endAngle:it+=We*Pt+Ot,padAngle:mt}}),It}return Re.value=function(He){return arguments.length?(U=He,Re):U},Re.sort=function(He){return arguments.length?(ne=He,Re):ne},Re.startAngle=function(He){return arguments.length?(le=He,Re):le},Re.endAngle=function(He){return arguments.length?(ye=He,Re):ye},Re.padAngle=function(He){return arguments.length?(ke=He,Re):ke},Re};var hc={};function Bl(U){return U.x}function yl(U){return U.y}function Nl(U,ne,le){U.y0=ne,U.y=le}i.layout.stack=function(){var U=D,ne=Ts,le=rs,ye=Nl,ke=Bl,Re=yl;function He(We,Xe){if(!(mt=We.length))return We;var Ke=We.map(function(on,Kt){return U.call(He,on,Kt)}),it=Ke.map(function(on){return on.map(function(Kt,Zt){return[ke.call(He,Kt,Zt),Re.call(He,Kt,Zt)]})}),pt=ne.call(He,it,Xe);Ke=i.permute(Ke,pt),it=i.permute(it,pt);var mt,Ot,Rt,Pt,Vt=le.call(He,it,Xe),It=Ke[0].length;for(Rt=0;Rt<It;++Rt)for(ye.call(He,Ke[0][Rt],Pt=Vt[Rt],it[0][Rt][1]),Ot=1;Ot<mt;++Ot)ye.call(He,Ke[Ot][Rt],Pt+=it[Ot-1][Rt][1],it[Ot][Rt][1]);return We}return He.values=function(We){return arguments.length?(U=We,He):U},He.order=function(We){return arguments.length?(ne=typeof We=="function"?We:ks.get(We)||Ts,He):ne},He.offset=function(We){return arguments.length?(le=typeof We=="function"?We:ns.get(We)||rs,He):le},He.x=function(We){return arguments.length?(ke=We,He):ke},He.y=function(We){return arguments.length?(Re=We,He):Re},He.out=function(We){return arguments.length?(ye=We,He):ye},He};var ks=i.map({"inside-out":function(U){var ne,le,ye=U.length,ke=U.map(uu),Re=U.map(_o),He=i.range(ye).sort(function(pt,mt){return ke[pt]-ke[mt]}),We=0,Xe=0,Ke=[],it=[];for(ne=0;ne<ye;++ne)le=He[ne],We<Xe?(We+=Re[le],Ke.push(le)):(Xe+=Re[le],it.push(le));return it.reverse().concat(Ke)},reverse:function(U){return i.range(U.length).reverse()},default:Ts}),ns=i.map({silhouette:function(U){var ne,le,ye,ke=U.length,Re=U[0].length,He=[],We=0,Xe=[];for(le=0;le<Re;++le){for(ne=0,ye=0;ne<ke;ne++)ye+=U[ne][le][1];ye>We&&(We=ye),He.push(ye)}for(le=0;le<Re;++le)Xe[le]=(We-He[le])/2;return Xe},wiggle:function(U){var ne,le,ye,ke,Re,He,We,Xe,Ke,it=U.length,pt=U[0],mt=pt.length,Ot=[];for(Ot[0]=Xe=Ke=0,le=1;le<mt;++le){for(ne=0,ke=0;ne<it;++ne)ke+=U[ne][le][1];for(ne=0,Re=0,We=pt[le][0]-pt[le-1][0];ne<it;++ne){for(ye=0,He=(U[ne][le][1]-U[ne][le-1][1])/(2*We);ye<ne;++ye)He+=(U[ye][le][1]-U[ye][le-1][1])/We;Re+=He*U[ne][le][1]}Ot[le]=Xe-=ke?Re/ke*We:0,Xe<Ke&&(Ke=Xe)}for(le=0;le<mt;++le)Ot[le]-=Ke;return Ot},expand:function(U){var ne,le,ye,ke=U.length,Re=U[0].length,He=1/ke,We=[];for(le=0;le<Re;++le){for(ne=0,ye=0;ne<ke;ne++)ye+=U[ne][le][1];if(ye)for(ne=0;ne<ke;ne++)U[ne][le][1]/=ye;else for(ne=0;ne<ke;ne++)U[ne][le][1]=He}for(le=0;le<Re;++le)We[le]=0;return We},zero:rs});function Ts(U){return i.range(U.length)}function rs(U){for(var ne=-1,le=U[0].length,ye=[];++ne<le;)ye[ne]=0;return ye}function uu(U){for(var ne,le=1,ye=0,ke=U[0][1],Re=U.length;le<Re;++le)(ne=U[le][1])>ke&&(ye=le,ke=ne);return ye}function _o(U){return U.reduce(pc,0)}function pc(U,ne){return U+ne[1]}function dc(U,ne){return cu(U,Math.ceil(Math.log(ne.length)/Math.LN2+1))}function cu(U,ne){for(var le=-1,ye=+U[0],ke=(U[1]-ye)/ne,Re=[];++le<=ne;)Re[le]=ke*le+ye;return Re}function As(U){return[i.min(U),i.max(U)]}function fu(U,ne){return U.value-ne.value}function $s(U,ne){var le=U._pack_next;U._pack_next=ne,ne._pack_prev=U,ne._pack_next=le,le._pack_prev=ne}function Ru(U,ne){U._pack_next=ne,ne._pack_prev=U}function xl(U,ne){var le=ne.x-U.x,ye=ne.y-U.y,ke=U.r+ne.r;return .999*ke*ke>le*le+ye*ye}function Ks(U){if((ne=U.children)&&(Xe=ne.length)){var ne,le,ye,ke,Re,He,We,Xe,Ke=1/0,it=-1/0,pt=1/0,mt=-1/0;if(ne.forEach(jl),(le=ne[0]).x=-le.r,le.y=0,Kt(le),Xe>1&&((ye=ne[1]).x=ye.r,ye.y=0,Kt(ye),Xe>2))for(Ms(le,ye,ke=ne[2]),Kt(ke),$s(le,ke),le._pack_prev=ke,$s(ke,ye),ye=le._pack_next,Re=3;Re<Xe;Re++){Ms(le,ye,ke=ne[Re]);var Ot=0,Rt=1,Pt=1;for(He=ye._pack_next;He!==ye;He=He._pack_next,Rt++)if(xl(He,ke)){Ot=1;break}if(Ot==1)for(We=le._pack_prev;We!==He._pack_prev&&!xl(We,ke);We=We._pack_prev,Pt++);Ot?(Rt<Pt||Rt==Pt&&ye.r<le.r?Ru(le,ye=He):Ru(le=We,ye),Re--):($s(le,ke),ye=ke,Kt(ke))}var Vt=(Ke+it)/2,It=(pt+mt)/2,on=0;for(Re=0;Re<Xe;Re++)(ke=ne[Re]).x-=Vt,ke.y-=It,on=Math.max(on,ke.r+Math.sqrt(ke.x*ke.x+ke.y*ke.y));U.r=on,ne.forEach(bl)}function Kt(Zt){Ke=Math.min(Zt.x-Zt.r,Ke),it=Math.max(Zt.x+Zt.r,it),pt=Math.min(Zt.y-Zt.r,pt),mt=Math.max(Zt.y+Zt.r,mt)}}function jl(U){U._pack_next=U._pack_prev=U}function bl(U){delete U._pack_next,delete U._pack_prev}function hi(U,ne,le,ye){var ke=U.children;if(U.x=ne+=ye*U.x,U.y=le+=ye*U.y,U.r*=ye,ke)for(var Re=-1,He=ke.length;++Re<He;)hi(ke[Re],ne,le,ye)}function Ms(U,ne,le){var ye=U.r+le.r,ke=ne.x-U.x,Re=ne.y-U.y;if(ye&&(ke||Re)){var He=ne.r+le.r,We=ke*ke+Re*Re,Xe=.5+((ye*=ye)-(He*=He))/(2*We),Ke=Math.sqrt(Math.max(0,2*He*(ye+We)-(ye-=We)*ye-He*He))/(2*We);le.x=U.x+Xe*ke+Ke*Re,le.y=U.y+Xe*Re-Ke*ke}else le.x=U.x+ye,le.y=U.y}function is(U,ne){return U.parent==ne.parent?1:2}function ia(U){var ne=U.children;return ne.length?ne[0]:U.t}function Kr(U){var ne,le=U.children;return(ne=le.length)?le[ne-1]:U.t}function ni(U,ne,le){var ye=le/(ne.i-U.i);ne.c-=ye,ne.s+=le,U.c+=ye,ne.z+=le,ne.m+=le}function Ss(U,ne,le){return U.a.parent===ne.parent?U.a:le}function as(U){var ne=U.children;return ne&&ne.length?as(ne[0]):U}function zu(U){var ne,le=U.children;return le&&(ne=le.length)?zu(le[ne-1]):U}function Ul(U){return{x:U.x,y:U.y,dx:U.dx,dy:U.dy}}function Es(U,ne){var le=U.x+ne[3],ye=U.y+ne[0],ke=U.dx-ne[1]-ne[3],Re=U.dy-ne[0]-ne[2];return ke<0&&(le+=ke/2,ke=0),Re<0&&(ye+=Re/2,Re=0),{x:le,y:ye,dx:ke,dy:Re}}function Vl(U){var ne=U[0],le=U[U.length-1];return ne<le?[ne,le]:[le,ne]}function os(U){return U.rangeExtent?U.rangeExtent():Vl(U.range())}function Js(U,ne,le,ye){var ke=le(U[0],U[1]),Re=ye(ne[0],ne[1]);return function(He){return Re(ke(He))}}function Cs(U,ne){var le,ye=0,ke=U.length-1,Re=U[ye],He=U[ke];return He<Re&&(le=ye,ye=ke,ke=le,le=Re,Re=He,He=le),U[ye]=ne.floor(Re),U[ke]=ne.ceil(He),U}function Ci(U){return U?{floor:function(ne){return Math.floor(ne/U)*U},ceil:function(ne){return Math.ceil(ne/U)*U}}:Qs}i.layout.histogram=function(){var U=!0,ne=Number,le=As,ye=dc;function ke(Re,He){for(var We,Xe,Ke=[],it=Re.map(ne,this),pt=le.call(this,it,He),mt=ye.call(this,pt,it,He),Ot=(He=-1,it.length),Rt=mt.length-1,Pt=U?1:1/Ot;++He<Rt;)(We=Ke[He]=[]).dx=mt[He+1]-(We.x=mt[He]),We.y=0;if(Rt>0)for(He=-1;++He<Ot;)(Xe=it[He])>=pt[0]&&Xe<=pt[1]&&((We=Ke[i.bisect(mt,Xe,1,Rt)-1]).y+=Pt,We.push(Re[He]));return Ke}return ke.value=function(Re){return arguments.length?(ne=Re,ke):ne},ke.range=function(Re){return arguments.length?(le=Fn(Re),ke):le},ke.bins=function(Re){return arguments.length?(ye=typeof Re=="number"?function(He){return cu(He,Re)}:Fn(Re),ke):ye},ke.frequency=function(Re){return arguments.length?(U=!!Re,ke):U},ke},i.layout.pack=function(){var U,ne=i.layout.hierarchy().sort(fu),le=0,ye=[1,1];function ke(Re,He){var We=ne.call(this,Re,He),Xe=We[0],Ke=ye[0],it=ye[1],pt=U==null?Math.sqrt:typeof U=="function"?U:function(){return U};if(Xe.x=Xe.y=0,lo(Xe,function(Ot){Ot.r=+pt(Ot.value)}),lo(Xe,Ks),le){var mt=le*(U?1:Math.max(2*Xe.r/Ke,2*Xe.r/it))/2;lo(Xe,function(Ot){Ot.r+=mt}),lo(Xe,Ks),lo(Xe,function(Ot){Ot.r-=mt})}return hi(Xe,Ke/2,it/2,U?1:1/Math.max(2*Xe.r/Ke,2*Xe.r/it)),We}return ke.size=function(Re){return arguments.length?(ye=Re,ke):ye},ke.radius=function(Re){return arguments.length?(U=Re==null||typeof Re=="function"?Re:+Re,ke):U},ke.padding=function(Re){return arguments.length?(le=+Re,ke):le},bo(ke,ne)},i.layout.tree=function(){var U=i.layout.hierarchy().sort(null).value(null),ne=is,le=[1,1],ye=null;function ke(Xe,Ke){var it=U.call(this,Xe,Ke),pt=it[0],mt=function(Kt){for(var Zt,yn={A:null,children:[Kt]},_n=[yn];(Zt=_n.pop())!=null;)for(var Un,Vn=Zt.children,Zn=0,Qn=Vn.length;Zn<Qn;++Zn)_n.push((Vn[Zn]=Un={_:Vn[Zn],parent:Zt,children:(Un=Vn[Zn].children)&&Un.slice()||[],A:null,a:null,z:0,m:0,c:0,s:0,t:null,i:Zn}).a=Un);return yn.children[0]}(pt);if(lo(mt,Re),mt.parent.m=-mt.z,Fl(mt,He),ye)Fl(pt,We);else{var Ot=pt,Rt=pt,Pt=pt;Fl(pt,function(Kt){Kt.x<Ot.x&&(Ot=Kt),Kt.x>Rt.x&&(Rt=Kt),Kt.depth>Pt.depth&&(Pt=Kt)});var Vt=ne(Ot,Rt)/2-Ot.x,It=le[0]/(Rt.x+ne(Rt,Ot)/2+Vt),on=le[1]/(Pt.depth||1);Fl(pt,function(Kt){Kt.x=(Kt.x+Vt)*It,Kt.y=Kt.depth*on})}return it}function Re(Xe){var Ke=Xe.children,it=Xe.parent.children,pt=Xe.i?it[Xe.i-1]:null;if(Ke.length){(function(Ot){for(var Rt,Pt=0,Vt=0,It=Ot.children,on=It.length;--on>=0;)(Rt=It[on]).z+=Pt,Rt.m+=Pt,Pt+=Rt.s+(Vt+=Rt.c)})(Xe);var mt=(Ke[0].z+Ke[Ke.length-1].z)/2;pt?(Xe.z=pt.z+ne(Xe._,pt._),Xe.m=Xe.z-mt):Xe.z=mt}else pt&&(Xe.z=pt.z+ne(Xe._,pt._));Xe.parent.A=function(Ot,Rt,Pt){if(Rt){for(var Vt,It=Ot,on=Ot,Kt=Rt,Zt=It.parent.children[0],yn=It.m,_n=on.m,Un=Kt.m,Vn=Zt.m;Kt=Kr(Kt),It=ia(It),Kt&&It;)Zt=ia(Zt),(on=Kr(on)).a=Ot,(Vt=Kt.z+Un-It.z-yn+ne(Kt._,It._))>0&&(ni(Ss(Kt,Ot,Pt),Ot,Vt),yn+=Vt,_n+=Vt),Un+=Kt.m,yn+=It.m,Vn+=Zt.m,_n+=on.m;Kt&&!Kr(on)&&(on.t=Kt,on.m+=Un-_n),It&&!ia(Zt)&&(Zt.t=It,Zt.m+=yn-Vn,Pt=Ot)}return Pt}(Xe,pt,Xe.parent.A||it[0])}function He(Xe){Xe._.x=Xe.z+Xe.parent.m,Xe.m+=Xe.parent.m}function We(Xe){Xe.x*=le[0],Xe.y=Xe.depth*le[1]}return ke.separation=function(Xe){return arguments.length?(ne=Xe,ke):ne},ke.size=function(Xe){return arguments.length?(ye=(le=Xe)==null?We:null,ke):ye?null:le},ke.nodeSize=function(Xe){return arguments.length?(ye=(le=Xe)==null?null:We,ke):ye?le:null},bo(ke,U)},i.layout.cluster=function(){var U=i.layout.hierarchy().sort(null).value(null),ne=is,le=[1,1],ye=!1;function ke(Re,He){var We,Xe=U.call(this,Re,He),Ke=Xe[0],it=0;lo(Ke,function(Pt){var Vt=Pt.children;Vt&&Vt.length?(Pt.x=function(It){return It.reduce(function(on,Kt){return on+Kt.x},0)/It.length}(Vt),Pt.y=function(It){return 1+i.max(It,function(on){return on.y})}(Vt)):(Pt.x=We?it+=ne(Pt,We):0,Pt.y=0,We=Pt)});var pt=as(Ke),mt=zu(Ke),Ot=pt.x-ne(pt,mt)/2,Rt=mt.x+ne(mt,pt)/2;return lo(Ke,ye?function(Pt){Pt.x=(Pt.x-Ke.x)*le[0],Pt.y=(Ke.y-Pt.y)*le[1]}:function(Pt){Pt.x=(Pt.x-Ot)/(Rt-Ot)*le[0],Pt.y=(1-(Ke.y?Pt.y/Ke.y:1))*le[1]}),Xe}return ke.separation=function(Re){return arguments.length?(ne=Re,ke):ne},ke.size=function(Re){return arguments.length?(ye=(le=Re)==null,ke):ye?null:le},ke.nodeSize=function(Re){return arguments.length?(ye=(le=Re)!=null,ke):ye?le:null},bo(ke,U)},i.layout.treemap=function(){var U,ne=i.layout.hierarchy(),le=Math.round,ye=[1,1],ke=null,Re=Ul,He=!1,We="squarify",Xe=.5*(1+Math.sqrt(5));function Ke(Pt,Vt){for(var It,on,Kt=-1,Zt=Pt.length;++Kt<Zt;)on=(It=Pt[Kt]).value*(Vt<0?0:Vt),It.area=isNaN(on)||on<=0?0:on}function it(Pt){var Vt=Pt.children;if(Vt&&Vt.length){var It,on,Kt,Zt=Re(Pt),yn=[],_n=Vt.slice(),Un=1/0,Vn=We==="slice"?Zt.dx:We==="dice"?Zt.dy:We==="slice-dice"?1&Pt.depth?Zt.dy:Zt.dx:Math.min(Zt.dx,Zt.dy);for(Ke(_n,Zt.dx*Zt.dy/Pt.value),yn.area=0;(Kt=_n.length)>0;)yn.push(It=_n[Kt-1]),yn.area+=It.area,We!=="squarify"||(on=mt(yn,Vn))<=Un?(_n.pop(),Un=on):(yn.area-=yn.pop().area,Ot(yn,Vn,Zt,!1),Vn=Math.min(Zt.dx,Zt.dy),yn.length=yn.area=0,Un=1/0);yn.length&&(Ot(yn,Vn,Zt,!0),yn.length=yn.area=0),Vt.forEach(it)}}function pt(Pt){var Vt=Pt.children;if(Vt&&Vt.length){var It,on=Re(Pt),Kt=Vt.slice(),Zt=[];for(Ke(Kt,on.dx*on.dy/Pt.value),Zt.area=0;It=Kt.pop();)Zt.push(It),Zt.area+=It.area,It.z!=null&&(Ot(Zt,It.z?on.dx:on.dy,on,!Kt.length),Zt.length=Zt.area=0);Vt.forEach(pt)}}function mt(Pt,Vt){for(var It,on=Pt.area,Kt=0,Zt=1/0,yn=-1,_n=Pt.length;++yn<_n;)(It=Pt[yn].area)&&(It<Zt&&(Zt=It),It>Kt&&(Kt=It));return Vt*=Vt,(on*=on)?Math.max(Vt*Kt*Xe/on,on/(Vt*Zt*Xe)):1/0}function Ot(Pt,Vt,It,on){var Kt,Zt=-1,yn=Pt.length,_n=It.x,Un=It.y,Vn=Vt?le(Pt.area/Vt):0;if(Vt==It.dx){for((on||Vn>It.dy)&&(Vn=It.dy);++Zt<yn;)(Kt=Pt[Zt]).x=_n,Kt.y=Un,Kt.dy=Vn,_n+=Kt.dx=Math.min(It.x+It.dx-_n,Vn?le(Kt.area/Vn):0);Kt.z=!0,Kt.dx+=It.x+It.dx-_n,It.y+=Vn,It.dy-=Vn}else{for((on||Vn>It.dx)&&(Vn=It.dx);++Zt<yn;)(Kt=Pt[Zt]).x=_n,Kt.y=Un,Kt.dx=Vn,Un+=Kt.dy=Math.min(It.y+It.dy-Un,Vn?le(Kt.area/Vn):0);Kt.z=!1,Kt.dy+=It.y+It.dy-Un,It.x+=Vn,It.dx-=Vn}}function Rt(Pt){var Vt=U||ne(Pt),It=Vt[0];return It.x=It.y=0,It.value?(It.dx=ye[0],It.dy=ye[1]):It.dx=It.dy=0,U&&ne.revalue(It),Ke([It],It.dx*It.dy/It.value),(U?pt:it)(It),He&&(U=Vt),Vt}return Rt.size=function(Pt){return arguments.length?(ye=Pt,Rt):ye},Rt.padding=function(Pt){if(!arguments.length)return ke;function Vt(on){return Es(on,Pt)}var It;return Re=(ke=Pt)==null?Ul:(It=typeof Pt)=="function"?function(on){var Kt=Pt.call(Rt,on,on.depth);return Kt==null?Ul(on):Es(on,typeof Kt=="number"?[Kt,Kt,Kt,Kt]:Kt)}:(It==="number"&&(Pt=[Pt,Pt,Pt,Pt]),Vt),Rt},Rt.round=function(Pt){return arguments.length?(le=Pt?Math.round:Number,Rt):le!=Number},Rt.sticky=function(Pt){return arguments.length?(He=Pt,U=null,Rt):He},Rt.ratio=function(Pt){return arguments.length?(Xe=Pt,Rt):Xe},Rt.mode=function(Pt){return arguments.length?(We=Pt+"",Rt):We},bo(Rt,ne)},i.random={normal:function(U,ne){var le=arguments.length;return le<2&&(ne=1),le<1&&(U=0),function(){var ye,ke,Re;do Re=(ye=2*Math.random()-1)*ye+(ke=2*Math.random()-1)*ke;while(!Re||Re>1);return U+ne*ye*Math.sqrt(-2*Math.log(Re)/Re)}},logNormal:function(){var U=i.random.normal.apply(i,arguments);return function(){return Math.exp(U())}},bates:function(U){var ne=i.random.irwinHall(U);return function(){return ne()/U}},irwinHall:function(U){return function(){for(var ne=0,le=0;le<U;le++)ne+=Math.random();return ne}}},i.scale={};var Qs={floor:D,ceil:D};function el(U,ne,le,ye){var ke=[],Re=[],He=0,We=Math.min(U.length,ne.length)-1;for(U[We]<U[0]&&(U=U.slice().reverse(),ne=ne.slice().reverse());++He<=We;)ke.push(le(U[He-1],U[He])),Re.push(ye(ne[He-1],ne[He]));return function(Xe){var Ke=i.bisect(U,Xe,1,We)-1;return Re[Ke](ke[Ke](Xe))}}function Xi(U,ne,le,ye){var ke,Re;function He(){var Xe=Math.min(U.length,ne.length)>2?el:Js,Ke=ye?ml:Zs;return ke=Xe(U,ne,Ke,le),Re=Xe(ne,U,Ke,Bo),We}function We(Xe){return ke(Xe)}return We.invert=function(Xe){return Re(Xe)},We.domain=function(Xe){return arguments.length?(U=Xe.map(Number),He()):U},We.range=function(Xe){return arguments.length?(ne=Xe,He()):ne},We.rangeRound=function(Xe){return We.range(Xe).interpolate(sc)},We.clamp=function(Xe){return arguments.length?(ye=Xe,He()):ye},We.interpolate=function(Xe){return arguments.length?(le=Xe,He()):le},We.ticks=function(Xe){return La(U,Xe)},We.tickFormat=function(Xe,Ke){return d3_scale_linearTickFormat(U,Xe,Ke)},We.nice=function(Xe){return da(U,Xe),He()},We.copy=function(){return Xi(U,ne,le,ye)},He()}function xa(U,ne){return i.rebind(U,ne,"range","rangeRound","interpolate","clamp")}function da(U,ne){return Cs(U,Ci($i(U,ne)[2])),Cs(U,Ci($i(U,ne)[2])),U}function $i(U,ne){ne==null&&(ne=10);var le=Vl(U),ye=le[1]-le[0],ke=Math.pow(10,Math.floor(Math.log(ye/ne)/Math.LN10)),Re=ne/ye*ke;return Re<=.15?ke*=10:Re<=.35?ke*=5:Re<=.75&&(ke*=2),le[0]=Math.ceil(le[0]/ke)*ke,le[1]=Math.floor(le[1]/ke)*ke+.5*ke,le[2]=ke,le}function La(U,ne){return i.range.apply(i,$i(U,ne))}function Ls(U,ne,le,ye){function ke(We){return(le?Math.log(We<0?0:We):-Math.log(We>0?0:-We))/Math.log(ne)}function Re(We){return le?Math.pow(ne,We):-Math.pow(ne,-We)}function He(We){return U(ke(We))}return He.invert=function(We){return Re(U.invert(We))},He.domain=function(We){return arguments.length?(le=We[0]>=0,U.domain((ye=We.map(Number)).map(ke)),He):ye},He.base=function(We){return arguments.length?(ne=+We,U.domain(ye.map(ke)),He):ne},He.nice=function(){var We=Cs(ye.map(ke),le?Math:wo);return U.domain(We),ye=We.map(Re),He},He.ticks=function(){var We=Vl(ye),Xe=[],Ke=We[0],it=We[1],pt=Math.floor(ke(Ke)),mt=Math.ceil(ke(it)),Ot=ne%1?2:ne;if(isFinite(mt-pt)){if(le){for(;pt<mt;pt++)for(var Rt=1;Rt<Ot;Rt++)Xe.push(Re(pt)*Rt);Xe.push(Re(pt))}else for(Xe.push(Re(pt));pt++<mt;)for(Rt=Ot-1;Rt>0;Rt--)Xe.push(Re(pt)*Rt);for(pt=0;Xe[pt]<Ke;pt++);for(mt=Xe.length;Xe[mt-1]>it;mt--);Xe=Xe.slice(pt,mt)}return Xe},He.copy=function(){return Ls(U.copy(),ne,le,ye)},xa(He,U)}i.scale.linear=function(){return Xi([0,1],[0,1],Bo,!1)},i.scale.log=function(){return Ls(i.scale.linear().domain([0,1]),10,!0,[1,10])};var wo={floor:function(U){return-Math.ceil(-U)},ceil:function(U){return-Math.floor(-U)}};function aa(U,ne,le){var ye=eo(ne),ke=eo(1/ne);function Re(He){return U(ye(He))}return Re.invert=function(He){return ke(U.invert(He))},Re.domain=function(He){return arguments.length?(U.domain((le=He.map(Number)).map(ye)),Re):le},Re.ticks=function(He){return La(le,He)},Re.tickFormat=function(He,We){return d3_scale_linearTickFormat(le,He,We)},Re.nice=function(He){return Re.domain(da(le,He))},Re.exponent=function(He){return arguments.length?(ye=eo(ne=He),ke=eo(1/ne),U.domain(le.map(ye)),Re):ne},Re.copy=function(){return aa(U.copy(),ne,le)},xa(Re,U)}function eo(U){return function(ne){return ne<0?-Math.pow(-ne,U):Math.pow(ne,U)}}function uo(U,ne){var le,ye,ke;function Re(We){return ye[((le.get(We)||(ne.t==="range"?le.set(We,U.push(We)):NaN))-1)%ye.length]}function He(We,Xe){return i.range(U.length).map(function(Ke){return We+Xe*Ke})}return Re.domain=function(We){if(!arguments.length)return U;U=[],le=new x;for(var Xe,Ke=-1,it=We.length;++Ke<it;)le.has(Xe=We[Ke])||le.set(Xe,U.push(Xe));return Re[ne.t].apply(Re,ne.a)},Re.range=function(We){return arguments.length?(ye=We,ke=0,ne={t:"range",a:arguments},Re):ye},Re.rangePoints=function(We,Xe){arguments.length<2&&(Xe=0);var Ke=We[0],it=We[1],pt=U.length<2?(Ke=(Ke+it)/2,0):(it-Ke)/(U.length-1+Xe);return ye=He(Ke+pt*Xe/2,pt),ke=0,ne={t:"rangePoints",a:arguments},Re},Re.rangeRoundPoints=function(We,Xe){arguments.length<2&&(Xe=0);var Ke=We[0],it=We[1],pt=U.length<2?(Ke=it=Math.round((Ke+it)/2),0):(it-Ke)/(U.length-1+Xe)|0;return ye=He(Ke+Math.round(pt*Xe/2+(it-Ke-(U.length-1+Xe)*pt)/2),pt),ke=0,ne={t:"rangeRoundPoints",a:arguments},Re},Re.rangeBands=function(We,Xe,Ke){arguments.length<2&&(Xe=0),arguments.length<3&&(Ke=Xe);var it=We[1]<We[0],pt=We[it-0],mt=(We[1-it]-pt)/(U.length-Xe+2*Ke);return ye=He(pt+mt*Ke,mt),it&&ye.reverse(),ke=mt*(1-Xe),ne={t:"rangeBands",a:arguments},Re},Re.rangeRoundBands=function(We,Xe,Ke){arguments.length<2&&(Xe=0),arguments.length<3&&(Ke=Xe);var it=We[1]<We[0],pt=We[it-0],mt=We[1-it],Ot=Math.floor((mt-pt)/(U.length-Xe+2*Ke));return ye=He(pt+Math.round((mt-pt-(U.length-Xe)*Ot)/2),Ot),it&&ye.reverse(),ke=Math.round(Ot*(1-Xe)),ne={t:"rangeRoundBands",a:arguments},Re},Re.rangeBand=function(){return ke},Re.rangeExtent=function(){return Vl(ne.a[0])},Re.copy=function(){return uo(U,ne)},Re.domain(U)}i.scale.pow=function(){return aa(i.scale.linear(),1,[0,1])},i.scale.sqrt=function(){return i.scale.pow().exponent(.5)},i.scale.ordinal=function(){return uo([],{t:"range",a:[[]]})},i.scale.category10=function(){return i.scale.ordinal().range(hu)},i.scale.category20=function(){return i.scale.ordinal().range(co)},i.scale.category20b=function(){return i.scale.ordinal().range(oa)},i.scale.category20c=function(){return i.scale.ordinal().range(Sr)};var hu=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(Yt),co=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(Yt),oa=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(Yt),Sr=[3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081].map(Yt);function ba(U,ne){var le;function ye(){var Re=0,He=ne.length;for(le=[];++Re<He;)le[Re-1]=i.quantile(U,Re/He);return ke}function ke(Re){if(!isNaN(Re=+Re))return ne[i.bisect(le,Re)]}return ke.domain=function(Re){return arguments.length?(U=Re.map(p).filter(c).sort(u),ye()):U},ke.range=function(Re){return arguments.length?(ne=Re,ye()):ne},ke.quantiles=function(){return le},ke.invertExtent=function(Re){return(Re=ne.indexOf(Re))<0?[NaN,NaN]:[Re>0?le[Re-1]:U[0],Re<le.length?le[Re]:U[U.length-1]]},ke.copy=function(){return ba(U,ne)},ye()}function Hl(U,ne,le){var ye,ke;function Re(We){return le[Math.max(0,Math.min(ke,Math.floor(ye*(We-U))))]}function He(){return ye=le.length/(ne-U),ke=le.length-1,Re}return Re.domain=function(We){return arguments.length?(U=+We[0],ne=+We[We.length-1],He()):[U,ne]},Re.range=function(We){return arguments.length?(le=We,He()):le},Re.invertExtent=function(We){return[We=(We=le.indexOf(We))<0?NaN:We/ye+U,We+1/ye]},Re.copy=function(){return Hl(U,ne,le)},He()}function pu(U,ne){function le(ye){if(ye<=ye)return ne[i.bisect(U,ye)]}return le.domain=function(ye){return arguments.length?(U=ye,le):U},le.range=function(ye){return arguments.length?(ne=ye,le):ne},le.invertExtent=function(ye){return ye=ne.indexOf(ye),[U[ye-1],U[ye]]},le.copy=function(){return pu(U,ne)},le}function tl(U){function ne(le){return+le}return ne.invert=ne,ne.domain=ne.range=function(le){return arguments.length?(U=le.map(ne),ne):U},ne.ticks=function(le){return La(U,le)},ne.tickFormat=function(le,ye){return d3_scale_linearTickFormat(U,le,ye)},ne.copy=function(){return tl(U)},ne}function nl(){return 0}i.scale.quantile=function(){return ba([],[])},i.scale.quantize=function(){return Hl(0,1,[0,1])},i.scale.threshold=function(){return pu([.5],[0,1])},i.scale.identity=function(){return tl([0,1])},i.svg={},i.svg.arc=function(){var U=Tr,ne=ko,le=nl,ye=ss,ke=_l,Re=ql,He=_a;function We(){var Ke=Math.max(0,+U.apply(this,arguments)),it=Math.max(0,+ne.apply(this,arguments)),pt=ke.apply(this,arguments)-Je,mt=Re.apply(this,arguments)-Je,Ot=Math.abs(mt-pt),Rt=pt>mt?0:1;if(it<Ke&&(Pt=it,it=Ke,Ke=Pt),Ot>=zt)return Xe(it,Rt)+(Ke?Xe(Ke,1-Rt):"")+"Z";var Pt,Vt,It,on,Kt,Zt,yn,_n,Un,Vn,Zn,Qn,pr=0,cr=0,mr=[];if((on=(+He.apply(this,arguments)||0)/2)&&(It=ye===ss?Math.sqrt(Ke*Ke+it*it):+ye.apply(this,arguments),Rt||(cr*=-1),it&&(cr=Qe(It/it*Math.sin(on))),Ke&&(pr=Qe(It/Ke*Math.sin(on)))),it){Kt=it*Math.cos(pt+cr),Zt=it*Math.sin(pt+cr),yn=it*Math.cos(mt-cr),_n=it*Math.sin(mt-cr);var Ar=Math.abs(mt-pt-2*cr)<=St?0:1;if(cr&&To(Kt,Zt,yn,_n)===Rt^Ar){var Br=(pt+mt)/2;Kt=it*Math.cos(Br),Zt=it*Math.sin(Br),yn=_n=null}}else Kt=Zt=0;if(Ke){Un=Ke*Math.cos(mt-pr),Vn=Ke*Math.sin(mt-pr),Zn=Ke*Math.cos(pt+pr),Qn=Ke*Math.sin(pt+pr);var qn=Math.abs(pt-mt+2*pr)<=St?0:1;if(pr&&To(Un,Vn,Zn,Qn)===1-Rt^qn){var ur=(pt+mt)/2;Un=Ke*Math.cos(ur),Vn=Ke*Math.sin(ur),Zn=Qn=null}}else Un=Vn=0;if(Ot>Tt&&(Pt=Math.min(Math.abs(it-Ke)/2,+le.apply(this,arguments)))>.001){Vt=Ke<it^Rt?0:1;var yr=Pt,Mr=Pt;if(Ot<St){var Rr=Zn==null?[Un,Vn]:yn==null?[Kt,Zt]:Lt([Kt,Zt],[Zn,Qn],[yn,_n],[Un,Vn]),Vr=Kt-Rr[0],$r=Zt-Rr[1],ai=yn-Rr[0],bi=_n-Rr[1],_i=1/Math.sin(Math.acos((Vr*ai+$r*bi)/(Math.sqrt(Vr*Vr+$r*$r)*Math.sqrt(ai*ai+bi*bi)))/2),oi=Math.sqrt(Rr[0]*Rr[0]+Rr[1]*Rr[1]);Mr=Math.min(Pt,(Ke-oi)/(_i-1)),yr=Math.min(Pt,(it-oi)/(_i+1))}if(yn!=null){var Fi=fo(Zn==null?[Un,Vn]:[Zn,Qn],[Kt,Zt],it,yr,Rt),la=fo([yn,_n],[Un,Vn],it,yr,Rt);Pt===yr?mr.push("M",Fi[0],"A",yr,",",yr," 0 0,",Vt," ",Fi[1],"A",it,",",it," 0 ",1-Rt^To(Fi[1][0],Fi[1][1],la[1][0],la[1][1]),",",Rt," ",la[1],"A",yr,",",yr," 0 0,",Vt," ",la[0]):mr.push("M",Fi[0],"A",yr,",",yr," 0 1,",Vt," ",la[0])}else mr.push("M",Kt,",",Zt);if(Zn!=null){var Wi=fo([Kt,Zt],[Zn,Qn],Ke,-Mr,Rt),ea=fo([Un,Vn],yn==null?[Kt,Zt]:[yn,_n],Ke,-Mr,Rt);Pt===Mr?mr.push("L",ea[0],"A",Mr,",",Mr," 0 0,",Vt," ",ea[1],"A",Ke,",",Ke," 0 ",Rt^To(ea[1][0],ea[1][1],Wi[1][0],Wi[1][1]),",",1-Rt," ",Wi[1],"A",Mr,",",Mr," 0 0,",Vt," ",Wi[0]):mr.push("L",ea[0],"A",Mr,",",Mr," 0 0,",Vt," ",Wi[0])}else mr.push("L",Un,",",Vn)}else mr.push("M",Kt,",",Zt),yn!=null&&mr.push("A",it,",",it," 0 ",Ar,",",Rt," ",yn,",",_n),mr.push("L",Un,",",Vn),Zn!=null&&mr.push("A",Ke,",",Ke," 0 ",qn,",",1-Rt," ",Zn,",",Qn);return mr.push("Z"),mr.join("")}function Xe(Ke,it){return"M0,"+Ke+"A"+Ke+","+Ke+" 0 1,"+it+" 0,"+-Ke+"A"+Ke+","+Ke+" 0 1,"+it+" 0,"+Ke}return We.innerRadius=function(Ke){return arguments.length?(U=Fn(Ke),We):U},We.outerRadius=function(Ke){return arguments.length?(ne=Fn(Ke),We):ne},We.cornerRadius=function(Ke){return arguments.length?(le=Fn(Ke),We):le},We.padRadius=function(Ke){return arguments.length?(ye=Ke==ss?ss:Fn(Ke),We):ye},We.startAngle=function(Ke){return arguments.length?(ke=Fn(Ke),We):ke},We.endAngle=function(Ke){return arguments.length?(Re=Fn(Ke),We):Re},We.padAngle=function(Ke){return arguments.length?(He=Fn(Ke),We):He},We.centroid=function(){var Ke=(+U.apply(this,arguments)+ +ne.apply(this,arguments))/2,it=(+ke.apply(this,arguments)+ +Re.apply(this,arguments))/2-Je;return[Math.cos(it)*Ke,Math.sin(it)*Ke]},We};var ss="auto";function Tr(U){return U.innerRadius}function ko(U){return U.outerRadius}function _l(U){return U.startAngle}function ql(U){return U.endAngle}function _a(U){return U&&U.padAngle}function To(U,ne,le,ye){return(U-le)*ne-(ne-ye)*U>0?0:1}function fo(U,ne,le,ye,ke){var Re=U[0]-ne[0],He=U[1]-ne[1],We=(ke?ye:-ye)/Math.sqrt(Re*Re+He*He),Xe=We*He,Ke=-We*Re,it=U[0]+Xe,pt=U[1]+Ke,mt=ne[0]+Xe,Ot=ne[1]+Ke,Rt=(it+mt)/2,Pt=(pt+Ot)/2,Vt=mt-it,It=Ot-pt,on=Vt*Vt+It*It,Kt=le-ye,Zt=it*Ot-mt*pt,yn=(It<0?-1:1)*Math.sqrt(Math.max(0,Kt*Kt*on-Zt*Zt)),_n=(Zt*It-Vt*yn)/on,Un=(-Zt*Vt-It*yn)/on,Vn=(Zt*It+Vt*yn)/on,Zn=(-Zt*Vt+It*yn)/on,Qn=_n-Rt,pr=Un-Pt,cr=Vn-Rt,mr=Zn-Pt;return Qn*Qn+pr*pr>cr*cr+mr*mr&&(_n=Vn,Un=Zn),[[_n-Xe,Un-Ke],[_n*le/Kt,Un*le/Kt]]}function to(){return!0}function Uo(U){var ne=Yn,le=Nn,ye=to,ke=Ki,Re=ke.key,He=.7;function We(Xe){var Ke,it=[],pt=[],mt=-1,Ot=Xe.length,Rt=Fn(ne),Pt=Fn(le);function Vt(){it.push("M",ke(U(pt),He))}for(;++mt<Ot;)ye.call(this,Ke=Xe[mt],mt)?pt.push([+Rt.call(this,Ke,mt),+Pt.call(this,Ke,mt)]):pt.length&&(Vt(),pt=[]);return pt.length&&Vt(),it.length?it.join(""):null}return We.x=function(Xe){return arguments.length?(ne=Xe,We):ne},We.y=function(Xe){return arguments.length?(le=Xe,We):le},We.defined=function(Xe){return arguments.length?(ye=Xe,We):ye},We.interpolate=function(Xe){return arguments.length?(Re=typeof Xe=="function"?ke=Xe:(ke=ls.get(Xe)||Ki).key,We):Re},We.tension=function(Xe){return arguments.length?(He=Xe,We):He},We}i.svg.line=function(){return Uo(D)};var ls=i.map({linear:Ki,"linear-closed":rl,step:function(U){for(var ne=0,le=U.length,ye=U[0],ke=[ye[0],",",ye[1]];++ne<le;)ke.push("H",(ye[0]+(ye=U[ne])[0])/2,"V",ye[1]);return le>1&&ke.push("H",ye[0]),ke.join("")},"step-before":wl,"step-after":sa,basis:qa,"basis-open":function(U){if(U.length<4)return Ki(U);for(var ne,le=[],ye=-1,ke=U.length,Re=[0],He=[0];++ye<3;)ne=U[ye],Re.push(ne[0]),He.push(ne[1]);for(le.push(Ji(Di,Re)+","+Ji(Di,He)),--ye;++ye<ke;)ne=U[ye],Re.shift(),Re.push(ne[0]),He.shift(),He.push(ne[1]),li(le,Re,He);return le.join("")},"basis-closed":function(U){for(var ne,le,ye=-1,ke=U.length,Re=ke+4,He=[],We=[];++ye<4;)le=U[ye%ke],He.push(le[0]),We.push(le[1]);for(ne=[Ji(Di,He),",",Ji(Di,We)],--ye;++ye<Re;)le=U[ye%ke],He.shift(),He.push(le[0]),We.shift(),We.push(le[1]),li(ne,He,We);return ne.join("")},bundle:function(U,ne){var le=U.length-1;if(le)for(var ye,ke,Re=U[0][0],He=U[0][1],We=U[le][0]-Re,Xe=U[le][1]-He,Ke=-1;++Ke<=le;)ke=Ke/le,(ye=U[Ke])[0]=ne*ye[0]+(1-ne)*(Re+ke*We),ye[1]=ne*ye[1]+(1-ne)*(He+ke*Xe);return qa(U)},cardinal:function(U,ne){return U.length<3?Ki(U):U[0]+pi(U,Gl(U,ne))},"cardinal-open":function(U,ne){return U.length<4?Ki(U):U[1]+pi(U.slice(1,-1),Gl(U,ne))},"cardinal-closed":function(U,ne){return U.length<3?rl(U):U[0]+pi((U.push(U[0]),U),Gl([U[U.length-2]].concat(U,[U[1]]),ne))},monotone:function(U){return U.length<3?Ki(U):U[0]+pi(U,function(ne){for(var le,ye,ke,Re,He=[],We=function(it){for(var pt=0,mt=it.length-1,Ot=[],Rt=it[0],Pt=it[1],Vt=Ot[0]=no(Rt,Pt);++pt<mt;)Ot[pt]=(Vt+(Vt=no(Rt=Pt,Pt=it[pt+1])))/2;return Ot[pt]=Vt,Ot}(ne),Xe=-1,Ke=ne.length-1;++Xe<Ke;)le=no(ne[Xe],ne[Xe+1]),v(le)<Tt?We[Xe]=We[Xe+1]=0:(Re=(ye=We[Xe]/le)*ye+(ke=We[Xe+1]/le)*ke)>9&&(Re=3*le/Math.sqrt(Re),We[Xe]=Re*ye,We[Xe+1]=Re*ke);for(Xe=-1;++Xe<=Ke;)Re=(ne[Math.min(Ke,Xe+1)][0]-ne[Math.max(0,Xe-1)][0])/(6*(1+We[Xe]*We[Xe])),He.push([Re||0,We[Xe]*Re||0]);return He}(U))}});function Ki(U){return U.length>1?U.join("L"):U+"Z"}function rl(U){return U.join("L")+"Z"}function wl(U){for(var ne=0,le=U.length,ye=U[0],ke=[ye[0],",",ye[1]];++ne<le;)ke.push("V",(ye=U[ne])[1],"H",ye[0]);return ke.join("")}function sa(U){for(var ne=0,le=U.length,ye=U[0],ke=[ye[0],",",ye[1]];++ne<le;)ke.push("H",(ye=U[ne])[0],"V",ye[1]);return ke.join("")}function pi(U,ne){if(ne.length<1||U.length!=ne.length&&U.length!=ne.length+2)return Ki(U);var le=U.length!=ne.length,ye="",ke=U[0],Re=U[1],He=ne[0],We=He,Xe=1;if(le&&(ye+="Q"+(Re[0]-2*He[0]/3)+","+(Re[1]-2*He[1]/3)+","+Re[0]+","+Re[1],ke=U[1],Xe=2),ne.length>1){We=ne[1],Re=U[Xe],Xe++,ye+="C"+(ke[0]+He[0])+","+(ke[1]+He[1])+","+(Re[0]-We[0])+","+(Re[1]-We[1])+","+Re[0]+","+Re[1];for(var Ke=2;Ke<ne.length;Ke++,Xe++)Re=U[Xe],We=ne[Ke],ye+="S"+(Re[0]-We[0])+","+(Re[1]-We[1])+","+Re[0]+","+Re[1]}if(le){var it=U[Xe];ye+="Q"+(Re[0]+2*We[0]/3)+","+(Re[1]+2*We[1]/3)+","+it[0]+","+it[1]}return ye}function Gl(U,ne){for(var le,ye=[],ke=(1-ne)/2,Re=U[0],He=U[1],We=1,Xe=U.length;++We<Xe;)le=Re,Re=He,He=U[We],ye.push([ke*(He[0]-le[0]),ke*(He[1]-le[1])]);return ye}function qa(U){if(U.length<3)return Ki(U);var ne=1,le=U.length,ye=U[0],ke=ye[0],Re=ye[1],He=[ke,ke,ke,(ye=U[1])[0]],We=[Re,Re,Re,ye[1]],Xe=[ke,",",Re,"L",Ji(Di,He),",",Ji(Di,We)];for(U.push(U[le-1]);++ne<=le;)ye=U[ne],He.shift(),He.push(ye[0]),We.shift(),We.push(ye[1]),li(Xe,He,We);return U.pop(),Xe.push("L",ye),Xe.join("")}function Ji(U,ne){return U[0]*ne[0]+U[1]*ne[1]+U[2]*ne[2]+U[3]*ne[3]}ls.forEach(function(U,ne){ne.key=U,ne.closed=/-closed$/.test(U)});var Vo=[0,2/3,1/3,0],Du=[0,1/3,2/3,0],Di=[0,1/6,2/3,1/6];function li(U,ne,le){U.push("C",Ji(Vo,ne),",",Ji(Vo,le),",",Ji(Du,ne),",",Ji(Du,le),",",Ji(Di,ne),",",Ji(Di,le))}function no(U,ne){return(ne[1]-U[1])/(ne[0]-U[0])}function Ho(U){for(var ne,le,ye,ke=-1,Re=U.length;++ke<Re;)le=(ne=U[ke])[0],ye=ne[1]-Je,ne[0]=le*Math.cos(ye),ne[1]=le*Math.sin(ye);return U}function Ao(U){var ne=Yn,le=Yn,ye=0,ke=Nn,Re=to,He=Ki,We=He.key,Xe=He,Ke="L",it=.7;function pt(mt){var Ot,Rt,Pt,Vt=[],It=[],on=[],Kt=-1,Zt=mt.length,yn=Fn(ne),_n=Fn(ye),Un=ne===le?function(){return Rt}:Fn(le),Vn=ye===ke?function(){return Pt}:Fn(ke);function Zn(){Vt.push("M",He(U(on),it),Ke,Xe(U(It.reverse()),it),"Z")}for(;++Kt<Zt;)Re.call(this,Ot=mt[Kt],Kt)?(It.push([Rt=+yn.call(this,Ot,Kt),Pt=+_n.call(this,Ot,Kt)]),on.push([+Un.call(this,Ot,Kt),+Vn.call(this,Ot,Kt)])):It.length&&(Zn(),It=[],on=[]);return It.length&&Zn(),Vt.length?Vt.join(""):null}return pt.x=function(mt){return arguments.length?(ne=le=mt,pt):le},pt.x0=function(mt){return arguments.length?(ne=mt,pt):ne},pt.x1=function(mt){return arguments.length?(le=mt,pt):le},pt.y=function(mt){return arguments.length?(ye=ke=mt,pt):ke},pt.y0=function(mt){return arguments.length?(ye=mt,pt):ye},pt.y1=function(mt){return arguments.length?(ke=mt,pt):ke},pt.defined=function(mt){return arguments.length?(Re=mt,pt):Re},pt.interpolate=function(mt){return arguments.length?(We=typeof mt=="function"?He=mt:(He=ls.get(mt)||Ki).key,Xe=He.reverse||He,Ke=He.closed?"M":"L",pt):We},pt.tension=function(mt){return arguments.length?(it=mt,pt):it},pt}function du(U){return U.source}function Ps(U){return U.target}function il(U){return U.radius}function Gi(U){return[U.x,U.y]}function ga(){return 64}function Pr(){return"circle"}function Ir(U){var ne=Math.sqrt(U/St);return"M0,"+ne+"A"+ne+","+ne+" 0 1,1 0,"+-ne+"A"+ne+","+ne+" 0 1,1 0,"+ne+"Z"}i.svg.line.radial=function(){var U=Uo(Ho);return U.radius=U.x,delete U.x,U.angle=U.y,delete U.y,U},wl.reverse=sa,sa.reverse=wl,i.svg.area=function(){return Ao(D)},i.svg.area.radial=function(){var U=Ao(Ho);return U.radius=U.x,delete U.x,U.innerRadius=U.x0,delete U.x0,U.outerRadius=U.x1,delete U.x1,U.angle=U.y,delete U.y,U.startAngle=U.y0,delete U.y0,U.endAngle=U.y1,delete U.y1,U},i.svg.chord=function(){var U=du,ne=Ps,le=il,ye=_l,ke=ql;function Re(Ke,it){var pt,mt,Ot=He(this,U,Ke,it),Rt=He(this,ne,Ke,it);return"M"+Ot.p0+We(Ot.r,Ot.p1,Ot.a1-Ot.a0)+(mt=Rt,((pt=Ot).a0==mt.a0&&pt.a1==mt.a1?Xe(Ot.r,Ot.p1,Ot.r,Ot.p0):Xe(Ot.r,Ot.p1,Rt.r,Rt.p0)+We(Rt.r,Rt.p1,Rt.a1-Rt.a0)+Xe(Rt.r,Rt.p1,Ot.r,Ot.p0))+"Z")}function He(Ke,it,pt,mt){var Ot=it.call(Ke,pt,mt),Rt=le.call(Ke,Ot,mt),Pt=ye.call(Ke,Ot,mt)-Je,Vt=ke.call(Ke,Ot,mt)-Je;return{r:Rt,a0:Pt,a1:Vt,p0:[Rt*Math.cos(Pt),Rt*Math.sin(Pt)],p1:[Rt*Math.cos(Vt),Rt*Math.sin(Vt)]}}function We(Ke,it,pt){return"A"+Ke+","+Ke+" 0 "+ +(pt>St)+",1 "+it}function Xe(Ke,it,pt,mt){return"Q 0,0 "+mt}return Re.radius=function(Ke){return arguments.length?(le=Fn(Ke),Re):le},Re.source=function(Ke){return arguments.length?(U=Fn(Ke),Re):U},Re.target=function(Ke){return arguments.length?(ne=Fn(Ke),Re):ne},Re.startAngle=function(Ke){return arguments.length?(ye=Fn(Ke),Re):ye},Re.endAngle=function(Ke){return arguments.length?(ke=Fn(Ke),Re):ke},Re},i.svg.diagonal=function(){var U=du,ne=Ps,le=Gi;function ye(ke,Re){var He=U.call(this,ke,Re),We=ne.call(this,ke,Re),Xe=(He.y+We.y)/2,Ke=[He,{x:He.x,y:Xe},{x:We.x,y:Xe},We];return"M"+(Ke=Ke.map(le))[0]+"C"+Ke[1]+" "+Ke[2]+" "+Ke[3]}return ye.source=function(ke){return arguments.length?(U=Fn(ke),ye):U},ye.target=function(ke){return arguments.length?(ne=Fn(ke),ye):ne},ye.projection=function(ke){return arguments.length?(le=ke,ye):le},ye},i.svg.diagonal.radial=function(){var U=i.svg.diagonal(),ne=Gi,le=U.projection;return U.projection=function(ye){return arguments.length?le(function(ke){return function(){var Re=ke.apply(this,arguments),He=Re[0],We=Re[1]-Je;return[He*Math.cos(We),He*Math.sin(We)]}}(ne=ye)):ne},U},i.svg.symbol=function(){var U=Pr,ne=ga;function le(ye,ke){return(kl.get(U.call(this,ye,ke))||Ir)(ne.call(this,ye,ke))}return le.type=function(ye){return arguments.length?(U=Fn(ye),le):U},le.size=function(ye){return arguments.length?(ne=Fn(ye),le):ne},le};var kl=i.map({circle:Ir,cross:function(U){var ne=Math.sqrt(U/5)/2;return"M"+-3*ne+","+-ne+"H"+-ne+"V"+-3*ne+"H"+ne+"V"+-ne+"H"+3*ne+"V"+ne+"H"+ne+"V"+3*ne+"H"+-ne+"V"+ne+"H"+-3*ne+"Z"},diamond:function(U){var ne=Math.sqrt(U/(2*Os)),le=ne*Os;return"M0,"+-ne+"L"+le+",0 0,"+ne+" "+-le+",0Z"},square:function(U){var ne=Math.sqrt(U)/2;return"M"+-ne+","+-ne+"L"+ne+","+-ne+" "+ne+","+ne+" "+-ne+","+ne+"Z"},"triangle-down":function(U){var ne=Math.sqrt(U/Pa),le=ne*Pa/2;return"M0,"+le+"L"+ne+","+-le+" "+-ne+","+-le+"Z"},"triangle-up":function(U){var ne=Math.sqrt(U/Pa),le=ne*Pa/2;return"M0,"+-le+"L"+ne+","+le+" "+-ne+","+le+"Z"}});i.svg.symbolTypes=kl.keys();var Pa=Math.sqrt(3),Os=Math.tan(30*et);me.transition=function(U){for(var ne,le,ye=Is||++Qi,ke=al(U),Re=[],He=Rs||{time:Date.now(),ease:Qo,delay:0,duration:250},We=-1,Xe=this.length;++We<Xe;){Re.push(ne=[]);for(var Ke=this[We],it=-1,pt=Ke.length;++it<pt;)(le=Ke[it])&&Al(le,it,ke,ye,He),ne.push(le)}return ma(Re,ke,ye)},me.interrupt=function(U){return this.each(U==null?va:Tl(al(U)))};var va=Tl(al());function Tl(U){return function(){var ne,le,ye;(ne=this[U])&&(ye=ne[le=ne.active])&&(ye.timer.c=null,ye.timer.t=NaN,--ne.count?delete ne[le]:delete this[U],ne.active+=.5,ye.event&&ye.event.interrupt.call(this,this.__data__,ye.index))}}function ma(U,ne,le){return re(U,Nr),U.namespace=ne,U.id=le,U}var Is,Rs,Nr=[],Qi=0;function qo(U,ne,le,ye){var ke=U.id,Re=U.namespace;return Ae(U,typeof le=="function"?function(He,We,Xe){He[Re][ke].tween.set(ne,ye(le.call(He,He.__data__,We,Xe)))}:(le=ye(le),function(He){He[Re][ke].tween.set(ne,le)}))}function Ga(U){return U==null&&(U=""),function(){this.textContent=U}}function al(U){return U==null?"__transition__":"__transition_"+U+"__"}function Al(U,ne,le,ye,ke){var Re,He,We,Xe,Ke,it=U[le]||(U[le]={active:0,count:0}),pt=it[ye];function mt(Rt){var Pt=it.active,Vt=it[Pt];for(var It in Vt&&(Vt.timer.c=null,Vt.timer.t=NaN,--it.count,delete it[Pt],Vt.event&&Vt.event.interrupt.call(U,U.__data__,Vt.index)),it)if(+It<ye){var on=it[It];on.timer.c=null,on.timer.t=NaN,--it.count,delete it[It]}He.c=Ot,sn(function(){return He.c&&Ot(Rt||1)&&(He.c=null,He.t=NaN),1},0,Re),it.active=ye,pt.event&&pt.event.start.call(U,U.__data__,ne),Ke=[],pt.tween.forEach(function(Kt,Zt){(Zt=Zt.call(U,U.__data__,ne))&&Ke.push(Zt)}),Xe=pt.ease,We=pt.duration}function Ot(Rt){for(var Pt=Rt/We,Vt=Xe(Pt),It=Ke.length;It>0;)Ke[--It].call(U,Vt);if(Pt>=1)return pt.event&&pt.event.end.call(U,U.__data__,ne),--it.count?delete it[ye]:delete U[le],1}pt||(Re=ke.time,He=sn(function(Rt){var Pt=pt.delay;if(He.t=Pt+Re,Pt<=Rt)return mt(Rt-Pt);He.c=mt},0,Re),pt=it[ye]={tween:new x,time:Re,timer:He,delay:ke.delay,duration:ke.duration,ease:ke.ease,index:ne},ke=null,++it.count)}Nr.call=me.call,Nr.empty=me.empty,Nr.node=me.node,Nr.size=me.size,i.transition=function(U,ne){return U&&U.transition?Is?U.transition(ne):U:i.selection().transition(U)},i.transition.prototype=Nr,Nr.select=function(U){var ne,le,ye,ke=this.id,Re=this.namespace,He=[];U=_e(U);for(var We=-1,Xe=this.length;++We<Xe;){He.push(ne=[]);for(var Ke=this[We],it=-1,pt=Ke.length;++it<pt;)(ye=Ke[it])&&(le=U.call(ye,ye.__data__,it,We))?("__data__"in ye&&(le.__data__=ye.__data__),Al(le,it,Re,ke,ye[Re][ke]),ne.push(le)):ne.push(null)}return ma(He,Re,ke)},Nr.selectAll=function(U){var ne,le,ye,ke,Re,He=this.id,We=this.namespace,Xe=[];U=Se(U);for(var Ke=-1,it=this.length;++Ke<it;)for(var pt=this[Ke],mt=-1,Ot=pt.length;++mt<Ot;)if(ye=pt[mt]){Re=ye[We][He],le=U.call(ye,ye.__data__,mt,Ke),Xe.push(ne=[]);for(var Rt=-1,Pt=le.length;++Rt<Pt;)(ke=le[Rt])&&Al(ke,Rt,We,He,Re),ne.push(ke)}return ma(Xe,We,He)},Nr.filter=function(U){var ne,le,ye=[];typeof U!="function"&&(U=ve(U));for(var ke=0,Re=this.length;ke<Re;ke++){ye.push(ne=[]);for(var He,We=0,Xe=(He=this[ke]).length;We<Xe;We++)(le=He[We])&&U.call(le,le.__data__,We,ke)&&ne.push(le)}return ma(ye,this.namespace,this.id)},Nr.tween=function(U,ne){var le=this.id,ye=this.namespace;return arguments.length<2?this.node()[ye][le].tween.get(U):Ae(this,ne==null?function(ke){ke[ye][le].tween.remove(U)}:function(ke){ke[ye][le].tween.set(U,ne)})},Nr.attr=function(U,ne){if(arguments.length<2){for(ne in U)this.attr(ne,U[ne]);return this}var le=U=="transform"?_s:Bo,ye=i.ns.qualify(U);function ke(){this.removeAttribute(ye)}function Re(){this.removeAttributeNS(ye.space,ye.local)}return qo(this,"attr."+U,ne,ye.local?function(He){return He==null?Re:(He+="",function(){var We,Xe=this.getAttributeNS(ye.space,ye.local);return Xe!==He&&(We=le(Xe,He),function(Ke){this.setAttributeNS(ye.space,ye.local,We(Ke))})})}:function(He){return He==null?ke:(He+="",function(){var We,Xe=this.getAttribute(ye);return Xe!==He&&(We=le(Xe,He),function(Ke){this.setAttribute(ye,We(Ke))})})})},Nr.attrTween=function(U,ne){var le=i.ns.qualify(U);return this.tween("attr."+U,le.local?function(ye,ke){var Re=ne.call(this,ye,ke,this.getAttributeNS(le.space,le.local));return Re&&function(He){this.setAttributeNS(le.space,le.local,Re(He))}}:function(ye,ke){var Re=ne.call(this,ye,ke,this.getAttribute(le));return Re&&function(He){this.setAttribute(le,Re(He))}})},Nr.style=function(U,ne,le){var ye=arguments.length;if(ye<3){if(typeof U!="string"){for(le in ye<2&&(ne=""),U)this.style(le,U[le],ne);return this}le=""}function ke(){this.style.removeProperty(U)}return qo(this,"style."+U,ne,function(Re){return Re==null?ke:(Re+="",function(){var He,We=t(this).getComputedStyle(this,null).getPropertyValue(U);return We!==Re&&(He=Bo(We,Re),function(Xe){this.style.setProperty(U,He(Xe),le)})})})},Nr.styleTween=function(U,ne,le){return arguments.length<3&&(le=""),this.tween("style."+U,function(ye,ke){var Re=ne.call(this,ye,ke,t(this).getComputedStyle(this,null).getPropertyValue(U));return Re&&function(He){this.style.setProperty(U,Re(He),le)}})},Nr.text=function(U){return qo(this,"text",U,Ga)},Nr.remove=function(){var U=this.namespace;return this.each("end.transition",function(){var ne;this[U].count<2&&(ne=this.parentNode)&&ne.removeChild(this)})},Nr.ease=function(U){var ne=this.id,le=this.namespace;return arguments.length<1?this.node()[le][ne].ease:(typeof U!="function"&&(U=i.ease.apply(i,arguments)),Ae(this,function(ye){ye[le][ne].ease=U}))},Nr.delay=function(U){var ne=this.id,le=this.namespace;return arguments.length<1?this.node()[le][ne].delay:Ae(this,typeof U=="function"?function(ye,ke,Re){ye[le][ne].delay=+U.call(ye,ye.__data__,ke,Re)}:(U=+U,function(ye){ye[le][ne].delay=U}))},Nr.duration=function(U){var ne=this.id,le=this.namespace;return arguments.length<1?this.node()[le][ne].duration:Ae(this,typeof U=="function"?function(ye,ke,Re){ye[le][ne].duration=Math.max(1,U.call(ye,ye.__data__,ke,Re))}:(U=Math.max(1,U),function(ye){ye[le][ne].duration=U}))},Nr.each=function(U,ne){var le=this.id,ye=this.namespace;if(arguments.length<2){var ke=Rs,Re=Is;try{Is=le,Ae(this,function(He,We,Xe){Rs=He[ye][le],U.call(He,He.__data__,We,Xe)})}finally{Rs=ke,Is=Re}}else Ae(this,function(He){var We=He[ye][le];(We.event||(We.event=i.dispatch("start","end","interrupt"))).on(U,ne)});return this},Nr.transition=function(){for(var U,ne,le,ye=this.id,ke=++Qi,Re=this.namespace,He=[],We=0,Xe=this.length;We<Xe;We++){He.push(U=[]);for(var Ke,it=0,pt=(Ke=this[We]).length;it<pt;it++)(ne=Ke[it])&&Al(ne,it,Re,ke,{time:(le=ne[Re][ye]).time,ease:le.ease,delay:le.delay+le.duration,duration:le.duration}),U.push(ne)}return ma(He,Re,ke)},i.svg.axis=function(){var U,ne=i.scale.linear(),le=ol,ye=6,ke=6,Re=3,He=[10],We=null;function Xe(Ke){Ke.each(function(){var it,pt=i.select(this),mt=this.__chart__||ne,Ot=this.__chart__=ne.copy(),Rt=We??(Ot.ticks?Ot.ticks.apply(Ot,He):Ot.domain()),Pt=U??(Ot.tickFormat?Ot.tickFormat.apply(Ot,He):D),Vt=pt.selectAll(".tick").data(Rt,Ot),It=Vt.enter().insert("g",".domain").attr("class","tick").style("opacity",Tt),on=i.transition(Vt.exit()).style("opacity",Tt).remove(),Kt=i.transition(Vt.order()).style("opacity",1),Zt=Math.max(ye,0)+Re,yn=os(Ot),_n=pt.selectAll(".domain").data([0]),Un=(_n.enter().append("path").attr("class","domain"),i.transition(_n));It.append("line"),It.append("text");var Vn,Zn,Qn,pr,cr=It.select("line"),mr=Kt.select("line"),Ar=Vt.select("text").text(Pt),Br=It.select("text"),qn=Kt.select("text"),ur=le==="top"||le==="left"?-1:1;if(le==="bottom"||le==="top"?(it=N,Vn="x",Qn="y",Zn="x2",pr="y2",Ar.attr("dy",ur<0?"0em":".71em").style("text-anchor","middle"),Un.attr("d","M"+yn[0]+","+ur*ke+"V0H"+yn[1]+"V"+ur*ke)):(it=q,Vn="y",Qn="x",Zn="y2",pr="x2",Ar.attr("dy",".32em").style("text-anchor",ur<0?"end":"start"),Un.attr("d","M"+ur*ke+","+yn[0]+"H0V"+yn[1]+"H"+ur*ke)),cr.attr(pr,ur*ye),Br.attr(Qn,ur*Zt),mr.attr(Zn,0).attr(pr,ur*ye),qn.attr(Vn,0).attr(Qn,ur*Zt),Ot.rangeBand){var yr=Ot,Mr=yr.rangeBand()/2;mt=Ot=function(Rr){return yr(Rr)+Mr}}else mt.rangeBand?mt=Ot:on.call(it,Ot,mt);It.call(it,mt,Ot),Kt.call(it,Ot,Ot)})}return Xe.scale=function(Ke){return arguments.length?(ne=Ke,Xe):ne},Xe.orient=function(Ke){return arguments.length?(le=Ke in us?Ke+"":ol,Xe):le},Xe.ticks=function(){return arguments.length?(He=y(arguments),Xe):He},Xe.tickValues=function(Ke){return arguments.length?(We=Ke,Xe):We},Xe.tickFormat=function(Ke){return arguments.length?(U=Ke,Xe):U},Xe.tickSize=function(Ke){var it=arguments.length;return it?(ye=+Ke,ke=+arguments[it-1],Xe):ye},Xe.innerTickSize=function(Ke){return arguments.length?(ye=+Ke,Xe):ye},Xe.outerTickSize=function(Ke){return arguments.length?(ke=+Ke,Xe):ke},Xe.tickPadding=function(Ke){return arguments.length?(Re=+Ke,Xe):Re},Xe.tickSubdivide=function(){return arguments.length&&Xe},Xe};var ol="bottom",us={top:1,right:1,bottom:1,left:1};function N(U,ne,le){U.attr("transform",function(ye){var ke=ne(ye);return"translate("+(isFinite(ke)?ke:le(ye))+",0)"})}function q(U,ne,le){U.attr("transform",function(ye){var ke=ne(ye);return"translate(0,"+(isFinite(ke)?ke:le(ye))+")"})}i.svg.brush=function(){var U,ne,le=X(it,"brushstart","brush","brushend"),ye=null,ke=null,Re=[0,0],He=[0,0],We=!0,Xe=!0,Ke=Q[0];function it(Pt){Pt.each(function(){var Vt=i.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Rt).on("touchstart.brush",Rt),It=Vt.selectAll(".background").data([0]);It.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Vt.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var on=Vt.selectAll(".resize").data(Ke,D);on.exit().remove(),on.enter().append("g").attr("class",function(_n){return"resize "+_n}).style("cursor",function(_n){return H[_n]}).append("rect").attr("x",function(_n){return/[ew]$/.test(_n)?-3:null}).attr("y",function(_n){return/^[ns]/.test(_n)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),on.style("display",it.empty()?"none":null);var Kt,Zt=i.transition(Vt),yn=i.transition(It);ye&&(Kt=os(ye),yn.attr("x",Kt[0]).attr("width",Kt[1]-Kt[0]),mt(Zt)),ke&&(Kt=os(ke),yn.attr("y",Kt[0]).attr("height",Kt[1]-Kt[0]),Ot(Zt)),pt(Zt)})}function pt(Pt){Pt.selectAll(".resize").attr("transform",function(Vt){return"translate("+Re[+/e$/.test(Vt)]+","+He[+/^s/.test(Vt)]+")"})}function mt(Pt){Pt.select(".extent").attr("x",Re[0]),Pt.selectAll(".extent,.n>rect,.s>rect").attr("width",Re[1]-Re[0])}function Ot(Pt){Pt.select(".extent").attr("y",He[0]),Pt.selectAll(".extent,.e>rect,.w>rect").attr("height",He[1]-He[0])}function Rt(){var Pt,Vt,It=this,on=i.select(i.event.target),Kt=le.of(It,arguments),Zt=i.select(It),yn=on.datum(),_n=!/^(n|s)$/.test(yn)&&ye,Un=!/^(e|w)$/.test(yn)&&ke,Vn=on.classed("extent"),Zn=bt(It),Qn=i.mouse(It),pr=i.select(t(It)).on("keydown.brush",function(){i.event.keyCode==32&&(Vn||(Pt=null,Qn[0]-=Re[1],Qn[1]-=He[1],Vn=2),te())}).on("keyup.brush",function(){i.event.keyCode==32&&Vn==2&&(Qn[0]+=Re[1],Qn[1]+=He[1],Vn=0,te())});if(i.event.changedTouches?pr.on("touchmove.brush",Ar).on("touchend.brush",qn):pr.on("mousemove.brush",Ar).on("mouseup.brush",qn),Zt.interrupt().selectAll("*").interrupt(),Vn)Qn[0]=Re[0]-Qn[0],Qn[1]=He[0]-Qn[1];else if(yn){var cr=+/w$/.test(yn),mr=+/^n/.test(yn);Vt=[Re[1-cr]-Qn[0],He[1-mr]-Qn[1]],Qn[0]=Re[cr],Qn[1]=He[mr]}else i.event.altKey&&(Pt=Qn.slice());function Ar(){var ur=i.mouse(It),yr=!1;Vt&&(ur[0]+=Vt[0],ur[1]+=Vt[1]),Vn||(i.event.altKey?(Pt||(Pt=[(Re[0]+Re[1])/2,(He[0]+He[1])/2]),Qn[0]=Re[+(ur[0]<Pt[0])],Qn[1]=He[+(ur[1]<Pt[1])]):Pt=null),_n&&Br(ur,ye,0)&&(mt(Zt),yr=!0),Un&&Br(ur,ke,1)&&(Ot(Zt),yr=!0),yr&&(pt(Zt),Kt({type:"brush",mode:Vn?"move":"resize"}))}function Br(ur,yr,Mr){var Rr,Vr,$r=os(yr),ai=$r[0],bi=$r[1],_i=Qn[Mr],oi=Mr?He:Re,Fi=oi[1]-oi[0];if(Vn&&(ai-=_i,bi-=Fi+_i),Rr=(Mr?Xe:We)?Math.max(ai,Math.min(bi,ur[Mr])):ur[Mr],Vn?Vr=(Rr+=_i)+Fi:(Pt&&(_i=Math.max(ai,Math.min(bi,2*Pt[Mr]-Rr))),_i<Rr?(Vr=Rr,Rr=_i):Vr=_i),oi[0]!=Rr||oi[1]!=Vr)return Mr?ne=null:U=null,oi[0]=Rr,oi[1]=Vr,!0}function qn(){Ar(),Zt.style("pointer-events","all").selectAll(".resize").style("display",it.empty()?"none":null),i.select("body").style("cursor",null),pr.on("mousemove.brush",null).on("mouseup.brush",null).on("touchmove.brush",null).on("touchend.brush",null).on("keydown.brush",null).on("keyup.brush",null),Zn(),Kt({type:"brushend"})}Zt.style("pointer-events","none").selectAll(".resize").style("display",null),i.select("body").style("cursor",on.style("cursor")),Kt({type:"brushstart"}),Ar()}return it.event=function(Pt){Pt.each(function(){var Vt=le.of(this,arguments),It={x:Re,y:He,i:U,j:ne},on=this.__chart__||It;this.__chart__=It,Is?i.select(this).transition().each("start.brush",function(){U=on.i,ne=on.j,Re=on.x,He=on.y,Vt({type:"brushstart"})}).tween("brush:brush",function(){var Kt=qi(Re,It.x),Zt=qi(He,It.y);return U=ne=null,function(yn){Re=It.x=Kt(yn),He=It.y=Zt(yn),Vt({type:"brush",mode:"resize"})}}).each("end.brush",function(){U=It.i,ne=It.j,Vt({type:"brush",mode:"resize"}),Vt({type:"brushend"})}):(Vt({type:"brushstart"}),Vt({type:"brush",mode:"resize"}),Vt({type:"brushend"}))})},it.x=function(Pt){return arguments.length?(Ke=Q[!(ye=Pt)<<1|!ke],it):ye},it.y=function(Pt){return arguments.length?(Ke=Q[!ye<<1|!(ke=Pt)],it):ke},it.clamp=function(Pt){return arguments.length?(ye&&ke?(We=!!Pt[0],Xe=!!Pt[1]):ye?We=!!Pt:ke&&(Xe=!!Pt),it):ye&&ke?[We,Xe]:ye?We:ke?Xe:null},it.extent=function(Pt){var Vt,It,on,Kt,Zt;return arguments.length?(ye&&(Vt=Pt[0],It=Pt[1],ke&&(Vt=Vt[0],It=It[0]),U=[Vt,It],ye.invert&&(Vt=ye(Vt),It=ye(It)),It<Vt&&(Zt=Vt,Vt=It,It=Zt),Vt==Re[0]&&It==Re[1]||(Re=[Vt,It])),ke&&(on=Pt[0],Kt=Pt[1],ye&&(on=on[1],Kt=Kt[1]),ne=[on,Kt],ke.invert&&(on=ke(on),Kt=ke(Kt)),Kt<on&&(Zt=on,on=Kt,Kt=Zt),on==He[0]&&Kt==He[1]||(He=[on,Kt])),it):(ye&&(U?(Vt=U[0],It=U[1]):(Vt=Re[0],It=Re[1],ye.invert&&(Vt=ye.invert(Vt),It=ye.invert(It)),It<Vt&&(Zt=Vt,Vt=It,It=Zt))),ke&&(ne?(on=ne[0],Kt=ne[1]):(on=He[0],Kt=He[1],ke.invert&&(on=ke.invert(on),Kt=ke.invert(Kt)),Kt<on&&(Zt=on,on=Kt,Kt=Zt))),ye&&ke?[[Vt,on],[It,Kt]]:ye?[Vt,It]:ke&&[on,Kt])},it.clear=function(){return it.empty()||(Re=[0,0],He=[0,0],U=ne=null),it},it.empty=function(){return!!ye&&Re[0]==Re[1]||!!ke&&He[0]==He[1]},i.rebind(it,le,"on")};var H={n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Q=[["n","e","s","w","nw","ne","se","sw"],["e","w"],["n","s"],[]];function ge(U){return JSON.parse(U.responseText)}function Le(U){var ne=h.createRange();return ne.selectNode(h.body),ne.createContextualFragment(U.responseText)}i.text=er(function(U){return U.responseText}),i.json=function(U,ne){return ir(U,"application/json",ge,ne)},i.html=function(U,ne){return ir(U,"text/html",Le,ne)},i.xml=er(function(U){return U.responseXML}),(k=typeof(w=i)=="function"?w.call(E,e,E,R):w)===void 0||(R.exports=k)}).apply(self)},88294:function(R,E,e){R.exports=e(62849)},62849:function(R,E,e){var w=e(91358),k=e(53435),i=e(18863),_=e(21527),y=e(71299),h=e(46775),l=e(30120),t=e(64941),o=e(90660),r=e(27084);function n(a,s){for(var u=s[0],p=s[1],c=1/(s[2]-u),b=1/(s[3]-p),g=new Array(a.length),f=0,v=a.length/2;f<v;f++)g[2*f]=k((a[2*f]-u)*c,0,1),g[2*f+1]=k((a[2*f+1]-p)*b,0,1);return g}R.exports=function(a,s){s||(s={}),a=l(a,"float64"),s=y(s,{bounds:"range bounds dataBox databox",maxDepth:"depth maxDepth maxdepth level maxLevel maxlevel levels",dtype:"type dtype format out dst output destination"});var u=h(s.maxDepth,255),p=h(s.bounds,_(a,2));p[0]===p[2]&&p[2]++,p[1]===p[3]&&p[3]++;var c,b=n(a,p),g=a.length>>>1;s.dtype||(s.dtype="array"),typeof s.dtype=="string"?c=new(o(s.dtype))(g):s.dtype&&(c=s.dtype,Array.isArray(c)&&(c.length=g));for(var f=0;f<g;++f)c[f]=f;var v=[],m=[],x=[],T=[];(function B(Y,D,G,V,j,W){if(!V.length)return null;var Z=v[j]||(v[j]=[]),ie=x[j]||(x[j]=[]),te=m[j]||(m[j]=[]),J=Z.length;if(++j>u||W>1073741824){for(var X=0;X<V.length;X++)Z.push(V[X]),ie.push(W),te.push(null,null,null,null);return J}if(Z.push(V[0]),ie.push(W),V.length<=1)return te.push(null,null,null,null),J;for(var ee=.5*G,re=Y+ee,oe=D+ee,ue=[],ce=[],de=[],me=[],_e=1,Se=V.length;_e<Se;_e++){var we=V[_e],xe=b[2*we],De=b[2*we+1];xe<re?De<oe?ue.push(we):ce.push(we):De<oe?de.push(we):me.push(we)}return W<<=2,te.push(B(Y,D,ee,ue,j,W),B(Y,oe,ee,ce,j,W+1),B(re,D,ee,de,j,W+2),B(re,oe,ee,me,j,W+3)),J})(0,0,1,c,0,1);for(var d=0,M=0;M<v.length;M++){var A=v[M];if(c.set)c.set(A,d);else for(var C=0,P=A.length;C<P;C++)c[C+d]=A[C];var O=d+v[M].length;T[M]=[d,O],d=O}return c.range=function(){for(var B,Y=[],D=arguments.length;D--;)Y[D]=arguments[D];if(t(Y[Y.length-1])){var G=Y.pop();Y.length||G.x==null&&G.l==null&&G.left==null||(Y=[G],B={}),B=y(G,{level:"level maxLevel",d:"d diam diameter r radius px pxSize pixel pixelSize maxD size minSize",lod:"lod details ranges offsets"})}else B={};Y.length||(Y=p);var V,j=i.apply(void 0,Y),W=[Math.min(j.x,j.x+j.width),Math.min(j.y,j.y+j.height),Math.max(j.x,j.x+j.width),Math.max(j.y,j.y+j.height)],Z=W[0],ie=W[1],te=W[2],J=W[3],X=n([Z,ie,te,J],p),ee=X[0],re=X[1],oe=X[2],ue=X[3],ce=h(B.level,v.length);if(B.d!=null&&(typeof B.d=="number"?V=[B.d,B.d]:B.d.length&&(V=B.d),ce=Math.min(Math.max(Math.ceil(-r(Math.abs(V[0])/(p[2]-p[0]))),Math.ceil(-r(Math.abs(V[1])/(p[3]-p[1])))),ce)),ce=Math.min(ce,v.length),B.lod)return function(me,_e,Se,we,xe){for(var De=[],Ee=0;Ee<xe;Ee++){var Me=x[Ee],he=T[Ee][0],fe=z(me,_e,Ee),ae=z(Se,we,Ee),be=w.ge(Me,fe),Ie=w.gt(Me,ae,be,Me.length-1);De[Ee]=[be+he,Ie+he]}return De}(ee,re,oe,ue,ce);var de=[];return function me(_e,Se,we,xe,De,Ee){if(De!==null&&Ee!==null&&!(ee>_e+we||re>Se+we||oe<_e||ue<Se||xe>=ce||De===Ee)){var Me=v[xe];Ee===void 0&&(Ee=Me.length);for(var he=De;he<Ee;he++){var fe=Me[he],ae=a[2*fe],be=a[2*fe+1];ae>=Z&&ae<=te&&be>=ie&&be<=J&&de.push(fe)}var Ie=m[xe],Te=Ie[4*De+0],Ne=Ie[4*De+1],qe=Ie[4*De+2],ve=Ie[4*De+3],Ce=function(Ue,Ve){for(var Ye=null,$e=0;Ye===null;)if(Ye=Ue[4*Ve+$e],++$e>Ue.length)return null;return Ye}(Ie,De+1),Ae=.5*we,ze=xe+1;me(_e,Se,Ae,ze,Te,Ne||qe||ve||Ce),me(_e,Se+Ae,Ae,ze,Ne,qe||ve||Ce),me(_e+Ae,Se,Ae,ze,qe,ve||Ce),me(_e+Ae,Se+Ae,Ae,ze,ve,Ce)}}(0,0,1,0,0,1),de},c;function z(B,Y,D){for(var G=1,V=.5,j=.5,W=.5,Z=0;Z<D;Z++)G<<=2,G+=B<V?Y<j?0:1:Y<j?2:3,W*=.5,V+=B<V?-W:W,j+=Y<j?-W:W;return G}}},30774:function(R,E,e){Object.defineProperty(E,"__esModule",{value:!0});var w=e(60302),k=6378137;function i(h){var l=0;if(h&&h.length>0){l+=Math.abs(_(h[0]));for(var t=1;t<h.length;t++)l-=Math.abs(_(h[t]))}return l}function _(h){var l,t,o,r,n,a,s=0,u=h.length;if(u>2){for(a=0;a<u;a++)a===u-2?(o=u-2,r=u-1,n=0):a===u-1?(o=u-1,r=0,n=1):(o=a,r=a+1,n=a+2),l=h[o],t=h[r],s+=(y(h[n][0])-y(l[0]))*Math.sin(y(t[1]));s=s*k*k/2}return s}function y(h){return h*Math.PI/180}E.default=function(h){return w.geomReduce(h,function(l,t){return l+function(o){var r,n=0;switch(o.type){case"Polygon":return i(o.coordinates);case"MultiPolygon":for(r=0;r<o.coordinates.length;r++)n+=i(o.coordinates[r]);return n;case"Point":case"MultiPoint":case"LineString":case"MultiLineString":return 0}return 0}(t)},0)}},23132:function(R,E){function e(a,s,u){u===void 0&&(u={});var p={type:"Feature"};return(u.id===0||u.id)&&(p.id=u.id),u.bbox&&(p.bbox=u.bbox),p.properties=s||{},p.geometry=a,p}function w(a,s,u){if(u===void 0&&(u={}),!a)throw new Error("coordinates is required");if(!Array.isArray(a))throw new Error("coordinates must be an Array");if(a.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!n(a[0])||!n(a[1]))throw new Error("coordinates must contain numbers");return e({type:"Point",coordinates:a},s,u)}function k(a,s,u){u===void 0&&(u={});for(var p=0,c=a;p<c.length;p++){var b=c[p];if(b.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");for(var g=0;g<b[b.length-1].length;g++)if(b[b.length-1][g]!==b[0][g])throw new Error("First and last Position are not equivalent.")}return e({type:"Polygon",coordinates:a},s,u)}function i(a,s,u){if(u===void 0&&(u={}),a.length<2)throw new Error("coordinates must be an array of two or more positions");return e({type:"LineString",coordinates:a},s,u)}function _(a,s){s===void 0&&(s={});var u={type:"FeatureCollection"};return s.id&&(u.id=s.id),s.bbox&&(u.bbox=s.bbox),u.features=a,u}function y(a,s,u){return u===void 0&&(u={}),e({type:"MultiLineString",coordinates:a},s,u)}function h(a,s,u){return u===void 0&&(u={}),e({type:"MultiPoint",coordinates:a},s,u)}function l(a,s,u){return u===void 0&&(u={}),e({type:"MultiPolygon",coordinates:a},s,u)}function t(a,s){s===void 0&&(s="kilometers");var u=E.factors[s];if(!u)throw new Error(s+" units is invalid");return a*u}function o(a,s){s===void 0&&(s="kilometers");var u=E.factors[s];if(!u)throw new Error(s+" units is invalid");return a/u}function r(a){return a%(2*Math.PI)*180/Math.PI}function n(a){return!isNaN(a)&&a!==null&&!Array.isArray(a)}Object.defineProperty(E,"__esModule",{value:!0}),E.earthRadius=63710088e-1,E.factors={centimeters:100*E.earthRadius,centimetres:100*E.earthRadius,degrees:E.earthRadius/111325,feet:3.28084*E.earthRadius,inches:39.37*E.earthRadius,kilometers:E.earthRadius/1e3,kilometres:E.earthRadius/1e3,meters:E.earthRadius,metres:E.earthRadius,miles:E.earthRadius/1609.344,millimeters:1e3*E.earthRadius,millimetres:1e3*E.earthRadius,nauticalmiles:E.earthRadius/1852,radians:1,yards:1.0936*E.earthRadius},E.unitsFactors={centimeters:100,centimetres:100,degrees:8982708286548395e-21,feet:3.28084,inches:39.37,kilometers:.001,kilometres:.001,meters:1,metres:1,miles:.0006213711922373339,millimeters:1e3,millimetres:1e3,nauticalmiles:.0005399568034557236,radians:1/E.earthRadius,yards:1.0936133},E.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},E.feature=e,E.geometry=function(a,s,u){switch(a){case"Point":return w(s).geometry;case"LineString":return i(s).geometry;case"Polygon":return k(s).geometry;case"MultiPoint":return h(s).geometry;case"MultiLineString":return y(s).geometry;case"MultiPolygon":return l(s).geometry;default:throw new Error(a+" is invalid")}},E.point=w,E.points=function(a,s,u){return u===void 0&&(u={}),_(a.map(function(p){return w(p,s)}),u)},E.polygon=k,E.polygons=function(a,s,u){return u===void 0&&(u={}),_(a.map(function(p){return k(p,s)}),u)},E.lineString=i,E.lineStrings=function(a,s,u){return u===void 0&&(u={}),_(a.map(function(p){return i(p,s)}),u)},E.featureCollection=_,E.multiLineString=y,E.multiPoint=h,E.multiPolygon=l,E.geometryCollection=function(a,s,u){return u===void 0&&(u={}),e({type:"GeometryCollection",geometries:a},s,u)},E.round=function(a,s){if(s===void 0&&(s=0),s&&!(s>=0))throw new Error("precision must be a positive number");var u=Math.pow(10,s||0);return Math.round(a*u)/u},E.radiansToLength=t,E.lengthToRadians=o,E.lengthToDegrees=function(a,s){return r(o(a,s))},E.bearingToAzimuth=function(a){var s=a%360;return s<0&&(s+=360),s},E.radiansToDegrees=r,E.degreesToRadians=function(a){return a%360*Math.PI/180},E.convertLength=function(a,s,u){if(s===void 0&&(s="kilometers"),u===void 0&&(u="kilometers"),!(a>=0))throw new Error("length must be a positive number");return t(o(a,s),u)},E.convertArea=function(a,s,u){if(s===void 0&&(s="meters"),u===void 0&&(u="kilometers"),!(a>=0))throw new Error("area must be a positive number");var p=E.areaFactors[s];if(!p)throw new Error("invalid original units");var c=E.areaFactors[u];if(!c)throw new Error("invalid final units");return a/p*c},E.isNumber=n,E.isObject=function(a){return!!a&&a.constructor===Object},E.validateBBox=function(a){if(!a)throw new Error("bbox is required");if(!Array.isArray(a))throw new Error("bbox must be an Array");if(a.length!==4&&a.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");a.forEach(function(s){if(!n(s))throw new Error("bbox must only contain numbers")})},E.validateId=function(a){if(!a)throw new Error("id is required");if(["string","number"].indexOf(typeof a)===-1)throw new Error("id must be a number or a string")}},60302:function(R,E,e){Object.defineProperty(E,"__esModule",{value:!0});var w=e(23132);function k(o,r,n){if(o!==null)for(var a,s,u,p,c,b,g,f,v=0,m=0,x=o.type,T=x==="FeatureCollection",d=x==="Feature",M=T?o.features.length:1,A=0;A<M;A++){c=(f=!!(g=T?o.features[A].geometry:d?o.geometry:o)&&g.type==="GeometryCollection")?g.geometries.length:1;for(var C=0;C<c;C++){var P=0,O=0;if((p=f?g.geometries[C]:g)!==null){b=p.coordinates;var z=p.type;switch(v=!n||z!=="Polygon"&&z!=="MultiPolygon"?0:1,z){case null:break;case"Point":if(r(b,m,A,P,O)===!1)return!1;m++,P++;break;case"LineString":case"MultiPoint":for(a=0;a<b.length;a++){if(r(b[a],m,A,P,O)===!1)return!1;m++,z==="MultiPoint"&&P++}z==="LineString"&&P++;break;case"Polygon":case"MultiLineString":for(a=0;a<b.length;a++){for(s=0;s<b[a].length-v;s++){if(r(b[a][s],m,A,P,O)===!1)return!1;m++}z==="MultiLineString"&&P++,z==="Polygon"&&O++}z==="Polygon"&&P++;break;case"MultiPolygon":for(a=0;a<b.length;a++){for(O=0,s=0;s<b[a].length;s++){for(u=0;u<b[a][s].length-v;u++){if(r(b[a][s][u],m,A,P,O)===!1)return!1;m++}O++}P++}break;case"GeometryCollection":for(a=0;a<p.geometries.length;a++)if(k(p.geometries[a],r,n)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function i(o,r){var n;switch(o.type){case"FeatureCollection":for(n=0;n<o.features.length&&r(o.features[n].properties,n)!==!1;n++);break;case"Feature":r(o.properties,0)}}function _(o,r){if(o.type==="Feature")r(o,0);else if(o.type==="FeatureCollection")for(var n=0;n<o.features.length&&r(o.features[n],n)!==!1;n++);}function y(o,r){var n,a,s,u,p,c,b,g,f,v,m=0,x=o.type==="FeatureCollection",T=o.type==="Feature",d=x?o.features.length:1;for(n=0;n<d;n++){for(c=x?o.features[n].geometry:T?o.geometry:o,g=x?o.features[n].properties:T?o.properties:{},f=x?o.features[n].bbox:T?o.bbox:void 0,v=x?o.features[n].id:T?o.id:void 0,p=(b=!!c&&c.type==="GeometryCollection")?c.geometries.length:1,s=0;s<p;s++)if((u=b?c.geometries[s]:c)!==null)switch(u.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":if(r(u,m,g,f,v)===!1)return!1;break;case"GeometryCollection":for(a=0;a<u.geometries.length;a++)if(r(u.geometries[a],m,g,f,v)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}else if(r(null,m,g,f,v)===!1)return!1;m++}}function h(o,r){y(o,function(n,a,s,u,p){var c,b=n===null?null:n.type;switch(b){case null:case"Point":case"LineString":case"Polygon":return r(w.feature(n,s,{bbox:u,id:p}),a,0)!==!1&&void 0}switch(b){case"MultiPoint":c="Point";break;case"MultiLineString":c="LineString";break;case"MultiPolygon":c="Polygon"}for(var g=0;g<n.coordinates.length;g++){var f={type:c,coordinates:n.coordinates[g]};if(r(w.feature(f,s),a,g)===!1)return!1}})}function l(o,r){h(o,function(n,a,s){var u=0;if(n.geometry){var p=n.geometry.type;if(p!=="Point"&&p!=="MultiPoint"){var c,b=0,g=0,f=0;return k(n,function(v,m,x,T,d){if(c===void 0||a>b||T>g||d>f)return c=v,b=a,g=T,f=d,void(u=0);var M=w.lineString([c,v],n.properties);if(r(M,a,s,d,u)===!1)return!1;u++,c=v})!==!1&&void 0}}})}function t(o,r){if(!o)throw new Error("geojson is required");h(o,function(n,a,s){if(n.geometry!==null){var u=n.geometry.type,p=n.geometry.coordinates;switch(u){case"LineString":if(r(n,a,s,0,0)===!1)return!1;break;case"Polygon":for(var c=0;c<p.length;c++)if(r(w.lineString(p[c],n.properties),a,s,c)===!1)return!1}}})}E.coordEach=k,E.coordReduce=function(o,r,n,a){var s=n;return k(o,function(u,p,c,b,g){s=p===0&&n===void 0?u:r(s,u,p,c,b,g)},a),s},E.propEach=i,E.propReduce=function(o,r,n){var a=n;return i(o,function(s,u){a=u===0&&n===void 0?s:r(a,s,u)}),a},E.featureEach=_,E.featureReduce=function(o,r,n){var a=n;return _(o,function(s,u){a=u===0&&n===void 0?s:r(a,s,u)}),a},E.coordAll=function(o){var r=[];return k(o,function(n){r.push(n)}),r},E.geomEach=y,E.geomReduce=function(o,r,n){var a=n;return y(o,function(s,u,p,c,b){a=u===0&&n===void 0?s:r(a,s,u,p,c,b)}),a},E.flattenEach=h,E.flattenReduce=function(o,r,n){var a=n;return h(o,function(s,u,p){a=u===0&&p===0&&n===void 0?s:r(a,s,u,p)}),a},E.segmentEach=l,E.segmentReduce=function(o,r,n){var a=n,s=!1;return l(o,function(u,p,c,b,g){a=s===!1&&n===void 0?u:r(a,u,p,c,b,g),s=!0}),a},E.lineEach=t,E.lineReduce=function(o,r,n){var a=n;return t(o,function(s,u,p,c){a=u===0&&n===void 0?s:r(a,s,u,p,c)}),a},E.findSegment=function(o,r){if(r=r||{},!w.isObject(r))throw new Error("options is invalid");var n,a=r.featureIndex||0,s=r.multiFeatureIndex||0,u=r.geometryIndex||0,p=r.segmentIndex||0,c=r.properties;switch(o.type){case"FeatureCollection":a<0&&(a=o.features.length+a),c=c||o.features[a].properties,n=o.features[a].geometry;break;case"Feature":c=c||o.properties,n=o.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":n=o;break;default:throw new Error("geojson is invalid")}if(n===null)return null;var b=n.coordinates;switch(n.type){case"Point":case"MultiPoint":return null;case"LineString":return p<0&&(p=b.length+p-1),w.lineString([b[p],b[p+1]],c,r);case"Polygon":return u<0&&(u=b.length+u),p<0&&(p=b[u].length+p-1),w.lineString([b[u][p],b[u][p+1]],c,r);case"MultiLineString":return s<0&&(s=b.length+s),p<0&&(p=b[s].length+p-1),w.lineString([b[s][p],b[s][p+1]],c,r);case"MultiPolygon":return s<0&&(s=b.length+s),u<0&&(u=b[s].length+u),p<0&&(p=b[s][u].length-p-1),w.lineString([b[s][u][p],b[s][u][p+1]],c,r)}throw new Error("geojson is invalid")},E.findPoint=function(o,r){if(r=r||{},!w.isObject(r))throw new Error("options is invalid");var n,a=r.featureIndex||0,s=r.multiFeatureIndex||0,u=r.geometryIndex||0,p=r.coordIndex||0,c=r.properties;switch(o.type){case"FeatureCollection":a<0&&(a=o.features.length+a),c=c||o.features[a].properties,n=o.features[a].geometry;break;case"Feature":c=c||o.properties,n=o.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":n=o;break;default:throw new Error("geojson is invalid")}if(n===null)return null;var b=n.coordinates;switch(n.type){case"Point":return w.point(b,c,r);case"MultiPoint":return s<0&&(s=b.length+s),w.point(b[s],c,r);case"LineString":return p<0&&(p=b.length+p),w.point(b[p],c,r);case"Polygon":return u<0&&(u=b.length+u),p<0&&(p=b[u].length+p),w.point(b[u][p],c,r);case"MultiLineString":return s<0&&(s=b.length+s),p<0&&(p=b[s].length+p),w.point(b[s][p],c,r);case"MultiPolygon":return s<0&&(s=b.length+s),u<0&&(u=b[s].length+u),p<0&&(p=b[s][u].length-p),w.point(b[s][u][p],c,r)}throw new Error("geojson is invalid")}},85268:function(R,E,e){Object.defineProperty(E,"__esModule",{value:!0});var w=e(27138);function k(i){var _=[1/0,1/0,-1/0,-1/0];return w.coordEach(i,function(y){_[0]>y[0]&&(_[0]=y[0]),_[1]>y[1]&&(_[1]=y[1]),_[2]<y[0]&&(_[2]=y[0]),_[3]<y[1]&&(_[3]=y[1])}),_}k.default=k,E.default=k},94228:function(R,E){function e(a,s,u){u===void 0&&(u={});var p={type:"Feature"};return(u.id===0||u.id)&&(p.id=u.id),u.bbox&&(p.bbox=u.bbox),p.properties=s||{},p.geometry=a,p}function w(a,s,u){if(u===void 0&&(u={}),!a)throw new Error("coordinates is required");if(!Array.isArray(a))throw new Error("coordinates must be an Array");if(a.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!n(a[0])||!n(a[1]))throw new Error("coordinates must contain numbers");return e({type:"Point",coordinates:a},s,u)}function k(a,s,u){u===void 0&&(u={});for(var p=0,c=a;p<c.length;p++){var b=c[p];if(b.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");for(var g=0;g<b[b.length-1].length;g++)if(b[b.length-1][g]!==b[0][g])throw new Error("First and last Position are not equivalent.")}return e({type:"Polygon",coordinates:a},s,u)}function i(a,s,u){if(u===void 0&&(u={}),a.length<2)throw new Error("coordinates must be an array of two or more positions");return e({type:"LineString",coordinates:a},s,u)}function _(a,s){s===void 0&&(s={});var u={type:"FeatureCollection"};return s.id&&(u.id=s.id),s.bbox&&(u.bbox=s.bbox),u.features=a,u}function y(a,s,u){return u===void 0&&(u={}),e({type:"MultiLineString",coordinates:a},s,u)}function h(a,s,u){return u===void 0&&(u={}),e({type:"MultiPoint",coordinates:a},s,u)}function l(a,s,u){return u===void 0&&(u={}),e({type:"MultiPolygon",coordinates:a},s,u)}function t(a,s){s===void 0&&(s="kilometers");var u=E.factors[s];if(!u)throw new Error(s+" units is invalid");return a*u}function o(a,s){s===void 0&&(s="kilometers");var u=E.factors[s];if(!u)throw new Error(s+" units is invalid");return a/u}function r(a){return a%(2*Math.PI)*180/Math.PI}function n(a){return!isNaN(a)&&a!==null&&!Array.isArray(a)}Object.defineProperty(E,"__esModule",{value:!0}),E.earthRadius=63710088e-1,E.factors={centimeters:100*E.earthRadius,centimetres:100*E.earthRadius,degrees:E.earthRadius/111325,feet:3.28084*E.earthRadius,inches:39.37*E.earthRadius,kilometers:E.earthRadius/1e3,kilometres:E.earthRadius/1e3,meters:E.earthRadius,metres:E.earthRadius,miles:E.earthRadius/1609.344,millimeters:1e3*E.earthRadius,millimetres:1e3*E.earthRadius,nauticalmiles:E.earthRadius/1852,radians:1,yards:1.0936*E.earthRadius},E.unitsFactors={centimeters:100,centimetres:100,degrees:8982708286548395e-21,feet:3.28084,inches:39.37,kilometers:.001,kilometres:.001,meters:1,metres:1,miles:.0006213711922373339,millimeters:1e3,millimetres:1e3,nauticalmiles:.0005399568034557236,radians:1/E.earthRadius,yards:1.0936133},E.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},E.feature=e,E.geometry=function(a,s,u){switch(a){case"Point":return w(s).geometry;case"LineString":return i(s).geometry;case"Polygon":return k(s).geometry;case"MultiPoint":return h(s).geometry;case"MultiLineString":return y(s).geometry;case"MultiPolygon":return l(s).geometry;default:throw new Error(a+" is invalid")}},E.point=w,E.points=function(a,s,u){return u===void 0&&(u={}),_(a.map(function(p){return w(p,s)}),u)},E.polygon=k,E.polygons=function(a,s,u){return u===void 0&&(u={}),_(a.map(function(p){return k(p,s)}),u)},E.lineString=i,E.lineStrings=function(a,s,u){return u===void 0&&(u={}),_(a.map(function(p){return i(p,s)}),u)},E.featureCollection=_,E.multiLineString=y,E.multiPoint=h,E.multiPolygon=l,E.geometryCollection=function(a,s,u){return u===void 0&&(u={}),e({type:"GeometryCollection",geometries:a},s,u)},E.round=function(a,s){if(s===void 0&&(s=0),s&&!(s>=0))throw new Error("precision must be a positive number");var u=Math.pow(10,s||0);return Math.round(a*u)/u},E.radiansToLength=t,E.lengthToRadians=o,E.lengthToDegrees=function(a,s){return r(o(a,s))},E.bearingToAzimuth=function(a){var s=a%360;return s<0&&(s+=360),s},E.radiansToDegrees=r,E.degreesToRadians=function(a){return a%360*Math.PI/180},E.convertLength=function(a,s,u){if(s===void 0&&(s="kilometers"),u===void 0&&(u="kilometers"),!(a>=0))throw new Error("length must be a positive number");return t(o(a,s),u)},E.convertArea=function(a,s,u){if(s===void 0&&(s="meters"),u===void 0&&(u="kilometers"),!(a>=0))throw new Error("area must be a positive number");var p=E.areaFactors[s];if(!p)throw new Error("invalid original units");var c=E.areaFactors[u];if(!c)throw new Error("invalid final units");return a/p*c},E.isNumber=n,E.isObject=function(a){return!!a&&a.constructor===Object},E.validateBBox=function(a){if(!a)throw new Error("bbox is required");if(!Array.isArray(a))throw new Error("bbox must be an Array");if(a.length!==4&&a.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");a.forEach(function(s){if(!n(s))throw new Error("bbox must only contain numbers")})},E.validateId=function(a){if(!a)throw new Error("id is required");if(["string","number"].indexOf(typeof a)===-1)throw new Error("id must be a number or a string")}},27138:function(R,E,e){Object.defineProperty(E,"__esModule",{value:!0});var w=e(94228);function k(o,r,n){if(o!==null)for(var a,s,u,p,c,b,g,f,v=0,m=0,x=o.type,T=x==="FeatureCollection",d=x==="Feature",M=T?o.features.length:1,A=0;A<M;A++){c=(f=!!(g=T?o.features[A].geometry:d?o.geometry:o)&&g.type==="GeometryCollection")?g.geometries.length:1;for(var C=0;C<c;C++){var P=0,O=0;if((p=f?g.geometries[C]:g)!==null){b=p.coordinates;var z=p.type;switch(v=!n||z!=="Polygon"&&z!=="MultiPolygon"?0:1,z){case null:break;case"Point":if(r(b,m,A,P,O)===!1)return!1;m++,P++;break;case"LineString":case"MultiPoint":for(a=0;a<b.length;a++){if(r(b[a],m,A,P,O)===!1)return!1;m++,z==="MultiPoint"&&P++}z==="LineString"&&P++;break;case"Polygon":case"MultiLineString":for(a=0;a<b.length;a++){for(s=0;s<b[a].length-v;s++){if(r(b[a][s],m,A,P,O)===!1)return!1;m++}z==="MultiLineString"&&P++,z==="Polygon"&&O++}z==="Polygon"&&P++;break;case"MultiPolygon":for(a=0;a<b.length;a++){for(O=0,s=0;s<b[a].length;s++){for(u=0;u<b[a][s].length-v;u++){if(r(b[a][s][u],m,A,P,O)===!1)return!1;m++}O++}P++}break;case"GeometryCollection":for(a=0;a<p.geometries.length;a++)if(k(p.geometries[a],r,n)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function i(o,r){var n;switch(o.type){case"FeatureCollection":for(n=0;n<o.features.length&&r(o.features[n].properties,n)!==!1;n++);break;case"Feature":r(o.properties,0)}}function _(o,r){if(o.type==="Feature")r(o,0);else if(o.type==="FeatureCollection")for(var n=0;n<o.features.length&&r(o.features[n],n)!==!1;n++);}function y(o,r){var n,a,s,u,p,c,b,g,f,v,m=0,x=o.type==="FeatureCollection",T=o.type==="Feature",d=x?o.features.length:1;for(n=0;n<d;n++){for(c=x?o.features[n].geometry:T?o.geometry:o,g=x?o.features[n].properties:T?o.properties:{},f=x?o.features[n].bbox:T?o.bbox:void 0,v=x?o.features[n].id:T?o.id:void 0,p=(b=!!c&&c.type==="GeometryCollection")?c.geometries.length:1,s=0;s<p;s++)if((u=b?c.geometries[s]:c)!==null)switch(u.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":if(r(u,m,g,f,v)===!1)return!1;break;case"GeometryCollection":for(a=0;a<u.geometries.length;a++)if(r(u.geometries[a],m,g,f,v)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}else if(r(null,m,g,f,v)===!1)return!1;m++}}function h(o,r){y(o,function(n,a,s,u,p){var c,b=n===null?null:n.type;switch(b){case null:case"Point":case"LineString":case"Polygon":return r(w.feature(n,s,{bbox:u,id:p}),a,0)!==!1&&void 0}switch(b){case"MultiPoint":c="Point";break;case"MultiLineString":c="LineString";break;case"MultiPolygon":c="Polygon"}for(var g=0;g<n.coordinates.length;g++){var f={type:c,coordinates:n.coordinates[g]};if(r(w.feature(f,s),a,g)===!1)return!1}})}function l(o,r){h(o,function(n,a,s){var u=0;if(n.geometry){var p=n.geometry.type;if(p!=="Point"&&p!=="MultiPoint"){var c,b=0,g=0,f=0;return k(n,function(v,m,x,T,d){if(c===void 0||a>b||T>g||d>f)return c=v,b=a,g=T,f=d,void(u=0);var M=w.lineString([c,v],n.properties);if(r(M,a,s,d,u)===!1)return!1;u++,c=v})!==!1&&void 0}}})}function t(o,r){if(!o)throw new Error("geojson is required");h(o,function(n,a,s){if(n.geometry!==null){var u=n.geometry.type,p=n.geometry.coordinates;switch(u){case"LineString":if(r(n,a,s,0,0)===!1)return!1;break;case"Polygon":for(var c=0;c<p.length;c++)if(r(w.lineString(p[c],n.properties),a,s,c)===!1)return!1}}})}E.coordEach=k,E.coordReduce=function(o,r,n,a){var s=n;return k(o,function(u,p,c,b,g){s=p===0&&n===void 0?u:r(s,u,p,c,b,g)},a),s},E.propEach=i,E.propReduce=function(o,r,n){var a=n;return i(o,function(s,u){a=u===0&&n===void 0?s:r(a,s,u)}),a},E.featureEach=_,E.featureReduce=function(o,r,n){var a=n;return _(o,function(s,u){a=u===0&&n===void 0?s:r(a,s,u)}),a},E.coordAll=function(o){var r=[];return k(o,function(n){r.push(n)}),r},E.geomEach=y,E.geomReduce=function(o,r,n){var a=n;return y(o,function(s,u,p,c,b){a=u===0&&n===void 0?s:r(a,s,u,p,c,b)}),a},E.flattenEach=h,E.flattenReduce=function(o,r,n){var a=n;return h(o,function(s,u,p){a=u===0&&p===0&&n===void 0?s:r(a,s,u,p)}),a},E.segmentEach=l,E.segmentReduce=function(o,r,n){var a=n,s=!1;return l(o,function(u,p,c,b,g){a=s===!1&&n===void 0?u:r(a,u,p,c,b,g),s=!0}),a},E.lineEach=t,E.lineReduce=function(o,r,n){var a=n;return t(o,function(s,u,p,c){a=u===0&&n===void 0?s:r(a,s,u,p,c)}),a},E.findSegment=function(o,r){if(r=r||{},!w.isObject(r))throw new Error("options is invalid");var n,a=r.featureIndex||0,s=r.multiFeatureIndex||0,u=r.geometryIndex||0,p=r.segmentIndex||0,c=r.properties;switch(o.type){case"FeatureCollection":a<0&&(a=o.features.length+a),c=c||o.features[a].properties,n=o.features[a].geometry;break;case"Feature":c=c||o.properties,n=o.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":n=o;break;default:throw new Error("geojson is invalid")}if(n===null)return null;var b=n.coordinates;switch(n.type){case"Point":case"MultiPoint":return null;case"LineString":return p<0&&(p=b.length+p-1),w.lineString([b[p],b[p+1]],c,r);case"Polygon":return u<0&&(u=b.length+u),p<0&&(p=b[u].length+p-1),w.lineString([b[u][p],b[u][p+1]],c,r);case"MultiLineString":return s<0&&(s=b.length+s),p<0&&(p=b[s].length+p-1),w.lineString([b[s][p],b[s][p+1]],c,r);case"MultiPolygon":return s<0&&(s=b.length+s),u<0&&(u=b[s].length+u),p<0&&(p=b[s][u].length-p-1),w.lineString([b[s][u][p],b[s][u][p+1]],c,r)}throw new Error("geojson is invalid")},E.findPoint=function(o,r){if(r=r||{},!w.isObject(r))throw new Error("options is invalid");var n,a=r.featureIndex||0,s=r.multiFeatureIndex||0,u=r.geometryIndex||0,p=r.coordIndex||0,c=r.properties;switch(o.type){case"FeatureCollection":a<0&&(a=o.features.length+a),c=c||o.features[a].properties,n=o.features[a].geometry;break;case"Feature":c=c||o.properties,n=o.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":n=o;break;default:throw new Error("geojson is invalid")}if(n===null)return null;var b=n.coordinates;switch(n.type){case"Point":return w.point(b,c,r);case"MultiPoint":return s<0&&(s=b.length+s),w.point(b[s],c,r);case"LineString":return p<0&&(p=b.length+p),w.point(b[p],c,r);case"Polygon":return u<0&&(u=b.length+u),p<0&&(p=b[u].length+p),w.point(b[u][p],c,r);case"MultiLineString":return s<0&&(s=b.length+s),p<0&&(p=b[s].length+p),w.point(b[s][p],c,r);case"MultiPolygon":return s<0&&(s=b.length+s),u<0&&(u=b[s].length+u),p<0&&(p=b[s][u].length-p),w.point(b[s][u][p],c,r)}throw new Error("geojson is invalid")}},29261:function(R,E,e){Object.defineProperty(E,"__esModule",{value:!0});var w=e(88553),k=e(64182);E.default=function(i,_){_===void 0&&(_={});var y=0,h=0,l=0;return w.coordEach(i,function(t){y+=t[0],h+=t[1],l++}),k.point([y/l,h/l],_.properties)}},64182:function(R,E){function e(a,s,u){u===void 0&&(u={});var p={type:"Feature"};return(u.id===0||u.id)&&(p.id=u.id),u.bbox&&(p.bbox=u.bbox),p.properties=s||{},p.geometry=a,p}function w(a,s,u){return u===void 0&&(u={}),e({type:"Point",coordinates:a},s,u)}function k(a,s,u){u===void 0&&(u={});for(var p=0,c=a;p<c.length;p++){var b=c[p];if(b.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");for(var g=0;g<b[b.length-1].length;g++)if(b[b.length-1][g]!==b[0][g])throw new Error("First and last Position are not equivalent.")}return e({type:"Polygon",coordinates:a},s,u)}function i(a,s,u){if(u===void 0&&(u={}),a.length<2)throw new Error("coordinates must be an array of two or more positions");return e({type:"LineString",coordinates:a},s,u)}function _(a,s){s===void 0&&(s={});var u={type:"FeatureCollection"};return s.id&&(u.id=s.id),s.bbox&&(u.bbox=s.bbox),u.features=a,u}function y(a,s,u){return u===void 0&&(u={}),e({type:"MultiLineString",coordinates:a},s,u)}function h(a,s,u){return u===void 0&&(u={}),e({type:"MultiPoint",coordinates:a},s,u)}function l(a,s,u){return u===void 0&&(u={}),e({type:"MultiPolygon",coordinates:a},s,u)}function t(a,s){s===void 0&&(s="kilometers");var u=E.factors[s];if(!u)throw new Error(s+" units is invalid");return a*u}function o(a,s){s===void 0&&(s="kilometers");var u=E.factors[s];if(!u)throw new Error(s+" units is invalid");return a/u}function r(a){return a%(2*Math.PI)*180/Math.PI}function n(a){return!isNaN(a)&&a!==null&&!Array.isArray(a)&&!/^\s*$/.test(a)}Object.defineProperty(E,"__esModule",{value:!0}),E.earthRadius=63710088e-1,E.factors={centimeters:100*E.earthRadius,centimetres:100*E.earthRadius,degrees:E.earthRadius/111325,feet:3.28084*E.earthRadius,inches:39.37*E.earthRadius,kilometers:E.earthRadius/1e3,kilometres:E.earthRadius/1e3,meters:E.earthRadius,metres:E.earthRadius,miles:E.earthRadius/1609.344,millimeters:1e3*E.earthRadius,millimetres:1e3*E.earthRadius,nauticalmiles:E.earthRadius/1852,radians:1,yards:E.earthRadius/1.0936},E.unitsFactors={centimeters:100,centimetres:100,degrees:8982708286548395e-21,feet:3.28084,inches:39.37,kilometers:.001,kilometres:.001,meters:1,metres:1,miles:.0006213711922373339,millimeters:1e3,millimetres:1e3,nauticalmiles:.0005399568034557236,radians:1/E.earthRadius,yards:.91441111923921},E.areaFactors={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,millimeters:1e6,millimetres:1e6,yards:1.195990046},E.feature=e,E.geometry=function(a,s,u){switch(a){case"Point":return w(s).geometry;case"LineString":return i(s).geometry;case"Polygon":return k(s).geometry;case"MultiPoint":return h(s).geometry;case"MultiLineString":return y(s).geometry;case"MultiPolygon":return l(s).geometry;default:throw new Error(a+" is invalid")}},E.point=w,E.points=function(a,s,u){return u===void 0&&(u={}),_(a.map(function(p){return w(p,s)}),u)},E.polygon=k,E.polygons=function(a,s,u){return u===void 0&&(u={}),_(a.map(function(p){return k(p,s)}),u)},E.lineString=i,E.lineStrings=function(a,s,u){return u===void 0&&(u={}),_(a.map(function(p){return i(p,s)}),u)},E.featureCollection=_,E.multiLineString=y,E.multiPoint=h,E.multiPolygon=l,E.geometryCollection=function(a,s,u){return u===void 0&&(u={}),e({type:"GeometryCollection",geometries:a},s,u)},E.round=function(a,s){if(s===void 0&&(s=0),s&&!(s>=0))throw new Error("precision must be a positive number");var u=Math.pow(10,s||0);return Math.round(a*u)/u},E.radiansToLength=t,E.lengthToRadians=o,E.lengthToDegrees=function(a,s){return r(o(a,s))},E.bearingToAzimuth=function(a){var s=a%360;return s<0&&(s+=360),s},E.radiansToDegrees=r,E.degreesToRadians=function(a){return a%360*Math.PI/180},E.convertLength=function(a,s,u){if(s===void 0&&(s="kilometers"),u===void 0&&(u="kilometers"),!(a>=0))throw new Error("length must be a positive number");return t(o(a,s),u)},E.convertArea=function(a,s,u){if(s===void 0&&(s="meters"),u===void 0&&(u="kilometers"),!(a>=0))throw new Error("area must be a positive number");var p=E.areaFactors[s];if(!p)throw new Error("invalid original units");var c=E.areaFactors[u];if(!c)throw new Error("invalid final units");return a/p*c},E.isNumber=n,E.isObject=function(a){return!!a&&a.constructor===Object},E.validateBBox=function(a){if(!a)throw new Error("bbox is required");if(!Array.isArray(a))throw new Error("bbox must be an Array");if(a.length!==4&&a.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");a.forEach(function(s){if(!n(s))throw new Error("bbox must only contain numbers")})},E.validateId=function(a){if(!a)throw new Error("id is required");if(["string","number"].indexOf(typeof a)===-1)throw new Error("id must be a number or a string")},E.radians2degrees=function(){throw new Error("method has been renamed to `radiansToDegrees`")},E.degrees2radians=function(){throw new Error("method has been renamed to `degreesToRadians`")},E.distanceToDegrees=function(){throw new Error("method has been renamed to `lengthToDegrees`")},E.distanceToRadians=function(){throw new Error("method has been renamed to `lengthToRadians`")},E.radiansToDistance=function(){throw new Error("method has been renamed to `radiansToLength`")},E.bearingToAngle=function(){throw new Error("method has been renamed to `bearingToAzimuth`")},E.convertDistance=function(){throw new Error("method has been renamed to `convertLength`")}},88553:function(R,E,e){Object.defineProperty(E,"__esModule",{value:!0});var w=e(64182);function k(o,r,n){if(o!==null)for(var a,s,u,p,c,b,g,f,v=0,m=0,x=o.type,T=x==="FeatureCollection",d=x==="Feature",M=T?o.features.length:1,A=0;A<M;A++){c=(f=!!(g=T?o.features[A].geometry:d?o.geometry:o)&&g.type==="GeometryCollection")?g.geometries.length:1;for(var C=0;C<c;C++){var P=0,O=0;if((p=f?g.geometries[C]:g)!==null){b=p.coordinates;var z=p.type;switch(v=!n||z!=="Polygon"&&z!=="MultiPolygon"?0:1,z){case null:break;case"Point":if(r(b,m,A,P,O)===!1)return!1;m++,P++;break;case"LineString":case"MultiPoint":for(a=0;a<b.length;a++){if(r(b[a],m,A,P,O)===!1)return!1;m++,z==="MultiPoint"&&P++}z==="LineString"&&P++;break;case"Polygon":case"MultiLineString":for(a=0;a<b.length;a++){for(s=0;s<b[a].length-v;s++){if(r(b[a][s],m,A,P,O)===!1)return!1;m++}z==="MultiLineString"&&P++,z==="Polygon"&&O++}z==="Polygon"&&P++;break;case"MultiPolygon":for(a=0;a<b.length;a++){for(O=0,s=0;s<b[a].length;s++){for(u=0;u<b[a][s].length-v;u++){if(r(b[a][s][u],m,A,P,O)===!1)return!1;m++}O++}P++}break;case"GeometryCollection":for(a=0;a<p.geometries.length;a++)if(k(p.geometries[a],r,n)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function i(o,r){var n;switch(o.type){case"FeatureCollection":for(n=0;n<o.features.length&&r(o.features[n].properties,n)!==!1;n++);break;case"Feature":r(o.properties,0)}}function _(o,r){if(o.type==="Feature")r(o,0);else if(o.type==="FeatureCollection")for(var n=0;n<o.features.length&&r(o.features[n],n)!==!1;n++);}function y(o,r){var n,a,s,u,p,c,b,g,f,v,m=0,x=o.type==="FeatureCollection",T=o.type==="Feature",d=x?o.features.length:1;for(n=0;n<d;n++){for(c=x?o.features[n].geometry:T?o.geometry:o,g=x?o.features[n].properties:T?o.properties:{},f=x?o.features[n].bbox:T?o.bbox:void 0,v=x?o.features[n].id:T?o.id:void 0,p=(b=!!c&&c.type==="GeometryCollection")?c.geometries.length:1,s=0;s<p;s++)if((u=b?c.geometries[s]:c)!==null)switch(u.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":if(r(u,m,g,f,v)===!1)return!1;break;case"GeometryCollection":for(a=0;a<u.geometries.length;a++)if(r(u.geometries[a],m,g,f,v)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}else if(r(null,m,g,f,v)===!1)return!1;m++}}function h(o,r){y(o,function(n,a,s,u,p){var c,b=n===null?null:n.type;switch(b){case null:case"Point":case"LineString":case"Polygon":return r(w.feature(n,s,{bbox:u,id:p}),a,0)!==!1&&void 0}switch(b){case"MultiPoint":c="Point";break;case"MultiLineString":c="LineString";break;case"MultiPolygon":c="Polygon"}for(var g=0;g<n.coordinates.length;g++){var f={type:c,coordinates:n.coordinates[g]};if(r(w.feature(f,s),a,g)===!1)return!1}})}function l(o,r){h(o,function(n,a,s){var u=0;if(n.geometry){var p=n.geometry.type;if(p!=="Point"&&p!=="MultiPoint"){var c,b=0,g=0,f=0;return k(n,function(v,m,x,T,d){if(c===void 0||a>b||T>g||d>f)return c=v,b=a,g=T,f=d,void(u=0);var M=w.lineString([c,v],n.properties);if(r(M,a,s,d,u)===!1)return!1;u++,c=v})!==!1&&void 0}}})}function t(o,r){if(!o)throw new Error("geojson is required");h(o,function(n,a,s){if(n.geometry!==null){var u=n.geometry.type,p=n.geometry.coordinates;switch(u){case"LineString":if(r(n,a,s,0,0)===!1)return!1;break;case"Polygon":for(var c=0;c<p.length;c++)if(r(w.lineString(p[c],n.properties),a,s,c)===!1)return!1}}})}E.coordEach=k,E.coordReduce=function(o,r,n,a){var s=n;return k(o,function(u,p,c,b,g){s=p===0&&n===void 0?u:r(s,u,p,c,b,g)},a),s},E.propEach=i,E.propReduce=function(o,r,n){var a=n;return i(o,function(s,u){a=u===0&&n===void 0?s:r(a,s,u)}),a},E.featureEach=_,E.featureReduce=function(o,r,n){var a=n;return _(o,function(s,u){a=u===0&&n===void 0?s:r(a,s,u)}),a},E.coordAll=function(o){var r=[];return k(o,function(n){r.push(n)}),r},E.geomEach=y,E.geomReduce=function(o,r,n){var a=n;return y(o,function(s,u,p,c,b){a=u===0&&n===void 0?s:r(a,s,u,p,c,b)}),a},E.flattenEach=h,E.flattenReduce=function(o,r,n){var a=n;return h(o,function(s,u,p){a=u===0&&p===0&&n===void 0?s:r(a,s,u,p)}),a},E.segmentEach=l,E.segmentReduce=function(o,r,n){var a=n,s=!1;return l(o,function(u,p,c,b,g){a=s===!1&&n===void 0?u:r(a,u,p,c,b,g),s=!0}),a},E.lineEach=t,E.lineReduce=function(o,r,n){var a=n;return t(o,function(s,u,p,c){a=u===0&&n===void 0?s:r(a,s,u,p,c)}),a},E.findSegment=function(o,r){if(r=r||{},!w.isObject(r))throw new Error("options is invalid");var n,a=r.featureIndex||0,s=r.multiFeatureIndex||0,u=r.geometryIndex||0,p=r.segmentIndex||0,c=r.properties;switch(o.type){case"FeatureCollection":a<0&&(a=o.features.length+a),c=c||o.features[a].properties,n=o.features[a].geometry;break;case"Feature":c=c||o.properties,n=o.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":n=o;break;default:throw new Error("geojson is invalid")}if(n===null)return null;var b=n.coordinates;switch(n.type){case"Point":case"MultiPoint":return null;case"LineString":return p<0&&(p=b.length+p-1),w.lineString([b[p],b[p+1]],c,r);case"Polygon":return u<0&&(u=b.length+u),p<0&&(p=b[u].length+p-1),w.lineString([b[u][p],b[u][p+1]],c,r);case"MultiLineString":return s<0&&(s=b.length+s),p<0&&(p=b[s].length+p-1),w.lineString([b[s][p],b[s][p+1]],c,r);case"MultiPolygon":return s<0&&(s=b.length+s),u<0&&(u=b[s].length+u),p<0&&(p=b[s][u].length-p-1),w.lineString([b[s][u][p],b[s][u][p+1]],c,r)}throw new Error("geojson is invalid")},E.findPoint=function(o,r){if(r=r||{},!w.isObject(r))throw new Error("options is invalid");var n,a=r.featureIndex||0,s=r.multiFeatureIndex||0,u=r.geometryIndex||0,p=r.coordIndex||0,c=r.properties;switch(o.type){case"FeatureCollection":a<0&&(a=o.features.length+a),c=c||o.features[a].properties,n=o.features[a].geometry;break;case"Feature":c=c||o.properties,n=o.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":n=o;break;default:throw new Error("geojson is invalid")}if(n===null)return null;var b=n.coordinates;switch(n.type){case"Point":return w.point(b,c,r);case"MultiPoint":return s<0&&(s=b.length+s),w.point(b[s],c,r);case"LineString":return p<0&&(p=b.length+p),w.point(b[p],c,r);case"Polygon":return u<0&&(u=b.length+u),p<0&&(p=b[u].length+p),w.point(b[u][p],c,r);case"MultiLineString":return s<0&&(s=b.length+s),p<0&&(p=b[s].length+p),w.point(b[s][p],c,r);case"MultiPolygon":return s<0&&(s=b.length+s),u<0&&(u=b[s].length+u),p<0&&(p=b[s][u].length-p),w.point(b[s][u][p],c,r)}throw new Error("geojson is invalid")}},65185:function(R){R.exports=function(E){var e=0,w=0,k=0,i=0;return E.map(function(_){var y=(_=_.slice())[0],h=y.toUpperCase();if(y!=h)switch(_[0]=h,y){case"a":_[6]+=k,_[7]+=i;break;case"v":_[1]+=i;break;case"h":_[1]+=k;break;default:for(var l=1;l<_.length;)_[l++]+=k,_[l++]+=i}switch(h){case"Z":k=e,i=w;break;case"H":k=_[1];break;case"V":i=_[1];break;case"M":k=e=_[1],i=w=_[2];break;default:k=_[_.length-2],i=_[_.length-1]}return _})}},21527:function(R){R.exports=function(E,e){if(!E||E.length==null)throw Error("Argument should be an array");e=e==null?1:Math.floor(e);for(var w=Array(2*e),k=0;k<e;k++){for(var i=-1/0,_=1/0,y=k,h=E.length;y<h;y+=e)E[y]>i&&(i=E[y]),E[y]<_&&(_=E[y]);w[k]=_,w[e+k]=i}return w}},6851:function(R){R.exports=function(E,e,w){if(typeof Array.prototype.findIndex=="function")return E.findIndex(e,w);if(typeof e!="function")throw new TypeError("predicate must be a function");var k=Object(E),i=k.length;if(i===0)return-1;for(var _=0;_<i;_++)if(e.call(w,k[_],_,k))return _;return-1}},54:function(R,E,e){var w=e(21527);R.exports=function(k,i,_){if(!k||k.length==null)throw Error("Argument should be an array");i==null&&(i=1),_==null&&(_=w(k,i));for(var y=0;y<i;y++){var h=_[i+y],l=_[y],t=y,o=k.length;if(h===1/0&&l===-1/0)for(t=y;t<o;t+=i)k[t]=k[t]===h?1:k[t]===l?0:.5;else if(h===1/0)for(t=y;t<o;t+=i)k[t]=k[t]===h?1:0;else if(l===-1/0)for(t=y;t<o;t+=i)k[t]=k[t]===l?0:1;else{var r=h-l;for(t=y;t<o;t+=i)isNaN(k[t])||(k[t]=r===0?.5:(k[t]-l)/r)}}return k}},57471:function(R){R.exports=function(E,e){var w=typeof E=="number",k=typeof e=="number";w&&!k?(e=E,E=0):w||k||(E=0,e=0);var i=(e|=0)-(E|=0);if(i<0)throw new Error("array length must be positive");for(var _=new Array(i),y=0,h=E;y<i;y++,h++)_[y]=h;return _}},32791:function(R,E,e){var w=e(90386);function k(D){return k=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(G){return typeof G}:function(G){return G&&typeof Symbol=="function"&&G.constructor===Symbol&&G!==Symbol.prototype?"symbol":typeof G},k(D)}var i,_,y=e(79616).codes,h=y.ERR_AMBIGUOUS_ARGUMENT,l=y.ERR_INVALID_ARG_TYPE,t=y.ERR_INVALID_ARG_VALUE,o=y.ERR_INVALID_RETURN_VALUE,r=y.ERR_MISSING_ARGS,n=e(73894),a=e(43827).inspect,s=e(43827).types,u=s.isPromise,p=s.isRegExp,c=Object.assign?Object.assign:e(73523).assign,b=Object.is?Object.is:e(64003);function g(){var D=e(74061);i=D.isDeepEqual,_=D.isDeepStrictEqual}var f=!1,v=R.exports=d,m={};function x(D){throw D.message instanceof Error?D.message:new n(D)}function T(D,G,V,j){if(!V){var W=!1;if(G===0)W=!0,j="No value argument passed to `assert.ok()`";else if(j instanceof Error)throw j;var Z=new n({actual:V,expected:!0,message:j,operator:"==",stackStartFn:D});throw Z.generatedMessage=W,Z}}function d(){for(var D=arguments.length,G=new Array(D),V=0;V<D;V++)G[V]=arguments[V];T.apply(void 0,[d,G.length].concat(G))}v.fail=function D(G,V,j,W,Z){var ie,te=arguments.length;if(te===0?ie="Failed":te===1?(j=G,G=void 0):(f===!1&&(f=!0,(w.emitWarning?w.emitWarning:console.warn.bind(console))("assert.fail() with more than one argument is deprecated. Please use assert.strictEqual() instead or only pass a message.","DeprecationWarning","DEP0094")),te===2&&(W="!=")),j instanceof Error)throw j;var J={actual:G,expected:V,operator:W===void 0?"fail":W,stackStartFn:Z||D};j!==void 0&&(J.message=j);var X=new n(J);throw ie&&(X.message=ie,X.generatedMessage=!0),X},v.AssertionError=n,v.ok=d,v.equal=function D(G,V,j){if(arguments.length<2)throw new r("actual","expected");G!=V&&x({actual:G,expected:V,message:j,operator:"==",stackStartFn:D})},v.notEqual=function D(G,V,j){if(arguments.length<2)throw new r("actual","expected");G==V&&x({actual:G,expected:V,message:j,operator:"!=",stackStartFn:D})},v.deepEqual=function D(G,V,j){if(arguments.length<2)throw new r("actual","expected");i===void 0&&g(),i(G,V)||x({actual:G,expected:V,message:j,operator:"deepEqual",stackStartFn:D})},v.notDeepEqual=function D(G,V,j){if(arguments.length<2)throw new r("actual","expected");i===void 0&&g(),i(G,V)&&x({actual:G,expected:V,message:j,operator:"notDeepEqual",stackStartFn:D})},v.deepStrictEqual=function D(G,V,j){if(arguments.length<2)throw new r("actual","expected");i===void 0&&g(),_(G,V)||x({actual:G,expected:V,message:j,operator:"deepStrictEqual",stackStartFn:D})},v.notDeepStrictEqual=function D(G,V,j){if(arguments.length<2)throw new r("actual","expected");i===void 0&&g(),_(G,V)&&x({actual:G,expected:V,message:j,operator:"notDeepStrictEqual",stackStartFn:D})},v.strictEqual=function D(G,V,j){if(arguments.length<2)throw new r("actual","expected");b(G,V)||x({actual:G,expected:V,message:j,operator:"strictEqual",stackStartFn:D})},v.notStrictEqual=function D(G,V,j){if(arguments.length<2)throw new r("actual","expected");b(G,V)&&x({actual:G,expected:V,message:j,operator:"notStrictEqual",stackStartFn:D})};var M=function D(G,V,j){var W=this;(function(Z,ie){if(!(Z instanceof ie))throw new TypeError("Cannot call a class as a function")})(this,D),V.forEach(function(Z){Z in G&&(j!==void 0&&typeof j[Z]=="string"&&p(G[Z])&&G[Z].test(j[Z])?W[Z]=j[Z]:W[Z]=G[Z])})};function A(D,G,V,j){if(typeof G!="function"){if(p(G))return G.test(D);if(arguments.length===2)throw new l("expected",["Function","RegExp"],G);if(k(D)!=="object"||D===null){var W=new n({actual:D,expected:G,message:V,operator:"deepStrictEqual",stackStartFn:j});throw W.operator=j.name,W}var Z=Object.keys(G);if(G instanceof Error)Z.push("name","message");else if(Z.length===0)throw new t("error",G,"may not be an empty object");return i===void 0&&g(),Z.forEach(function(ie){typeof D[ie]=="string"&&p(G[ie])&&G[ie].test(D[ie])||function(te,J,X,ee,re,oe){if(!(X in te)||!_(te[X],J[X])){if(!ee){var ue=new M(te,re),ce=new M(J,re,te),de=new n({actual:ue,expected:ce,operator:"deepStrictEqual",stackStartFn:oe});throw de.actual=te,de.expected=J,de.operator=oe.name,de}x({actual:te,expected:J,message:ee,operator:oe.name,stackStartFn:oe})}}(D,G,ie,V,Z,j)}),!0}return G.prototype!==void 0&&D instanceof G||!Error.isPrototypeOf(G)&&G.call({},D)===!0}function C(D){if(typeof D!="function")throw new l("fn","Function",D);try{D()}catch(G){return G}return m}function P(D){return u(D)||D!==null&&k(D)==="object"&&typeof D.then=="function"&&typeof D.catch=="function"}function O(D){return Promise.resolve().then(function(){var G;if(typeof D=="function"){if(!P(G=D()))throw new o("instance of Promise","promiseFn",G)}else{if(!P(D))throw new l("promiseFn",["Function","Promise"],D);G=D}return Promise.resolve().then(function(){return G}).then(function(){return m}).catch(function(V){return V})})}function z(D,G,V,j){if(typeof V=="string"){if(arguments.length===4)throw new l("error",["Object","Error","Function","RegExp"],V);if(k(G)==="object"&&G!==null){if(G.message===V)throw new h("error/message",'The error message "'.concat(G.message,'" is identical to the message.'))}else if(G===V)throw new h("error/message",'The error "'.concat(G,'" is identical to the message.'));j=V,V=void 0}else if(V!=null&&k(V)!=="object"&&typeof V!="function")throw new l("error",["Object","Error","Function","RegExp"],V);if(G===m){var W="";V&&V.name&&(W+=" (".concat(V.name,")")),W+=j?": ".concat(j):".";var Z=D.name==="rejects"?"rejection":"exception";x({actual:void 0,expected:V,operator:D.name,message:"Missing expected ".concat(Z).concat(W),stackStartFn:D})}if(V&&!A(G,V,j,D))throw G}function B(D,G,V,j){if(G!==m){if(typeof V=="string"&&(j=V,V=void 0),!V||A(G,V)){var W=j?": ".concat(j):".",Z=D.name==="doesNotReject"?"rejection":"exception";x({actual:G,expected:V,operator:D.name,message:"Got unwanted ".concat(Z).concat(W,`
|
||
`)+'Actual message: "'.concat(G&&G.message,'"'),stackStartFn:D})}throw G}}function Y(){for(var D=arguments.length,G=new Array(D),V=0;V<D;V++)G[V]=arguments[V];T.apply(void 0,[Y,G.length].concat(G))}v.throws=function D(G){for(var V=arguments.length,j=new Array(V>1?V-1:0),W=1;W<V;W++)j[W-1]=arguments[W];z.apply(void 0,[D,C(G)].concat(j))},v.rejects=function D(G){for(var V=arguments.length,j=new Array(V>1?V-1:0),W=1;W<V;W++)j[W-1]=arguments[W];return O(G).then(function(Z){return z.apply(void 0,[D,Z].concat(j))})},v.doesNotThrow=function D(G){for(var V=arguments.length,j=new Array(V>1?V-1:0),W=1;W<V;W++)j[W-1]=arguments[W];B.apply(void 0,[D,C(G)].concat(j))},v.doesNotReject=function D(G){for(var V=arguments.length,j=new Array(V>1?V-1:0),W=1;W<V;W++)j[W-1]=arguments[W];return O(G).then(function(Z){return B.apply(void 0,[D,Z].concat(j))})},v.ifError=function D(G){if(G!=null){var V="ifError got unwanted exception: ";k(G)==="object"&&typeof G.message=="string"?G.message.length===0&&G.constructor?V+=G.constructor.name:V+=G.message:V+=a(G);var j=new n({actual:G,expected:null,operator:"ifError",message:V,stackStartFn:D}),W=G.stack;if(typeof W=="string"){var Z=W.split(`
|
||
`);Z.shift();for(var ie=j.stack.split(`
|
||
`),te=0;te<Z.length;te++){var J=ie.indexOf(Z[te]);if(J!==-1){ie=ie.slice(0,J);break}}j.stack="".concat(ie.join(`
|
||
`),`
|
||
`).concat(Z.join(`
|
||
`))}throw j}},v.strict=c(Y,v,{equal:v.strictEqual,deepEqual:v.deepStrictEqual,notEqual:v.notStrictEqual,notDeepEqual:v.notDeepStrictEqual}),v.strict.strict=v.strict},73894:function(R,E,e){var w=e(90386);function k(x,T,d){return T in x?Object.defineProperty(x,T,{value:d,enumerable:!0,configurable:!0,writable:!0}):x[T]=d,x}function i(x,T){for(var d=0;d<T.length;d++){var M=T[d];M.enumerable=M.enumerable||!1,M.configurable=!0,"value"in M&&(M.writable=!0),Object.defineProperty(x,M.key,M)}}function _(x,T){return!T||r(T)!=="object"&&typeof T!="function"?y(x):T}function y(x){if(x===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return x}function h(x){var T=typeof Map=="function"?new Map:void 0;return h=function(d){if(d===null||(M=d,Function.toString.call(M).indexOf("[native code]")===-1))return d;var M;if(typeof d!="function")throw new TypeError("Super expression must either be null or a function");if(T!==void 0){if(T.has(d))return T.get(d);T.set(d,A)}function A(){return l(d,arguments,o(this).constructor)}return A.prototype=Object.create(d.prototype,{constructor:{value:A,enumerable:!1,writable:!0,configurable:!0}}),t(A,d)},h(x)}function l(x,T,d){return l=function(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch{return!1}}()?Reflect.construct:function(M,A,C){var P=[null];P.push.apply(P,A);var O=new(Function.bind.apply(M,P));return C&&t(O,C.prototype),O},l.apply(null,arguments)}function t(x,T){return t=Object.setPrototypeOf||function(d,M){return d.__proto__=M,d},t(x,T)}function o(x){return o=Object.setPrototypeOf?Object.getPrototypeOf:function(T){return T.__proto__||Object.getPrototypeOf(T)},o(x)}function r(x){return r=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(T){return typeof T}:function(T){return T&&typeof Symbol=="function"&&T.constructor===Symbol&&T!==Symbol.prototype?"symbol":typeof T},r(x)}var n=e(43827).inspect,a=e(79616).codes.ERR_INVALID_ARG_TYPE;function s(x,T,d){return(d===void 0||d>x.length)&&(d=x.length),x.substring(d-T.length,d)===T}var u="",p="",c="",b="",g={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"};function f(x){var T=Object.keys(x),d=Object.create(Object.getPrototypeOf(x));return T.forEach(function(M){d[M]=x[M]}),Object.defineProperty(d,"message",{value:x.message}),d}function v(x){return n(x,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}var m=function(x){function T(A){var C;if(function(ie,te){if(!(ie instanceof te))throw new TypeError("Cannot call a class as a function")}(this,T),r(A)!=="object"||A===null)throw new a("options","Object",A);var P=A.message,O=A.operator,z=A.stackStartFn,B=A.actual,Y=A.expected,D=Error.stackTraceLimit;if(Error.stackTraceLimit=0,P!=null)C=_(this,o(T).call(this,String(P)));else if(w.stderr&&w.stderr.isTTY&&(w.stderr&&w.stderr.getColorDepth&&w.stderr.getColorDepth()!==1?(u="\x1B[34m",p="\x1B[32m",b="\x1B[39m",c="\x1B[31m"):(u="",p="",b="",c="")),r(B)==="object"&&B!==null&&r(Y)==="object"&&Y!==null&&"stack"in B&&B instanceof Error&&"stack"in Y&&Y instanceof Error&&(B=f(B),Y=f(Y)),O==="deepStrictEqual"||O==="strictEqual")C=_(this,o(T).call(this,function(ie,te,J){var X="",ee="",re=0,oe="",ue=!1,ce=v(ie),de=ce.split(`
|
||
`),me=v(te).split(`
|
||
`),_e=0,Se="";if(J==="strictEqual"&&r(ie)==="object"&&r(te)==="object"&&ie!==null&&te!==null&&(J="strictEqualObject"),de.length===1&&me.length===1&&de[0]!==me[0]){var we=de[0].length+me[0].length;if(we<=10){if(!(r(ie)==="object"&&ie!==null||r(te)==="object"&&te!==null||ie===0&&te===0))return"".concat(g[J],`
|
||
|
||
`)+"".concat(de[0]," !== ").concat(me[0],`
|
||
`)}else if(J!=="strictEqualObject"&&we<(w.stderr&&w.stderr.isTTY?w.stderr.columns:80)){for(;de[0][_e]===me[0][_e];)_e++;_e>2&&(Se=`
|
||
`.concat(function(qe,ve){if(ve=Math.floor(ve),qe.length==0||ve==0)return"";var Ce=qe.length*ve;for(ve=Math.floor(Math.log(ve)/Math.log(2));ve;)qe+=qe,ve--;return qe+qe.substring(0,Ce-qe.length)}(" ",_e),"^"),_e=0)}}for(var xe=de[de.length-1],De=me[me.length-1];xe===De&&(_e++<2?oe=`
|
||
`.concat(xe).concat(oe):X=xe,de.pop(),me.pop(),de.length!==0&&me.length!==0);)xe=de[de.length-1],De=me[me.length-1];var Ee=Math.max(de.length,me.length);if(Ee===0){var Me=ce.split(`
|
||
`);if(Me.length>30)for(Me[26]="".concat(u,"...").concat(b);Me.length>27;)Me.pop();return"".concat(g.notIdentical,`
|
||
|
||
`).concat(Me.join(`
|
||
`),`
|
||
`)}_e>3&&(oe=`
|
||
`.concat(u,"...").concat(b).concat(oe),ue=!0),X!==""&&(oe=`
|
||
`.concat(X).concat(oe),X="");var he=0,fe=g[J]+`
|
||
`.concat(p,"+ actual").concat(b," ").concat(c,"- expected").concat(b),ae=" ".concat(u,"...").concat(b," Lines skipped");for(_e=0;_e<Ee;_e++){var be=_e-re;if(de.length<_e+1)be>1&&_e>2&&(be>4?(ee+=`
|
||
`.concat(u,"...").concat(b),ue=!0):be>3&&(ee+=`
|
||
`.concat(me[_e-2]),he++),ee+=`
|
||
`.concat(me[_e-1]),he++),re=_e,X+=`
|
||
`.concat(c,"-").concat(b," ").concat(me[_e]),he++;else if(me.length<_e+1)be>1&&_e>2&&(be>4?(ee+=`
|
||
`.concat(u,"...").concat(b),ue=!0):be>3&&(ee+=`
|
||
`.concat(de[_e-2]),he++),ee+=`
|
||
`.concat(de[_e-1]),he++),re=_e,ee+=`
|
||
`.concat(p,"+").concat(b," ").concat(de[_e]),he++;else{var Ie=me[_e],Te=de[_e],Ne=Te!==Ie&&(!s(Te,",")||Te.slice(0,-1)!==Ie);Ne&&s(Ie,",")&&Ie.slice(0,-1)===Te&&(Ne=!1,Te+=","),Ne?(be>1&&_e>2&&(be>4?(ee+=`
|
||
`.concat(u,"...").concat(b),ue=!0):be>3&&(ee+=`
|
||
`.concat(de[_e-2]),he++),ee+=`
|
||
`.concat(de[_e-1]),he++),re=_e,ee+=`
|
||
`.concat(p,"+").concat(b," ").concat(Te),X+=`
|
||
`.concat(c,"-").concat(b," ").concat(Ie),he+=2):(ee+=X,X="",be!==1&&_e!==0||(ee+=`
|
||
`.concat(Te),he++))}if(he>20&&_e<Ee-2)return"".concat(fe).concat(ae,`
|
||
`).concat(ee,`
|
||
`).concat(u,"...").concat(b).concat(X,`
|
||
`)+"".concat(u,"...").concat(b)}return"".concat(fe).concat(ue?ae:"",`
|
||
`).concat(ee).concat(X).concat(oe).concat(Se)}(B,Y,O)));else if(O==="notDeepStrictEqual"||O==="notStrictEqual"){var G=g[O],V=v(B).split(`
|
||
`);if(O==="notStrictEqual"&&r(B)==="object"&&B!==null&&(G=g.notStrictEqualObject),V.length>30)for(V[26]="".concat(u,"...").concat(b);V.length>27;)V.pop();C=V.length===1?_(this,o(T).call(this,"".concat(G," ").concat(V[0]))):_(this,o(T).call(this,"".concat(G,`
|
||
|
||
`).concat(V.join(`
|
||
`),`
|
||
`)))}else{var j=v(B),W="",Z=g[O];O==="notDeepEqual"||O==="notEqual"?(j="".concat(g[O],`
|
||
|
||
`).concat(j)).length>1024&&(j="".concat(j.slice(0,1021),"...")):(W="".concat(v(Y)),j.length>512&&(j="".concat(j.slice(0,509),"...")),W.length>512&&(W="".concat(W.slice(0,509),"...")),O==="deepEqual"||O==="equal"?j="".concat(Z,`
|
||
|
||
`).concat(j,`
|
||
|
||
should equal
|
||
|
||
`):W=" ".concat(O," ").concat(W)),C=_(this,o(T).call(this,"".concat(j).concat(W)))}return Error.stackTraceLimit=D,C.generatedMessage=!P,Object.defineProperty(y(C),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),C.code="ERR_ASSERTION",C.actual=B,C.expected=Y,C.operator=O,Error.captureStackTrace&&Error.captureStackTrace(y(C),z),C.stack,C.name="AssertionError",_(C)}var d,M;return function(A,C){if(typeof C!="function"&&C!==null)throw new TypeError("Super expression must either be null or a function");A.prototype=Object.create(C&&C.prototype,{constructor:{value:A,writable:!0,configurable:!0}}),C&&t(A,C)}(T,x),d=T,M=[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:n.custom,value:function(A,C){return n(this,function(P){for(var O=1;O<arguments.length;O++){var z=arguments[O]!=null?arguments[O]:{},B=Object.keys(z);typeof Object.getOwnPropertySymbols=="function"&&(B=B.concat(Object.getOwnPropertySymbols(z).filter(function(Y){return Object.getOwnPropertyDescriptor(z,Y).enumerable}))),B.forEach(function(Y){k(P,Y,z[Y])})}return P}({},C,{customInspect:!1,depth:0}))}}],M&&i(d.prototype,M),T}(h(Error));R.exports=m},79616:function(R,E,e){function w(o){return w=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(r){return typeof r}:function(r){return r&&typeof Symbol=="function"&&r.constructor===Symbol&&r!==Symbol.prototype?"symbol":typeof r},w(o)}function k(o){return k=Object.setPrototypeOf?Object.getPrototypeOf:function(r){return r.__proto__||Object.getPrototypeOf(r)},k(o)}function i(o,r){return i=Object.setPrototypeOf||function(n,a){return n.__proto__=a,n},i(o,r)}var _,y,h={};function l(o,r,n){n||(n=Error);var a=function(s){function u(p,c,b){var g;return function(f,v){if(!(f instanceof v))throw new TypeError("Cannot call a class as a function")}(this,u),g=function(f,v){return!v||w(v)!=="object"&&typeof v!="function"?function(m){if(m===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return m}(f):v}(this,k(u).call(this,function(f,v,m){return typeof r=="string"?r:r(f,v,m)}(p,c,b))),g.code=o,g}return function(p,c){if(typeof c!="function"&&c!==null)throw new TypeError("Super expression must either be null or a function");p.prototype=Object.create(c&&c.prototype,{constructor:{value:p,writable:!0,configurable:!0}}),c&&i(p,c)}(u,s),u}(n);h[o]=a}function t(o,r){if(Array.isArray(o)){var n=o.length;return o=o.map(function(a){return String(a)}),n>2?"one of ".concat(r," ").concat(o.slice(0,n-1).join(", "),", or ")+o[n-1]:n===2?"one of ".concat(r," ").concat(o[0]," or ").concat(o[1]):"of ".concat(r," ").concat(o[0])}return"of ".concat(r," ").concat(String(o))}l("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),l("ERR_INVALID_ARG_TYPE",function(o,r,n){var a,s,u,p,c;if(_===void 0&&(_=e(32791)),_(typeof o=="string","'name' must be a string"),typeof r=="string"&&(s="not ",r.substr(0,4)===s)?(a="must not be",r=r.replace(/^not /,"")):a="must be",function(g,f,v){return(v===void 0||v>g.length)&&(v=g.length),g.substring(v-9,v)===f}(o," argument"))u="The ".concat(o," ").concat(a," ").concat(t(r,"type"));else{var b=(typeof c!="number"&&(c=0),c+1>(p=o).length||p.indexOf(".",c)===-1?"argument":"property");u='The "'.concat(o,'" ').concat(b," ").concat(a," ").concat(t(r,"type"))}return u+". Received type ".concat(w(n))},TypeError),l("ERR_INVALID_ARG_VALUE",function(o,r){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";y===void 0&&(y=e(43827));var a=y.inspect(r);return a.length>128&&(a="".concat(a.slice(0,128),"...")),"The argument '".concat(o,"' ").concat(n,". Received ").concat(a)},TypeError),l("ERR_INVALID_RETURN_VALUE",function(o,r,n){var a;return a=n&&n.constructor&&n.constructor.name?"instance of ".concat(n.constructor.name):"type ".concat(w(n)),"Expected ".concat(o,' to be returned from the "').concat(r,'"')+" function but got ".concat(a,".")},TypeError),l("ERR_MISSING_ARGS",function(){for(var o=arguments.length,r=new Array(o),n=0;n<o;n++)r[n]=arguments[n];_===void 0&&(_=e(32791)),_(r.length>0,"At least one arg needs to be specified");var a="The ",s=r.length;switch(r=r.map(function(u){return'"'.concat(u,'"')}),s){case 1:a+="".concat(r[0]," argument");break;case 2:a+="".concat(r[0]," and ").concat(r[1]," arguments");break;default:a+=r.slice(0,s-1).join(", "),a+=", and ".concat(r[s-1]," arguments")}return"".concat(a," must be specified")},TypeError),R.exports.codes=h},74061:function(R,E,e){function w(re,oe){return function(ue){if(Array.isArray(ue))return ue}(re)||function(ue,ce){var de=[],me=!0,_e=!1,Se=void 0;try{for(var we,xe=ue[Symbol.iterator]();!(me=(we=xe.next()).done)&&(de.push(we.value),!ce||de.length!==ce);me=!0);}catch(De){_e=!0,Se=De}finally{try{me||xe.return==null||xe.return()}finally{if(_e)throw Se}}return de}(re,oe)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function k(re){return k=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(oe){return typeof oe}:function(oe){return oe&&typeof Symbol=="function"&&oe.constructor===Symbol&&oe!==Symbol.prototype?"symbol":typeof oe},k(re)}var i=/a/g.flags!==void 0,_=function(re){var oe=[];return re.forEach(function(ue){return oe.push(ue)}),oe},y=function(re){var oe=[];return re.forEach(function(ue,ce){return oe.push([ce,ue])}),oe},h=Object.is?Object.is:e(64003),l=Object.getOwnPropertySymbols?Object.getOwnPropertySymbols:function(){return[]},t=Number.isNaN?Number.isNaN:e(15567);function o(re){return re.call.bind(re)}var r=o(Object.prototype.hasOwnProperty),n=o(Object.prototype.propertyIsEnumerable),a=o(Object.prototype.toString),s=e(43827).types,u=s.isAnyArrayBuffer,p=s.isArrayBufferView,c=s.isDate,b=s.isMap,g=s.isRegExp,f=s.isSet,v=s.isNativeError,m=s.isBoxedPrimitive,x=s.isNumberObject,T=s.isStringObject,d=s.isBooleanObject,M=s.isBigIntObject,A=s.isSymbolObject,C=s.isFloat32Array,P=s.isFloat64Array;function O(re){if(re.length===0||re.length>10)return!0;for(var oe=0;oe<re.length;oe++){var ue=re.charCodeAt(oe);if(ue<48||ue>57)return!0}return re.length===10&&re>=Math.pow(2,32)}function z(re){return Object.keys(re).filter(O).concat(l(re).filter(Object.prototype.propertyIsEnumerable.bind(re)))}function B(re,oe){if(re===oe)return 0;for(var ue=re.length,ce=oe.length,de=0,me=Math.min(ue,ce);de<me;++de)if(re[de]!==oe[de]){ue=re[de],ce=oe[de];break}return ue<ce?-1:ce<ue?1:0}var Y=0,D=1,G=2,V=3;function j(re,oe,ue,ce){if(re===oe)return re!==0||!ue||h(re,oe);if(ue){if(k(re)!=="object")return typeof re=="number"&&t(re)&&t(oe);if(k(oe)!=="object"||re===null||oe===null||Object.getPrototypeOf(re)!==Object.getPrototypeOf(oe))return!1}else{if(re===null||k(re)!=="object")return(oe===null||k(oe)!=="object")&&re==oe;if(oe===null||k(oe)!=="object")return!1}var de,me,_e,Se,we=a(re);if(we!==a(oe))return!1;if(Array.isArray(re)){if(re.length!==oe.length)return!1;var xe=z(re),De=z(oe);return xe.length===De.length&&Z(re,oe,ue,ce,D,xe)}if(we==="[object Object]"&&(!b(re)&&b(oe)||!f(re)&&f(oe)))return!1;if(c(re)){if(!c(oe)||Date.prototype.getTime.call(re)!==Date.prototype.getTime.call(oe))return!1}else if(g(re)){if(!g(oe)||(_e=re,Se=oe,!(i?_e.source===Se.source&&_e.flags===Se.flags:RegExp.prototype.toString.call(_e)===RegExp.prototype.toString.call(Se))))return!1}else if(v(re)||re instanceof Error){if(re.message!==oe.message||re.name!==oe.name)return!1}else{if(p(re)){if(ue||!C(re)&&!P(re)){if(!function(he,fe){return he.byteLength===fe.byteLength&&B(new Uint8Array(he.buffer,he.byteOffset,he.byteLength),new Uint8Array(fe.buffer,fe.byteOffset,fe.byteLength))===0}(re,oe))return!1}else if(!function(he,fe){if(he.byteLength!==fe.byteLength)return!1;for(var ae=0;ae<he.byteLength;ae++)if(he[ae]!==fe[ae])return!1;return!0}(re,oe))return!1;var Ee=z(re),Me=z(oe);return Ee.length===Me.length&&Z(re,oe,ue,ce,Y,Ee)}if(f(re))return!(!f(oe)||re.size!==oe.size)&&Z(re,oe,ue,ce,G);if(b(re))return!(!b(oe)||re.size!==oe.size)&&Z(re,oe,ue,ce,V);if(u(re)){if(me=oe,(de=re).byteLength!==me.byteLength||B(new Uint8Array(de),new Uint8Array(me))!==0)return!1}else if(m(re)&&!function(he,fe){return x(he)?x(fe)&&h(Number.prototype.valueOf.call(he),Number.prototype.valueOf.call(fe)):T(he)?T(fe)&&String.prototype.valueOf.call(he)===String.prototype.valueOf.call(fe):d(he)?d(fe)&&Boolean.prototype.valueOf.call(he)===Boolean.prototype.valueOf.call(fe):M(he)?M(fe)&&BigInt.prototype.valueOf.call(he)===BigInt.prototype.valueOf.call(fe):A(fe)&&Symbol.prototype.valueOf.call(he)===Symbol.prototype.valueOf.call(fe)}(re,oe))return!1}return Z(re,oe,ue,ce,Y)}function W(re,oe){return oe.filter(function(ue){return n(re,ue)})}function Z(re,oe,ue,ce,de,me){if(arguments.length===5){me=Object.keys(re);var _e=Object.keys(oe);if(me.length!==_e.length)return!1}for(var Se=0;Se<me.length;Se++)if(!r(oe,me[Se]))return!1;if(ue&&arguments.length===5){var we=l(re);if(we.length!==0){var xe=0;for(Se=0;Se<we.length;Se++){var De=we[Se];if(n(re,De)){if(!n(oe,De))return!1;me.push(De),xe++}else if(n(oe,De))return!1}var Ee=l(oe);if(we.length!==Ee.length&&W(oe,Ee).length!==xe)return!1}else{var Me=l(oe);if(Me.length!==0&&W(oe,Me).length!==0)return!1}}if(me.length===0&&(de===Y||de===D&&re.length===0||re.size===0))return!0;if(ce===void 0)ce={val1:new Map,val2:new Map,position:0};else{var he=ce.val1.get(re);if(he!==void 0){var fe=ce.val2.get(oe);if(fe!==void 0)return he===fe}ce.position++}ce.val1.set(re,ce.position),ce.val2.set(oe,ce.position);var ae=function(be,Ie,Te,Ne,qe,ve){var Ce=0;if(ve===G){if(!function(Ve,Ye,$e,rt){for(var ht=null,nt=_(Ve),bt=0;bt<nt.length;bt++){var wt=nt[bt];if(k(wt)==="object"&&wt!==null)ht===null&&(ht=new Set),ht.add(wt);else if(!Ye.has(wt)){if($e||!J(Ve,Ye,wt))return!1;ht===null&&(ht=new Set),ht.add(wt)}}if(ht!==null){for(var ut=_(Ye),lt=0;lt<ut.length;lt++){var Tt=ut[lt];if(k(Tt)==="object"&&Tt!==null){if(!ie(ht,Tt,$e,rt))return!1}else if(!$e&&!Ve.has(Tt)&&!ie(ht,Tt,$e,rt))return!1}return ht.size===0}return!0}(be,Ie,Te,qe))return!1}else if(ve===V){if(!function(Ve,Ye,$e,rt){for(var ht=null,nt=y(Ve),bt=0;bt<nt.length;bt++){var wt=w(nt[bt],2),ut=wt[0],lt=wt[1];if(k(ut)==="object"&&ut!==null)ht===null&&(ht=new Set),ht.add(ut);else{var Tt=Ye.get(ut);if(Tt===void 0&&!Ye.has(ut)||!j(lt,Tt,$e,rt)){if($e||!X(Ve,Ye,ut,lt,rt))return!1;ht===null&&(ht=new Set),ht.add(ut)}}}if(ht!==null){for(var Et=y(Ye),St=0;St<Et.length;St++){var Ft=w(Et[St],2),zt=(ut=Ft[0],Ft[1]);if(k(ut)==="object"&&ut!==null){if(!ee(ht,Ve,ut,zt,$e,rt))return!1}else if(!($e||Ve.has(ut)&&j(Ve.get(ut),zt,!1,rt)||ee(ht,Ve,ut,zt,!1,rt)))return!1}return ht.size===0}return!0}(be,Ie,Te,qe))return!1}else if(ve===D)for(;Ce<be.length;Ce++){if(!r(be,Ce)){if(r(Ie,Ce))return!1;for(var Ae=Object.keys(be);Ce<Ae.length;Ce++){var ze=Ae[Ce];if(!r(Ie,ze)||!j(be[ze],Ie[ze],Te,qe))return!1}return Ae.length===Object.keys(Ie).length}if(!r(Ie,Ce)||!j(be[Ce],Ie[Ce],Te,qe))return!1}for(Ce=0;Ce<Ne.length;Ce++){var Ue=Ne[Ce];if(!j(be[Ue],Ie[Ue],Te,qe))return!1}return!0}(re,oe,ue,me,ce,de);return ce.val1.delete(re),ce.val2.delete(oe),ae}function ie(re,oe,ue,ce){for(var de=_(re),me=0;me<de.length;me++){var _e=de[me];if(j(oe,_e,ue,ce))return re.delete(_e),!0}return!1}function te(re){switch(k(re)){case"undefined":return null;case"object":return;case"symbol":return!1;case"string":re=+re;case"number":if(t(re))return!1}return!0}function J(re,oe,ue){var ce=te(ue);return ce??(oe.has(ce)&&!re.has(ce))}function X(re,oe,ue,ce,de){var me=te(ue);if(me!=null)return me;var _e=oe.get(me);return!(_e===void 0&&!oe.has(me)||!j(ce,_e,!1,de))&&!re.has(me)&&j(ce,_e,!1,de)}function ee(re,oe,ue,ce,de,me){for(var _e=_(re),Se=0;Se<_e.length;Se++){var we=_e[Se];if(j(ue,we,de,me)&&j(ce,oe.get(we),de,me))return re.delete(we),!0}return!1}R.exports={isDeepEqual:function(re,oe){return j(re,oe,!1)},isDeepStrictEqual:function(re,oe){return j(re,oe,!0)}}},95341:function(R,E){E.byteLength=function(l){var t=y(l),o=t[0],r=t[1];return 3*(o+r)/4-r},E.toByteArray=function(l){var t,o,r=y(l),n=r[0],a=r[1],s=new k(function(c,b,g){return 3*(b+g)/4-g}(0,n,a)),u=0,p=a>0?n-4:n;for(o=0;o<p;o+=4)t=w[l.charCodeAt(o)]<<18|w[l.charCodeAt(o+1)]<<12|w[l.charCodeAt(o+2)]<<6|w[l.charCodeAt(o+3)],s[u++]=t>>16&255,s[u++]=t>>8&255,s[u++]=255&t;return a===2&&(t=w[l.charCodeAt(o)]<<2|w[l.charCodeAt(o+1)]>>4,s[u++]=255&t),a===1&&(t=w[l.charCodeAt(o)]<<10|w[l.charCodeAt(o+1)]<<4|w[l.charCodeAt(o+2)]>>2,s[u++]=t>>8&255,s[u++]=255&t),s},E.fromByteArray=function(l){for(var t,o=l.length,r=o%3,n=[],a=16383,s=0,u=o-r;s<u;s+=a)n.push(h(l,s,s+a>u?u:s+a));return r===1?(t=l[o-1],n.push(e[t>>2]+e[t<<4&63]+"==")):r===2&&(t=(l[o-2]<<8)+l[o-1],n.push(e[t>>10]+e[t>>4&63]+e[t<<2&63]+"=")),n.join("")};for(var e=[],w=[],k=typeof Uint8Array<"u"?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",_=0;_<64;++_)e[_]=i[_],w[i.charCodeAt(_)]=_;function y(l){var t=l.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var o=l.indexOf("=");return o===-1&&(o=t),[o,o===t?0:4-o%4]}function h(l,t,o){for(var r,n,a=[],s=t;s<o;s+=3)r=(l[s]<<16&16711680)+(l[s+1]<<8&65280)+(255&l[s+2]),a.push(e[(n=r)>>18&63]+e[n>>12&63]+e[n>>6&63]+e[63&n]);return a.join("")}w["-".charCodeAt(0)]=62,w["_".charCodeAt(0)]=63},91358:function(R){function E(y,h,l,t,o){for(var r=o+1;t<=o;){var n=t+o>>>1,a=y[n];(l!==void 0?l(a,h):a-h)>=0?(r=n,o=n-1):t=n+1}return r}function e(y,h,l,t,o){for(var r=o+1;t<=o;){var n=t+o>>>1,a=y[n];(l!==void 0?l(a,h):a-h)>0?(r=n,o=n-1):t=n+1}return r}function w(y,h,l,t,o){for(var r=t-1;t<=o;){var n=t+o>>>1,a=y[n];(l!==void 0?l(a,h):a-h)<0?(r=n,t=n+1):o=n-1}return r}function k(y,h,l,t,o){for(var r=t-1;t<=o;){var n=t+o>>>1,a=y[n];(l!==void 0?l(a,h):a-h)<=0?(r=n,t=n+1):o=n-1}return r}function i(y,h,l,t,o){for(;t<=o;){var r=t+o>>>1,n=y[r],a=l!==void 0?l(n,h):n-h;if(a===0)return r;a<=0?t=r+1:o=r-1}return-1}function _(y,h,l,t,o,r){return typeof l=="function"?r(y,h,l,t===void 0?0:0|t,o===void 0?y.length-1:0|o):r(y,h,void 0,l===void 0?0:0|l,t===void 0?y.length-1:0|t)}R.exports={ge:function(y,h,l,t,o){return _(y,h,l,t,o,E)},gt:function(y,h,l,t,o){return _(y,h,l,t,o,e)},lt:function(y,h,l,t,o){return _(y,h,l,t,o,w)},le:function(y,h,l,t,o){return _(y,h,l,t,o,k)},eq:function(y,h,l,t,o){return _(y,h,l,t,o,i)}}},13547:function(R,E){function e(k){var i=32;return(k&=-k)&&i--,65535&k&&(i-=16),16711935&k&&(i-=8),252645135&k&&(i-=4),858993459&k&&(i-=2),1431655765&k&&(i-=1),i}E.INT_BITS=32,E.INT_MAX=2147483647,E.INT_MIN=-2147483648,E.sign=function(k){return(k>0)-(k<0)},E.abs=function(k){var i=k>>31;return(k^i)-i},E.min=function(k,i){return i^(k^i)&-(k<i)},E.max=function(k,i){return k^(k^i)&-(k<i)},E.isPow2=function(k){return!(k&k-1||!k)},E.log2=function(k){var i,_;return i=(k>65535)<<4,i|=_=((k>>>=i)>255)<<3,i|=_=((k>>>=_)>15)<<2,(i|=_=((k>>>=_)>3)<<1)|(k>>>=_)>>1},E.log10=function(k){return k>=1e9?9:k>=1e8?8:k>=1e7?7:k>=1e6?6:k>=1e5?5:k>=1e4?4:k>=1e3?3:k>=100?2:k>=10?1:0},E.popCount=function(k){return 16843009*((k=(858993459&(k-=k>>>1&1431655765))+(k>>>2&858993459))+(k>>>4)&252645135)>>>24},E.countTrailingZeros=e,E.nextPow2=function(k){return k+=k===0,--k,k|=k>>>1,k|=k>>>2,k|=k>>>4,k|=k>>>8,1+(k|=k>>>16)},E.prevPow2=function(k){return k|=k>>>1,k|=k>>>2,k|=k>>>4,k|=k>>>8,(k|=k>>>16)-(k>>>1)},E.parity=function(k){return k^=k>>>16,k^=k>>>8,k^=k>>>4,27030>>>(k&=15)&1};var w=new Array(256);(function(k){for(var i=0;i<256;++i){var _=i,y=i,h=7;for(_>>>=1;_;_>>>=1)y<<=1,y|=1&_,--h;k[i]=y<<h&255}})(w),E.reverse=function(k){return w[255&k]<<24|w[k>>>8&255]<<16|w[k>>>16&255]<<8|w[k>>>24&255]},E.interleave2=function(k,i){return(k=1431655765&((k=858993459&((k=252645135&((k=16711935&((k&=65535)|k<<8))|k<<4))|k<<2))|k<<1))|(i=1431655765&((i=858993459&((i=252645135&((i=16711935&((i&=65535)|i<<8))|i<<4))|i<<2))|i<<1))<<1},E.deinterleave2=function(k,i){return(k=65535&((k=16711935&((k=252645135&((k=858993459&((k=k>>>i&1431655765)|k>>>1))|k>>>2))|k>>>4))|k>>>16))<<16>>16},E.interleave3=function(k,i,_){return k=1227133513&((k=3272356035&((k=251719695&((k=4278190335&((k&=1023)|k<<16))|k<<8))|k<<4))|k<<2),(k|=(i=1227133513&((i=3272356035&((i=251719695&((i=4278190335&((i&=1023)|i<<16))|i<<8))|i<<4))|i<<2))<<1)|(_=1227133513&((_=3272356035&((_=251719695&((_=4278190335&((_&=1023)|_<<16))|_<<8))|_<<4))|_<<2))<<2},E.deinterleave3=function(k,i){return(k=1023&((k=4278190335&((k=251719695&((k=3272356035&((k=k>>>i&1227133513)|k>>>2))|k>>>4))|k>>>8))|k>>>16))<<22>>22},E.nextCombination=function(k){var i=k|k-1;return i+1|(~i&-~i)-1>>>e(k)+1}},44781:function(R,E,e){var w=e(53435);R.exports=function(y,h){h||(h={});var l,t,o,r,n,a,s,u,p,c,b,g=h.cutoff==null?.25:h.cutoff,f=h.radius==null?8:h.radius,v=h.channel||0;if(ArrayBuffer.isView(y)||Array.isArray(y)){if(!h.width||!h.height)throw Error("For raw data width and height should be provided by options");l=h.width,t=h.height,r=y,a=h.stride?h.stride:Math.floor(y.length/l/t)}else window.HTMLCanvasElement&&y instanceof window.HTMLCanvasElement?(s=(u=y).getContext("2d"),l=u.width,t=u.height,r=(p=s.getImageData(0,0,l,t)).data,a=4):window.CanvasRenderingContext2D&&y instanceof window.CanvasRenderingContext2D?(s=y,l=(u=y.canvas).width,t=u.height,r=(p=s.getImageData(0,0,l,t)).data,a=4):window.ImageData&&y instanceof window.ImageData&&(p=y,l=y.width,t=y.height,r=p.data,a=4);if(o=Math.max(l,t),window.Uint8ClampedArray&&r instanceof window.Uint8ClampedArray||window.Uint8Array&&r instanceof window.Uint8Array)for(n=r,r=Array(l*t),c=0,b=n.length;c<b;c++)r[c]=n[c*a+v]/255;else if(a!==1)throw Error("Raw data can have only 1 value per pixel");var m=Array(l*t),x=Array(l*t),T=Array(o),d=Array(o),M=Array(o+1),A=Array(o);for(c=0,b=l*t;c<b;c++){var C=r[c];m[c]=C===1?0:C===0?k:Math.pow(Math.max(0,.5-C),2),x[c]=C===1?k:C===0?0:Math.pow(Math.max(0,C-.5),2)}i(m,l,t,T,d,A,M),i(x,l,t,T,d,A,M);var P=window.Float32Array?new Float32Array(l*t):new Array(l*t);for(c=0,b=l*t;c<b;c++)P[c]=w(1-((m[c]-x[c])/f+g),0,1);return P};var k=1e20;function i(y,h,l,t,o,r,n){for(var a=0;a<h;a++){for(var s=0;s<l;s++)t[s]=y[s*h+a];for(_(t,o,r,n,l),s=0;s<l;s++)y[s*h+a]=o[s]}for(s=0;s<l;s++){for(a=0;a<h;a++)t[a]=y[s*h+a];for(_(t,o,r,n,h),a=0;a<h;a++)y[s*h+a]=Math.sqrt(o[a])}}function _(y,h,l,t,o){l[0]=0,t[0]=-k,t[1]=+k;for(var r=1,n=0;r<o;r++){for(var a=(y[r]+r*r-(y[l[n]]+l[n]*l[n]))/(2*r-2*l[n]);a<=t[n];)n--,a=(y[r]+r*r-(y[l[n]]+l[n]*l[n]))/(2*r-2*l[n]);l[++n]=r,t[n]=a,t[n+1]=+k}for(r=0,n=0;r<o;r++){for(;t[n+1]<r;)n++;h[r]=(r-l[n])*(r-l[n])+y[l[n]]}}},6614:function(R,E,e){var w=e(68318),k=e(68222),i=k(w("String.prototype.indexOf"));R.exports=function(_,y){var h=w(_,!!y);return typeof h=="function"&&i(_,".prototype.")>-1?k(h):h}},68222:function(R,E,e){var w=e(77575),k=e(68318),i=k("%Function.prototype.apply%"),_=k("%Function.prototype.call%"),y=k("%Reflect.apply%",!0)||w.call(_,i),h=k("%Object.getOwnPropertyDescriptor%",!0),l=k("%Object.defineProperty%",!0),t=k("%Math.max%");if(l)try{l({},"a",{value:1})}catch{l=null}R.exports=function(r){var n=y(w,_,arguments);return h&&l&&h(n,"length").configurable&&l(n,"length",{value:1+t(0,r.length-(arguments.length-1))}),n};var o=function(){return y(w,i,arguments)};l?l(R.exports,"apply",{value:o}):R.exports.apply=o},53435:function(R){R.exports=function(E,e,w){return e<w?E<e?e:E>w?w:E:E<w?w:E>e?e:E}},6475:function(R,E,e){var w=e(53435);function k(i,_){_==null&&(_=!0);var y=i[0],h=i[1],l=i[2],t=i[3];return t==null&&(t=_?1:255),_&&(y*=255,h*=255,l*=255,t*=255),16777216*(y=255&w(y,0,255))+((h=255&w(h,0,255))<<16)+((l=255&w(l,0,255))<<8)+(255&w(t,0,255))}R.exports=k,R.exports.to=k,R.exports.from=function(i,_){var y=(i=+i)>>>24,h=(16711680&i)>>>16,l=(65280&i)>>>8,t=255&i;return _===!1?[y,h,l,t]:[y/255,h/255,l/255,t/255]}},76857:function(R){R.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]}},25075:function(R,E,e){var w=e(36652),k=e(53435),i=e(90660);R.exports=function(_,y){y!=="float"&&y||(y="array"),y==="uint"&&(y="uint8"),y==="uint_clamped"&&(y="uint8_clamped");var h=new(i(y))(4),l=y!=="uint8"&&y!=="uint8_clamped";return _.length&&typeof _!="string"||((_=w(_))[0]/=255,_[1]/=255,_[2]/=255),function(t){return t instanceof Uint8Array||t instanceof Uint8ClampedArray||!!(Array.isArray(t)&&(t[0]>1||t[0]===0)&&(t[1]>1||t[1]===0)&&(t[2]>1||t[2]===0)&&(!t[3]||t[3]>1))}(_)?(h[0]=_[0],h[1]=_[1],h[2]=_[2],h[3]=_[3]!=null?_[3]:255,l&&(h[0]/=255,h[1]/=255,h[2]/=255,h[3]/=255),h):(l?(h[0]=_[0],h[1]=_[1],h[2]=_[2],h[3]=_[3]!=null?_[3]:1):(h[0]=k(Math.floor(255*_[0]),0,255),h[1]=k(Math.floor(255*_[1]),0,255),h[2]=k(Math.floor(255*_[2]),0,255),h[3]=_[3]==null?255:k(Math.floor(255*_[3]),0,255)),h)}},90736:function(R,E,e){var w=e(76857),k=e(10973),i=e(46775);R.exports=function(y){var h,l,t=[],o=1;if(typeof y=="string")if(w[y])t=w[y].slice(),l="rgb";else if(y==="transparent")o=0,l="rgb",t=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(y)){var r=y.slice(1);o=1,(s=r.length)<=4?(t=[parseInt(r[0]+r[0],16),parseInt(r[1]+r[1],16),parseInt(r[2]+r[2],16)],s===4&&(o=parseInt(r[3]+r[3],16)/255)):(t=[parseInt(r[0]+r[1],16),parseInt(r[2]+r[3],16),parseInt(r[4]+r[5],16)],s===8&&(o=parseInt(r[6]+r[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),l="rgb"}else if(h=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(y)){var n=h[1],a=n==="rgb";l=r=n.replace(/a$/,"");var s=r==="cmyk"?4:r==="gray"?1:3;t=h[2].trim().split(/\s*,\s*/).map(function(p,c){if(/%$/.test(p))return c===s?parseFloat(p)/100:r==="rgb"?255*parseFloat(p)/100:parseFloat(p);if(r[c]==="h"){if(/deg$/.test(p))return parseFloat(p);if(_[p]!==void 0)return _[p]}return parseFloat(p)}),n===r&&t.push(1),o=a||t[s]===void 0?1:t[s],t=t.slice(0,s)}else y.length>10&&/[0-9](?:\s|\/)/.test(y)&&(t=y.match(/([0-9]+)/g).map(function(p){return parseFloat(p)}),l=y.match(/([a-z])/gi).join("").toLowerCase());else if(isNaN(y))if(k(y)){var u=i(y.r,y.red,y.R,null);u!==null?(l="rgb",t=[u,i(y.g,y.green,y.G),i(y.b,y.blue,y.B)]):(l="hsl",t=[i(y.h,y.hue,y.H),i(y.s,y.saturation,y.S),i(y.l,y.lightness,y.L,y.b,y.brightness)]),o=i(y.a,y.alpha,y.opacity,1),y.opacity!=null&&(o/=100)}else(Array.isArray(y)||e.g.ArrayBuffer&&ArrayBuffer.isView&&ArrayBuffer.isView(y))&&(t=[y[0],y[1],y[2]],l="rgb",o=y.length===4?y[3]:1);else l="rgb",t=[y>>>16,(65280&y)>>>8,255&y];return{space:l,values:t,alpha:o}};var _={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}},36652:function(R,E,e){var w=e(90736),k=e(80009),i=e(53435);R.exports=function(_){var y,h=w(_);return h.space?((y=Array(3))[0]=i(h.values[0],0,255),y[1]=i(h.values[1],0,255),y[2]=i(h.values[2],0,255),h.space[0]==="h"&&(y=k.rgb(y)),y.push(i(h.alpha,0,1)),y):[]}},80009:function(R,E,e){var w=e(6866);R.exports={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(k){var i,_,y,h,l,t=k[0]/360,o=k[1]/100,r=k[2]/100;if(o===0)return[l=255*r,l,l];i=2*r-(_=r<.5?r*(1+o):r+o-r*o),h=[0,0,0];for(var n=0;n<3;n++)(y=t+.3333333333333333*-(n-1))<0?y++:y>1&&y--,l=6*y<1?i+6*(_-i)*y:2*y<1?_:3*y<2?i+(_-i)*(.6666666666666666-y)*6:i,h[n]=255*l;return h}},w.hsl=function(k){var i,_,y=k[0]/255,h=k[1]/255,l=k[2]/255,t=Math.min(y,h,l),o=Math.max(y,h,l),r=o-t;return o===t?i=0:y===o?i=(h-l)/r:h===o?i=2+(l-y)/r:l===o&&(i=4+(y-h)/r),(i=Math.min(60*i,360))<0&&(i+=360),_=(t+o)/2,[i,100*(o===t?0:_<=.5?r/(o+t):r/(2-o-t)),100*_]}},6866:function(R){R.exports={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}},24138:function(R){R.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|ç)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|é)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|é)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|ã)o.?tom(e|é)",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"}},72791:function(R,E,e){R.exports={parse:e(41004),stringify:e(53313)}},63625:function(R,E,e){var w=e(40402);R.exports={isSize:function(k){return/^[\d\.]/.test(k)||k.indexOf("/")!==-1||w.indexOf(k)!==-1}}},41004:function(R,E,e){var w=e(90448),k=e(38732),i=e(41901),_=e(15659),y=e(96209),h=e(83794),l=e(99011),t=e(63625).isSize;R.exports=r;var o=r.cache={};function r(a){if(typeof a!="string")throw new Error("Font argument must be a string.");if(o[a])return o[a];if(a==="")throw new Error("Cannot parse an empty string.");if(i.indexOf(a)!==-1)return o[a]={system:a};for(var s,u={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},p=l(a,/\s+/);s=p.shift();){if(k.indexOf(s)!==-1)return["style","variant","weight","stretch"].forEach(function(b){u[b]=s}),o[a]=u;if(y.indexOf(s)===-1)if(s!=="normal"&&s!=="small-caps")if(h.indexOf(s)===-1){if(_.indexOf(s)===-1){if(t(s)){var c=l(s,"/");if(u.size=c[0],c[1]!=null?u.lineHeight=n(c[1]):p[0]==="/"&&(p.shift(),u.lineHeight=n(p.shift())),!p.length)throw new Error("Missing required font-family.");return u.family=l(p.join(" "),/\s*,\s*/).map(w),o[a]=u}throw new Error("Unknown or unsupported font token: "+s)}u.weight=s}else u.stretch=s;else u.variant=s;else u.style=s}throw new Error("Missing required font-size.")}function n(a){var s=parseFloat(a);return s.toString()===a?s:a}},53313:function(R,E,e){var w=e(71299),k=e(63625).isSize,i=a(e(38732)),_=a(e(41901)),y=a(e(15659)),h=a(e(96209)),l=a(e(83794)),t={normal:1,"small-caps":1},o={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},r="serif";function n(s,u){if(s&&!u[s]&&!i[s])throw Error("Unknown keyword `"+s+"`");return s}function a(s){for(var u={},p=0;p<s.length;p++)u[s[p]]=1;return u}R.exports=function(s){if((s=w(s,{style:"style fontstyle fontStyle font-style slope distinction",variant:"variant font-variant fontVariant fontvariant var capitalization",weight:"weight w font-weight fontWeight fontweight",stretch:"stretch font-stretch fontStretch fontstretch width",size:"size s font-size fontSize fontsize height em emSize",lineHeight:"lh line-height lineHeight lineheight leading",family:"font family fontFamily font-family fontfamily type typeface face",system:"system reserved default global"})).system)return s.system&&n(s.system,_),s.system;if(n(s.style,h),n(s.variant,t),n(s.weight,y),n(s.stretch,l),s.size==null&&(s.size="1rem"),typeof s.size=="number"&&(s.size+="px"),!k)throw Error("Bad size value `"+s.size+"`");s.family||(s.family=r),Array.isArray(s.family)&&(s.family.length||(s.family=[r]),s.family=s.family.map(function(p){return o[p]?p:'"'+p+'"'}).join(", "));var u=[];return u.push(s.style),s.variant!==s.style&&u.push(s.variant),s.weight!==s.variant&&s.weight!==s.style&&u.push(s.weight),s.stretch!==s.weight&&s.stretch!==s.variant&&s.stretch!==s.style&&u.push(s.stretch),u.push(s.size+(s.lineHeight==null||s.lineHeight==="normal"||s.lineHeight+""=="1"?"":"/"+s.lineHeight)),u.push(s.family),u.filter(Boolean).join(" ")}},55174:function(R,E,e){var w,k=e(24582),i=e(10424),_=e(82527),y=e(19012),h=e(21780),l=e(16906),t=Function.prototype.bind,o=Object.defineProperty,r=Object.prototype.hasOwnProperty;w=function(n,a,s){var u,p=i(a)&&_(a.value);return delete(u=y(a)).writable,delete u.value,u.get=function(){return!s.overwriteDefinition&&r.call(this,n)?p:(a.value=t.call(p,s.resolveContext?s.resolveContext(this):this),o(this,n,a),this[n])},u},R.exports=function(n){var a=h(arguments[1]);return k(a.resolveContext)&&_(a.resolveContext),l(n,function(s,u){return w(u,s,a)})}},62072:function(R,E,e){var w=e(24582),k=e(84985),i=e(95879),_=e(21780),y=e(66741),h=R.exports=function(l,t){var o,r,n,a,s;return arguments.length<2||typeof l!="string"?(a=t,t=l,l=null):a=arguments[2],w(l)?(o=y.call(l,"c"),r=y.call(l,"e"),n=y.call(l,"w")):(o=n=!0,r=!1),s={value:t,configurable:o,enumerable:r,writable:n},a?i(_(a),s):s};h.gs=function(l,t,o){var r,n,a,s;return typeof l!="string"?(a=o,o=t,t=l,l=null):a=arguments[3],w(t)?k(t)?w(o)?k(o)||(a=o,o=void 0):o=void 0:(a=t,t=o=void 0):t=void 0,w(l)?(r=y.call(l,"c"),n=y.call(l,"e")):(r=!0,n=!1),s={get:t,set:o,configurable:r,enumerable:n},a?i(_(a),s):s}},33064:function(R,E,e){function w(n,a){return n<a?-1:n>a?1:n>=a?0:NaN}e.d(E,{j2:function(){return w},Fp:function(){return _},J6:function(){return h},TS:function(){return l},VV:function(){return t},w6:function(){return o},Sm:function(){return r}}),(k=w).length===1&&(i=k,k=function(n,a){return w(i(n),a)});var k,i;function _(n,a){var s,u,p=n.length,c=-1;if(a==null){for(;++c<p;)if((s=n[c])!=null&&s>=s)for(u=s;++c<p;)(s=n[c])!=null&&s>u&&(u=s)}else for(;++c<p;)if((s=a(n[c],c,n))!=null&&s>=s)for(u=s;++c<p;)(s=a(n[c],c,n))!=null&&s>u&&(u=s);return u}function y(n){return n===null?NaN:+n}function h(n,a){var s,u=n.length,p=u,c=-1,b=0;if(a==null)for(;++c<u;)isNaN(s=y(n[c]))?--p:b+=s;else for(;++c<u;)isNaN(s=y(a(n[c],c,n)))?--p:b+=s;if(p)return b/p}function l(n){for(var a,s,u,p=n.length,c=-1,b=0;++c<p;)b+=n[c].length;for(s=new Array(b);--p>=0;)for(a=(u=n[p]).length;--a>=0;)s[--b]=u[a];return s}function t(n,a){var s,u,p=n.length,c=-1;if(a==null){for(;++c<p;)if((s=n[c])!=null&&s>=s)for(u=s;++c<p;)(s=n[c])!=null&&u>s&&(u=s)}else for(;++c<p;)if((s=a(n[c],c,n))!=null&&s>=s)for(u=s;++c<p;)(s=a(n[c],c,n))!=null&&u>s&&(u=s);return u}function o(n,a,s){n=+n,a=+a,s=(p=arguments.length)<2?(a=n,n=0,1):p<3?1:+s;for(var u=-1,p=0|Math.max(0,Math.ceil((a-n)/s)),c=new Array(p);++u<p;)c[u]=n+u*s;return c}function r(n,a){var s,u=n.length,p=-1,c=0;if(a==null)for(;++p<u;)(s=+n[p])&&(c+=s);else for(;++p<u;)(s=+a(n[p],p,n))&&(c+=s);return c}},15140:function(R,E,e){e.d(E,{UI:function(){return _},b1:function(){return y}});var w="$";function k(){}function i(a,s){var u=new k;if(a instanceof k)a.each(function(f,v){u.set(v,f)});else if(Array.isArray(a)){var p,c=-1,b=a.length;if(s==null)for(;++c<b;)u.set(c,a[c]);else for(;++c<b;)u.set(s(p=a[c],c,a),p)}else if(a)for(var g in a)u.set(g,a[g]);return u}k.prototype=i.prototype={constructor:k,has:function(a){return w+a in this},get:function(a){return this[w+a]},set:function(a,s){return this[w+a]=s,this},remove:function(a){var s=w+a;return s in this&&delete this[s]},clear:function(){for(var a in this)a[0]===w&&delete this[a]},keys:function(){var a=[];for(var s in this)s[0]===w&&a.push(s.slice(1));return a},values:function(){var a=[];for(var s in this)s[0]===w&&a.push(this[s]);return a},entries:function(){var a=[];for(var s in this)s[0]===w&&a.push({key:s.slice(1),value:this[s]});return a},size:function(){var a=0;for(var s in this)s[0]===w&&++a;return a},empty:function(){for(var a in this)if(a[0]===w)return!1;return!0},each:function(a){for(var s in this)s[0]===w&&a(this[s],s.slice(1),this)}};var _=i;function y(){var a,s,u,p=[],c=[];function b(f,v,m,x){if(v>=p.length)return a!=null&&f.sort(a),s!=null?s(f):f;for(var T,d,M,A=-1,C=f.length,P=p[v++],O=_(),z=m();++A<C;)(M=O.get(T=P(d=f[A])+""))?M.push(d):O.set(T,[d]);return O.each(function(B,Y){x(z,Y,b(B,v,m,x))}),z}function g(f,v){if(++v>p.length)return f;var m,x=c[v-1];return s!=null&&v>=p.length?m=f.entries():(m=[],f.each(function(T,d){m.push({key:d,values:g(T,v)})})),x!=null?m.sort(function(T,d){return x(T.key,d.key)}):m}return u={object:function(f){return b(f,0,h,l)},map:function(f){return b(f,0,t,o)},entries:function(f){return g(b(f,0,t,o),0)},key:function(f){return p.push(f),u},sortKeys:function(f){return c[p.length-1]=f,u},sortValues:function(f){return a=f,u},rollup:function(f){return s=f,u}}}function h(){return{}}function l(a,s,u){a[s]=u}function t(){return _()}function o(a,s,u){a.set(s,u)}function r(){}var n=_.prototype;r.prototype={constructor:r,has:n.has,add:function(a){return this[w+(a+="")]=a,this},remove:n.remove,clear:n.clear,values:n.keys,size:n.size,empty:n.empty,each:n.each}},49887:function(R,E,e){function w(we,xe){var De;function Ee(){var Me,he,fe=De.length,ae=0,be=0;for(Me=0;Me<fe;++Me)ae+=(he=De[Me]).x,be+=he.y;for(ae=ae/fe-we,be=be/fe-xe,Me=0;Me<fe;++Me)(he=De[Me]).x-=ae,he.y-=be}return we==null&&(we=0),xe==null&&(xe=0),Ee.initialize=function(Me){De=Me},Ee.x=function(Me){return arguments.length?(we=+Me,Ee):we},Ee.y=function(Me){return arguments.length?(xe=+Me,Ee):xe},Ee}function k(we){return function(){return we}}function i(){return 1e-6*(Math.random()-.5)}function _(we,xe,De,Ee){if(isNaN(xe)||isNaN(De))return we;var Me,he,fe,ae,be,Ie,Te,Ne,qe,ve=we._root,Ce={data:Ee},Ae=we._x0,ze=we._y0,Ue=we._x1,Ve=we._y1;if(!ve)return we._root=Ce,we;for(;ve.length;)if((Ie=xe>=(he=(Ae+Ue)/2))?Ae=he:Ue=he,(Te=De>=(fe=(ze+Ve)/2))?ze=fe:Ve=fe,Me=ve,!(ve=ve[Ne=Te<<1|Ie]))return Me[Ne]=Ce,we;if(ae=+we._x.call(null,ve.data),be=+we._y.call(null,ve.data),xe===ae&&De===be)return Ce.next=ve,Me?Me[Ne]=Ce:we._root=Ce,we;do Me=Me?Me[Ne]=new Array(4):we._root=new Array(4),(Ie=xe>=(he=(Ae+Ue)/2))?Ae=he:Ue=he,(Te=De>=(fe=(ze+Ve)/2))?ze=fe:Ve=fe;while((Ne=Te<<1|Ie)==(qe=(be>=fe)<<1|ae>=he));return Me[qe]=ve,Me[Ne]=Ce,we}function y(we,xe,De,Ee,Me){this.node=we,this.x0=xe,this.y0=De,this.x1=Ee,this.y1=Me}function h(we){return we[0]}function l(we){return we[1]}function t(we,xe,De){var Ee=new o(xe??h,De??l,NaN,NaN,NaN,NaN);return we==null?Ee:Ee.addAll(we)}function o(we,xe,De,Ee,Me,he){this._x=we,this._y=xe,this._x0=De,this._y0=Ee,this._x1=Me,this._y1=he,this._root=void 0}function r(we){for(var xe={data:we.data},De=xe;we=we.next;)De=De.next={data:we.data};return xe}e.r(E),e.d(E,{forceCenter:function(){return w},forceCollide:function(){return u},forceLink:function(){return g},forceManyBody:function(){return de},forceRadial:function(){return me},forceSimulation:function(){return ce},forceX:function(){return _e},forceY:function(){return Se}});var n=t.prototype=o.prototype;function a(we){return we.x+we.vx}function s(we){return we.y+we.vy}function u(we){var xe,De,Ee=1,Me=1;function he(){for(var be,Ie,Te,Ne,qe,ve,Ce,Ae=xe.length,ze=0;ze<Me;++ze)for(Ie=t(xe,a,s).visitAfter(fe),be=0;be<Ae;++be)Te=xe[be],ve=De[Te.index],Ce=ve*ve,Ne=Te.x+Te.vx,qe=Te.y+Te.vy,Ie.visit(Ue);function Ue(Ve,Ye,$e,rt,ht){var nt=Ve.data,bt=Ve.r,wt=ve+bt;if(!nt)return Ye>Ne+wt||rt<Ne-wt||$e>qe+wt||ht<qe-wt;if(nt.index>Te.index){var ut=Ne-nt.x-nt.vx,lt=qe-nt.y-nt.vy,Tt=ut*ut+lt*lt;Tt<wt*wt&&(ut===0&&(Tt+=(ut=i())*ut),lt===0&&(Tt+=(lt=i())*lt),Tt=(wt-(Tt=Math.sqrt(Tt)))/Tt*Ee,Te.vx+=(ut*=Tt)*(wt=(bt*=bt)/(Ce+bt)),Te.vy+=(lt*=Tt)*wt,nt.vx-=ut*(wt=1-wt),nt.vy-=lt*wt)}}}function fe(be){if(be.data)return be.r=De[be.data.index];for(var Ie=be.r=0;Ie<4;++Ie)be[Ie]&&be[Ie].r>be.r&&(be.r=be[Ie].r)}function ae(){if(xe){var be,Ie,Te=xe.length;for(De=new Array(Te),be=0;be<Te;++be)Ie=xe[be],De[Ie.index]=+we(Ie,be,xe)}}return typeof we!="function"&&(we=k(we==null?1:+we)),he.initialize=function(be){xe=be,ae()},he.iterations=function(be){return arguments.length?(Me=+be,he):Me},he.strength=function(be){return arguments.length?(Ee=+be,he):Ee},he.radius=function(be){return arguments.length?(we=typeof be=="function"?be:k(+be),ae(),he):we},he}n.copy=function(){var we,xe,De=new o(this._x,this._y,this._x0,this._y0,this._x1,this._y1),Ee=this._root;if(!Ee)return De;if(!Ee.length)return De._root=r(Ee),De;for(we=[{source:Ee,target:De._root=new Array(4)}];Ee=we.pop();)for(var Me=0;Me<4;++Me)(xe=Ee.source[Me])&&(xe.length?we.push({source:xe,target:Ee.target[Me]=new Array(4)}):Ee.target[Me]=r(xe));return De},n.add=function(we){var xe=+this._x.call(null,we),De=+this._y.call(null,we);return _(this.cover(xe,De),xe,De,we)},n.addAll=function(we){var xe,De,Ee,Me,he=we.length,fe=new Array(he),ae=new Array(he),be=1/0,Ie=1/0,Te=-1/0,Ne=-1/0;for(De=0;De<he;++De)isNaN(Ee=+this._x.call(null,xe=we[De]))||isNaN(Me=+this._y.call(null,xe))||(fe[De]=Ee,ae[De]=Me,Ee<be&&(be=Ee),Ee>Te&&(Te=Ee),Me<Ie&&(Ie=Me),Me>Ne&&(Ne=Me));if(be>Te||Ie>Ne)return this;for(this.cover(be,Ie).cover(Te,Ne),De=0;De<he;++De)_(this,fe[De],ae[De],we[De]);return this},n.cover=function(we,xe){if(isNaN(we=+we)||isNaN(xe=+xe))return this;var De=this._x0,Ee=this._y0,Me=this._x1,he=this._y1;if(isNaN(De))Me=(De=Math.floor(we))+1,he=(Ee=Math.floor(xe))+1;else{for(var fe,ae,be=Me-De,Ie=this._root;De>we||we>=Me||Ee>xe||xe>=he;)switch(ae=(xe<Ee)<<1|we<De,(fe=new Array(4))[ae]=Ie,Ie=fe,be*=2,ae){case 0:Me=De+be,he=Ee+be;break;case 1:De=Me-be,he=Ee+be;break;case 2:Me=De+be,Ee=he-be;break;case 3:De=Me-be,Ee=he-be}this._root&&this._root.length&&(this._root=Ie)}return this._x0=De,this._y0=Ee,this._x1=Me,this._y1=he,this},n.data=function(){var we=[];return this.visit(function(xe){if(!xe.length)do we.push(xe.data);while(xe=xe.next)}),we},n.extent=function(we){return arguments.length?this.cover(+we[0][0],+we[0][1]).cover(+we[1][0],+we[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]},n.find=function(we,xe,De){var Ee,Me,he,fe,ae,be,Ie,Te=this._x0,Ne=this._y0,qe=this._x1,ve=this._y1,Ce=[],Ae=this._root;for(Ae&&Ce.push(new y(Ae,Te,Ne,qe,ve)),De==null?De=1/0:(Te=we-De,Ne=xe-De,qe=we+De,ve=xe+De,De*=De);be=Ce.pop();)if(!(!(Ae=be.node)||(Me=be.x0)>qe||(he=be.y0)>ve||(fe=be.x1)<Te||(ae=be.y1)<Ne))if(Ae.length){var ze=(Me+fe)/2,Ue=(he+ae)/2;Ce.push(new y(Ae[3],ze,Ue,fe,ae),new y(Ae[2],Me,Ue,ze,ae),new y(Ae[1],ze,he,fe,Ue),new y(Ae[0],Me,he,ze,Ue)),(Ie=(xe>=Ue)<<1|we>=ze)&&(be=Ce[Ce.length-1],Ce[Ce.length-1]=Ce[Ce.length-1-Ie],Ce[Ce.length-1-Ie]=be)}else{var Ve=we-+this._x.call(null,Ae.data),Ye=xe-+this._y.call(null,Ae.data),$e=Ve*Ve+Ye*Ye;if($e<De){var rt=Math.sqrt(De=$e);Te=we-rt,Ne=xe-rt,qe=we+rt,ve=xe+rt,Ee=Ae.data}}return Ee},n.remove=function(we){if(isNaN(he=+this._x.call(null,we))||isNaN(fe=+this._y.call(null,we)))return this;var xe,De,Ee,Me,he,fe,ae,be,Ie,Te,Ne,qe,ve=this._root,Ce=this._x0,Ae=this._y0,ze=this._x1,Ue=this._y1;if(!ve)return this;if(ve.length)for(;;){if((Ie=he>=(ae=(Ce+ze)/2))?Ce=ae:ze=ae,(Te=fe>=(be=(Ae+Ue)/2))?Ae=be:Ue=be,xe=ve,!(ve=ve[Ne=Te<<1|Ie]))return this;if(!ve.length)break;(xe[Ne+1&3]||xe[Ne+2&3]||xe[Ne+3&3])&&(De=xe,qe=Ne)}for(;ve.data!==we;)if(Ee=ve,!(ve=ve.next))return this;return(Me=ve.next)&&delete ve.next,Ee?(Me?Ee.next=Me:delete Ee.next,this):xe?(Me?xe[Ne]=Me:delete xe[Ne],(ve=xe[0]||xe[1]||xe[2]||xe[3])&&ve===(xe[3]||xe[2]||xe[1]||xe[0])&&!ve.length&&(De?De[qe]=ve:this._root=ve),this):(this._root=Me,this)},n.removeAll=function(we){for(var xe=0,De=we.length;xe<De;++xe)this.remove(we[xe]);return this},n.root=function(){return this._root},n.size=function(){var we=0;return this.visit(function(xe){if(!xe.length)do++we;while(xe=xe.next)}),we},n.visit=function(we){var xe,De,Ee,Me,he,fe,ae=[],be=this._root;for(be&&ae.push(new y(be,this._x0,this._y0,this._x1,this._y1));xe=ae.pop();)if(!we(be=xe.node,Ee=xe.x0,Me=xe.y0,he=xe.x1,fe=xe.y1)&&be.length){var Ie=(Ee+he)/2,Te=(Me+fe)/2;(De=be[3])&&ae.push(new y(De,Ie,Te,he,fe)),(De=be[2])&&ae.push(new y(De,Ee,Te,Ie,fe)),(De=be[1])&&ae.push(new y(De,Ie,Me,he,Te)),(De=be[0])&&ae.push(new y(De,Ee,Me,Ie,Te))}return this},n.visitAfter=function(we){var xe,De=[],Ee=[];for(this._root&&De.push(new y(this._root,this._x0,this._y0,this._x1,this._y1));xe=De.pop();){var Me=xe.node;if(Me.length){var he,fe=xe.x0,ae=xe.y0,be=xe.x1,Ie=xe.y1,Te=(fe+be)/2,Ne=(ae+Ie)/2;(he=Me[0])&&De.push(new y(he,fe,ae,Te,Ne)),(he=Me[1])&&De.push(new y(he,Te,ae,be,Ne)),(he=Me[2])&&De.push(new y(he,fe,Ne,Te,Ie)),(he=Me[3])&&De.push(new y(he,Te,Ne,be,Ie))}Ee.push(xe)}for(;xe=Ee.pop();)we(xe.node,xe.x0,xe.y0,xe.x1,xe.y1);return this},n.x=function(we){return arguments.length?(this._x=we,this):this._x},n.y=function(we){return arguments.length?(this._y=we,this):this._y};var p=e(15140);function c(we){return we.index}function b(we,xe){var De=we.get(xe);if(!De)throw new Error("missing: "+xe);return De}function g(we){var xe,De,Ee,Me,he,fe=c,ae=function(Ce){return 1/Math.min(Me[Ce.source.index],Me[Ce.target.index])},be=k(30),Ie=1;function Te(Ce){for(var Ae=0,ze=we.length;Ae<Ie;++Ae)for(var Ue,Ve,Ye,$e,rt,ht,nt,bt=0;bt<ze;++bt)Ve=(Ue=we[bt]).source,$e=(Ye=Ue.target).x+Ye.vx-Ve.x-Ve.vx||i(),rt=Ye.y+Ye.vy-Ve.y-Ve.vy||i(),$e*=ht=((ht=Math.sqrt($e*$e+rt*rt))-De[bt])/ht*Ce*xe[bt],rt*=ht,Ye.vx-=$e*(nt=he[bt]),Ye.vy-=rt*nt,Ve.vx+=$e*(nt=1-nt),Ve.vy+=rt*nt}function Ne(){if(Ee){var Ce,Ae,ze=Ee.length,Ue=we.length,Ve=(0,p.UI)(Ee,fe);for(Ce=0,Me=new Array(ze);Ce<Ue;++Ce)(Ae=we[Ce]).index=Ce,typeof Ae.source!="object"&&(Ae.source=b(Ve,Ae.source)),typeof Ae.target!="object"&&(Ae.target=b(Ve,Ae.target)),Me[Ae.source.index]=(Me[Ae.source.index]||0)+1,Me[Ae.target.index]=(Me[Ae.target.index]||0)+1;for(Ce=0,he=new Array(Ue);Ce<Ue;++Ce)Ae=we[Ce],he[Ce]=Me[Ae.source.index]/(Me[Ae.source.index]+Me[Ae.target.index]);xe=new Array(Ue),qe(),De=new Array(Ue),ve()}}function qe(){if(Ee)for(var Ce=0,Ae=we.length;Ce<Ae;++Ce)xe[Ce]=+ae(we[Ce],Ce,we)}function ve(){if(Ee)for(var Ce=0,Ae=we.length;Ce<Ae;++Ce)De[Ce]=+be(we[Ce],Ce,we)}return we==null&&(we=[]),Te.initialize=function(Ce){Ee=Ce,Ne()},Te.links=function(Ce){return arguments.length?(we=Ce,Ne(),Te):we},Te.id=function(Ce){return arguments.length?(fe=Ce,Te):fe},Te.iterations=function(Ce){return arguments.length?(Ie=+Ce,Te):Ie},Te.strength=function(Ce){return arguments.length?(ae=typeof Ce=="function"?Ce:k(+Ce),qe(),Te):ae},Te.distance=function(Ce){return arguments.length?(be=typeof Ce=="function"?Ce:k(+Ce),ve(),Te):be},Te}var f={value:function(){}};function v(){for(var we,xe=0,De=arguments.length,Ee={};xe<De;++xe){if(!(we=arguments[xe]+"")||we in Ee||/[\s.]/.test(we))throw new Error("illegal type: "+we);Ee[we]=[]}return new m(Ee)}function m(we){this._=we}function x(we,xe){for(var De,Ee=0,Me=we.length;Ee<Me;++Ee)if((De=we[Ee]).name===xe)return De.value}function T(we,xe,De){for(var Ee=0,Me=we.length;Ee<Me;++Ee)if(we[Ee].name===xe){we[Ee]=f,we=we.slice(0,Ee).concat(we.slice(Ee+1));break}return De!=null&&we.push({name:xe,value:De}),we}m.prototype=v.prototype={constructor:m,on:function(we,xe){var De,Ee,Me=this._,he=(Ee=Me,(we+"").trim().split(/^|\s+/).map(function(be){var Ie="",Te=be.indexOf(".");if(Te>=0&&(Ie=be.slice(Te+1),be=be.slice(0,Te)),be&&!Ee.hasOwnProperty(be))throw new Error("unknown type: "+be);return{type:be,name:Ie}})),fe=-1,ae=he.length;if(!(arguments.length<2)){if(xe!=null&&typeof xe!="function")throw new Error("invalid callback: "+xe);for(;++fe<ae;)if(De=(we=he[fe]).type)Me[De]=T(Me[De],we.name,xe);else if(xe==null)for(De in Me)Me[De]=T(Me[De],we.name,null);return this}for(;++fe<ae;)if((De=(we=he[fe]).type)&&(De=x(Me[De],we.name)))return De},copy:function(){var we={},xe=this._;for(var De in xe)we[De]=xe[De].slice();return new m(we)},call:function(we,xe){if((De=arguments.length-2)>0)for(var De,Ee,Me=new Array(De),he=0;he<De;++he)Me[he]=arguments[he+2];if(!this._.hasOwnProperty(we))throw new Error("unknown type: "+we);for(he=0,De=(Ee=this._[we]).length;he<De;++he)Ee[he].value.apply(xe,Me)},apply:function(we,xe,De){if(!this._.hasOwnProperty(we))throw new Error("unknown type: "+we);for(var Ee=this._[we],Me=0,he=Ee.length;Me<he;++Me)Ee[Me].value.apply(xe,De)}};var d,M,A=v,C=0,P=0,O=0,z=1e3,B=0,Y=0,D=0,G=typeof performance=="object"&&performance.now?performance:Date,V=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(we){setTimeout(we,17)};function j(){return Y||(V(W),Y=G.now()+D)}function W(){Y=0}function Z(){this._call=this._time=this._next=null}function ie(we,xe,De){var Ee=new Z;return Ee.restart(we,xe,De),Ee}function te(){Y=(B=G.now())+D,C=P=0;try{(function(){j(),++C;for(var we,xe=d;xe;)(we=Y-xe._time)>=0&&xe._call.call(null,we),xe=xe._next;--C})()}finally{C=0,function(){for(var we,xe,De=d,Ee=1/0;De;)De._call?(Ee>De._time&&(Ee=De._time),we=De,De=De._next):(xe=De._next,De._next=null,De=we?we._next=xe:d=xe);M=we,X(Ee)}(),Y=0}}function J(){var we=G.now(),xe=we-B;xe>z&&(D-=xe,B=we)}function X(we){C||(P&&(P=clearTimeout(P)),we-Y>24?(we<1/0&&(P=setTimeout(te,we-G.now()-D)),O&&(O=clearInterval(O))):(O||(B=G.now(),O=setInterval(J,z)),C=1,V(te)))}function ee(we){return we.x}function re(we){return we.y}Z.prototype=ie.prototype={constructor:Z,restart:function(we,xe,De){if(typeof we!="function")throw new TypeError("callback is not a function");De=(De==null?j():+De)+(xe==null?0:+xe),this._next||M===this||(M?M._next=this:d=this,M=this),this._call=we,this._time=De,X()},stop:function(){this._call&&(this._call=null,this._time=1/0,X())}};var oe=10,ue=Math.PI*(3-Math.sqrt(5));function ce(we){var xe,De=1,Ee=.001,Me=1-Math.pow(Ee,1/300),he=0,fe=.6,ae=(0,p.UI)(),be=ie(Te),Ie=A("tick","end");function Te(){Ne(),Ie.call("tick",xe),De<Ee&&(be.stop(),Ie.call("end",xe))}function Ne(Ce){var Ae,ze,Ue=we.length;Ce===void 0&&(Ce=1);for(var Ve=0;Ve<Ce;++Ve)for(De+=(he-De)*Me,ae.each(function(Ye){Ye(De)}),Ae=0;Ae<Ue;++Ae)(ze=we[Ae]).fx==null?ze.x+=ze.vx*=fe:(ze.x=ze.fx,ze.vx=0),ze.fy==null?ze.y+=ze.vy*=fe:(ze.y=ze.fy,ze.vy=0);return xe}function qe(){for(var Ce,Ae=0,ze=we.length;Ae<ze;++Ae){if((Ce=we[Ae]).index=Ae,Ce.fx!=null&&(Ce.x=Ce.fx),Ce.fy!=null&&(Ce.y=Ce.fy),isNaN(Ce.x)||isNaN(Ce.y)){var Ue=oe*Math.sqrt(Ae),Ve=Ae*ue;Ce.x=Ue*Math.cos(Ve),Ce.y=Ue*Math.sin(Ve)}(isNaN(Ce.vx)||isNaN(Ce.vy))&&(Ce.vx=Ce.vy=0)}}function ve(Ce){return Ce.initialize&&Ce.initialize(we),Ce}return we==null&&(we=[]),qe(),xe={tick:Ne,restart:function(){return be.restart(Te),xe},stop:function(){return be.stop(),xe},nodes:function(Ce){return arguments.length?(we=Ce,qe(),ae.each(ve),xe):we},alpha:function(Ce){return arguments.length?(De=+Ce,xe):De},alphaMin:function(Ce){return arguments.length?(Ee=+Ce,xe):Ee},alphaDecay:function(Ce){return arguments.length?(Me=+Ce,xe):+Me},alphaTarget:function(Ce){return arguments.length?(he=+Ce,xe):he},velocityDecay:function(Ce){return arguments.length?(fe=1-Ce,xe):1-fe},force:function(Ce,Ae){return arguments.length>1?(Ae==null?ae.remove(Ce):ae.set(Ce,ve(Ae)),xe):ae.get(Ce)},find:function(Ce,Ae,ze){var Ue,Ve,Ye,$e,rt,ht=0,nt=we.length;for(ze==null?ze=1/0:ze*=ze,ht=0;ht<nt;++ht)(Ye=(Ue=Ce-($e=we[ht]).x)*Ue+(Ve=Ae-$e.y)*Ve)<ze&&(rt=$e,ze=Ye);return rt},on:function(Ce,Ae){return arguments.length>1?(Ie.on(Ce,Ae),xe):Ie.on(Ce)}}}function de(){var we,xe,De,Ee,Me=k(-30),he=1,fe=1/0,ae=.81;function be(qe){var ve,Ce=we.length,Ae=t(we,ee,re).visitAfter(Te);for(De=qe,ve=0;ve<Ce;++ve)xe=we[ve],Ae.visit(Ne)}function Ie(){if(we){var qe,ve,Ce=we.length;for(Ee=new Array(Ce),qe=0;qe<Ce;++qe)ve=we[qe],Ee[ve.index]=+Me(ve,qe,we)}}function Te(qe){var ve,Ce,Ae,ze,Ue,Ve=0,Ye=0;if(qe.length){for(Ae=ze=Ue=0;Ue<4;++Ue)(ve=qe[Ue])&&(Ce=Math.abs(ve.value))&&(Ve+=ve.value,Ye+=Ce,Ae+=Ce*ve.x,ze+=Ce*ve.y);qe.x=Ae/Ye,qe.y=ze/Ye}else{(ve=qe).x=ve.data.x,ve.y=ve.data.y;do Ve+=Ee[ve.data.index];while(ve=ve.next)}qe.value=Ve}function Ne(qe,ve,Ce,Ae){if(!qe.value)return!0;var ze=qe.x-xe.x,Ue=qe.y-xe.y,Ve=Ae-ve,Ye=ze*ze+Ue*Ue;if(Ve*Ve/ae<Ye)return Ye<fe&&(ze===0&&(Ye+=(ze=i())*ze),Ue===0&&(Ye+=(Ue=i())*Ue),Ye<he&&(Ye=Math.sqrt(he*Ye)),xe.vx+=ze*qe.value*De/Ye,xe.vy+=Ue*qe.value*De/Ye),!0;if(!(qe.length||Ye>=fe)){(qe.data!==xe||qe.next)&&(ze===0&&(Ye+=(ze=i())*ze),Ue===0&&(Ye+=(Ue=i())*Ue),Ye<he&&(Ye=Math.sqrt(he*Ye)));do qe.data!==xe&&(Ve=Ee[qe.data.index]*De/Ye,xe.vx+=ze*Ve,xe.vy+=Ue*Ve);while(qe=qe.next)}}return be.initialize=function(qe){we=qe,Ie()},be.strength=function(qe){return arguments.length?(Me=typeof qe=="function"?qe:k(+qe),Ie(),be):Me},be.distanceMin=function(qe){return arguments.length?(he=qe*qe,be):Math.sqrt(he)},be.distanceMax=function(qe){return arguments.length?(fe=qe*qe,be):Math.sqrt(fe)},be.theta=function(qe){return arguments.length?(ae=qe*qe,be):Math.sqrt(ae)},be}function me(we,xe,De){var Ee,Me,he,fe=k(.1);function ae(Ie){for(var Te=0,Ne=Ee.length;Te<Ne;++Te){var qe=Ee[Te],ve=qe.x-xe||1e-6,Ce=qe.y-De||1e-6,Ae=Math.sqrt(ve*ve+Ce*Ce),ze=(he[Te]-Ae)*Me[Te]*Ie/Ae;qe.vx+=ve*ze,qe.vy+=Ce*ze}}function be(){if(Ee){var Ie,Te=Ee.length;for(Me=new Array(Te),he=new Array(Te),Ie=0;Ie<Te;++Ie)he[Ie]=+we(Ee[Ie],Ie,Ee),Me[Ie]=isNaN(he[Ie])?0:+fe(Ee[Ie],Ie,Ee)}}return typeof we!="function"&&(we=k(+we)),xe==null&&(xe=0),De==null&&(De=0),ae.initialize=function(Ie){Ee=Ie,be()},ae.strength=function(Ie){return arguments.length?(fe=typeof Ie=="function"?Ie:k(+Ie),be(),ae):fe},ae.radius=function(Ie){return arguments.length?(we=typeof Ie=="function"?Ie:k(+Ie),be(),ae):we},ae.x=function(Ie){return arguments.length?(xe=+Ie,ae):xe},ae.y=function(Ie){return arguments.length?(De=+Ie,ae):De},ae}function _e(we){var xe,De,Ee,Me=k(.1);function he(ae){for(var be,Ie=0,Te=xe.length;Ie<Te;++Ie)(be=xe[Ie]).vx+=(Ee[Ie]-be.x)*De[Ie]*ae}function fe(){if(xe){var ae,be=xe.length;for(De=new Array(be),Ee=new Array(be),ae=0;ae<be;++ae)De[ae]=isNaN(Ee[ae]=+we(xe[ae],ae,xe))?0:+Me(xe[ae],ae,xe)}}return typeof we!="function"&&(we=k(we==null?0:+we)),he.initialize=function(ae){xe=ae,fe()},he.strength=function(ae){return arguments.length?(Me=typeof ae=="function"?ae:k(+ae),fe(),he):Me},he.x=function(ae){return arguments.length?(we=typeof ae=="function"?ae:k(+ae),fe(),he):we},he}function Se(we){var xe,De,Ee,Me=k(.1);function he(ae){for(var be,Ie=0,Te=xe.length;Ie<Te;++Ie)(be=xe[Ie]).vy+=(Ee[Ie]-be.y)*De[Ie]*ae}function fe(){if(xe){var ae,be=xe.length;for(De=new Array(be),Ee=new Array(be),ae=0;ae<be;++ae)De[ae]=isNaN(Ee[ae]=+we(xe[ae],ae,xe))?0:+Me(xe[ae],ae,xe)}}return typeof we!="function"&&(we=k(we==null?0:+we)),he.initialize=function(ae){xe=ae,fe()},he.strength=function(ae){return arguments.length?(Me=typeof ae=="function"?ae:k(+ae),fe(),he):Me},he.y=function(ae){return arguments.length?(we=typeof ae=="function"?ae:k(+ae),fe(),he):we},he}},60721:function(R,E,e){function w(u,p){if((c=(u=p?u.toExponential(p-1):u.toExponential()).indexOf("e"))<0)return null;var c,b=u.slice(0,c);return[b.length>1?b[0]+b.slice(2):b,+u.slice(c+1)]}e.d(E,{WU:function(){return r},FF:function(){return s}});var k,i=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function _(u){if(!(p=i.exec(u)))throw new Error("invalid format: "+u);var p;return new y({fill:p[1],align:p[2],sign:p[3],symbol:p[4],zero:p[5],width:p[6],comma:p[7],precision:p[8]&&p[8].slice(1),trim:p[9],type:p[10]})}function y(u){this.fill=u.fill===void 0?" ":u.fill+"",this.align=u.align===void 0?">":u.align+"",this.sign=u.sign===void 0?"-":u.sign+"",this.symbol=u.symbol===void 0?"":u.symbol+"",this.zero=!!u.zero,this.width=u.width===void 0?void 0:+u.width,this.comma=!!u.comma,this.precision=u.precision===void 0?void 0:+u.precision,this.trim=!!u.trim,this.type=u.type===void 0?"":u.type+""}function h(u,p){var c=w(u,p);if(!c)return u+"";var b=c[0],g=c[1];return g<0?"0."+new Array(-g).join("0")+b:b.length>g+1?b.slice(0,g+1)+"."+b.slice(g+1):b+new Array(g-b.length+2).join("0")}_.prototype=y.prototype,y.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,0|this.width))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};var l={"%":function(u,p){return(100*u).toFixed(p)},b:function(u){return Math.round(u).toString(2)},c:function(u){return u+""},d:function(u){return Math.abs(u=Math.round(u))>=1e21?u.toLocaleString("en").replace(/,/g,""):u.toString(10)},e:function(u,p){return u.toExponential(p)},f:function(u,p){return u.toFixed(p)},g:function(u,p){return u.toPrecision(p)},o:function(u){return Math.round(u).toString(8)},p:function(u,p){return h(100*u,p)},r:h,s:function(u,p){var c=w(u,p);if(!c)return u+"";var b=c[0],g=c[1],f=g-(k=3*Math.max(-8,Math.min(8,Math.floor(g/3))))+1,v=b.length;return f===v?b:f>v?b+new Array(f-v+1).join("0"):f>0?b.slice(0,f)+"."+b.slice(f):"0."+new Array(1-f).join("0")+w(u,Math.max(0,p+f-1))[0]},X:function(u){return Math.round(u).toString(16).toUpperCase()},x:function(u){return Math.round(u).toString(16)}};function t(u){return u}var o,r,n=Array.prototype.map,a=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function s(u){var p,c,b=u.grouping===void 0||u.thousands===void 0?t:(p=n.call(u.grouping,Number),c=u.thousands+"",function(A,C){for(var P=A.length,O=[],z=0,B=p[0],Y=0;P>0&&B>0&&(Y+B+1>C&&(B=Math.max(1,C-Y)),O.push(A.substring(P-=B,P+B)),!((Y+=B+1)>C));)B=p[z=(z+1)%p.length];return O.reverse().join(c)}),g=u.currency===void 0?"":u.currency[0]+"",f=u.currency===void 0?"":u.currency[1]+"",v=u.decimal===void 0?".":u.decimal+"",m=u.numerals===void 0?t:function(A){return function(C){return C.replace(/[0-9]/g,function(P){return A[+P]})}}(n.call(u.numerals,String)),x=u.percent===void 0?"%":u.percent+"",T=u.minus===void 0?"-":u.minus+"",d=u.nan===void 0?"NaN":u.nan+"";function M(A){var C=(A=_(A)).fill,P=A.align,O=A.sign,z=A.symbol,B=A.zero,Y=A.width,D=A.comma,G=A.precision,V=A.trim,j=A.type;j==="n"?(D=!0,j="g"):l[j]||(G===void 0&&(G=12),V=!0,j="g"),(B||C==="0"&&P==="=")&&(B=!0,C="0",P="=");var W=z==="$"?g:z==="#"&&/[boxX]/.test(j)?"0"+j.toLowerCase():"",Z=z==="$"?f:/[%p]/.test(j)?x:"",ie=l[j],te=/[defgprs%]/.test(j);function J(X){var ee,re,oe,ue=W,ce=Z;if(j==="c")ce=ie(X)+ce,X="";else{var de=(X=+X)<0||1/X<0;if(X=isNaN(X)?d:ie(Math.abs(X),G),V&&(X=function(Se){e:for(var we,xe=Se.length,De=1,Ee=-1;De<xe;++De)switch(Se[De]){case".":Ee=we=De;break;case"0":Ee===0&&(Ee=De),we=De;break;default:if(!+Se[De])break e;Ee>0&&(Ee=0)}return Ee>0?Se.slice(0,Ee)+Se.slice(we+1):Se}(X)),de&&+X==0&&O!=="+"&&(de=!1),ue=(de?O==="("?O:T:O==="-"||O==="("?"":O)+ue,ce=(j==="s"?a[8+k/3]:"")+ce+(de&&O==="("?")":""),te){for(ee=-1,re=X.length;++ee<re;)if(48>(oe=X.charCodeAt(ee))||oe>57){ce=(oe===46?v+X.slice(ee+1):X.slice(ee))+ce,X=X.slice(0,ee);break}}}D&&!B&&(X=b(X,1/0));var me=ue.length+X.length+ce.length,_e=me<Y?new Array(Y-me+1).join(C):"";switch(D&&B&&(X=b(_e+X,_e.length?Y-ce.length:1/0),_e=""),P){case"<":X=ue+X+ce+_e;break;case"=":X=ue+_e+X+ce;break;case"^":X=_e.slice(0,me=_e.length>>1)+ue+X+ce+_e.slice(me);break;default:X=_e+ue+X+ce}return m(X)}return G=G===void 0?6:/[gprs]/.test(j)?Math.max(1,Math.min(21,G)):Math.max(0,Math.min(20,G)),J.toString=function(){return A+""},J}return{format:M,formatPrefix:function(A,C){var P,O=M(((A=_(A)).type="f",A)),z=3*Math.max(-8,Math.min(8,Math.floor((P=C,((P=w(Math.abs(P)))?P[1]:NaN)/3)))),B=Math.pow(10,-z),Y=a[8+z/3];return function(D){return O(B*D)+Y}}}}o=s({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"}),r=o.format,o.formatPrefix},65704:function(R,E,e){e.r(E),e.d(E,{geoAiry:function(){return D},geoAiryRaw:function(){return Y},geoAitoff:function(){return V},geoAitoffRaw:function(){return G},geoArmadillo:function(){return W},geoArmadilloRaw:function(){return j},geoAugust:function(){return ie},geoAugustRaw:function(){return Z},geoBaker:function(){return ee},geoBakerRaw:function(){return X},geoBerghaus:function(){return ue},geoBerghausRaw:function(){return oe},geoBertin1953:function(){return De},geoBertin1953Raw:function(){return xe},geoBoggs:function(){return Te},geoBoggsRaw:function(){return Ie},geoBonne:function(){return Ae},geoBonneRaw:function(){return Ce},geoBottomley:function(){return Ue},geoBottomleyRaw:function(){return ze},geoBromley:function(){return Ye},geoBromleyRaw:function(){return Ve},geoChamberlin:function(){return Tt},geoChamberlinAfrica:function(){return lt},geoChamberlinRaw:function(){return wt},geoCollignon:function(){return St},geoCollignonRaw:function(){return Et},geoCraig:function(){return zt},geoCraigRaw:function(){return Ft},geoCraster:function(){return Ze},geoCrasterRaw:function(){return et},geoCylindricalEqualArea:function(){return st},geoCylindricalEqualAreaRaw:function(){return Qe},geoCylindricalStereographic:function(){return Be},geoCylindricalStereographicRaw:function(){return ft},geoEckert1:function(){return at},geoEckert1Raw:function(){return je},geoEckert2:function(){return xt},geoEckert2Raw:function(){return ot},geoEckert3:function(){return _t},geoEckert3Raw:function(){return yt},geoEckert4:function(){return Ct},geoEckert4Raw:function(){return gt},geoEckert5:function(){return vt},geoEckert5Raw:function(){return dt},geoEckert6:function(){return Bt},geoEckert6Raw:function(){return At},geoEisenlohr:function(){return tn},geoEisenlohrRaw:function(){return Ut},geoFahey:function(){return Gt},geoFaheyRaw:function(){return Qt},geoFoucaut:function(){return Tn},geoFoucautRaw:function(){return vn},geoFoucautSinusoidal:function(){return Yt},geoFoucautSinusoidalRaw:function(){return dn},geoGilbert:function(){return xn},geoGingery:function(){return Fn},geoGingeryRaw:function(){return Pn},geoGinzburg4:function(){return fr},geoGinzburg4Raw:function(){return ir},geoGinzburg5:function(){return Kn},geoGinzburg5Raw:function(){return ar},geoGinzburg6:function(){return Ht},geoGinzburg6Raw:function(){return wr},geoGinzburg8:function(){return gn},geoGinzburg8Raw:function(){return sn},geoGinzburg9:function(){return Cn},geoGinzburg9Raw:function(){return bn},geoGringorten:function(){return jn},geoGringortenQuincuncial:function(){return uo},geoGringortenRaw:function(){return Nn},geoGuyou:function(){return Lt},geoGuyouRaw:function(){return An},geoHammer:function(){return _e},geoHammerRaw:function(){return de},geoHammerRetroazimuthal:function(){return kn},geoHammerRetroazimuthalRaw:function(){return rn},geoHealpix:function(){return Wn},geoHealpixRaw:function(){return cn},geoHill:function(){return tr},geoHillRaw:function(){return Hn},geoHomolosine:function(){return vr},geoHomolosineRaw:function(){return gr},geoHufnagel:function(){return Jn},geoHufnagelRaw:function(){return Er},geoHyperelliptical:function(){return xi},geoHyperellipticalRaw:function(){return ii},geoInterrupt:function(){return ci},geoInterruptedBoggs:function(){return Do},geoInterruptedHomolosine:function(){return Ko},geoInterruptedMollweide:function(){return qs},geoInterruptedMollweideHemispheres:function(){return Cu},geoInterruptedQuarticAuthalic:function(){return Bl},geoInterruptedSinuMollweide:function(){return ac},geoInterruptedSinusoidal:function(){return Ws},geoKavrayskiy7:function(){return qi},geoKavrayskiy7Raw:function(){return Bo},geoLagrange:function(){return ti},geoLagrangeRaw:function(){return Dl},geoLarrivee:function(){return Jo},geoLarriveeRaw:function(){return Qa},geoLaskowski:function(){return xs},geoLaskowskiRaw:function(){return xo},geoLittrow:function(){return es},geoLittrowRaw:function(){return Qo},geoLoximuthal:function(){return oc},geoLoximuthalRaw:function(){return ou},geoMiller:function(){return sc},geoMillerRaw:function(){return bs},geoModifiedStereographic:function(){return so},geoModifiedStereographicAlaska:function(){return Zs},geoModifiedStereographicGs48:function(){return ml},geoModifiedStereographicGs50:function(){return su},geoModifiedStereographicLee:function(){return Iu},geoModifiedStereographicMiller:function(){return Ou},geoModifiedStereographicRaw:function(){return Lu},geoMollweide:function(){return fe},geoMollweideRaw:function(){return he},geoMtFlatPolarParabolic:function(){return cc},geoMtFlatPolarParabolicRaw:function(){return ts},geoMtFlatPolarQuartic:function(){return fi},geoMtFlatPolarQuarticRaw:function(){return ws},geoMtFlatPolarSinusoidal:function(){return Fl},geoMtFlatPolarSinusoidalRaw:function(){return bo},geoNaturalEarth:function(){return lo.Z},geoNaturalEarth2:function(){return $c},geoNaturalEarth2Raw:function(){return Xs},geoNaturalEarthRaw:function(){return lo.K},geoNellHammer:function(){return fc},geoNellHammerRaw:function(){return lu},geoNicolosi:function(){return Nl},geoNicolosiRaw:function(){return yl},geoPatterson:function(){return fu},geoPattersonRaw:function(){return As},geoPeirceQuincuncial:function(){return hu},geoPierceQuincuncial:function(){return hu},geoPolyconic:function(){return Ru},geoPolyconicRaw:function(){return $s},geoPolyhedral:function(){return Ms},geoPolyhedralButterfly:function(){return zu},geoPolyhedralCollignon:function(){return Vl},geoPolyhedralWaterman:function(){return os},geoProject:function(){return el},geoQuantize:function(){return co},geoQuincuncial:function(){return eo},geoRectangularPolyconic:function(){return Sr},geoRectangularPolyconicRaw:function(){return oa},geoRobinson:function(){return pu},geoRobinsonRaw:function(){return Hl},geoSatellite:function(){return nl},geoSatelliteRaw:function(){return tl},geoSinuMollweide:function(){return sr},geoSinuMollweideRaw:function(){return or},geoSinusoidal:function(){return ve},geoSinusoidalRaw:function(){return qe},geoStitch:function(){return Ji},geoTimes:function(){return Du},geoTimesRaw:function(){return Vo},geoTwoPointAzimuthal:function(){return Ho},geoTwoPointAzimuthalRaw:function(){return li},geoTwoPointAzimuthalUsa:function(){return no},geoTwoPointEquidistant:function(){return Ps},geoTwoPointEquidistantRaw:function(){return Ao},geoTwoPointEquidistantUsa:function(){return du},geoVanDerGrinten:function(){return Gi},geoVanDerGrinten2:function(){return Pr},geoVanDerGrinten2Raw:function(){return ga},geoVanDerGrinten3:function(){return kl},geoVanDerGrinten3Raw:function(){return Ir},geoVanDerGrinten4:function(){return Os},geoVanDerGrinten4Raw:function(){return Pa},geoVanDerGrintenRaw:function(){return il},geoWagner:function(){return Tl},geoWagner4:function(){return Qi},geoWagner4Raw:function(){return Nr},geoWagner6:function(){return Ga},geoWagner6Raw:function(){return qo},geoWagner7:function(){return ma},geoWagnerRaw:function(){return va},geoWiechel:function(){return Al},geoWiechelRaw:function(){return al},geoWinkel3:function(){return us},geoWinkel3Raw:function(){return ol}});var w=e(15002),k=Math.abs,i=Math.atan,_=Math.atan2,y=Math.cos,h=Math.exp,l=Math.floor,t=Math.log,o=Math.max,r=Math.min,n=Math.pow,a=Math.round,s=Math.sign||function(N){return N>0?1:N<0?-1:0},u=Math.sin,p=Math.tan,c=1e-6,b=1e-12,g=Math.PI,f=g/2,v=g/4,m=Math.SQRT1_2,x=O(2),T=O(g),d=2*g,M=180/g,A=g/180;function C(N){return N>1?f:N<-1?-f:Math.asin(N)}function P(N){return N>1?0:N<-1?g:Math.acos(N)}function O(N){return N>0?Math.sqrt(N):0}function z(N){return(h(N)-h(-N))/2}function B(N){return(h(N)+h(-N))/2}function Y(N){var q=p(N/2),H=2*t(y(N/2))/(q*q);function Q(ge,Le){var U=y(ge),ne=y(Le),le=u(Le),ye=ne*U,ke=-((1-ye?t((1+ye)/2)/(1-ye):-.5)+H/(1+ye));return[ke*ne*u(ge),ke*le]}return Q.invert=function(ge,Le){var U,ne=O(ge*ge+Le*Le),le=-N/2,ye=50;if(!ne)return[0,0];do{var ke=le/2,Re=y(ke),He=u(ke),We=He/Re,Xe=-t(k(Re));le-=U=(2/We*Xe-H*We-ne)/(-Xe/(He*He)+1-H/(2*Re*Re))*(Re<0?.7:1)}while(k(U)>c&&--ye>0);var Ke=u(le);return[_(ge*Ke,ne*y(le)),C(Le*Ke/ne)]},Q}function D(){var N=f,q=(0,w.r)(Y),H=q(N);return H.radius=function(Q){return arguments.length?q(N=Q*A):N*M},H.scale(179.976).clipAngle(147)}function G(N,q){var H=y(q),Q=function(ge){return ge?ge/Math.sin(ge):1}(P(H*y(N/=2)));return[2*H*u(N)*Q,u(q)*Q]}function V(){return(0,w.Z)(G).scale(152.63)}function j(N){var q=u(N),H=y(N),Q=N>=0?1:-1,ge=p(Q*N),Le=(1+q-H)/2;function U(ne,le){var ye=y(le),ke=y(ne/=2);return[(1+ye)*u(ne),(Q*le>-_(ke,ge)-.001?0:10*-Q)+Le+u(le)*H-(1+ye)*q*ke]}return U.invert=function(ne,le){var ye=0,ke=0,Re=50;do{var He=y(ye),We=u(ye),Xe=y(ke),Ke=u(ke),it=1+Xe,pt=it*We-ne,mt=Le+Ke*H-it*q*He-le,Ot=it*He/2,Rt=-We*Ke,Pt=q*it*We/2,Vt=H*Xe+q*He*Ke,It=Rt*Pt-Vt*Ot,on=(mt*Rt-pt*Vt)/It/2,Kt=(pt*Pt-mt*Ot)/It;k(Kt)>2&&(Kt/=2),ye-=on,ke-=Kt}while((k(on)>c||k(Kt)>c)&&--Re>0);return Q*ke>-_(y(ye),ge)-.001?[2*ye,ke]:null},U}function W(){var N=20*A,q=N>=0?1:-1,H=p(q*N),Q=(0,w.r)(j),ge=Q(N),Le=ge.stream;return ge.parallel=function(U){return arguments.length?(H=p((q=(N=U*A)>=0?1:-1)*N),Q(N)):N*M},ge.stream=function(U){var ne=ge.rotate(),le=Le(U),ye=(ge.rotate([0,0]),Le(U)),ke=ge.precision();return ge.rotate(ne),le.sphere=function(){ye.polygonStart(),ye.lineStart();for(var Re=-180*q;q*Re<180;Re+=90*q)ye.point(Re,90*q);if(N)for(;q*(Re-=3*q*ke)>=-180;)ye.point(Re,q*-_(y(Re*A/2),H)*M);ye.lineEnd(),ye.polygonEnd()},le},ge.scale(218.695).center([0,28.0974])}function Z(N,q){var H=p(q/2),Q=O(1-H*H),ge=1+Q*y(N/=2),Le=u(N)*Q/ge,U=H/ge,ne=Le*Le,le=U*U;return[1.3333333333333333*Le*(3+ne-3*le),1.3333333333333333*U*(3+3*ne-le)]}function ie(){return(0,w.Z)(Z).scale(66.1603)}G.invert=function(N,q){if(!(N*N+4*q*q>g*g+c)){var H=N,Q=q,ge=25;do{var Le,U=u(H),ne=u(H/2),le=y(H/2),ye=u(Q),ke=y(Q),Re=u(2*Q),He=ye*ye,We=ke*ke,Xe=ne*ne,Ke=1-We*le*le,it=Ke?P(ke*le)*O(Le=1/Ke):Le=0,pt=2*it*ke*ne-N,mt=it*ye-q,Ot=Le*(We*Xe+it*ke*le*He),Rt=Le*(.5*U*Re-2*it*ye*ne),Pt=.25*Le*(Re*ne-it*ye*We*U),Vt=Le*(He*le+it*Xe*ke),It=Rt*Pt-Vt*Ot;if(!It)break;var on=(mt*Rt-pt*Vt)/It,Kt=(pt*Pt-mt*Ot)/It;H-=on,Q-=Kt}while((k(on)>c||k(Kt)>c)&&--ge>0);return[H,Q]}},Z.invert=function(N,q){if(q*=.375,!(N*=.375)&&k(q)>1)return null;var H=1+N*N+q*q,Q=O((H-O(H*H-4*q*q))/2),ge=C(Q)/3,Le=Q?function(ye){return t(ye+O(ye*ye-1))}(k(q/Q))/3:function(ye){return t(ye+O(ye*ye+1))}(k(N))/3,U=y(ge),ne=B(Le),le=ne*ne-U*U;return[2*s(N)*_(z(Le)*U,.25-le),2*s(q)*_(ne*u(ge),.25+le)]};var te=O(8),J=t(1+x);function X(N,q){var H=k(q);return H<v?[N,t(p(v+q/2))]:[N*y(H)*(2*x-1/u(H)),s(q)*(2*x*(H-v)-t(p(H/2)))]}function ee(){return(0,w.Z)(X).scale(112.314)}X.invert=function(N,q){if((Q=k(q))<J)return[N,2*i(h(q))-f];var H,Q,ge=v,Le=25;do{var U=y(ge/2),ne=p(ge/2);ge-=H=(te*(ge-v)-t(ne)-Q)/(te-U*U/(2*ne))}while(k(H)>b&&--Le>0);return[N/(y(ge)*(te-1/u(ge))),s(q)*ge]};var re=e(17889);function oe(N){var q=2*g/N;function H(Q,ge){var Le=(0,re.N)(Q,ge);if(k(Q)>f){var U=_(Le[1],Le[0]),ne=O(Le[0]*Le[0]+Le[1]*Le[1]),le=q*a((U-f)/q)+f,ye=_(u(U-=le),2-y(U));U=le+C(g/ne*u(ye))-ye,Le[0]=ne*y(U),Le[1]=ne*u(U)}return Le}return H.invert=function(Q,ge){var Le=O(Q*Q+ge*ge);if(Le>f){var U=_(ge,Q),ne=q*a((U-f)/q)+f,le=U>ne?-1:1,ye=Le*y(ne-U),ke=1/p(le*P((ye-g)/O(g*(g-2*ye)+Le*Le)));U=ne+2*i((ke+le*O(ke*ke-3))/3),Q=Le*y(U),ge=Le*u(U)}return re.N.invert(Q,ge)},H}function ue(){var N=5,q=(0,w.r)(oe),H=q(N),Q=H.stream,ge=.01,Le=-y(ge*A),U=u(ge*A);return H.lobes=function(ne){return arguments.length?q(N=+ne):N},H.stream=function(ne){var le=H.rotate(),ye=Q(ne),ke=(H.rotate([0,0]),Q(ne));return H.rotate(le),ye.sphere=function(){ke.polygonStart(),ke.lineStart();for(var Re=0,He=360/N,We=2*g/N,Xe=90-180/N,Ke=f;Re<N;++Re,Xe-=He,Ke-=We)ke.point(_(U*y(Ke),Le)*M,C(U*u(Ke))*M),Xe<-90?(ke.point(-90,-180-Xe-ge),ke.point(-90,-180-Xe+ge)):(ke.point(90,Xe+ge),ke.point(90,Xe-ge));ke.lineEnd(),ke.polygonEnd()},ye},H.scale(87.8076).center([0,17.1875]).clipAngle(179.999)}var ce=e(12956);function de(N,q){if(arguments.length<2&&(q=N),q===1)return ce.l;if(q===1/0)return me;function H(Q,ge){var Le=(0,ce.l)(Q/q,ge);return Le[0]*=N,Le}return H.invert=function(Q,ge){var Le=ce.l.invert(Q/N,ge);return Le[0]*=q,Le},H}function me(N,q){return[N*y(q)/y(q/=2),2*u(q)]}function _e(){var N=2,q=(0,w.r)(de),H=q(N);return H.coefficient=function(Q){return arguments.length?q(N=+Q):N},H.scale(169.529)}function Se(N,q,H){var Q,ge,Le,U=100;H=H===void 0?0:+H,q=+q;do(ge=N(H))===(Le=N(H+c))&&(Le=ge+c),H-=Q=-1*c*(ge-q)/(ge-Le);while(U-- >0&&k(Q)>c);return U<0?NaN:H}function we(N,q,H){return q===void 0&&(q=40),H===void 0&&(H=b),function(Q,ge,Le,U){var ne,le,ye;Le=Le===void 0?0:+Le,U=U===void 0?0:+U;for(var ke=0;ke<q;ke++){var Re=N(Le,U),He=Re[0]-Q,We=Re[1]-ge;if(k(He)<H&&k(We)<H)break;var Xe=He*He+We*We;if(Xe>ne)Le-=le/=2,U-=ye/=2;else{ne=Xe;var Ke=(Le>0?-1:1)*H,it=(U>0?-1:1)*H,pt=N(Le+Ke,U),mt=N(Le,U+it),Ot=(pt[0]-Re[0])/Ke,Rt=(pt[1]-Re[1])/Ke,Pt=(mt[0]-Re[0])/it,Vt=(mt[1]-Re[1])/it,It=Vt*Ot-Rt*Pt,on=(k(It)<.5?.5:1)/It;if(Le+=le=(We*Pt-He*Vt)*on,U+=ye=(He*Rt-We*Ot)*on,k(le)<H&&k(ye)<H)break}}return[Le,U]}}function xe(){var N=de(1.68,2);function q(H,Q){if(H+Q<-1.4){var ge=(H-Q+1.6)*(H+Q+1.4)/8;H+=ge,Q-=.8*ge*u(Q+g/2)}var Le=N(H,Q),U=(1-y(H*Q))/12;return Le[1]<0&&(Le[0]*=1+U),Le[1]>0&&(Le[1]*=1+U/1.5*Le[0]*Le[0]),Le}return q.invert=we(q),q}function De(){return(0,w.Z)(xe()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function Ee(N,q){var H,Q=N*u(q),ge=30;do q-=H=(q+u(q)-Q)/(1+y(q));while(k(H)>c&&--ge>0);return q/2}function Me(N,q,H){function Q(ge,Le){return[N*ge*y(Le=Ee(H,Le)),q*u(Le)]}return Q.invert=function(ge,Le){return Le=C(Le/q),[ge/(N*y(Le)),C((2*Le+u(2*Le))/H)]},Q}me.invert=function(N,q){var H=2*C(q/2);return[N*y(H/2)/y(H),H]};var he=Me(x/f,x,g);function fe(){return(0,w.Z)(he).scale(169.529)}var ae=2.00276,be=1.11072;function Ie(N,q){var H=Ee(g,q);return[ae*N/(1/y(q)+be/y(H)),(q+x*u(H))/ae]}function Te(){return(0,w.Z)(Ie).scale(160.857)}function Ne(N){var q=0,H=(0,w.r)(N),Q=H(q);return Q.parallel=function(ge){return arguments.length?H(q=ge*A):q*M},Q}function qe(N,q){return[N*y(q),q]}function ve(){return(0,w.Z)(qe).scale(152.63)}function Ce(N){if(!N)return qe;var q=1/p(N);function H(Q,ge){var Le=q+N-ge,U=Le&&Q*y(ge)/Le;return[Le*u(U),q-Le*y(U)]}return H.invert=function(Q,ge){var Le=O(Q*Q+(ge=q-ge)*ge),U=q+N-Le;return[Le/y(U)*_(Q,ge),U]},H}function Ae(){return Ne(Ce).scale(123.082).center([0,26.1441]).parallel(45)}function ze(N){function q(H,Q){var ge=f-Q,Le=ge&&H*N*u(ge)/ge;return[ge*u(Le)/N,f-ge*y(Le)]}return q.invert=function(H,Q){var ge=H*N,Le=f-Q,U=O(ge*ge+Le*Le),ne=_(ge,Le);return[(U?U/u(U):1)*ne/N,f-U]},q}function Ue(){var N=.5,q=(0,w.r)(ze),H=q(N);return H.fraction=function(Q){return arguments.length?q(N=+Q):N},H.scale(158.837)}Ie.invert=function(N,q){var H,Q,ge=ae*q,Le=q<0?-v:v,U=25;do Q=ge-x*u(Le),Le-=H=(u(2*Le)+2*Le-g*u(Q))/(2*y(2*Le)+2+g*y(Q)*x*y(Le));while(k(H)>c&&--U>0);return Q=ge-x*u(Le),[N*(1/y(Q)+be/y(Le))/ae,Q]},qe.invert=function(N,q){return[N/y(q),q]};var Ve=Me(1,4/g,g);function Ye(){return(0,w.Z)(Ve).scale(152.63)}var $e=e(66624),rt=e(49386);function ht(N,q,H,Q,ge,Le){var U,ne=y(Le);if(k(N)>1||k(Le)>1)U=P(H*ge+q*Q*ne);else{var le=u(N/2),ye=u(Le/2);U=2*C(O(le*le+q*Q*ye*ye))}return k(U)>c?[U,_(Q*u(Le),q*ge-H*Q*ne)]:[0,0]}function nt(N,q,H){return P((N*N+q*q-H*H)/(2*N*q))}function bt(N){return N-2*g*l((N+g)/(2*g))}function wt(N,q,H){for(var Q,ge=[[N[0],N[1],u(N[1]),y(N[1])],[q[0],q[1],u(q[1]),y(q[1])],[H[0],H[1],u(H[1]),y(H[1])]],Le=ge[2],U=0;U<3;++U,Le=Q)Q=ge[U],Le.v=ht(Q[1]-Le[1],Le[3],Le[2],Q[3],Q[2],Q[0]-Le[0]),Le.point=[0,0];var ne=nt(ge[0].v[0],ge[2].v[0],ge[1].v[0]),le=nt(ge[0].v[0],ge[1].v[0],ge[2].v[0]),ye=g-ne;ge[2].point[1]=0,ge[0].point[0]=-(ge[1].point[0]=ge[0].v[0]/2);var ke=[ge[2].point[0]=ge[0].point[0]+ge[2].v[0]*y(ne),2*(ge[0].point[1]=ge[1].point[1]=ge[2].v[0]*u(ne))];return function(Re,He){var We,Xe=u(He),Ke=y(He),it=new Array(3);for(We=0;We<3;++We){var pt=ge[We];if(it[We]=ht(He-pt[1],pt[3],pt[2],Ke,Xe,Re-pt[0]),!it[We][0])return pt.point;it[We][1]=bt(it[We][1]-pt.v[1])}var mt=ke.slice();for(We=0;We<3;++We){var Ot=We==2?0:We+1,Rt=nt(ge[We].v[0],it[We][0],it[Ot][0]);it[We][1]<0&&(Rt=-Rt),We?We==1?(Rt=le-Rt,mt[0]-=it[We][0]*y(Rt),mt[1]-=it[We][0]*u(Rt)):(Rt=ye-Rt,mt[0]+=it[We][0]*y(Rt),mt[1]+=it[We][0]*u(Rt)):(mt[0]+=it[We][0]*y(Rt),mt[1]-=it[We][0]*u(Rt))}return mt[0]/=3,mt[1]/=3,mt}}function ut(N){return N[0]*=A,N[1]*=A,N}function lt(){return Tt([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function Tt(N,q,H){var Q=(0,$e.Z)({type:"MultiPoint",coordinates:[N,q,H]}),ge=[-Q[0],-Q[1]],Le=(0,rt.Z)(ge),U=wt(ut(Le(N)),ut(Le(q)),ut(Le(H)));U.invert=we(U);var ne=(0,w.Z)(U).rotate(ge),le=ne.center;return delete ne.rotate,ne.center=function(ye){return arguments.length?le(Le(ye)):Le.invert(le())},ne.clipAngle(90)}function Et(N,q){var H=O(1-u(q));return[2/T*N*H,T*(1-H)]}function St(){return(0,w.Z)(Et).scale(95.6464).center([0,30])}function Ft(N){var q=p(N);function H(Q,ge){return[Q,(Q?Q/u(Q):1)*(u(ge)*y(Q)-q*y(ge))]}return H.invert=q?function(Q,ge){Q&&(ge*=u(Q)/Q);var Le=y(Q);return[Q,2*_(O(Le*Le+q*q-ge*ge)-Le,q-ge)]}:function(Q,ge){return[Q,C(Q?ge*p(Q)/Q:ge)]},H}function zt(){return Ne(Ft).scale(249.828).clipAngle(90)}Et.invert=function(N,q){var H=(H=q/T-1)*H;return[H>0?N*O(g/H)/2:0,C(1-H)]};var Je=O(3);function et(N,q){return[Je*N*(2*y(2*q/3)-1)/T,Je*T*u(q/3)]}function Ze(){return(0,w.Z)(et).scale(156.19)}function Qe(N){var q=y(N);function H(Q,ge){return[Q*q,u(ge)/q]}return H.invert=function(Q,ge){return[Q/q,C(ge*q)]},H}function st(){return Ne(Qe).parallel(38.58).scale(195.044)}function ft(N){var q=y(N);function H(Q,ge){return[Q*q,(1+q)*p(ge/2)]}return H.invert=function(Q,ge){return[Q/q,2*i(ge/(1+q))]},H}function Be(){return Ne(ft).scale(124.75)}function je(N,q){var H=O(8/(3*g));return[H*N*(1-k(q)/g),H*q]}function at(){return(0,w.Z)(je).scale(165.664)}function ot(N,q){var H=O(4-3*u(k(q)));return[2/O(6*g)*N*H,s(q)*O(2*g/3)*(2-H)]}function xt(){return(0,w.Z)(ot).scale(165.664)}function yt(N,q){var H=O(g*(4+g));return[2/H*N*(1+O(1-4*q*q/(g*g))),4/H*q]}function _t(){return(0,w.Z)(yt).scale(180.739)}function gt(N,q){var H=(2+f)*u(q);q/=2;for(var Q=0,ge=1/0;Q<10&&k(ge)>c;Q++){var Le=y(q);q-=ge=(q+u(q)*(Le+2)-H)/(2*Le*(1+Le))}return[2/O(g*(4+g))*N*(1+y(q)),2*O(g/(4+g))*u(q)]}function Ct(){return(0,w.Z)(gt).scale(180.739)}function dt(N,q){return[N*(1+y(q))/O(2+g),2*q/O(2+g)]}function vt(){return(0,w.Z)(dt).scale(173.044)}function At(N,q){for(var H=(1+f)*u(q),Q=0,ge=1/0;Q<10&&k(ge)>c;Q++)q-=ge=(q+u(q)-H)/(1+y(q));return H=O(2+g),[N*(1+y(q))/H,2*q/H]}function Bt(){return(0,w.Z)(At).scale(173.044)}et.invert=function(N,q){var H=3*C(q/(Je*T));return[T*N/(Je*(2*y(2*H/3)-1)),H]},je.invert=function(N,q){var H=O(8/(3*g)),Q=q/H;return[N/(H*(1-k(Q)/g)),Q]},ot.invert=function(N,q){var H=2-k(q)/O(2*g/3);return[N*O(6*g)/(2*H),s(q)*C((4-H*H)/3)]},yt.invert=function(N,q){var H=O(g*(4+g))/2;return[N*H/(1+O(1-q*q*(4+g)/(4*g))),q*H/2]},gt.invert=function(N,q){var H=q*O((4+g)/g)/2,Q=C(H),ge=y(Q);return[N/(2/O(g*(4+g))*(1+ge)),C((Q+H*(ge+2))/(2+f))]},dt.invert=function(N,q){var H=O(2+g),Q=q*H/2;return[H*N/(1+y(Q)),Q]},At.invert=function(N,q){var H=1+f,Q=O(H/2);return[2*N*Q/(1+y(q*=Q)),C((q+u(q))/H)]};var jt=3+2*x;function Ut(N,q){var H=u(N/=2),Q=y(N),ge=O(y(q)),Le=y(q/=2),U=u(q)/(Le+x*Q*ge),ne=O(2/(1+U*U)),le=O((x*Le+(Q+H)*ge)/(x*Le+(Q-H)*ge));return[jt*(ne*(le-1/le)-2*t(le)),jt*(ne*U*(le+1/le)-2*i(U))]}function tn(){return(0,w.Z)(Ut).scale(62.5271)}Ut.invert=function(N,q){if(!(H=Z.invert(N/1.2,1.065*q)))return null;var H,Q=H[0],ge=H[1],Le=20;N/=jt,q/=jt;do{var U=Q/2,ne=ge/2,le=u(U),ye=y(U),ke=u(ne),Re=y(ne),He=y(ge),We=O(He),Xe=ke/(Re+x*ye*We),Ke=Xe*Xe,it=O(2/(1+Ke)),pt=(x*Re+(ye+le)*We)/(x*Re+(ye-le)*We),mt=O(pt),Ot=mt-1/mt,Rt=mt+1/mt,Pt=it*Ot-2*t(mt)-N,Vt=it*Xe*Rt-2*i(Xe)-q,It=ke&&m*We*le*Ke/ke,on=(x*ye*Re+We)/(2*(Re+x*ye*We)*(Re+x*ye*We)*We),Kt=-.5*Xe*it*it*it,Zt=Kt*It,yn=Kt*on,_n=(_n=2*Re+x*We*(ye-le))*_n*mt,Un=(x*ye*Re*We+He)/_n,Vn=-x*le*ke/(We*_n),Zn=Ot*Zt-2*Un/mt+it*(Un+Un/pt),Qn=Ot*yn-2*Vn/mt+it*(Vn+Vn/pt),pr=Xe*Rt*Zt-2*It/(1+Ke)+it*Rt*It+it*Xe*(Un-Un/pt),cr=Xe*Rt*yn-2*on/(1+Ke)+it*Rt*on+it*Xe*(Vn-Vn/pt),mr=Qn*pr-cr*Zn;if(!mr)break;var Ar=(Vt*Qn-Pt*cr)/mr,Br=(Pt*pr-Vt*Zn)/mr;Q-=Ar,ge=o(-f,r(f,ge-Br))}while((k(Ar)>c||k(Br)>c)&&--Le>0);return k(k(ge)-f)<c?[0,ge]:Le&&[Q,ge]};var Xt=y(35*A);function Qt(N,q){var H=p(q/2);return[N*Xt*O(1-H*H),(1+Xt)*H]}function Gt(){return(0,w.Z)(Qt).scale(137.152)}function vn(N,q){var H=q/2,Q=y(H);return[2*N/T*y(q)*Q*Q,T*p(H)]}function Tn(){return(0,w.Z)(vn).scale(135.264)}function dn(N){var q=1-N,H=ge(g,0)[0]-ge(-g,0)[0],Q=O(2*(ge(0,f)[1]-ge(0,-f)[1])/H);function ge(ne,le){var ye=y(le),ke=u(le);return[ye/(q+N*ye)*ne,q*le+N*ke]}function Le(ne,le){var ye=ge(ne,le);return[ye[0]*Q,ye[1]/Q]}function U(ne){return Le(0,ne)[1]}return Le.invert=function(ne,le){var ye=Se(U,le);return[ne/Q*(N+q/y(ye)),ye]},Le}function Yt(){var N=.5,q=(0,w.r)(dn),H=q(N);return H.alpha=function(Q){return arguments.length?q(N=+Q):N},H.scale(168.725)}Qt.invert=function(N,q){var H=q/(1+Xt);return[N&&N/(Xt*O(1-H*H)),2*i(H)]},vn.invert=function(N,q){var H=i(q/T),Q=y(H),ge=2*H;return[N*T/2/(y(ge)*Q*Q),ge]};var ln=e(57962),nn=e(97492);function fn(N){return[N[0]/2,C(p(N[1]/2*A))*M]}function mn(N){return[2*N[0],2*i(u(N[1]*A))*M]}function xn(N){N==null&&(N=ln.Z);var q=N(),H=(0,nn.Z)().scale(M).precision(0).clipAngle(null).translate([0,0]);function Q(Le){return q(fn(Le))}function ge(Le){Q[Le]=function(){return arguments.length?(q[Le].apply(q,arguments),Q):q[Le]()}}return q.invert&&(Q.invert=function(Le){return mn(q.invert(Le))}),Q.stream=function(Le){var U=q.stream(Le),ne=H.stream({point:function(le,ye){U.point(le/2,C(p(-ye/2*A))*M)},lineStart:function(){U.lineStart()},lineEnd:function(){U.lineEnd()},polygonStart:function(){U.polygonStart()},polygonEnd:function(){U.polygonEnd()}});return ne.sphere=U.sphere,ne},Q.rotate=function(Le){return arguments.length?(H.rotate(Le),Q):H.rotate()},Q.center=function(Le){return arguments.length?(q.center(fn(Le)),Q):mn(q.center())},ge("angle"),ge("clipAngle"),ge("clipExtent"),ge("fitExtent"),ge("fitHeight"),ge("fitSize"),ge("fitWidth"),ge("scale"),ge("translate"),ge("precision"),Q.scale(249.5)}function Pn(N,q){var H=2*g/q,Q=N*N;function ge(Le,U){var ne=(0,re.N)(Le,U),le=ne[0],ye=ne[1],ke=le*le+ye*ye;if(ke>Q){var Re=O(ke),He=_(ye,le),We=H*a(He/H),Xe=He-We,Ke=N*y(Xe),it=(N*u(Xe)-Xe*u(Ke))/(f-Ke),pt=Dn(Xe,it),mt=(g-N)/En(pt,Ke,g);le=Re;var Ot,Rt=50;do le-=Ot=(N+En(pt,Ke,le)*mt-Re)/(pt(le)*mt);while(k(Ot)>c&&--Rt>0);ye=Xe*u(le),le<f&&(ye-=it*(le-f));var Pt=u(We),Vt=y(We);ne[0]=le*Vt-ye*Pt,ne[1]=le*Pt+ye*Vt}return ne}return ge.invert=function(Le,U){var ne=Le*Le+U*U;if(ne>Q){var le=O(ne),ye=_(U,Le),ke=H*a(ye/H),Re=ye-ke;Le=le*y(Re),U=le*u(Re);for(var He=Le-f,We=u(Le),Xe=U/We,Ke=Le<f?1/0:0,it=10;;){var pt=N*u(Xe),mt=N*y(Xe),Ot=u(mt),Rt=f-mt,Pt=(pt-Xe*Ot)/Rt,Vt=Dn(Xe,Pt);if(k(Ke)<b||!--it)break;Xe-=Ke=(Xe*We-Pt*He-U)/(We-2*He*(Rt*(mt+Xe*pt*y(mt)-Ot)-pt*(pt-Xe*Ot))/(Rt*Rt))}Le=(le=N+En(Vt,mt,Le)*(g-N)/En(Vt,mt,g))*y(ye=ke+Xe),U=le*u(ye)}return re.N.invert(Le,U)},ge}function Dn(N,q){return function(H){var Q=N*y(H);return H<f&&(Q-=q),O(1+Q*Q)}}function En(N,q,H){for(var Q=(H-q)/50,ge=N(q)+N(H),Le=1,U=q;Le<50;++Le)ge+=2*N(U+=Q);return .5*ge*Q}function Fn(){var N=6,q=30*A,H=y(q),Q=u(q),ge=(0,w.r)(Pn),Le=ge(q,N),U=Le.stream,ne=-y(.01*A),le=u(.01*A);return Le.radius=function(ye){return arguments.length?(H=y(q=ye*A),Q=u(q),ge(q,N)):q*M},Le.lobes=function(ye){return arguments.length?ge(q,N=+ye):N},Le.stream=function(ye){var ke=Le.rotate(),Re=U(ye),He=(Le.rotate([0,0]),U(ye));return Le.rotate(ke),Re.sphere=function(){He.polygonStart(),He.lineStart();for(var We=0,Xe=2*g/N,Ke=0;We<N;++We,Ke-=Xe)He.point(_(le*y(Ke),ne)*M,C(le*u(Ke))*M),He.point(_(Q*y(Ke-Xe/2),H)*M,C(Q*u(Ke-Xe/2))*M);He.lineEnd(),He.polygonEnd()},Re},Le.rotate([90,-40]).scale(91.7095).clipAngle(179.999)}function er(N,q,H,Q,ge,Le,U,ne){function le(ye,ke){if(!ke)return[N*ye/g,0];var Re=ke*ke,He=N+Re*(q+Re*(H+Re*Q)),We=ke*(ge-1+Re*(Le-ne+Re*U)),Xe=(He*He+We*We)/(2*We),Ke=ye*C(He/Xe)/g;return[Xe*u(Ke),ke*(1+Re*ne)+Xe*(1-y(Ke))]}return arguments.length<8&&(ne=0),le.invert=function(ye,ke){var Re,He,We=g*ye/N,Xe=ke,Ke=50;do{var it=Xe*Xe,pt=N+it*(q+it*(H+it*Q)),mt=Xe*(ge-1+it*(Le-ne+it*U)),Ot=pt*pt+mt*mt,Rt=2*mt,Pt=Ot/Rt,Vt=Pt*Pt,It=C(pt/Pt)/g,on=We*It,Kt=pt*pt,Zt=(2*q+it*(4*H+6*it*Q))*Xe,yn=ge+it*(3*Le+5*it*U),_n=(2*(pt*Zt+mt*(yn-1))*Rt-Ot*(2*(yn-1)))/(Rt*Rt),Un=y(on),Vn=u(on),Zn=Pt*Un,Qn=Pt*Vn,pr=We/g*(1/O(1-Kt/Vt))*(Zt*Pt-pt*_n)/Vt,cr=Qn-ye,mr=Xe*(1+it*ne)+Pt-Zn-ke,Ar=_n*Vn+Zn*pr,Br=Zn*It,qn=1+_n-(_n*Un-Qn*pr),ur=Qn*It,yr=Ar*ur-qn*Br;if(!yr)break;We-=Re=(mr*Ar-cr*qn)/yr,Xe-=He=(cr*ur-mr*Br)/yr}while((k(Re)>c||k(He)>c)&&--Ke>0);return[We,Xe]},le}var ir=er(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function fr(){return(0,w.Z)(ir).scale(149.995)}var ar=er(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function Kn(){return(0,w.Z)(ar).scale(153.93)}var wr=er(5/6*g,-.62636,-.0344,0,1.3493,-.05524,0,.045);function Ht(){return(0,w.Z)(wr).scale(130.945)}function sn(N,q){var H=N*N,Q=q*q;return[N*(1-.162388*Q)*(.87-952426e-9*H*H),q*(1+Q/12)]}function gn(){return(0,w.Z)(sn).scale(131.747)}sn.invert=function(N,q){var H,Q=N,ge=q,Le=50;do{var U=ge*ge;ge-=H=(ge*(1+U/12)-q)/(1+U/4)}while(k(H)>c&&--Le>0);Le=50,N/=1-.162388*U;do{var ne=(ne=Q*Q)*ne;Q-=H=(Q*(.87-952426e-9*ne)-N)/(.87-.00476213*ne)}while(k(H)>c&&--Le>0);return[Q,ge]};var bn=er(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Cn(){return(0,w.Z)(bn).scale(131.087)}function Yn(N){var q=N(f,0)[0]-N(-f,0)[0];function H(Q,ge){var Le=Q>0?-.5:.5,U=N(Q+Le*g,ge);return U[0]-=Le*q,U}return N.invert&&(H.invert=function(Q,ge){var Le=Q>0?-.5:.5,U=N.invert(Q+Le*q,ge),ne=U[0]-Le*g;return ne<-g?ne+=2*g:ne>g&&(ne-=2*g),U[0]=ne,U}),H}function Nn(N,q){var H=s(N),Q=s(q),ge=y(q),Le=y(N)*ge,U=u(N)*ge,ne=u(Q*q);N=k(_(U,ne)),q=C(Le),k(N-f)>c&&(N%=f);var le=function(ye,ke){if(ke===f)return[0,0];var Re,He,We=u(ke),Xe=We*We,Ke=Xe*Xe,it=1+Ke,pt=1+3*Ke,mt=1-Ke,Ot=C(1/O(it)),Rt=mt+Xe*it*Ot,Pt=(1-We)/Rt,Vt=O(Pt),It=Pt*it,on=O(It),Kt=Vt*mt;if(ye===0)return[0,-(Kt+Xe*on)];var Zt,yn=y(ke),_n=1/yn,Un=2*We*yn,Vn=(-Rt*yn-(1-We)*((-3*Xe+Ot*pt)*Un))/(Rt*Rt),Zn=-_n*Un,Qn=-_n*(Xe*it*Vn+Pt*pt*Un),pr=-2*_n*(mt*(.5*Vn/Vt)-2*Xe*Vt*Un),cr=4*ye/g;if(ye>.222*g||ke<g/4&&ye>.175*g){if(Re=(Kt+Xe*O(It*(1+Ke)-Kt*Kt))/(1+Ke),ye>g/4)return[Re,Re];var mr=Re,Ar=.5*Re;Re=.5*(Ar+mr),He=50;do{var Br=Re*(pr+Zn*O(It-Re*Re))+Qn*C(Re/on)-cr;if(!Br)break;Br<0?Ar=Re:mr=Re,Re=.5*(Ar+mr)}while(k(mr-Ar)>c&&--He>0)}else{Re=c,He=25;do{var qn=Re*Re,ur=O(It-qn),yr=pr+Zn*ur,Mr=Re*yr+Qn*C(Re/on)-cr;Re-=Zt=ur?Mr/(yr+(Qn-Zn*qn)/ur):0}while(k(Zt)>c&&--He>0)}return[Re,-Kt-Xe*O(It-Re*Re)]}(N>g/4?f-N:N,q);return N>g/4&&(ne=le[0],le[0]=-le[1],le[1]=-ne),le[0]*=H,le[1]*=-Q,le}function jn(){return(0,w.Z)(Yn(Nn)).scale(239.75)}function rr(N,q){var H,Q,ge,Le,U,ne;if(q<c)return[(Le=u(N))-(H=q*(N-Le*(Q=y(N)))/4)*Q,Q+H*Le,1-q*Le*Le/2,N-H];if(q>=1-c)return H=(1-q)/4,ge=1/(Q=B(N)),[(Le=((ne=h(2*(ne=N)))-1)/(ne+1))+H*((U=Q*z(N))-N)/(Q*Q),ge-H*Le*ge*(U-N),ge+H*Le*ge*(U+N),2*i(h(N))-f+H*(U-N)/Q];var le=[1,0,0,0,0,0,0,0,0],ye=[O(q),0,0,0,0,0,0,0,0],ke=0;for(Q=O(1-q),U=1;k(ye[ke]/le[ke])>c&&ke<8;)H=le[ke++],ye[ke]=(H-Q)/2,le[ke]=(H+Q)/2,Q=O(H*Q),U*=2;ge=U*le[ke]*N;do ge=(C(Le=ye[ke]*u(Q=ge)/le[ke])+ge)/2;while(--ke);return[u(ge),Le=y(ge),Le/y(ge-Q),ge]}function Wt(N,q){if(!q)return N;if(q===1)return t(p(N/2+v));for(var H=1,Q=O(1-q),ge=O(q),Le=0;k(ge)>c;Le++){if(N%g){var U=i(Q*p(N)/H);U<0&&(U+=g),N+=U+~~(N/g)*g}else N+=N;ge=(H+Q)/2,Q=O(H*Q),ge=((H=ge)-Q)/2}return N/(n(2,Le)*H)}function An(N,q){var H=(x-1)/(x+1),Q=O(1-H*H),ge=Wt(f,Q*Q),Le=t(p(g/4+k(q)/2)),U=h(-1*Le)/O(H),ne=function(ye,ke){var Re=ye*ye,He=ke+1,We=1-Re-ke*ke;return[.5*((ye>=0?f:-f)-_(We,2*ye)),-.25*t(We*We+4*Re)+.5*t(He*He+Re)]}(U*y(-1*N),U*u(-1*N)),le=function(ye,ke,Re){var He=k(ye),We=z(k(ke));if(He){var Xe=1/u(He),Ke=1/(p(He)*p(He)),it=-(Ke+Re*(We*We*Xe*Xe)-1+Re),pt=(-it+O(it*it-(Re-1)*Ke*4))/2;return[Wt(i(1/O(pt)),Re)*s(ye),Wt(i(O((pt/Ke-1)/Re)),1-Re)*s(ke)]}return[0,Wt(i(We),1-Re)*s(ke)]}(ne[0],ne[1],Q*Q);return[-le[1],(q>=0?1:-1)*(.5*ge-le[0])]}function Lt(){return(0,w.Z)(Yn(An)).scale(151.496)}Nn.invert=function(N,q){k(N)>1&&(N=2*s(N)-N),k(q)>1&&(q=2*s(q)-q);var H=s(N),Q=s(q),ge=-H*N,Le=-Q*q,U=Le/ge<1,ne=function(Re,He){for(var We=0,Xe=1,Ke=.5,it=50;;){var pt=Ke*Ke,mt=O(Ke),Ot=C(1/O(1+pt)),Rt=1-pt+Ke*(1+pt)*Ot,Pt=(1-mt)/Rt,Vt=O(Pt),It=Pt*(1+pt),on=Vt*(1-pt),Kt=O(It-Re*Re),Zt=He+on+Ke*Kt;if(k(Xe-We)<b||--it==0||Zt===0)break;Zt>0?We=Ke:Xe=Ke,Ke=.5*(We+Xe)}if(!it)return null;var yn=C(mt),_n=y(yn),Un=1/_n,Vn=2*mt*_n,Zn=(-Rt*_n-(-3*Ke+Ot*(1+3*pt))*Vn*(1-mt))/(Rt*Rt);return[g/4*(Re*(-2*Un*((1-pt)*(.5*Zn/Vt)-2*Ke*Vt*Vn)+-Un*Vn*Kt)+-Un*(Ke*(1+pt)*Zn+Pt*(1+3*pt)*Vn)*C(Re/O(It))),yn]}(U?Le:ge,U?ge:Le),le=ne[0],ye=ne[1],ke=y(ye);return U&&(le=-f-le),[H*(_(u(le)*ke,-u(ye))+g),Q*C(y(le)*ke)]},An.invert=function(N,q){var H,Q,ge,Le,U,ne,le=(x-1)/(x+1),ye=O(1-le*le),ke=(Q=-N,ge=ye*ye,(H=.5*Wt(f,ye*ye)-q)?(Le=rr(H,ge),Q?(ne=(U=rr(Q,1-ge))[1]*U[1]+ge*Le[0]*Le[0]*U[0]*U[0],[[Le[0]*U[2]/ne,Le[1]*Le[2]*U[0]*U[1]/ne],[Le[1]*U[1]/ne,-Le[0]*Le[2]*U[0]*U[2]/ne],[Le[2]*U[1]*U[2]/ne,-ge*Le[0]*Le[1]*U[0]/ne]]):[[Le[0],0],[Le[1],0],[Le[2],0]]):[[0,(U=rr(Q,1-ge))[0]/U[1]],[1/U[1],0],[U[2]/U[1],0]]),Re=function(He,We){var Xe=We[0]*We[0]+We[1]*We[1];return[(He[0]*We[0]+He[1]*We[1])/Xe,(He[1]*We[0]-He[0]*We[1])/Xe]}(ke[0],ke[1]);return[_(Re[1],Re[0])/-1,2*i(h(-.5*t(le*Re[0]*Re[0]+le*Re[1]*Re[1])))-f]};var $t=e(7613);function rn(N){var q=u(N),H=y(N),Q=wn(N);function ge(Le,U){var ne=Q(Le,U);Le=ne[0],U=ne[1];var le=u(U),ye=y(U),ke=y(Le),Re=P(q*le+H*ye*ke),He=u(Re),We=k(He)>c?Re/He:1;return[We*H*u(Le),(k(Le)>f?We:-We)*(q*ye-H*le*ke)]}return Q.invert=wn(-N),ge.invert=function(Le,U){var ne=O(Le*Le+U*U),le=-u(ne),ye=y(ne),ke=ne*ye,Re=-U*le,He=ne*q,We=O(ke*ke+Re*Re-He*He),Xe=_(ke*He+Re*We,Re*He-ke*We),Ke=(ne>f?-1:1)*_(Le*le,ne*y(Xe)*ye+U*u(Xe)*le);return Q.invert(Ke,Xe)},ge}function wn(N){var q=u(N),H=y(N);return function(Q,ge){var Le=y(ge),U=y(Q)*Le,ne=u(Q)*Le,le=u(ge);return[_(ne,U*H-le*q),C(le*H+U*q)]}}function kn(){var N=0,q=(0,w.r)(rn),H=q(N),Q=H.rotate,ge=H.stream,Le=(0,$t.Z)();return H.parallel=function(U){if(!arguments.length)return N*M;var ne=H.rotate();return q(N=U*A).rotate(ne)},H.rotate=function(U){return arguments.length?(Q.call(H,[U[0],U[1]-N*M]),Le.center([-U[0],-U[1]]),H):((U=Q.call(H))[1]+=N*M,U)},H.stream=function(U){return(U=ge(U)).sphere=function(){U.polygonStart();var ne,le=Le.radius(89.99)().coordinates[0],ye=le.length-1,ke=-1;for(U.lineStart();++ke<ye;)U.point((ne=le[ke])[0],ne[1]);for(U.lineEnd(),ye=(le=Le.radius(90.01)().coordinates[0]).length-1,U.lineStart();--ke>=0;)U.point((ne=le[ke])[0],ne[1]);U.lineEnd(),U.polygonEnd()},U},H.scale(79.4187).parallel(45).clipAngle(179.999)}var Ln=e(33064),hn=e(72736),Jt=C(1-1/3)*M,en=Qe(0);function cn(N){var q=Jt*A,H=Et(g,q)[0]-Et(-g,q)[0],Q=en(0,q)[1],ge=Et(0,q)[1],Le=T-ge,U=d/N,ne=4/d,le=Q+Le*Le*4/d;function ye(ke,Re){var He,We=k(Re);if(We>q){var Xe=r(N-1,o(0,l((ke+g)/U)));(He=Et(ke+=g*(N-1)/N-Xe*U,We))[0]=He[0]*d/H-d*(N-1)/(2*N)+Xe*d/N,He[1]=Q+4*(He[1]-ge)*Le/d,Re<0&&(He[1]=-He[1])}else He=en(ke,Re);return He[0]*=ne,He[1]/=le,He}return ye.invert=function(ke,Re){ke/=ne;var He=k(Re*=le);if(He>Q){var We=r(N-1,o(0,l((ke+g)/U)));ke=(ke+g*(N-1)/N-We*U)*H/d;var Xe=Et.invert(ke,.25*(He-Q)*d/Le+ge);return Xe[0]-=g*(N-1)/N-We*U,Re<0&&(Xe[1]=-Xe[1]),Xe}return en.invert(ke,Re)},ye}function pn(N,q){return[N,1&q?90-c:Jt]}function On(N,q){return[N,1&q?-90+c:-Jt]}function Rn(N){return[N[0]*(1-c),N[1]]}function Wn(){var N=4,q=(0,w.r)(cn),H=q(N),Q=H.stream;return H.lobes=function(ge){return arguments.length?q(N=+ge):N},H.stream=function(ge){var Le=H.rotate(),U=Q(ge),ne=(H.rotate([0,0]),Q(ge));return H.rotate(Le),U.sphere=function(){var le,ye;(0,hn.Z)((le=180/N,ye=[].concat((0,Ln.w6)(-180,180+le/2,le).map(pn),(0,Ln.w6)(180,-180-le/2,-le).map(On)),{type:"Polygon",coordinates:[le===180?ye.map(Rn):ye]}),ne)},U},H.scale(239.75)}function Hn(N){var q,H=1+N,Q=C(u(1/H)),ge=2*O(g/(q=g+4*Q*H)),Le=.5*ge*(H+O(N*(2+N))),U=N*N,ne=H*H;function le(ye,ke){var Re,He,We=1-u(ke);if(We&&We<2){var Xe,Ke=f-ke,it=25;do{var pt=u(Ke),mt=y(Ke),Ot=Q+_(pt,H-mt),Rt=1+ne-2*H*mt;Ke-=Xe=(Ke-U*Q-H*pt+Rt*Ot-.5*We*q)/(2*H*pt*Ot)}while(k(Xe)>b&&--it>0);Re=ge*O(Rt),He=ye*Ot/g}else Re=ge*(N+We),He=ye*Q/g;return[Re*u(He),Le-Re*y(He)]}return le.invert=function(ye,ke){var Re=ye*ye+(ke-=Le)*ke,He=(1+ne-Re/(ge*ge))/(2*H),We=P(He),Xe=u(We),Ke=Q+_(Xe,H-He);return[C(ye/O(Re))*g/Ke,C(1-2*(We-U*Q-H*Xe+(1+ne-2*H*He)*Ke)/q)]},le}function tr(){var N=1,q=(0,w.r)(Hn),H=q(N);return H.ratio=function(Q){return arguments.length?q(N=+Q):N},H.scale(167.774).center([0,18.67])}var Xn=.7109889596207567,lr=.0528035274542;function or(N,q){return q>-Xn?((N=he(N,q))[1]+=lr,N):qe(N,q)}function sr(){return(0,w.Z)(or).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function gr(N,q){return k(q)>Xn?((N=he(N,q))[1]-=q>0?lr:-lr,N):qe(N,q)}function vr(){return(0,w.Z)(gr).scale(152.63)}function Er(N,q,H,Q){var ge=O(4*g/(2*H+(1+N-q/2)*u(2*H)+(N+q)/2*u(4*H)+q/2*u(6*H))),Le=O(Q*u(H)*O((1+N*y(2*H)+q*y(4*H))/(1+N+q))),U=H*le(1);function ne(Re){return O(1+N*y(2*Re)+q*y(4*Re))}function le(Re){var He=Re*H;return(2*He+(1+N-q/2)*u(2*He)+(N+q)/2*u(4*He)+q/2*u(6*He))/H}function ye(Re){return ne(Re)*u(Re)}var ke=function(Re,He){var We=H*Se(le,U*u(He)/H,He/g);isNaN(We)&&(We=H*s(He));var Xe=ge*ne(We);return[Xe*Le*Re/g*y(We),Xe/Le*u(We)]};return ke.invert=function(Re,He){var We=Se(ye,He*Le/ge);return[Re*g/(y(We)*ge*Le*ne(We)),C(H*le(We/H)/U)]},H===0&&(ge=O(Q/g),(ke=function(Re,He){return[Re*ge,u(He)/ge]}).invert=function(Re,He){return[Re/ge,C(He*ge)]}),ke}function Jn(){var N=1,q=0,H=45*A,Q=2,ge=(0,w.r)(Er),Le=ge(N,q,H,Q);return Le.a=function(U){return arguments.length?ge(N=+U,q,H,Q):N},Le.b=function(U){return arguments.length?ge(N,q=+U,H,Q):q},Le.psiMax=function(U){return arguments.length?ge(N,q,H=+U*A,Q):H*M},Le.ratio=function(U){return arguments.length?ge(N,q,H,Q=+U):Q},Le.scale(180.739)}function br(N,q,H,Q,ge,Le,U,ne,le,ye,ke){if(ke.nanEncountered)return NaN;var Re,He,We,Xe,Ke,it,pt,mt,Ot,Rt;if(He=N(q+.25*(Re=H-q)),We=N(H-.25*Re),isNaN(He))ke.nanEncountered=!0;else{if(!isNaN(We))return Rt=((it=(Xe=Re*(Q+4*He+ge)/12)+(Ke=Re*(ge+4*We+Le)/12))-U)/15,ye>le?(ke.maxDepthCount++,it+Rt):Math.abs(Rt)<ne?it+Rt:(mt=br(N,q,pt=q+.5*Re,Q,He,ge,Xe,.5*ne,le,ye+1,ke),isNaN(mt)?(ke.nanEncountered=!0,NaN):(Ot=br(N,pt,H,ge,We,Le,Ke,.5*ne,le,ye+1,ke),isNaN(Ot)?(ke.nanEncountered=!0,NaN):mt+Ot));ke.nanEncountered=!0}}function zr(N,q,H,Q,ge){Q===void 0&&(Q=1e-8),ge===void 0&&(ge=20);var Le=N(q),U=N(.5*(q+H)),ne=N(H);return br(N,q,H,Le,U,ne,(Le+4*U+ne)*(H-q)/6,Q,ge,1,{maxDepthCount:0,nanEncountered:!1})}function ii(N,q,H){function Q(We){return N+(1-N)*n(1-n(We,q),1/q)}function ge(We){return zr(Q,0,We,1e-4)}for(var Le=1/ge(1),U=1e3,ne=1.00000001*Le,le=[],ye=0;ye<=U;ye++)le.push(ge(ye/U)*ne);function ke(We){var Xe=0,Ke=U,it=500;do le[it]>We?Ke=it:Xe=it,it=Xe+Ke>>1;while(it>Xe);var pt=le[it+1]-le[it];return pt&&(pt=(We-le[it+1])/pt),(it+1+pt)/U}var Re=2*ke(1)/g*Le/H,He=function(We,Xe){var Ke=ke(k(u(Xe))),it=Q(Ke)*We;return Ke/=Re,[it,Xe>=0?Ke:-Ke]};return He.invert=function(We,Xe){var Ke;return k(Xe*=Re)<1&&(Ke=s(Xe)*C(ge(k(Xe))*Le)),[We/Q(k(Xe)),Ke]},He}function xi(){var N=0,q=2.5,H=1.183136,Q=(0,w.r)(ii),ge=Q(N,q,H);return ge.alpha=function(Le){return arguments.length?Q(N=+Le,q,H):N},ge.k=function(Le){return arguments.length?Q(N,q=+Le,H):q},ge.gamma=function(Le){return arguments.length?Q(N,q,H=+Le):H},ge.scale(152.63)}function vi(N,q){return k(N[0]-q[0])<c&&k(N[1]-q[1])<c}function Ai(N,q){for(var H,Q,ge,Le=-1,U=N.length,ne=N[0],le=[];++Le<U;){Q=((H=N[Le])[0]-ne[0])/q,ge=(H[1]-ne[1])/q;for(var ye=0;ye<q;++ye)le.push([ne[0]+ye*Q,ne[1]+ye*ge]);ne=H}return le.push(H),le}function ci(N,q,H){var Q,ge;function Le(le,ye){for(var ke=ye<0?-1:1,Re=q[+(ye<0)],He=0,We=Re.length-1;He<We&&le>Re[He][2][0];++He);var Xe=N(le-Re[He][1][0],ye);return Xe[0]+=N(Re[He][1][0],ke*ye>ke*Re[He][0][1]?Re[He][0][1]:ye)[0],Xe}H?Le.invert=H(Le):N.invert&&(Le.invert=function(le,ye){for(var ke=ge[+(ye<0)],Re=q[+(ye<0)],He=0,We=ke.length;He<We;++He){var Xe=ke[He];if(Xe[0][0]<=le&&le<Xe[1][0]&&Xe[0][1]<=ye&&ye<Xe[1][1]){var Ke=N.invert(le-N(Re[He][1][0],0)[0],ye);return Ke[0]+=Re[He][1][0],vi(Le(Ke[0],Ke[1]),[le,ye])?Ke:null}}});var U=(0,w.Z)(Le),ne=U.stream;return U.stream=function(le){var ye=U.rotate(),ke=ne(le),Re=(U.rotate([0,0]),ne(le));return U.rotate(ye),ke.sphere=function(){(0,hn.Z)(Q,Re)},ke},U.lobes=function(le){return arguments.length?(Q=function(ye){var ke,Re,He,We,Xe,Ke,it,pt=[],mt=ye[0].length;for(it=0;it<mt;++it)Re=(ke=ye[0][it])[0][0],He=ke[0][1],We=ke[1][1],Xe=ke[2][0],Ke=ke[2][1],pt.push(Ai([[Re+c,He+c],[Re+c,We-c],[Xe-c,We-c],[Xe-c,Ke+c]],30));for(it=ye[1].length-1;it>=0;--it)Re=(ke=ye[1][it])[0][0],He=ke[0][1],We=ke[1][1],Xe=ke[2][0],Ke=ke[2][1],pt.push(Ai([[Xe-c,Ke-c],[Xe-c,We+c],[Re+c,We+c],[Re+c,He-c]],30));return{type:"Polygon",coordinates:[(0,Ln.TS)(pt)]}}(le),q=le.map(function(ye){return ye.map(function(ke){return[[ke[0][0]*A,ke[0][1]*A],[ke[1][0]*A,ke[1][1]*A],[ke[2][0]*A,ke[2][1]*A]]})}),ge=q.map(function(ye){return ye.map(function(ke){var Re,He=N(ke[0][0],ke[0][1])[0],We=N(ke[2][0],ke[2][1])[0],Xe=N(ke[1][0],ke[0][1])[1],Ke=N(ke[1][0],ke[1][1])[1];return Xe>Ke&&(Re=Xe,Xe=Ke,Ke=Re),[[He,Xe],[We,Ke]]})}),U):q.map(function(ye){return ye.map(function(ke){return[[ke[0][0]*M,ke[0][1]*M],[ke[1][0]*M,ke[1][1]*M],[ke[2][0]*M,ke[2][1]*M]]})})},q!=null&&U.lobes(q),U}or.invert=function(N,q){return q>-Xn?he.invert(N,q-lr):qe.invert(N,q)},gr.invert=function(N,q){return k(q)>Xn?he.invert(N,q+(q>0?lr:-lr)):qe.invert(N,q)};var zi=[[[[-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 Do(){return ci(Ie,zi).scale(160.857)}var Ha=[[[[-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 Ko(){return ci(gr,Ha).scale(152.63)}var Eu=[[[[-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 qs(){return ci(he,Eu).scale(169.529)}var zl=[[[[-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 Cu(){return ci(he,zl).scale(169.529).rotate([20,0])}var Fo=[[[[-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 ac(){return ci(or,Fo,we).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var Gs=[[[[-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 Ws(){return ci(qe,Gs).scale(152.63).rotate([-20,0])}function Bo(N,q){return[3/d*N*O(g*g/3-q*q),q]}function qi(){return(0,w.Z)(Bo).scale(158.837)}function Dl(N){function q(H,Q){if(k(k(Q)-f)<c)return[0,Q<0?-2:2];var ge=u(Q),Le=n((1+ge)/(1-ge),N/2),U=.5*(Le+1/Le)+y(H*=N);return[2*u(H)/U,(Le-1/Le)/U]}return q.invert=function(H,Q){var ge=k(Q);if(k(ge-2)<c)return H?null:[0,s(Q)*f];if(ge>2)return null;var Le=(H/=2)*H,U=(Q/=2)*Q,ne=2*Q/(1+Le+U);return ne=n((1+ne)/(1-ne),1/N),[_(2*H,1-Le-U)/N,C((ne-1)/(ne+1))]},q}function ti(){var N=.5,q=(0,w.r)(Dl),H=q(N);return H.spacing=function(Q){return arguments.length?q(N=+Q):N},H.scale(124.75)}Bo.invert=function(N,q){return[d/3*N/O(g*g/3-q*q),q]};var No=g/x;function Qa(N,q){return[N*(1+O(y(q)))/2,q/(y(q/2)*y(N/6))]}function Jo(){return(0,w.Z)(Qa).scale(97.2672)}function xo(N,q){var H=N*N,Q=q*q;return[N*(.975534+Q*(-.0143059*H-.119161+-.0547009*Q)),q*(1.00384+H*(.0802894+-.02855*Q+199025e-9*H)+Q*(.0998909+-.0491032*Q))]}function xs(){return(0,w.Z)(xo).scale(139.98)}function Qo(N,q){return[u(N)/y(q),p(q)*y(N)]}function es(){return(0,w.Z)(Qo).scale(144.049).clipAngle(89.999)}function ou(N){var q=y(N),H=p(v+N/2);function Q(ge,Le){var U=Le-N,ne=k(U)<c?ge*q:k(ne=v+Le/2)<c||k(k(ne)-f)<c?0:ge*U/t(p(ne)/H);return[ne,U]}return Q.invert=function(ge,Le){var U,ne=Le+N;return[k(Le)<c?ge/q:k(U=v+ne/2)<c||k(k(U)-f)<c?0:ge*t(p(U)/H)/Le,ne]},Q}function oc(){return Ne(ou).parallel(40).scale(158.837)}function bs(N,q){return[N,1.25*t(p(v+.4*q))]}function sc(){return(0,w.Z)(bs).scale(108.318)}function Lu(N){var q=N.length-1;function H(Q,ge){for(var Le,U=y(ge),ne=2/(1+U*y(Q)),le=ne*U*u(Q),ye=ne*u(ge),ke=q,Re=N[ke],He=Re[0],We=Re[1];--ke>=0;)He=(Re=N[ke])[0]+le*(Le=He)-ye*We,We=Re[1]+le*We+ye*Le;return[He=le*(Le=He)-ye*We,We=le*We+ye*Le]}return H.invert=function(Q,ge){var Le=20,U=Q,ne=ge;do{for(var le,ye=q,ke=N[ye],Re=ke[0],He=ke[1],We=0,Xe=0;--ye>=0;)We=Re+U*(le=We)-ne*Xe,Xe=He+U*Xe+ne*le,Re=(ke=N[ye])[0]+U*(le=Re)-ne*He,He=ke[1]+U*He+ne*le;var Ke,it,pt=(We=Re+U*(le=We)-ne*Xe)*We+(Xe=He+U*Xe+ne*le)*Xe;U-=Ke=((Re=U*(le=Re)-ne*He-Q)*We+(He=U*He+ne*le-ge)*Xe)/pt,ne-=it=(He*We-Re*Xe)/pt}while(k(Ke)+k(it)>c*c&&--Le>0);if(Le){var mt=O(U*U+ne*ne),Ot=2*i(.5*mt),Rt=u(Ot);return[_(U*Rt,mt*y(Ot)),mt?C(ne*Rt/mt):0]}},H}Qa.invert=function(N,q){var H=k(N),Q=k(q),ge=c,Le=f;Q<No?Le*=Q/No:ge+=6*P(No/Q);for(var U=0;U<25;U++){var ne=u(Le),le=O(y(Le)),ye=u(Le/2),ke=y(Le/2),Re=u(ge/6),He=y(ge/6),We=.5*ge*(1+le)-H,Xe=Le/(ke*He)-Q,Ke=le?-.25*ge*ne/le:0,it=.5*(1+le),pt=(1+.5*Le*ye/ke)/(ke*He),mt=Le/ke*(Re/6)/(He*He),Ot=Ke*mt-pt*it,Rt=(We*mt-Xe*it)/Ot,Pt=(Xe*Ke-We*pt)/Ot;if(Le-=Rt,ge-=Pt,k(Rt)<c&&k(Pt)<c)break}return[N<0?-ge:ge,q<0?-Le:Le]},xo.invert=function(N,q){var H=s(N)*g,Q=q/2,ge=50;do{var Le=H*H,U=Q*Q,ne=H*Q,le=H*(.975534+U*(-.0143059*Le-.119161+-.0547009*U))-N,ye=Q*(1.00384+Le*(.0802894+-.02855*U+199025e-9*Le)+U*(.0998909+-.0491032*U))-q,ke=.975534-U*(.119161+3*Le*.0143059+.0547009*U),Re=-ne*(.238322+.2188036*U+.0286118*Le),He=ne*(.1605788+7961e-7*Le+-.0571*U),We=1.00384+Le*(.0802894+199025e-9*Le)+U*(3*(.0998909-.02855*Le)-.245516*U),Xe=Re*He-We*ke,Ke=(ye*Re-le*We)/Xe,it=(le*He-ye*ke)/Xe;H-=Ke,Q-=it}while((k(Ke)>c||k(it)>c)&&--ge>0);return ge&&[H,Q]},Qo.invert=function(N,q){var H=N*N,Q=q*q+1,ge=H+Q,Le=N?m*O((ge-O(ge*ge-4*H))/H):1/O(Q);return[C(N*Le),s(q)*P(Le)]},bs.invert=function(N,q){return[N,2.5*i(h(.8*q))-.625*g]};var lc=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],Pu=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],uc=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],vl=[[.9245,0],[0,0],[.01943,0]],_s=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Zs(){return so(lc,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function ml(){return so(Pu,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function su(){return so(uc,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function Ou(){return so(vl,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function Iu(){return so(_s,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function so(N,q){var H=(0,w.Z)(Lu(N)).rotate(q).clipAngle(90),Q=(0,rt.Z)(q),ge=H.center;return delete H.rotate,H.center=function(Le){return arguments.length?ge(Q(Le)):Q.invert(ge())},H}var Ys=O(6),jo=O(7);function ts(N,q){var H=C(7*u(q)/(3*Ys));return[Ys*N*(2*y(2*H/3)-1)/jo,9*u(H/3)/jo]}function cc(){return(0,w.Z)(ts).scale(164.859)}function ws(N,q){for(var H,Q=(1+m)*u(q),ge=q,Le=0;Le<25&&(ge-=H=(u(ge/2)+u(ge)-Q)/(.5*y(ge/2)+y(ge)),!(k(H)<c));Le++);return[N*(1+2*y(ge)/y(ge/2))/(3*x),2*O(3)*u(ge/2)/O(2+x)]}function fi(){return(0,w.Z)(ws).scale(188.209)}function bo(N,q){for(var H,Q=O(6/(4+g)),ge=(1+g/4)*u(q),Le=q/2,U=0;U<25&&(Le-=H=(Le/2+u(Le)-ge)/(.5+y(Le)),!(k(H)<c));U++);return[Q*(.5+y(Le))*N/1.5,Q*Le]}function Fl(){return(0,w.Z)(bo).scale(166.518)}ts.invert=function(N,q){var H=3*C(q*jo/9);return[N*jo/(Ys*(2*y(2*H/3)-1)),C(3*u(H)*Ys/7)]},ws.invert=function(N,q){var H=q*O(2+x)/(2*O(3)),Q=2*C(H);return[3*x*N/(1+2*y(Q)/y(Q/2)),C((H+u(Q))/(1+m))]},bo.invert=function(N,q){var H=O(6/(4+g)),Q=q/H;return k(k(Q)-f)<c&&(Q=Q<0?-f:f),[1.5*N/(H*(.5+y(Q))),C((Q/2+u(Q))/(1+g/4))]};var lo=e(26867);function Xs(N,q){var H=q*q,Q=H*H,ge=H*Q;return[N*(.84719-.13063*H+ge*ge*(.05494*H-.04515-.02326*Q+.00331*ge)),q*(1.01183+Q*Q*(.01926*H-.02625-.00396*Q))]}function $c(){return(0,w.Z)(Xs).scale(175.295)}function lu(N,q){return[N*(1+y(q))/2,2*(q-p(q/2))]}function fc(){return(0,w.Z)(lu).scale(152.63)}Xs.invert=function(N,q){var H,Q,ge,Le,U=q,ne=25;do U-=H=(U*(1.01183+(ge=(Q=U*U)*Q)*ge*(.01926*Q-.02625-.00396*ge))-q)/(1.01183+ge*ge*(.21186*Q-.23625+-.05148*ge));while(k(H)>b&&--ne>0);return[N/(.84719-.13063*(Q=U*U)+(Le=Q*(ge=Q*Q))*Le*(.05494*Q-.04515-.02326*ge+.00331*Le)),U]},lu.invert=function(N,q){for(var H=q/2,Q=0,ge=1/0;Q<10&&k(ge)>c;++Q){var Le=y(q/2);q-=ge=(q-p(q/2)-H)/(1-.5/(Le*Le))}return[2*N/(1+y(q)),q]};var hc=[[[[-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 Bl(){return ci(de(1/0),hc).rotate([20,0]).scale(152.63)}function yl(N,q){var H=u(q),Q=y(q),ge=s(N);if(N===0||k(q)===f)return[0,q];if(q===0)return[N,0];if(k(N)===f)return[N*Q,f*H];var Le=g/(2*N)-2*N/g,U=2*q/g,ne=(1-U*U)/(H-U),le=Le*Le,ye=ne*ne,ke=1+le/ye,Re=1+ye/le,He=(Le*H/ne-Le/2)/ke,We=(ye*H/le+ne/2)/Re,Xe=We*We-(ye*H*H/le+ne*H-1)/Re;return[f*(He+O(He*He+Q*Q/ke)*ge),f*(We+O(Xe<0?0:Xe)*s(-q*Le)*ge)]}function Nl(){return(0,w.Z)(yl).scale(127.267)}yl.invert=function(N,q){var H=(N/=f)*N,Q=H+(q/=f)*q,ge=g*g;return[N?(Q-1+O((1-Q)*(1-Q)+4*H))/(2*N)*f:0,Se(function(Le){return Q*(g*u(Le)-2*Le)*g+4*Le*Le*(q-u(Le))+2*g*Le-ge*q},0)]};var ks=1.0148,ns=.23185,Ts=-.14499,rs=.02406,uu=ks,_o=5*ns,pc=7*Ts,dc=9*rs,cu=1.790857183;function As(N,q){var H=q*q;return[N,q*(ks+H*H*(ns+H*(Ts+rs*H)))]}function fu(){return(0,w.Z)(As).scale(139.319)}function $s(N,q){if(k(q)<c)return[N,0];var H=p(q),Q=N*u(q);return[u(Q)/H,q+(1-y(Q))/H]}function Ru(){return(0,w.Z)($s).scale(103.74)}As.invert=function(N,q){q>cu?q=cu:q<-1.790857183&&(q=-1.790857183);var H,Q=q;do{var ge=Q*Q;Q-=H=(Q*(ks+ge*ge*(ns+ge*(Ts+rs*ge)))-q)/(uu+ge*ge*(_o+ge*(pc+dc*ge)))}while(k(H)>c);return[N,Q]},$s.invert=function(N,q){if(k(q)<c)return[N,0];var H,Q=N*N+q*q,ge=.5*q,Le=10;do{var U=p(ge),ne=1/y(ge),le=Q-2*q*ge+ge*ge;ge-=H=(U*le+2*(ge-q))/(2+le*ne*ne+2*(ge-q)*U)}while(k(H)>c&&--Le>0);return U=p(ge),[(k(q)<k(ge+1/U)?C(N*U):s(q)*s(N)*(P(k(N*U))+f))/u(ge),ge]};var xl=e(77338),Ks=e(83074);function jl(N,q){return[N[0]*q[0]+N[1]*q[3],N[0]*q[1]+N[1]*q[4],N[0]*q[2]+N[1]*q[5]+N[2],N[3]*q[0]+N[4]*q[3],N[3]*q[1]+N[4]*q[4],N[3]*q[2]+N[4]*q[5]+N[5]]}function bl(N,q){return[N[0]-q[0],N[1]-q[1]]}function hi(N){return O(N[0]*N[0]+N[1]*N[1])}function Ms(N,q,H){function Q(ne,le){var ye,ke=q(ne,le),Re=ke.project([ne*M,le*M]);return(ye=ke.transform)?[ye[0]*Re[0]+ye[1]*Re[1]+ye[2],-(ye[3]*Re[0]+ye[4]*Re[1]+ye[5])]:(Re[1]=-Re[1],Re)}function ge(ne,le){var ye=ne.project.invert,ke=ne.transform,Re=le;if(ke&&(ke=function(it){var pt=1/(it[0]*it[4]-it[1]*it[3]);return[pt*it[4],-pt*it[1],pt*(it[1]*it[5]-it[2]*it[4]),-pt*it[3],pt*it[0],pt*(it[2]*it[3]-it[0]*it[5])]}(ke),Re=[ke[0]*Re[0]+ke[1]*Re[1]+ke[2],ke[3]*Re[0]+ke[4]*Re[1]+ke[5]]),ye&&ne===function(it){return q(it[0]*A,it[1]*A)}(He=ye(Re)))return He;for(var He,We=ne.children,Xe=0,Ke=We&&We.length;Xe<Ke;++Xe)if(He=ge(We[Xe],le))return He}(function ne(le,ye){if(le.edges=function(Pt){for(var Vt=Pt.length,It=[],on=Pt[Vt-1],Kt=0;Kt<Vt;++Kt)It.push([on,on=Pt[Kt]]);return It}(le.face),ye.face){var ke=le.shared=function(Pt,Vt){for(var It,on,Kt=Pt.length,Zt=null,yn=0;yn<Kt;++yn){It=Pt[yn];for(var _n=Vt.length;--_n>=0;)if(on=Vt[_n],It[0]===on[0]&&It[1]===on[1]){if(Zt)return[Zt,It];Zt=It}}}(le.face,ye.face),Re=(Ke=ke.map(ye.project),it=ke.map(le.project),pt=bl(Ke[1],Ke[0]),mt=bl(it[1],it[0]),Ot=function(Pt,Vt){return _(Pt[0]*Vt[1]-Pt[1]*Vt[0],Pt[0]*Vt[0]+Pt[1]*Vt[1])}(pt,mt),Rt=hi(pt)/hi(mt),jl([1,0,Ke[0][0],0,1,Ke[0][1]],jl([Rt,0,0,0,Rt,0],jl([y(Ot),u(Ot),0,-u(Ot),y(Ot),0],[1,0,-it[0][0],0,1,-it[0][1]]))));le.transform=ye.transform?jl(ye.transform,Re):Re;for(var He=ye.edges,We=0,Xe=He.length;We<Xe;++We)ia(ke[0],He[We][1])&&ia(ke[1],He[We][0])&&(He[We]=le),ia(ke[0],He[We][0])&&ia(ke[1],He[We][1])&&(He[We]=le);for(We=0,Xe=(He=le.edges).length;We<Xe;++We)ia(ke[0],He[We][0])&&ia(ke[1],He[We][1])&&(He[We]=ye),ia(ke[0],He[We][1])&&ia(ke[1],He[We][0])&&(He[We]=ye)}else le.transform=ye.transform;var Ke,it,pt,mt,Ot,Rt;return le.children&&le.children.forEach(function(Pt){ne(Pt,le)}),le})(N,{transform:null}),Kr(N)&&(Q.invert=function(ne,le){var ye=ge(N,[ne,-le]);return ye&&(ye[0]*=A,ye[1]*=A,ye)});var Le=(0,w.Z)(Q),U=Le.stream;return Le.stream=function(ne){var le=Le.rotate(),ye=U(ne),ke=(Le.rotate([0,0]),U(ne));return Le.rotate(le),ye.sphere=function(){ke.polygonStart(),ke.lineStart(),is(ke,N),ke.lineEnd(),ke.polygonEnd()},ye},Le.angle(H==null?-30:H*M)}function is(N,q,H){var Q,ge,Le=q.edges,U=Le.length,ne={type:"MultiPoint",coordinates:q.face},le=q.face.filter(function(Ke){return k(Ke[1])!==90}),ye=(0,xl.Z)({type:"MultiPoint",coordinates:le}),ke=!1,Re=-1,He=ye[1][0]-ye[0][0],We=He===180||He===360?[(ye[0][0]+ye[1][0])/2,(ye[0][1]+ye[1][1])/2]:(0,$e.Z)(ne);if(H)for(;++Re<U&&Le[Re]!==H;);++Re;for(var Xe=0;Xe<U;++Xe)ge=Le[(Xe+Re)%U],Array.isArray(ge)?(ke||(N.point((Q=(0,Ks.Z)(ge[0],We)(c))[0],Q[1]),ke=!0),N.point((Q=(0,Ks.Z)(ge[1],We)(c))[0],Q[1])):(ke=!1,ge!==H&&is(N,ge,q))}function ia(N,q){return N&&q&&N[0]===q[0]&&N[1]===q[1]}function Kr(N){return N.project.invert||N.children&&N.children.some(Kr)}var ni=e(98936),Ss=[[0,90],[-90,0],[0,0],[90,0],[180,0],[0,-90]],as=[[0,2,1],[0,3,2],[5,1,2],[5,2,3],[0,1,4],[0,4,3],[5,4,1],[5,3,4]].map(function(N){return N.map(function(q){return Ss[q]})});function zu(N){N=N||function(H){var Q=(0,$e.Z)({type:"MultiPoint",coordinates:H});return(0,ni.Z)().scale(1).translate([0,0]).rotate([-Q[0],-Q[1]])};var q=as.map(function(H){return{face:H,project:N(H)}});return[-1,0,0,1,0,1,4,5].forEach(function(H,Q){var ge=q[H];ge&&(ge.children||(ge.children=[])).push(q[Q])}),Ms(q[0],function(H,Q){return q[H<-g/2?Q<0?6:4:H<0?Q<0?2:0:H<g/2?Q<0?3:1:Q<0?7:5]}).angle(-30).scale(101.858).center([0,45])}var Ul=2/O(3);function Es(N,q){var H=Et(N,q);return[H[0]*Ul,H[1]]}function Vl(N){N=N||function(H){var Q=(0,$e.Z)({type:"MultiPoint",coordinates:H});return(0,w.Z)(Es).translate([0,0]).scale(1).rotate(Q[1]>0?[-Q[0],0]:[180-Q[0],180])};var q=as.map(function(H){return{face:H,project:N(H)}});return[-1,0,0,1,0,1,4,5].forEach(function(H,Q){var ge=q[H];ge&&(ge.children||(ge.children=[])).push(q[Q])}),Ms(q[0],function(H,Q){return q[H<-g/2?Q<0?6:4:H<0?Q<0?2:0:H<g/2?Q<0?3:1:Q<0?7:5]}).angle(-30).scale(121.906).center([0,48.5904])}function os(N){N=N||function(Le){var U=Le.length===6?(0,$e.Z)({type:"MultiPoint",coordinates:Le}):Le[0];return(0,ni.Z)().scale(1).translate([0,0]).rotate([-U[0],-U[1]])};var q=as.map(function(Le){for(var U,ne=Le.map(Ci),le=ne.length,ye=ne[le-1],ke=[],Re=0;Re<le;++Re)U=ne[Re],ke.push(Cs([.9486832980505138*ye[0]+.31622776601683794*U[0],.9486832980505138*ye[1]+.31622776601683794*U[1],.9486832980505138*ye[2]+.31622776601683794*U[2]]),Cs([.9486832980505138*U[0]+.31622776601683794*ye[0],.9486832980505138*U[1]+.31622776601683794*ye[1],.9486832980505138*U[2]+.31622776601683794*ye[2]])),ye=U;return ke}),H=[],Q=[-1,0,0,1,0,1,4,5];q.forEach(function(Le,U){for(var ne,le,ye=as[U],ke=ye.length,Re=H[U]=[],He=0;He<ke;++He)q.push([ye[He],Le[(2*He+2)%(2*ke)],Le[(2*He+1)%(2*ke)]]),Q.push(U),Re.push((ne=Ci(Le[(2*He+2)%(2*ke)]),le=Ci(Le[(2*He+1)%(2*ke)]),[ne[1]*le[2]-ne[2]*le[1],ne[2]*le[0]-ne[0]*le[2],ne[0]*le[1]-ne[1]*le[0]]))});var ge=q.map(function(Le){return{project:N(Le),face:Le}});return Q.forEach(function(Le,U){var ne=ge[Le];ne&&(ne.children||(ne.children=[])).push(ge[U])}),Ms(ge[0],function(Le,U){var ne=y(U),le=[ne*y(Le),ne*u(Le),u(U)],ye=Le<-g/2?U<0?6:4:Le<0?U<0?2:0:Le<g/2?U<0?3:1:U<0?7:5,ke=H[ye];return ge[Js(ke[0],le)<0?8+3*ye:Js(ke[1],le)<0?8+3*ye+1:Js(ke[2],le)<0?8+3*ye+2:ye]}).angle(-30).scale(110.625).center([0,45])}function Js(N,q){for(var H=0,Q=N.length,ge=0;H<Q;++H)ge+=N[H]*q[H];return ge}function Cs(N){return[_(N[1],N[0])*M,C(o(-1,r(1,N[2])))*M]}function Ci(N){var q=N[0]*A,H=N[1]*A,Q=y(H);return[Q*y(q),Q*u(q),u(H)]}function Qs(){}function el(N,q){var H,Q=q.stream;if(!Q)throw new Error("invalid projection");switch(N&&N.type){case"Feature":H=xa;break;case"FeatureCollection":H=Xi;break;default:H=da}return H(N,Q)}function Xi(N,q){return{type:"FeatureCollection",features:N.features.map(function(H){return xa(H,q)})}}function xa(N,q){return{type:"Feature",id:N.id,properties:N.properties,geometry:da(N.geometry,q)}}function da(N,q){if(!N)return null;if(N.type==="GeometryCollection")return function(Q,ge){return{type:"GeometryCollection",geometries:Q.geometries.map(function(Le){return da(Le,ge)})}}(N,q);var H;switch(N.type){case"Point":case"MultiPoint":H=Ls;break;case"LineString":case"MultiLineString":H=wo;break;case"Polygon":case"MultiPolygon":case"Sphere":H=aa;break;default:return null}return(0,hn.Z)(N,q(H)),H.result()}Es.invert=function(N,q){return Et.invert(N/Ul,q)};var $i=[],La=[],Ls={point:function(N,q){$i.push([N,q])},result:function(){var N=$i.length?$i.length<2?{type:"Point",coordinates:$i[0]}:{type:"MultiPoint",coordinates:$i}:null;return $i=[],N}},wo={lineStart:Qs,point:function(N,q){$i.push([N,q])},lineEnd:function(){$i.length&&(La.push($i),$i=[])},result:function(){var N=La.length?La.length<2?{type:"LineString",coordinates:La[0]}:{type:"MultiLineString",coordinates:La}:null;return La=[],N}},aa={polygonStart:Qs,lineStart:Qs,point:function(N,q){$i.push([N,q])},lineEnd:function(){var N=$i.length;if(N){do $i.push($i[0].slice());while(++N<4);La.push($i),$i=[]}},polygonEnd:Qs,result:function(){if(!La.length)return null;var N=[],q=[];return La.forEach(function(H){(function(Q){if((ge=Q.length)<4)return!1;for(var ge,Le=0,U=Q[ge-1][1]*Q[0][0]-Q[ge-1][0]*Q[0][1];++Le<ge;)U+=Q[Le-1][1]*Q[Le][0]-Q[Le-1][0]*Q[Le][1];return U<=0})(H)?N.push([H]):q.push(H)}),q.forEach(function(H){var Q=H[0];N.some(function(ge){if(function(Le,U){for(var ne=U[0],le=U[1],ye=!1,ke=0,Re=Le.length,He=Re-1;ke<Re;He=ke++){var We=Le[ke],Xe=We[0],Ke=We[1],it=Le[He],pt=it[0],mt=it[1];Ke>le^mt>le&&ne<(pt-Xe)*(le-Ke)/(mt-Ke)+Xe&&(ye=!ye)}return ye}(ge[0],Q))return ge.push(H),!0})||N.push([H])}),La=[],N.length?N.length>1?{type:"MultiPolygon",coordinates:N}:{type:"Polygon",coordinates:N[0]}:null}};function eo(N){var q=N(f,0)[0]-N(-f,0)[0];function H(Q,ge){var Le=k(Q)<f,U=N(Le?Q:Q>0?Q-g:Q+g,ge),ne=(U[0]-U[1])*m,le=(U[0]+U[1])*m;if(Le)return[ne,le];var ye=q*m,ke=ne>0^le>0?-1:1;return[ke*ne-s(le)*ye,ke*le-s(ne)*ye]}return N.invert&&(H.invert=function(Q,ge){var Le=(Q+ge)*m,U=(ge-Q)*m,ne=k(Le)<.5*q&&k(U)<.5*q;if(!ne){var le=q*m,ye=Le>0^U>0?-1:1,ke=-ye*Q+(U>0?1:-1)*le,Re=-ye*ge+(Le>0?1:-1)*le;Le=(-ke-Re)*m,U=(ke-Re)*m}var He=N.invert(Le,U);return ne||(He[0]+=Le>0?g:-g),He}),(0,w.Z)(H).rotate([-90,-90,45]).clipAngle(179.999)}function uo(){return eo(Nn).scale(176.423)}function hu(){return eo(An).scale(111.48)}function co(N,q){if(!(0<=(q=+q)&&q<=20))throw new Error("invalid digits");function H(ye){var ke=ye.length,Re=2,He=new Array(ke);for(He[0]=+ye[0].toFixed(q),He[1]=+ye[1].toFixed(q);Re<ke;)He[Re]=ye[Re],++Re;return He}function Q(ye){return ye.map(H)}function ge(ye){for(var ke=H(ye[0]),Re=[ke],He=1;He<ye.length;He++){var We=H(ye[He]);(We.length>2||We[0]!=ke[0]||We[1]!=ke[1])&&(Re.push(We),ke=We)}return Re.length===1&&ye.length>1&&Re.push(H(ye[ye.length-1])),Re}function Le(ye){return ye.map(ge)}function U(ye){if(ye==null)return ye;var ke;switch(ye.type){case"GeometryCollection":ke={type:"GeometryCollection",geometries:ye.geometries.map(U)};break;case"Point":ke={type:"Point",coordinates:H(ye.coordinates)};break;case"MultiPoint":ke={type:ye.type,coordinates:Q(ye.coordinates)};break;case"LineString":ke={type:ye.type,coordinates:ge(ye.coordinates)};break;case"MultiLineString":case"Polygon":ke={type:ye.type,coordinates:Le(ye.coordinates)};break;case"MultiPolygon":ke={type:"MultiPolygon",coordinates:ye.coordinates.map(Le)};break;default:return ye}return ye.bbox!=null&&(ke.bbox=ye.bbox),ke}function ne(ye){var ke={type:"Feature",properties:ye.properties,geometry:U(ye.geometry)};return ye.id!=null&&(ke.id=ye.id),ye.bbox!=null&&(ke.bbox=ye.bbox),ke}if(N!=null)switch(N.type){case"Feature":return ne(N);case"FeatureCollection":var le={type:"FeatureCollection",features:N.features.map(ne)};return N.bbox!=null&&(le.bbox=N.bbox),le;default:return U(N)}return N}function oa(N){var q=u(N);function H(Q,ge){var Le=q?p(Q*q/2)/q:Q/2;if(!ge)return[2*Le,-N];var U=2*i(Le*u(ge)),ne=1/p(ge);return[u(U)*ne,ge+(1-y(U))*ne-N]}return H.invert=function(Q,ge){if(k(ge+=N)<c)return[q?2*i(q*Q/2)/q:Q,0];var Le,U=Q*Q+ge*ge,ne=0,le=10;do{var ye=p(ne),ke=1/y(ne),Re=U-2*ge*ne+ne*ne;ne-=Le=(ye*Re+2*(ne-ge))/(2+Re*ke*ke+2*(ne-ge)*ye)}while(k(Le)>c&&--le>0);var He=Q*(ye=p(ne)),We=p(k(ge)<k(ne+1/ye)?.5*C(He):.5*P(He)+g/4)/u(ne);return[q?2*i(q*We)/q:2*We,ne]},H}function Sr(){return Ne(oa).scale(131.215)}var ba=[[.9986,-.062],[1,0],[.9986,.062],[.9954,.124],[.99,.186],[.9822,.248],[.973,.31],[.96,.372],[.9427,.434],[.9216,.4958],[.8962,.5571],[.8679,.6176],[.835,.6769],[.7986,.7346],[.7597,.7903],[.7186,.8435],[.6732,.8936],[.6213,.9394],[.5722,.9761],[.5322,1]];function Hl(N,q){var H,Q=r(18,36*k(q)/g),ge=l(Q),Le=Q-ge,U=(H=ba[ge])[0],ne=H[1],le=(H=ba[++ge])[0],ye=H[1],ke=(H=ba[r(19,++ge)])[0],Re=H[1];return[N*(le+Le*(ke-U)/2+Le*Le*(ke-2*le+U)/2),(q>0?f:-f)*(ye+Le*(Re-ne)/2+Le*Le*(Re-2*ye+ne)/2)]}function pu(){return(0,w.Z)(Hl).scale(152.63)}function tl(N,q){var H=function(U){function ne(le,ye){var ke=y(ye),Re=(U-1)/(U-ke*y(le));return[Re*ke*u(le),Re*u(ye)]}return ne.invert=function(le,ye){var ke=le*le+ye*ye,Re=O(ke),He=(U-O(1-ke*(U+1)/(U-1)))/((U-1)/Re+Re/(U-1));return[_(le*He,Re*O(1-He*He)),Re?C(ye*He/Re):0]},ne}(N);if(!q)return H;var Q=y(q),ge=u(q);function Le(U,ne){var le=H(U,ne),ye=le[1],ke=ye*ge/(N-1)+Q;return[le[0]*Q/ke,ye/ke]}return Le.invert=function(U,ne){var le=(N-1)/(N-1-ne*ge);return H.invert(le*U,le*ne*Q)},Le}function nl(){var N=2,q=0,H=(0,w.r)(tl),Q=H(N,q);return Q.distance=function(ge){return arguments.length?H(N=+ge,q):N},Q.tilt=function(ge){return arguments.length?H(N,q=ge*A):q*M},Q.scale(432.147).clipAngle(P(1/N)*M-1e-6)}ba.forEach(function(N){N[1]*=1.0144}),Hl.invert=function(N,q){var H=q/f,Q=90*H,ge=r(18,k(Q/5)),Le=o(0,l(ge));do{var U=ba[Le][1],ne=ba[Le+1][1],le=ba[r(19,Le+2)][1],ye=le-U,ke=le-2*ne+U,Re=2*(k(H)-ne)/ye,He=ke/ye,We=Re*(1-He*Re*(1-2*He*Re));if(We>=0||Le===1){Q=(q>=0?5:-5)*(We+ge);var Xe,Ke=50;do We=(ge=r(18,k(Q)/5))-(Le=l(ge)),U=ba[Le][1],ne=ba[Le+1][1],le=ba[r(19,Le+2)][1],Q-=(Xe=(q>=0?f:-f)*(ne+We*(le-U)/2+We*We*(le-2*ne+U)/2)-q)*M;while(k(Xe)>b&&--Ke>0);break}}while(--Le>=0);var it=ba[Le][0],pt=ba[Le+1][0],mt=ba[r(19,Le+2)][0];return[N/(pt+We*(mt-it)/2+We*We*(mt-2*pt+it)/2),Q*A]};var ss=1e-4,Tr=1e4,ko=-180,_l=ko+ss,ql=180,_a=ql-ss,To=-90,fo=To+ss,to=90,Uo=to-ss;function ls(N){return N.length>0}function Ki(N){return N===To||N===to?[0,N]:[ko,(q=N,Math.floor(q*Tr)/Tr)];var q}function rl(N){var q=N[0],H=N[1],Q=!1;return q<=_l?(q=ko,Q=!0):q>=_a&&(q=ql,Q=!0),H<=fo?(H=To,Q=!0):H>=Uo&&(H=to,Q=!0),Q?[q,H]:N}function wl(N){return N.map(rl)}function sa(N,q,H){for(var Q=0,ge=N.length;Q<ge;++Q){var Le=N[Q].slice();H.push({index:-1,polygon:q,ring:Le});for(var U=0,ne=Le.length;U<ne;++U){var le=Le[U],ye=le[0],ke=le[1];if(ye<=_l||ye>=_a||ke<=fo||ke>=Uo){Le[U]=rl(le);for(var Re=U+1;Re<ne;++Re){var He=Le[Re],We=He[0],Xe=He[1];if(We>_l&&We<_a&&Xe>fo&&Xe<Uo)break}if(Re===U+1)continue;if(U){var Ke={index:-1,polygon:q,ring:Le.slice(0,U+1)};Ke.ring[Ke.ring.length-1]=Ki(ke),H[H.length-1]=Ke}else H.pop();if(Re>=ne)break;H.push({index:-1,polygon:q,ring:Le=Le.slice(Re-1)}),Le[0]=Ki(Le[0][1]),U=-1,ne=Le.length}}}}function pi(N){var q,H,Q,ge,Le,U,ne=N.length,le={},ye={};for(q=0;q<ne;++q)Q=(H=N[q]).ring[0],Le=H.ring[H.ring.length-1],Q[0]!==Le[0]||Q[1]!==Le[1]?(H.index=q,le[Q]=ye[Le]=H):(H.polygon.push(H.ring),N[q]=null);for(q=0;q<ne;++q)if(H=N[q]){if(Q=H.ring[0],Le=H.ring[H.ring.length-1],ge=ye[Q],U=le[Le],delete le[Q],delete ye[Le],Q[0]===Le[0]&&Q[1]===Le[1]){H.polygon.push(H.ring);continue}ge?(delete ye[Q],delete le[ge.ring[0]],ge.ring.pop(),N[ge.index]=null,H={index:-1,polygon:ge.polygon,ring:ge.ring.concat(H.ring)},ge===U?H.polygon.push(H.ring):(H.index=ne++,N.push(le[H.ring[0]]=ye[H.ring[H.ring.length-1]]=H))):U?(delete le[Le],delete ye[U.ring[U.ring.length-1]],H.ring.pop(),H={index:ne++,polygon:U.polygon,ring:H.ring.concat(U.ring)},N[U.index]=null,N.push(le[H.ring[0]]=ye[H.ring[H.ring.length-1]]=H)):(H.ring.push(H.ring[0]),H.polygon.push(H.ring))}}function Gl(N){var q={type:"Feature",geometry:qa(N.geometry)};return N.id!=null&&(q.id=N.id),N.bbox!=null&&(q.bbox=N.bbox),N.properties!=null&&(q.properties=N.properties),q}function qa(N){if(N==null)return N;var q,H,Q,ge;switch(N.type){case"GeometryCollection":q={type:"GeometryCollection",geometries:N.geometries.map(qa)};break;case"Point":q={type:"Point",coordinates:rl(N.coordinates)};break;case"MultiPoint":case"LineString":q={type:N.type,coordinates:wl(N.coordinates)};break;case"MultiLineString":q={type:"MultiLineString",coordinates:N.coordinates.map(wl)};break;case"Polygon":var Le=[];sa(N.coordinates,Le,H=[]),pi(H),q={type:"Polygon",coordinates:Le};break;case"MultiPolygon":H=[],Q=-1,ge=N.coordinates.length;for(var U=new Array(ge);++Q<ge;)sa(N.coordinates[Q],U[Q]=[],H);pi(H),q={type:"MultiPolygon",coordinates:U.filter(ls)};break;default:return N}return N.bbox!=null&&(q.bbox=N.bbox),q}function Ji(N){if(N==null)return N;switch(N.type){case"Feature":return Gl(N);case"FeatureCollection":var q={type:"FeatureCollection",features:N.features.map(Gl)};return N.bbox!=null&&(q.bbox=N.bbox),q;default:return qa(N)}}function Vo(N,q){var H=p(q/2),Q=u(v*H);return[N*(.74482-.34588*Q*Q),1.70711*H]}function Du(){return(0,w.Z)(Vo).scale(146.153)}function Di(N,q,H){var Q=(0,Ks.Z)(q,H),ge=Q(.5),Le=(0,rt.Z)([-ge[0],-ge[1]])(q),U=Q.distance/2,ne=-C(u(Le[1]*A)/u(U)),le=[-ge[0],-ge[1],-(Le[0]>0?g-ne:ne)*M],ye=(0,w.Z)(N(U)).rotate(le),ke=(0,rt.Z)(le),Re=ye.center;return delete ye.rotate,ye.center=function(He){return arguments.length?Re(ke(He)):ke.invert(Re())},ye.clipAngle(90)}function li(N){var q=y(N);function H(Q,ge){var Le=(0,ni.M)(Q,ge);return Le[0]*=q,Le}return H.invert=function(Q,ge){return ni.M.invert(Q/q,ge)},H}function no(){return Ho([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Ho(N,q){return Di(li,N,q)}function Ao(N){if(!(N*=2))return re.N;var q=-N/2,H=-q,Q=N*N,ge=p(H),Le=.5/u(H);function U(ne,le){var ye=P(y(le)*y(ne-q)),ke=P(y(le)*y(ne-H));return[((ye*=ye)-(ke*=ke))/(2*N),(le<0?-1:1)*O(4*Q*ke-(Q-ye+ke)*(Q-ye+ke))/(2*N)]}return U.invert=function(ne,le){var ye,ke,Re=le*le,He=y(O(Re+(ye=ne+q)*ye)),We=y(O(Re+(ye=ne+H)*ye));return[_(ke=He-We,ye=(He+We)*ge),(le<0?-1:1)*P(O(ye*ye+ke*ke)*Le)]},U}function du(){return Ps([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function Ps(N,q){return Di(Ao,N,q)}function il(N,q){if(k(q)<c)return[N,0];var H=k(q/f),Q=C(H);if(k(N)<c||k(k(q)-f)<c)return[0,s(q)*g*p(Q/2)];var ge=y(Q),Le=k(g/N-N/g)/2,U=Le*Le,ne=ge/(H+ge-1),le=ne*(2/H-1),ye=le*le,ke=ye+U,Re=ne-ye,He=U+ne;return[s(N)*g*(Le*Re+O(U*Re*Re-ke*(ne*ne-ye)))/ke,s(q)*g*(le*He-Le*O((U+1)*ke-He*He))/ke]}function Gi(){return(0,w.Z)(il).scale(79.4183)}function ga(N,q){if(k(q)<c)return[N,0];var H=k(q/f),Q=C(H);if(k(N)<c||k(k(q)-f)<c)return[0,s(q)*g*p(Q/2)];var ge=y(Q),Le=k(g/N-N/g)/2,U=Le*Le,ne=ge*(O(1+U)-Le*ge)/(1+U*H*H);return[s(N)*g*ne,s(q)*g*O(1-ne*(2*Le+ne))]}function Pr(){return(0,w.Z)(ga).scale(79.4183)}function Ir(N,q){if(k(q)<c)return[N,0];var H=q/f,Q=C(H);if(k(N)<c||k(k(q)-f)<c)return[0,g*p(Q/2)];var ge=(g/N-N/g)/2,Le=H/(1+y(Q));return[g*(s(N)*O(ge*ge+1-Le*Le)-ge),g*Le]}function kl(){return(0,w.Z)(Ir).scale(79.4183)}function Pa(N,q){if(!q)return[N,0];var H=k(q);if(!N||H===f)return[0,q];var Q=H/f,ge=Q*Q,Le=(8*Q-ge*(ge+2)-5)/(2*ge*(Q-1)),U=Le*Le,ne=Q*Le,le=ge+U+2*ne,ye=Q+3*Le,ke=N/f,Re=ke+1/ke,He=s(k(N)-f)*O(Re*Re-4),We=He*He,Xe=(He*(le+U-1)+2*O(le*(ge+U*We-1)+(1-ge)*(ge*(ye*ye+4*U)+12*ne*U+4*U*U)))/(4*le+We);return[s(N)*f*Xe,s(q)*f*O(1+He*k(Xe)-Xe*Xe)]}function Os(){return(0,w.Z)(Pa).scale(127.16)}function va(N,q,H,Q){var ge=g/3;N=o(N,c),q=o(q,c),N=r(N,f),q=r(q,g-c),H=o(H,0),H=r(H,100-c);var Le=(Q=o(Q,c))/100,U=P((H/100+1)*y(ge))/ge,ne=u(N)/u(U*f),le=q/g,ye=O(Le*u(N/2)/u(q/2));return function(ke,Re,He,We,Xe){function Ke(it,pt){var mt=He*u(We*pt),Ot=O(1-mt*mt),Rt=O(2/(1+Ot*y(it*=Xe)));return[ke*Ot*Rt*u(it),Re*mt*Rt]}return Ke.invert=function(it,pt){var mt=it/ke,Ot=pt/Re,Rt=O(mt*mt+Ot*Ot),Pt=2*C(Rt/2);return[_(it*p(Pt),ke*Rt)/Xe,Rt&&C(pt*u(Pt)/(Re*He*Rt))/We]},Ke}(ye/O(le*ne*U),1/(ye*O(le*ne*U)),ne,U,le)}function Tl(){var N=65*A,q=60*A,H=20,Q=200,ge=(0,w.r)(va),Le=ge(N,q,H,Q);return Le.poleline=function(U){return arguments.length?ge(N=+U*A,q,H,Q):N*M},Le.parallels=function(U){return arguments.length?ge(N,q=+U*A,H,Q):q*M},Le.inflation=function(U){return arguments.length?ge(N,q,H=+U,Q):H},Le.ratio=function(U){return arguments.length?ge(N,q,H,Q=+U):Q},Le.scale(163.775)}function ma(){return Tl().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}Vo.invert=function(N,q){var H=q/1.70711,Q=u(v*H);return[N/(.74482-.34588*Q*Q),2*i(H)]},il.invert=function(N,q){if(k(q)<c)return[N,0];if(k(N)<c)return[0,f*u(2*i(q/g))];var H=(N/=g)*N,Q=(q/=g)*q,ge=H+Q,Le=ge*ge,U=-k(q)*(1+ge),ne=U-2*Q+H,le=-2*U+1+2*Q+Le,ye=Q/le+(2*ne*ne*ne/(le*le*le)-9*U*ne/(le*le))/27,ke=(U-ne*ne/(3*le))/le,Re=2*O(-ke/3),He=P(3*ye/(ke*Re))/3;return[g*(ge-1+O(1+2*(H-Q)+Le))/(2*N),s(q)*g*(-Re*y(He+g/3)-ne/(3*le))]},ga.invert=function(N,q){if(!N)return[0,f*u(2*i(q/g))];var H=k(N/g),Q=(1-H*H-(q/=g)*q)/(2*H),ge=O(Q*Q+1);return[s(N)*g*(ge-Q),s(q)*f*u(2*_(O((1-2*Q*H)*(Q+ge)-H),O(ge+Q+H)))]},Ir.invert=function(N,q){if(!q)return[N,0];var H=q/g,Q=(g*g*(1-H*H)-N*N)/(2*g*N);return[N?g*(s(N)*O(Q*Q+1)-Q):0,f*u(2*i(H))]},Pa.invert=function(N,q){var H;if(!N||!q)return[N,q];q/=g;var Q=s(N)*N/f,ge=(Q*Q-1+4*q*q)/k(Q),Le=ge*ge,U=2*q,ne=50;do{var le=U*U,ye=(8*U-le*(le+2)-5)/(2*le*(U-1)),ke=(3*U-le*U-10)/(2*le*U),Re=ye*ye,He=U*ye,We=U+ye,Xe=We*We,Ke=U+3*ye,it=-2*We*(4*He*Re+(1-4*le+3*le*le)*(1+ke)+Re*(14*le-6-Le+(8*le-8-2*Le)*ke)+He*(12*le-8+(10*le-10-Le)*ke)),pt=O(Xe*(le+Re*Le-1)+(1-le)*(le*(Ke*Ke+4*Re)+Re*(12*He+4*Re)));U-=H=(ge*(Xe+Re-1)+2*pt-Q*(4*Xe+Le))/(ge*(2*ye*ke+2*We*(1+ke))+it/pt-8*We*(ge*(-1+Re+Xe)+2*pt)*(1+ke)/(Le+4*Xe))}while(H>c&&--ne>0);return[s(N)*(O(ge*ge+4)+ge)*g/4,f*U]};var Is=4*g+3*O(3),Rs=2*O(2*g*O(3)/Is),Nr=Me(Rs*O(3)/g,Rs,Is/6);function Qi(){return(0,w.Z)(Nr).scale(176.84)}function qo(N,q){return[N*O(1-3*q*q/(g*g)),q]}function Ga(){return(0,w.Z)(qo).scale(152.63)}function al(N,q){var H=y(q),Q=y(N)*H,ge=1-Q,Le=y(N=_(u(N)*H,-u(q))),U=u(N);return[U*(H=O(1-Q*Q))-Le*ge,-Le*H-U*ge]}function Al(){return(0,w.Z)(al).rotate([0,-90,45]).scale(124.75).clipAngle(179.999)}function ol(N,q){var H=G(N,q);return[(H[0]+N/f)/2,(H[1]+q)/2]}function us(){return(0,w.Z)(ol).scale(158.837)}qo.invert=function(N,q){return[N/O(1-3*q*q/(g*g)),q]},al.invert=function(N,q){var H=(N*N+q*q)/-2,Q=O(-H*(2+H)),ge=q*H+N*Q,Le=N*H-q*Q,U=O(Le*Le+ge*ge);return[_(Q*ge,U*(1+H)),U?-C(Q*Le/U):0]},ol.invert=function(N,q){var H=N,Q=q,ge=25;do{var Le,U=y(Q),ne=u(Q),le=u(2*Q),ye=ne*ne,ke=U*U,Re=u(H),He=y(H/2),We=u(H/2),Xe=We*We,Ke=1-ke*He*He,it=Ke?P(U*He)*O(Le=1/Ke):Le=0,pt=.5*(2*it*U*We+H/f)-N,mt=.5*(it*ne+Q)-q,Ot=.5*Le*(ke*Xe+it*U*He*ye)+.5/f,Rt=Le*(Re*le/4-it*ne*We),Pt=.125*Le*(le*We-it*ne*ke*Re),Vt=.5*Le*(ye*He+it*Xe*U)+.5,It=Rt*Pt-Vt*Ot,on=(mt*Rt-pt*Vt)/It,Kt=(pt*Pt-mt*Ot)/It;H-=on,Q-=Kt}while((k(on)>c||k(Kt)>c)&&--ge>0);return[H,Q]}},33940:function(R,E,e){function w(){return new k}function k(){this.reset()}e.d(E,{Z:function(){return w}}),k.prototype={constructor:k,reset:function(){this.s=this.t=0},add:function(y){_(i,y,this.t),_(this,i.s,this.s),this.s?this.t+=i.t:this.s=i.t},valueOf:function(){return this.s}};var i=new k;function _(y,h,l){var t=y.s=h+l,o=t-h,r=t-o;y.t=h-r+(l-o)}},97860:function(R,E,e){e.d(E,{L9:function(){return r},ZP:function(){return b},gL:function(){return a}});var w,k,i,_,y,h=e(33940),l=e(39695),t=e(73182),o=e(72736),r=(0,h.Z)(),n=(0,h.Z)(),a={point:t.Z,lineStart:t.Z,lineEnd:t.Z,polygonStart:function(){r.reset(),a.lineStart=s,a.lineEnd=u},polygonEnd:function(){var g=+r;n.add(g<0?l.BZ+g:g),this.lineStart=this.lineEnd=this.point=t.Z},sphere:function(){n.add(l.BZ)}};function s(){a.point=p}function u(){c(w,k)}function p(g,f){a.point=c,w=g,k=f,g*=l.uR,f*=l.uR,i=g,_=(0,l.mC)(f=f/2+l.pu),y=(0,l.O$)(f)}function c(g,f){g*=l.uR,f=(f*=l.uR)/2+l.pu;var v=g-i,m=v>=0?1:-1,x=m*v,T=(0,l.mC)(f),d=(0,l.O$)(f),M=y*d,A=_*T+M*(0,l.mC)(x),C=M*m*(0,l.O$)(x);r.add((0,l.fv)(C,A)),i=g,_=T,y=d}function b(g){return n.reset(),(0,o.Z)(g,a),2*n}},77338:function(R,E,e){e.d(E,{Z:function(){return P}});var w,k,i,_,y,h,l,t,o,r,n=e(33940),a=e(97860),s=e(7620),u=e(39695),p=e(72736),c=(0,n.Z)(),b={point:g,lineStart:v,lineEnd:m,polygonStart:function(){b.point=x,b.lineStart=T,b.lineEnd=d,c.reset(),a.gL.polygonStart()},polygonEnd:function(){a.gL.polygonEnd(),b.point=g,b.lineStart=v,b.lineEnd=m,a.L9<0?(w=-(i=180),k=-(_=90)):c>u.Ho?_=90:c<-u.Ho&&(k=-90),r[0]=w,r[1]=i},sphere:function(){w=-(i=180),k=-(_=90)}};function g(O,z){o.push(r=[w=O,i=O]),z<k&&(k=z),z>_&&(_=z)}function f(O,z){var B=(0,s.Og)([O*u.uR,z*u.uR]);if(t){var Y=(0,s.T5)(t,B),D=[Y[1],-Y[0],0],G=(0,s.T5)(D,Y);(0,s.iJ)(G),G=(0,s.Y1)(G);var V,j=O-y,W=j>0?1:-1,Z=G[0]*u.RW*W,ie=(0,u.Wn)(j)>180;ie^(W*y<Z&&Z<W*O)?(V=G[1]*u.RW)>_&&(_=V):ie^(W*y<(Z=(Z+360)%360-180)&&Z<W*O)?(V=-G[1]*u.RW)<k&&(k=V):(z<k&&(k=z),z>_&&(_=z)),ie?O<y?M(w,O)>M(w,i)&&(i=O):M(O,i)>M(w,i)&&(w=O):i>=w?(O<w&&(w=O),O>i&&(i=O)):O>y?M(w,O)>M(w,i)&&(i=O):M(O,i)>M(w,i)&&(w=O)}else o.push(r=[w=O,i=O]);z<k&&(k=z),z>_&&(_=z),t=B,y=O}function v(){b.point=f}function m(){r[0]=w,r[1]=i,b.point=g,t=null}function x(O,z){if(t){var B=O-y;c.add((0,u.Wn)(B)>180?B+(B>0?360:-360):B)}else h=O,l=z;a.gL.point(O,z),f(O,z)}function T(){a.gL.lineStart()}function d(){x(h,l),a.gL.lineEnd(),(0,u.Wn)(c)>u.Ho&&(w=-(i=180)),r[0]=w,r[1]=i,t=null}function M(O,z){return(z-=O)<0?z+360:z}function A(O,z){return O[0]-z[0]}function C(O,z){return O[0]<=O[1]?O[0]<=z&&z<=O[1]:z<O[0]||O[1]<z}function P(O){var z,B,Y,D,G,V,j;if(_=i=-(w=k=1/0),o=[],(0,p.Z)(O,b),B=o.length){for(o.sort(A),z=1,G=[Y=o[0]];z<B;++z)C(Y,(D=o[z])[0])||C(Y,D[1])?(M(Y[0],D[1])>M(Y[0],Y[1])&&(Y[1]=D[1]),M(D[0],Y[1])>M(Y[0],Y[1])&&(Y[0]=D[0])):G.push(Y=D);for(V=-1/0,z=0,Y=G[B=G.length-1];z<=B;Y=D,++z)D=G[z],(j=M(Y[1],D[0]))>V&&(V=j,w=D[0],i=Y[1])}return o=r=null,w===1/0||k===1/0?[[NaN,NaN],[NaN,NaN]]:[[w,k],[i,_]]}},7620:function(R,E,e){e.d(E,{Og:function(){return i},T:function(){return l},T5:function(){return y},Y1:function(){return k},iJ:function(){return t},j9:function(){return _},s0:function(){return h}});var w=e(39695);function k(o){return[(0,w.fv)(o[1],o[0]),(0,w.ZR)(o[2])]}function i(o){var r=o[0],n=o[1],a=(0,w.mC)(n);return[a*(0,w.mC)(r),a*(0,w.O$)(r),(0,w.O$)(n)]}function _(o,r){return o[0]*r[0]+o[1]*r[1]+o[2]*r[2]}function y(o,r){return[o[1]*r[2]-o[2]*r[1],o[2]*r[0]-o[0]*r[2],o[0]*r[1]-o[1]*r[0]]}function h(o,r){o[0]+=r[0],o[1]+=r[1],o[2]+=r[2]}function l(o,r){return[o[0]*r,o[1]*r,o[2]*r]}function t(o){var r=(0,w._b)(o[0]*o[0]+o[1]*o[1]+o[2]*o[2]);o[0]/=r,o[1]/=r,o[2]/=r}},66624:function(R,E,e){e.d(E,{Z:function(){return B}});var w,k,i,_,y,h,l,t,o,r,n,a,s,u,p,c,b=e(39695),g=e(73182),f=e(72736),v={sphere:g.Z,point:m,lineStart:T,lineEnd:A,polygonStart:function(){v.lineStart=C,v.lineEnd=P},polygonEnd:function(){v.lineStart=T,v.lineEnd=A}};function m(Y,D){Y*=b.uR,D*=b.uR;var G=(0,b.mC)(D);x(G*(0,b.mC)(Y),G*(0,b.O$)(Y),(0,b.O$)(D))}function x(Y,D,G){++w,i+=(Y-i)/w,_+=(D-_)/w,y+=(G-y)/w}function T(){v.point=d}function d(Y,D){Y*=b.uR,D*=b.uR;var G=(0,b.mC)(D);u=G*(0,b.mC)(Y),p=G*(0,b.O$)(Y),c=(0,b.O$)(D),v.point=M,x(u,p,c)}function M(Y,D){Y*=b.uR,D*=b.uR;var G=(0,b.mC)(D),V=G*(0,b.mC)(Y),j=G*(0,b.O$)(Y),W=(0,b.O$)(D),Z=(0,b.fv)((0,b._b)((Z=p*W-c*j)*Z+(Z=c*V-u*W)*Z+(Z=u*j-p*V)*Z),u*V+p*j+c*W);k+=Z,h+=Z*(u+(u=V)),l+=Z*(p+(p=j)),t+=Z*(c+(c=W)),x(u,p,c)}function A(){v.point=m}function C(){v.point=O}function P(){z(a,s),v.point=m}function O(Y,D){a=Y,s=D,Y*=b.uR,D*=b.uR,v.point=z;var G=(0,b.mC)(D);u=G*(0,b.mC)(Y),p=G*(0,b.O$)(Y),c=(0,b.O$)(D),x(u,p,c)}function z(Y,D){Y*=b.uR,D*=b.uR;var G=(0,b.mC)(D),V=G*(0,b.mC)(Y),j=G*(0,b.O$)(Y),W=(0,b.O$)(D),Z=p*W-c*j,ie=c*V-u*W,te=u*j-p*V,J=(0,b._b)(Z*Z+ie*ie+te*te),X=(0,b.ZR)(J),ee=J&&-X/J;o+=ee*Z,r+=ee*ie,n+=ee*te,k+=X,h+=X*(u+(u=V)),l+=X*(p+(p=j)),t+=X*(c+(c=W)),x(u,p,c)}function B(Y){w=k=i=_=y=h=l=t=o=r=n=0,(0,f.Z)(Y,v);var D=o,G=r,V=n,j=D*D+G*G+V*V;return j<b.aW&&(D=h,G=l,V=t,k<b.Ho&&(D=i,G=_,V=y),(j=D*D+G*G+V*V)<b.aW)?[NaN,NaN]:[(0,b.fv)(G,D)*b.RW,(0,b.ZR)(V/(0,b._b)(j))*b.RW]}},7613:function(R,E,e){e.d(E,{m:function(){return y},Z:function(){return l}});var w=e(7620);function k(t){return function(){return t}}var i=e(39695),_=e(49386);function y(t,o,r,n,a,s){if(r){var u=(0,i.mC)(o),p=(0,i.O$)(o),c=n*r;a==null?(a=o+n*i.BZ,s=o-c/2):(a=h(u,a),s=h(u,s),(n>0?a<s:a>s)&&(a+=n*i.BZ));for(var b,g=a;n>0?g>s:g<s;g-=c)b=(0,w.Y1)([u,-p*(0,i.mC)(g),-p*(0,i.O$)(g)]),t.point(b[0],b[1])}}function h(t,o){(o=(0,w.Og)(o))[0]-=t,(0,w.iJ)(o);var r=(0,i.Kh)(-o[1]);return((-o[2]<0?-r:r)+i.BZ-i.Ho)%i.BZ}function l(){var t,o,r=k([0,0]),n=k(90),a=k(6),s={point:function(p,c){t.push(p=o(p,c)),p[0]*=i.RW,p[1]*=i.RW}};function u(){var p=r.apply(this,arguments),c=n.apply(this,arguments)*i.uR,b=a.apply(this,arguments)*i.uR;return t=[],o=(0,_.I)(-p[0]*i.uR,-p[1]*i.uR,0).invert,y(s,c,b,1),p={type:"Polygon",coordinates:[t]},t=o=null,p}return u.center=function(p){return arguments.length?(r=typeof p=="function"?p:k([+p[0],+p[1]]),u):r},u.radius=function(p){return arguments.length?(n=typeof p=="function"?p:k(+p),u):n},u.precision=function(p){return arguments.length?(a=typeof p=="function"?p:k(+p),u):a},u}},87070:function(R,E,e){var w=e(97023),k=e(39695);E.Z=(0,w.Z)(function(){return!0},function(i){var _,y=NaN,h=NaN,l=NaN;return{lineStart:function(){i.lineStart(),_=1},point:function(t,o){var r=t>0?k.pi:-k.pi,n=(0,k.Wn)(t-y);(0,k.Wn)(n-k.pi)<k.Ho?(i.point(y,h=(h+o)/2>0?k.ou:-k.ou),i.point(l,h),i.lineEnd(),i.lineStart(),i.point(r,h),i.point(t,h),_=0):l!==r&&n>=k.pi&&((0,k.Wn)(y-l)<k.Ho&&(y-=l*k.Ho),(0,k.Wn)(t-r)<k.Ho&&(t-=r*k.Ho),h=function(a,s,u,p){var c,b,g=(0,k.O$)(a-u);return(0,k.Wn)(g)>k.Ho?(0,k.z4)(((0,k.O$)(s)*(b=(0,k.mC)(p))*(0,k.O$)(u)-(0,k.O$)(p)*(c=(0,k.mC)(s))*(0,k.O$)(a))/(c*b*g)):(s+p)/2}(y,h,t,o),i.point(l,h),i.lineEnd(),i.lineStart(),i.point(r,h),_=0),i.point(y=t,h=o),l=r},lineEnd:function(){i.lineEnd(),y=h=NaN},clean:function(){return 2-_}}},function(i,_,y,h){var l;if(i==null)l=y*k.ou,h.point(-k.pi,l),h.point(0,l),h.point(k.pi,l),h.point(k.pi,0),h.point(k.pi,-l),h.point(0,-l),h.point(-k.pi,-l),h.point(-k.pi,0),h.point(-k.pi,l);else if((0,k.Wn)(i[0]-_[0])>k.Ho){var t=i[0]<_[0]?k.pi:-k.pi;l=y*t/2,h.point(-t,l),h.point(0,l),h.point(t,l)}else h.point(_[0],_[1])},[-k.pi,-k.ou])},85272:function(R,E,e){e.d(E,{Z:function(){return k}});var w=e(73182);function k(){var i,_=[];return{point:function(y,h,l){i.push([y,h,l])},lineStart:function(){_.push(i=[])},lineEnd:w.Z,rejoin:function(){_.length>1&&_.push(_.pop().concat(_.shift()))},result:function(){var y=_;return _=[],i=null,y}}}},1457:function(R,E,e){e.d(E,{Z:function(){return h}});var w=e(7620),k=e(7613),i=e(39695),_=e(67108),y=e(97023);function h(l){var t=(0,i.mC)(l),o=6*i.uR,r=t>0,n=(0,i.Wn)(t)>i.Ho;function a(p,c){return(0,i.mC)(p)*(0,i.mC)(c)>t}function s(p,c,b){var g=(0,w.Og)(p),f=(0,w.Og)(c),v=[1,0,0],m=(0,w.T5)(g,f),x=(0,w.j9)(m,m),T=m[0],d=x-T*T;if(!d)return!b&&p;var M=t*x/d,A=-t*T/d,C=(0,w.T5)(v,m),P=(0,w.T)(v,M),O=(0,w.T)(m,A);(0,w.s0)(P,O);var z=C,B=(0,w.j9)(P,z),Y=(0,w.j9)(z,z),D=B*B-Y*((0,w.j9)(P,P)-1);if(!(D<0)){var G=(0,i._b)(D),V=(0,w.T)(z,(-B-G)/Y);if((0,w.s0)(V,P),V=(0,w.Y1)(V),!b)return V;var j,W=p[0],Z=c[0],ie=p[1],te=c[1];Z<W&&(j=W,W=Z,Z=j);var J=Z-W,X=(0,i.Wn)(J-i.pi)<i.Ho;if(!X&&te<ie&&(j=ie,ie=te,te=j),X||J<i.Ho?X?ie+te>0^V[1]<((0,i.Wn)(V[0]-W)<i.Ho?ie:te):ie<=V[1]&&V[1]<=te:J>i.pi^(W<=V[0]&&V[0]<=Z)){var ee=(0,w.T)(z,(-B+G)/Y);return(0,w.s0)(ee,P),[V,(0,w.Y1)(ee)]}}}function u(p,c){var b=r?l:i.pi-l,g=0;return p<-b?g|=1:p>b&&(g|=2),c<-b?g|=4:c>b&&(g|=8),g}return(0,y.Z)(a,function(p){var c,b,g,f,v;return{lineStart:function(){f=g=!1,v=1},point:function(m,x){var T,d=[m,x],M=a(m,x),A=r?M?0:u(m,x):M?u(m+(m<0?i.pi:-i.pi),x):0;if(!c&&(f=g=M)&&p.lineStart(),M!==g&&(!(T=s(c,d))||(0,_.Z)(c,T)||(0,_.Z)(d,T))&&(d[2]=1),M!==g)v=0,M?(p.lineStart(),T=s(d,c),p.point(T[0],T[1])):(T=s(c,d),p.point(T[0],T[1],2),p.lineEnd()),c=T;else if(n&&c&&r^M){var C;A&b||!(C=s(d,c,!0))||(v=0,r?(p.lineStart(),p.point(C[0][0],C[0][1]),p.point(C[1][0],C[1][1]),p.lineEnd()):(p.point(C[1][0],C[1][1]),p.lineEnd(),p.lineStart(),p.point(C[0][0],C[0][1],3)))}!M||c&&(0,_.Z)(c,d)||p.point(d[0],d[1]),c=d,g=M,b=A},lineEnd:function(){g&&p.lineEnd(),c=null},clean:function(){return v|(f&&g)<<1}}},function(p,c,b,g){(0,k.m)(g,l,o,b,p,c)},r?[0,-l]:[-i.pi,l-i.pi])}},97023:function(R,E,e){e.d(E,{Z:function(){return h}});var w=e(85272),k=e(46225),i=e(39695),_=e(23071),y=e(33064);function h(o,r,n,a){return function(s){var u,p,c,b=r(s),g=(0,w.Z)(),f=r(g),v=!1,m={point:x,lineStart:d,lineEnd:M,polygonStart:function(){m.point=A,m.lineStart=C,m.lineEnd=P,p=[],u=[]},polygonEnd:function(){m.point=x,m.lineStart=d,m.lineEnd=M,p=(0,y.TS)(p);var O=(0,_.Z)(u,a);p.length?(v||(s.polygonStart(),v=!0),(0,k.Z)(p,t,O,n,s)):O&&(v||(s.polygonStart(),v=!0),s.lineStart(),n(null,null,1,s),s.lineEnd()),v&&(s.polygonEnd(),v=!1),p=u=null},sphere:function(){s.polygonStart(),s.lineStart(),n(null,null,1,s),s.lineEnd(),s.polygonEnd()}};function x(O,z){o(O,z)&&s.point(O,z)}function T(O,z){b.point(O,z)}function d(){m.point=T,b.lineStart()}function M(){m.point=x,b.lineEnd()}function A(O,z){c.push([O,z]),f.point(O,z)}function C(){f.lineStart(),c=[]}function P(){A(c[0][0],c[0][1]),f.lineEnd();var O,z,B,Y,D=f.clean(),G=g.result(),V=G.length;if(c.pop(),u.push(c),c=null,V)if(1&D){if((z=(B=G[0]).length-1)>0){for(v||(s.polygonStart(),v=!0),s.lineStart(),O=0;O<z;++O)s.point((Y=B[O])[0],Y[1]);s.lineEnd()}}else V>1&&2&D&&G.push(G.pop().concat(G.shift())),p.push(G.filter(l))}return m}}function l(o){return o.length>1}function t(o,r){return((o=o.x)[0]<0?o[1]-i.ou-i.Ho:i.ou-o[1])-((r=r.x)[0]<0?r[1]-i.ou-i.Ho:i.ou-r[1])}},87605:function(R,E,e){e.d(E,{Z:function(){return l}});var w=e(39695),k=e(85272),i=e(46225),_=e(33064),y=1e9,h=-y;function l(t,o,r,n){function a(b,g){return t<=b&&b<=r&&o<=g&&g<=n}function s(b,g,f,v){var m=0,x=0;if(b==null||(m=u(b,f))!==(x=u(g,f))||c(b,g)<0^f>0)do v.point(m===0||m===3?t:r,m>1?n:o);while((m=(m+f+4)%4)!==x);else v.point(g[0],g[1])}function u(b,g){return(0,w.Wn)(b[0]-t)<w.Ho?g>0?0:3:(0,w.Wn)(b[0]-r)<w.Ho?g>0?2:1:(0,w.Wn)(b[1]-o)<w.Ho?g>0?1:0:g>0?3:2}function p(b,g){return c(b.x,g.x)}function c(b,g){var f=u(b,1),v=u(g,1);return f!==v?f-v:f===0?g[1]-b[1]:f===1?b[0]-g[0]:f===2?b[1]-g[1]:g[0]-b[0]}return function(b){var g,f,v,m,x,T,d,M,A,C,P,O=b,z=(0,k.Z)(),B={point:Y,lineStart:function(){B.point=D,f&&f.push(v=[]),C=!0,A=!1,d=M=NaN},lineEnd:function(){g&&(D(m,x),T&&A&&z.rejoin(),g.push(z.result())),B.point=Y,A&&O.lineEnd()},polygonStart:function(){O=z,g=[],f=[],P=!0},polygonEnd:function(){var G=function(){for(var W=0,Z=0,ie=f.length;Z<ie;++Z)for(var te,J,X=f[Z],ee=1,re=X.length,oe=X[0],ue=oe[0],ce=oe[1];ee<re;++ee)te=ue,J=ce,ue=(oe=X[ee])[0],ce=oe[1],J<=n?ce>n&&(ue-te)*(n-J)>(ce-J)*(t-te)&&++W:ce<=n&&(ue-te)*(n-J)<(ce-J)*(t-te)&&--W;return W}(),V=P&&G,j=(g=(0,_.TS)(g)).length;(V||j)&&(b.polygonStart(),V&&(b.lineStart(),s(null,null,1,b),b.lineEnd()),j&&(0,i.Z)(g,p,G,s,b),b.polygonEnd()),O=b,g=f=v=null}};function Y(G,V){a(G,V)&&O.point(G,V)}function D(G,V){var j=a(G,V);if(f&&v.push([G,V]),C)m=G,x=V,T=j,C=!1,j&&(O.lineStart(),O.point(G,V));else if(j&&A)O.point(G,V);else{var W=[d=Math.max(h,Math.min(y,d)),M=Math.max(h,Math.min(y,M))],Z=[G=Math.max(h,Math.min(y,G)),V=Math.max(h,Math.min(y,V))];(function(ie,te,J,X,ee,re){var oe,ue=ie[0],ce=ie[1],de=0,me=1,_e=te[0]-ue,Se=te[1]-ce;if(oe=J-ue,_e||!(oe>0)){if(oe/=_e,_e<0){if(oe<de)return;oe<me&&(me=oe)}else if(_e>0){if(oe>me)return;oe>de&&(de=oe)}if(oe=ee-ue,_e||!(oe<0)){if(oe/=_e,_e<0){if(oe>me)return;oe>de&&(de=oe)}else if(_e>0){if(oe<de)return;oe<me&&(me=oe)}if(oe=X-ce,Se||!(oe>0)){if(oe/=Se,Se<0){if(oe<de)return;oe<me&&(me=oe)}else if(Se>0){if(oe>me)return;oe>de&&(de=oe)}if(oe=re-ce,Se||!(oe<0)){if(oe/=Se,Se<0){if(oe>me)return;oe>de&&(de=oe)}else if(Se>0){if(oe<de)return;oe<me&&(me=oe)}return de>0&&(ie[0]=ue+de*_e,ie[1]=ce+de*Se),me<1&&(te[0]=ue+me*_e,te[1]=ce+me*Se),!0}}}}})(W,Z,t,o,r,n)?(A||(O.lineStart(),O.point(W[0],W[1])),O.point(Z[0],Z[1]),j||O.lineEnd(),P=!1):j&&(O.lineStart(),O.point(G,V),P=!1)}d=G,M=V,A=j}return B}}},46225:function(R,E,e){e.d(E,{Z:function(){return _}});var w=e(67108),k=e(39695);function i(h,l,t,o){this.x=h,this.z=l,this.o=t,this.e=o,this.v=!1,this.n=this.p=null}function _(h,l,t,o,r){var n,a,s=[],u=[];if(h.forEach(function(v){if(!((m=v.length-1)<=0)){var m,x,T=v[0],d=v[m];if((0,w.Z)(T,d)){if(!T[2]&&!d[2]){for(r.lineStart(),n=0;n<m;++n)r.point((T=v[n])[0],T[1]);return void r.lineEnd()}d[0]+=2*k.Ho}s.push(x=new i(T,v,null,!0)),u.push(x.o=new i(T,null,x,!1)),s.push(x=new i(d,v,null,!1)),u.push(x.o=new i(d,null,x,!0))}}),s.length){for(u.sort(l),y(s),y(u),n=0,a=u.length;n<a;++n)u[n].e=t=!t;for(var p,c,b=s[0];;){for(var g=b,f=!0;g.v;)if((g=g.n)===b)return;p=g.z,r.lineStart();do{if(g.v=g.o.v=!0,g.e){if(f)for(n=0,a=p.length;n<a;++n)r.point((c=p[n])[0],c[1]);else o(g.x,g.n.x,1,r);g=g.n}else{if(f)for(p=g.p.z,n=p.length-1;n>=0;--n)r.point((c=p[n])[0],c[1]);else o(g.x,g.p.x,-1,r);g=g.p}p=(g=g.o).z,f=!f}while(!g.v);r.lineEnd()}}}function y(h){if(l=h.length){for(var l,t,o=0,r=h[0];++o<l;)r.n=t=h[o],t.p=r,r=t;r.n=t=h[0],t.p=r}}},96059:function(R,E,e){function w(k,i){function _(y,h){return y=k(y,h),i(y[0],y[1])}return k.invert&&i.invert&&(_.invert=function(y,h){return(y=i.invert(y,h))&&k.invert(y[0],y[1])}),_}e.d(E,{Z:function(){return w}})},8593:function(R,E,e){function w(k){return k}e.d(E,{Z:function(){return w}})},27362:function(R,E,e){e.r(E),e.d(E,{geoAlbers:function(){return _t},geoAlbersUsa:function(){return Ct},geoArea:function(){return w.ZP},geoAzimuthalEqualArea:function(){return dt.Z},geoAzimuthalEqualAreaRaw:function(){return dt.l},geoAzimuthalEquidistant:function(){return vt.Z},geoAzimuthalEquidistantRaw:function(){return vt.N},geoBounds:function(){return k.Z},geoCentroid:function(){return i.Z},geoCircle:function(){return _.Z},geoClipAntimeridian:function(){return y.Z},geoClipCircle:function(){return h.Z},geoClipExtent:function(){return t},geoClipRectangle:function(){return l.Z},geoConicConformal:function(){return Qt},geoConicConformalRaw:function(){return Xt},geoConicEqualArea:function(){return yt},geoConicEqualAreaRaw:function(){return xt},geoConicEquidistant:function(){return Tn},geoConicEquidistantRaw:function(){return vn},geoContains:function(){return G},geoDistance:function(){return M},geoEqualEarth:function(){return xn},geoEqualEarthRaw:function(){return mn},geoEquirectangular:function(){return Gt.Z},geoEquirectangularRaw:function(){return Gt.k},geoGnomonic:function(){return Pn.Z},geoGnomonicRaw:function(){return Pn.M},geoGraticule:function(){return Z},geoGraticule10:function(){return ie},geoIdentity:function(){return En},geoInterpolate:function(){return re.Z},geoLength:function(){return x},geoMercator:function(){return jt},geoMercatorRaw:function(){return Bt},geoNaturalEarth1:function(){return Fn.Z},geoNaturalEarth1Raw:function(){return Fn.K},geoOrthographic:function(){return er.Z},geoOrthographicRaw:function(){return er.I},geoPath:function(){return je},geoProjection:function(){return at.Z},geoProjectionMutator:function(){return at.r},geoRotation:function(){return At.Z},geoStereographic:function(){return ar},geoStereographicRaw:function(){return fr},geoStream:function(){return c.Z},geoTransform:function(){return Dn.Z},geoTransverseMercator:function(){return wr},geoTransverseMercatorRaw:function(){return Kn}});var w=e(97860),k=e(77338),i=e(66624),_=e(7613),y=e(87070),h=e(1457),l=e(87605);function t(){var Ht,sn,gn,bn=0,Cn=0,Yn=960,Nn=500;return gn={stream:function(jn){return Ht&&sn===jn?Ht:Ht=(0,l.Z)(bn,Cn,Yn,Nn)(sn=jn)},extent:function(jn){return arguments.length?(bn=+jn[0][0],Cn=+jn[0][1],Yn=+jn[1][0],Nn=+jn[1][1],Ht=sn=null,gn):[[bn,Cn],[Yn,Nn]]}}}var o,r,n,a=e(23071),s=e(33940),u=e(39695),p=e(73182),c=e(72736),b=(0,s.Z)(),g={sphere:p.Z,point:p.Z,lineStart:function(){g.point=v,g.lineEnd=f},lineEnd:p.Z,polygonStart:p.Z,polygonEnd:p.Z};function f(){g.point=g.lineEnd=p.Z}function v(Ht,sn){Ht*=u.uR,sn*=u.uR,o=Ht,r=(0,u.O$)(sn),n=(0,u.mC)(sn),g.point=m}function m(Ht,sn){Ht*=u.uR,sn*=u.uR;var gn=(0,u.O$)(sn),bn=(0,u.mC)(sn),Cn=(0,u.Wn)(Ht-o),Yn=(0,u.mC)(Cn),Nn=bn*(0,u.O$)(Cn),jn=n*gn-r*bn*Yn,rr=r*gn+n*bn*Yn;b.add((0,u.fv)((0,u._b)(Nn*Nn+jn*jn),rr)),o=Ht,r=gn,n=bn}function x(Ht){return b.reset(),(0,c.Z)(Ht,g),+b}var T=[null,null],d={type:"LineString",coordinates:T};function M(Ht,sn){return T[0]=Ht,T[1]=sn,x(d)}var A={Feature:function(Ht,sn){return P(Ht.geometry,sn)},FeatureCollection:function(Ht,sn){for(var gn=Ht.features,bn=-1,Cn=gn.length;++bn<Cn;)if(P(gn[bn].geometry,sn))return!0;return!1}},C={Sphere:function(){return!0},Point:function(Ht,sn){return O(Ht.coordinates,sn)},MultiPoint:function(Ht,sn){for(var gn=Ht.coordinates,bn=-1,Cn=gn.length;++bn<Cn;)if(O(gn[bn],sn))return!0;return!1},LineString:function(Ht,sn){return z(Ht.coordinates,sn)},MultiLineString:function(Ht,sn){for(var gn=Ht.coordinates,bn=-1,Cn=gn.length;++bn<Cn;)if(z(gn[bn],sn))return!0;return!1},Polygon:function(Ht,sn){return B(Ht.coordinates,sn)},MultiPolygon:function(Ht,sn){for(var gn=Ht.coordinates,bn=-1,Cn=gn.length;++bn<Cn;)if(B(gn[bn],sn))return!0;return!1},GeometryCollection:function(Ht,sn){for(var gn=Ht.geometries,bn=-1,Cn=gn.length;++bn<Cn;)if(P(gn[bn],sn))return!0;return!1}};function P(Ht,sn){return!(!Ht||!C.hasOwnProperty(Ht.type))&&C[Ht.type](Ht,sn)}function O(Ht,sn){return M(Ht,sn)===0}function z(Ht,sn){for(var gn,bn,Cn,Yn=0,Nn=Ht.length;Yn<Nn;Yn++){if((bn=M(Ht[Yn],sn))===0||Yn>0&&(Cn=M(Ht[Yn],Ht[Yn-1]))>0&&gn<=Cn&&bn<=Cn&&(gn+bn-Cn)*(1-Math.pow((gn-bn)/Cn,2))<u.aW*Cn)return!0;gn=bn}return!1}function B(Ht,sn){return!!(0,a.Z)(Ht.map(Y),D(sn))}function Y(Ht){return(Ht=Ht.map(D)).pop(),Ht}function D(Ht){return[Ht[0]*u.uR,Ht[1]*u.uR]}function G(Ht,sn){return(Ht&&A.hasOwnProperty(Ht.type)?A[Ht.type]:P)(Ht,sn)}var V=e(33064);function j(Ht,sn,gn){var bn=(0,V.w6)(Ht,sn-u.Ho,gn).concat(sn);return function(Cn){return bn.map(function(Yn){return[Cn,Yn]})}}function W(Ht,sn,gn){var bn=(0,V.w6)(Ht,sn-u.Ho,gn).concat(sn);return function(Cn){return bn.map(function(Yn){return[Yn,Cn]})}}function Z(){var Ht,sn,gn,bn,Cn,Yn,Nn,jn,rr,Wt,An,Lt,$t=10,rn=$t,wn=90,kn=360,Ln=2.5;function hn(){return{type:"MultiLineString",coordinates:Jt()}}function Jt(){return(0,V.w6)((0,u.mD)(bn/wn)*wn,gn,wn).map(An).concat((0,V.w6)((0,u.mD)(jn/kn)*kn,Nn,kn).map(Lt)).concat((0,V.w6)((0,u.mD)(sn/$t)*$t,Ht,$t).filter(function(en){return(0,u.Wn)(en%wn)>u.Ho}).map(rr)).concat((0,V.w6)((0,u.mD)(Yn/rn)*rn,Cn,rn).filter(function(en){return(0,u.Wn)(en%kn)>u.Ho}).map(Wt))}return hn.lines=function(){return Jt().map(function(en){return{type:"LineString",coordinates:en}})},hn.outline=function(){return{type:"Polygon",coordinates:[An(bn).concat(Lt(Nn).slice(1),An(gn).reverse().slice(1),Lt(jn).reverse().slice(1))]}},hn.extent=function(en){return arguments.length?hn.extentMajor(en).extentMinor(en):hn.extentMinor()},hn.extentMajor=function(en){return arguments.length?(bn=+en[0][0],gn=+en[1][0],jn=+en[0][1],Nn=+en[1][1],bn>gn&&(en=bn,bn=gn,gn=en),jn>Nn&&(en=jn,jn=Nn,Nn=en),hn.precision(Ln)):[[bn,jn],[gn,Nn]]},hn.extentMinor=function(en){return arguments.length?(sn=+en[0][0],Ht=+en[1][0],Yn=+en[0][1],Cn=+en[1][1],sn>Ht&&(en=sn,sn=Ht,Ht=en),Yn>Cn&&(en=Yn,Yn=Cn,Cn=en),hn.precision(Ln)):[[sn,Yn],[Ht,Cn]]},hn.step=function(en){return arguments.length?hn.stepMajor(en).stepMinor(en):hn.stepMinor()},hn.stepMajor=function(en){return arguments.length?(wn=+en[0],kn=+en[1],hn):[wn,kn]},hn.stepMinor=function(en){return arguments.length?($t=+en[0],rn=+en[1],hn):[$t,rn]},hn.precision=function(en){return arguments.length?(Ln=+en,rr=j(Yn,Cn,90),Wt=W(sn,Ht,Ln),An=j(jn,Nn,90),Lt=W(bn,gn,Ln),hn):Ln},hn.extentMajor([[-180,-90+u.Ho],[180,90-u.Ho]]).extentMinor([[-180,-80-u.Ho],[180,80+u.Ho]])}function ie(){return Z()()}var te,J,X,ee,re=e(83074),oe=e(8593),ue=(0,s.Z)(),ce=(0,s.Z)(),de={point:p.Z,lineStart:p.Z,lineEnd:p.Z,polygonStart:function(){de.lineStart=me,de.lineEnd=we},polygonEnd:function(){de.lineStart=de.lineEnd=de.point=p.Z,ue.add((0,u.Wn)(ce)),ce.reset()},result:function(){var Ht=ue/2;return ue.reset(),Ht}};function me(){de.point=_e}function _e(Ht,sn){de.point=Se,te=X=Ht,J=ee=sn}function Se(Ht,sn){ce.add(ee*Ht-X*sn),X=Ht,ee=sn}function we(){Se(te,J)}var xe,De,Ee,Me,he=de,fe=e(3559),ae=0,be=0,Ie=0,Te=0,Ne=0,qe=0,ve=0,Ce=0,Ae=0,ze={point:Ue,lineStart:Ve,lineEnd:rt,polygonStart:function(){ze.lineStart=ht,ze.lineEnd=nt},polygonEnd:function(){ze.point=Ue,ze.lineStart=Ve,ze.lineEnd=rt},result:function(){var Ht=Ae?[ve/Ae,Ce/Ae]:qe?[Te/qe,Ne/qe]:Ie?[ae/Ie,be/Ie]:[NaN,NaN];return ae=be=Ie=Te=Ne=qe=ve=Ce=Ae=0,Ht}};function Ue(Ht,sn){ae+=Ht,be+=sn,++Ie}function Ve(){ze.point=Ye}function Ye(Ht,sn){ze.point=$e,Ue(Ee=Ht,Me=sn)}function $e(Ht,sn){var gn=Ht-Ee,bn=sn-Me,Cn=(0,u._b)(gn*gn+bn*bn);Te+=Cn*(Ee+Ht)/2,Ne+=Cn*(Me+sn)/2,qe+=Cn,Ue(Ee=Ht,Me=sn)}function rt(){ze.point=Ue}function ht(){ze.point=bt}function nt(){wt(xe,De)}function bt(Ht,sn){ze.point=wt,Ue(xe=Ee=Ht,De=Me=sn)}function wt(Ht,sn){var gn=Ht-Ee,bn=sn-Me,Cn=(0,u._b)(gn*gn+bn*bn);Te+=Cn*(Ee+Ht)/2,Ne+=Cn*(Me+sn)/2,qe+=Cn,ve+=(Cn=Me*Ht-Ee*sn)*(Ee+Ht),Ce+=Cn*(Me+sn),Ae+=3*Cn,Ue(Ee=Ht,Me=sn)}var ut=ze;function lt(Ht){this._context=Ht}lt.prototype={_radius:4.5,pointRadius:function(Ht){return this._radius=Ht,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(Ht,sn){switch(this._point){case 0:this._context.moveTo(Ht,sn),this._point=1;break;case 1:this._context.lineTo(Ht,sn);break;default:this._context.moveTo(Ht+this._radius,sn),this._context.arc(Ht,sn,this._radius,0,u.BZ)}},result:p.Z};var Tt,Et,St,Ft,zt,Je=(0,s.Z)(),et={point:p.Z,lineStart:function(){et.point=Ze},lineEnd:function(){Tt&&Qe(Et,St),et.point=p.Z},polygonStart:function(){Tt=!0},polygonEnd:function(){Tt=null},result:function(){var Ht=+Je;return Je.reset(),Ht}};function Ze(Ht,sn){et.point=Qe,Et=Ft=Ht,St=zt=sn}function Qe(Ht,sn){Ft-=Ht,zt-=sn,Je.add((0,u._b)(Ft*Ft+zt*zt)),Ft=Ht,zt=sn}var st=et;function ft(){this._string=[]}function Be(Ht){return"m0,"+Ht+"a"+Ht+","+Ht+" 0 1,1 0,"+-2*Ht+"a"+Ht+","+Ht+" 0 1,1 0,"+2*Ht+"z"}function je(Ht,sn){var gn,bn,Cn=4.5;function Yn(Nn){return Nn&&(typeof Cn=="function"&&bn.pointRadius(+Cn.apply(this,arguments)),(0,c.Z)(Nn,gn(bn))),bn.result()}return Yn.area=function(Nn){return(0,c.Z)(Nn,gn(he)),he.result()},Yn.measure=function(Nn){return(0,c.Z)(Nn,gn(st)),st.result()},Yn.bounds=function(Nn){return(0,c.Z)(Nn,gn(fe.Z)),fe.Z.result()},Yn.centroid=function(Nn){return(0,c.Z)(Nn,gn(ut)),ut.result()},Yn.projection=function(Nn){return arguments.length?(gn=Nn==null?(Ht=null,oe.Z):(Ht=Nn).stream,Yn):Ht},Yn.context=function(Nn){return arguments.length?(bn=Nn==null?(sn=null,new ft):new lt(sn=Nn),typeof Cn!="function"&&bn.pointRadius(Cn),Yn):sn},Yn.pointRadius=function(Nn){return arguments.length?(Cn=typeof Nn=="function"?Nn:(bn.pointRadius(+Nn),+Nn),Yn):Cn},Yn.projection(Ht).context(sn)}ft.prototype={_radius:4.5,_circle:Be(4.5),pointRadius:function(Ht){return(Ht=+Ht)!==this._radius&&(this._radius=Ht,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(Ht,sn){switch(this._point){case 0:this._string.push("M",Ht,",",sn),this._point=1;break;case 1:this._string.push("L",Ht,",",sn);break;default:this._circle==null&&(this._circle=Be(this._radius)),this._string.push("M",Ht,",",sn,this._circle)}},result:function(){if(this._string.length){var Ht=this._string.join("");return this._string=[],Ht}return null}};var at=e(15002);function ot(Ht){var sn=0,gn=u.pi/3,bn=(0,at.r)(Ht),Cn=bn(sn,gn);return Cn.parallels=function(Yn){return arguments.length?bn(sn=Yn[0]*u.uR,gn=Yn[1]*u.uR):[sn*u.RW,gn*u.RW]},Cn}function xt(Ht,sn){var gn=(0,u.O$)(Ht),bn=(gn+(0,u.O$)(sn))/2;if((0,u.Wn)(bn)<u.Ho)return function(jn){var rr=(0,u.mC)(jn);function Wt(An,Lt){return[An*rr,(0,u.O$)(Lt)/rr]}return Wt.invert=function(An,Lt){return[An/rr,(0,u.ZR)(Lt*rr)]},Wt}(Ht);var Cn=1+gn*(2*bn-gn),Yn=(0,u._b)(Cn)/bn;function Nn(jn,rr){var Wt=(0,u._b)(Cn-2*bn*(0,u.O$)(rr))/bn;return[Wt*(0,u.O$)(jn*=bn),Yn-Wt*(0,u.mC)(jn)]}return Nn.invert=function(jn,rr){var Wt=Yn-rr,An=(0,u.fv)(jn,(0,u.Wn)(Wt))*(0,u.Xx)(Wt);return Wt*bn<0&&(An-=u.pi*(0,u.Xx)(jn)*(0,u.Xx)(Wt)),[An/bn,(0,u.ZR)((Cn-(jn*jn+Wt*Wt)*bn*bn)/(2*bn))]},Nn}function yt(){return ot(xt).scale(155.424).center([0,33.6442])}function _t(){return yt().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}var gt=e(47589);function Ct(){var Ht,sn,gn,bn,Cn,Yn,Nn=_t(),jn=yt().rotate([154,0]).center([-2,58.5]).parallels([55,65]),rr=yt().rotate([157,0]).center([-3,19.9]).parallels([8,18]),Wt={point:function($t,rn){Yn=[$t,rn]}};function An($t){var rn=$t[0],wn=$t[1];return Yn=null,gn.point(rn,wn),Yn||(bn.point(rn,wn),Yn)||(Cn.point(rn,wn),Yn)}function Lt(){return Ht=sn=null,An}return An.invert=function($t){var rn=Nn.scale(),wn=Nn.translate(),kn=($t[0]-wn[0])/rn,Ln=($t[1]-wn[1])/rn;return(Ln>=.12&&Ln<.234&&kn>=-.425&&kn<-.214?jn:Ln>=.166&&Ln<.234&&kn>=-.214&&kn<-.115?rr:Nn).invert($t)},An.stream=function($t){return Ht&&sn===$t?Ht:(rn=[Nn.stream(sn=$t),jn.stream($t),rr.stream($t)],wn=rn.length,Ht={point:function(kn,Ln){for(var hn=-1;++hn<wn;)rn[hn].point(kn,Ln)},sphere:function(){for(var kn=-1;++kn<wn;)rn[kn].sphere()},lineStart:function(){for(var kn=-1;++kn<wn;)rn[kn].lineStart()},lineEnd:function(){for(var kn=-1;++kn<wn;)rn[kn].lineEnd()},polygonStart:function(){for(var kn=-1;++kn<wn;)rn[kn].polygonStart()},polygonEnd:function(){for(var kn=-1;++kn<wn;)rn[kn].polygonEnd()}});var rn,wn},An.precision=function($t){return arguments.length?(Nn.precision($t),jn.precision($t),rr.precision($t),Lt()):Nn.precision()},An.scale=function($t){return arguments.length?(Nn.scale($t),jn.scale(.35*$t),rr.scale($t),An.translate(Nn.translate())):Nn.scale()},An.translate=function($t){if(!arguments.length)return Nn.translate();var rn=Nn.scale(),wn=+$t[0],kn=+$t[1];return gn=Nn.translate($t).clipExtent([[wn-.455*rn,kn-.238*rn],[wn+.455*rn,kn+.238*rn]]).stream(Wt),bn=jn.translate([wn-.307*rn,kn+.201*rn]).clipExtent([[wn-.425*rn+u.Ho,kn+.12*rn+u.Ho],[wn-.214*rn-u.Ho,kn+.234*rn-u.Ho]]).stream(Wt),Cn=rr.translate([wn-.205*rn,kn+.212*rn]).clipExtent([[wn-.214*rn+u.Ho,kn+.166*rn+u.Ho],[wn-.115*rn-u.Ho,kn+.234*rn-u.Ho]]).stream(Wt),Lt()},An.fitExtent=function($t,rn){return(0,gt.qg)(An,$t,rn)},An.fitSize=function($t,rn){return(0,gt.mF)(An,$t,rn)},An.fitWidth=function($t,rn){return(0,gt.V6)(An,$t,rn)},An.fitHeight=function($t,rn){return(0,gt.rf)(An,$t,rn)},An.scale(1070)}var dt=e(12956),vt=e(17889),At=e(49386);function Bt(Ht,sn){return[Ht,(0,u.cM)((0,u.OR)((u.ou+sn)/2))]}function jt(){return Ut(Bt).scale(961/u.BZ)}function Ut(Ht){var sn,gn,bn,Cn=(0,at.Z)(Ht),Yn=Cn.center,Nn=Cn.scale,jn=Cn.translate,rr=Cn.clipExtent,Wt=null;function An(){var Lt=u.pi*Nn(),$t=Cn((0,At.Z)(Cn.rotate()).invert([0,0]));return rr(Wt==null?[[$t[0]-Lt,$t[1]-Lt],[$t[0]+Lt,$t[1]+Lt]]:Ht===Bt?[[Math.max($t[0]-Lt,Wt),sn],[Math.min($t[0]+Lt,gn),bn]]:[[Wt,Math.max($t[1]-Lt,sn)],[gn,Math.min($t[1]+Lt,bn)]])}return Cn.scale=function(Lt){return arguments.length?(Nn(Lt),An()):Nn()},Cn.translate=function(Lt){return arguments.length?(jn(Lt),An()):jn()},Cn.center=function(Lt){return arguments.length?(Yn(Lt),An()):Yn()},Cn.clipExtent=function(Lt){return arguments.length?(Lt==null?Wt=sn=gn=bn=null:(Wt=+Lt[0][0],sn=+Lt[0][1],gn=+Lt[1][0],bn=+Lt[1][1]),An()):Wt==null?null:[[Wt,sn],[gn,bn]]},An()}function tn(Ht){return(0,u.OR)((u.ou+Ht)/2)}function Xt(Ht,sn){var gn=(0,u.mC)(Ht),bn=Ht===sn?(0,u.O$)(Ht):(0,u.cM)(gn/(0,u.mC)(sn))/(0,u.cM)(tn(sn)/tn(Ht)),Cn=gn*(0,u.sQ)(tn(Ht),bn)/bn;if(!bn)return Bt;function Yn(Nn,jn){Cn>0?jn<-u.ou+u.Ho&&(jn=-u.ou+u.Ho):jn>u.ou-u.Ho&&(jn=u.ou-u.Ho);var rr=Cn/(0,u.sQ)(tn(jn),bn);return[rr*(0,u.O$)(bn*Nn),Cn-rr*(0,u.mC)(bn*Nn)]}return Yn.invert=function(Nn,jn){var rr=Cn-jn,Wt=(0,u.Xx)(bn)*(0,u._b)(Nn*Nn+rr*rr),An=(0,u.fv)(Nn,(0,u.Wn)(rr))*(0,u.Xx)(rr);return rr*bn<0&&(An-=u.pi*(0,u.Xx)(Nn)*(0,u.Xx)(rr)),[An/bn,2*(0,u.z4)((0,u.sQ)(Cn/Wt,1/bn))-u.ou]},Yn}function Qt(){return ot(Xt).scale(109.5).parallels([30,30])}Bt.invert=function(Ht,sn){return[Ht,2*(0,u.z4)((0,u.Qq)(sn))-u.ou]};var Gt=e(97492);function vn(Ht,sn){var gn=(0,u.mC)(Ht),bn=Ht===sn?(0,u.O$)(Ht):(gn-(0,u.mC)(sn))/(sn-Ht),Cn=gn/bn+Ht;if((0,u.Wn)(bn)<u.Ho)return Gt.k;function Yn(Nn,jn){var rr=Cn-jn,Wt=bn*Nn;return[rr*(0,u.O$)(Wt),Cn-rr*(0,u.mC)(Wt)]}return Yn.invert=function(Nn,jn){var rr=Cn-jn,Wt=(0,u.fv)(Nn,(0,u.Wn)(rr))*(0,u.Xx)(rr);return rr*bn<0&&(Wt-=u.pi*(0,u.Xx)(Nn)*(0,u.Xx)(rr)),[Wt/bn,Cn-(0,u.Xx)(bn)*(0,u._b)(Nn*Nn+rr*rr)]},Yn}function Tn(){return ot(vn).scale(131.154).center([0,13.9389])}var dn=1.340264,Yt=-.081106,ln=893e-6,nn=.003796,fn=(0,u._b)(3)/2;function mn(Ht,sn){var gn=(0,u.ZR)(fn*(0,u.O$)(sn)),bn=gn*gn,Cn=bn*bn*bn;return[Ht*(0,u.mC)(gn)/(fn*(dn+3*Yt*bn+Cn*(7*ln+9*nn*bn))),gn*(dn+Yt*bn+Cn*(ln+nn*bn))]}function xn(){return(0,at.Z)(mn).scale(177.158)}mn.invert=function(Ht,sn){for(var gn,bn=sn,Cn=bn*bn,Yn=Cn*Cn*Cn,Nn=0;Nn<12&&(Yn=(Cn=(bn-=gn=(bn*(dn+Yt*Cn+Yn*(ln+nn*Cn))-sn)/(dn+3*Yt*Cn+Yn*(7*ln+9*nn*Cn)))*bn)*Cn*Cn,!((0,u.Wn)(gn)<u.aW));++Nn);return[fn*Ht*(dn+3*Yt*Cn+Yn*(7*ln+9*nn*Cn))/(0,u.mC)(bn),(0,u.ZR)((0,u.O$)(bn)/fn)]};var Pn=e(98936),Dn=e(64684);function En(){var Ht,sn,gn,bn,Cn,Yn,Nn,jn=1,rr=0,Wt=0,An=1,Lt=1,$t=0,rn=null,wn=1,kn=1,Ln=(0,Dn.l)({point:function(cn,pn){var On=en([cn,pn]);this.stream.point(On[0],On[1])}}),hn=oe.Z;function Jt(){return wn=jn*An,kn=jn*Lt,Yn=Nn=null,en}function en(cn){var pn=cn[0]*wn,On=cn[1]*kn;if($t){var Rn=On*Ht-pn*sn;pn=pn*Ht+On*sn,On=Rn}return[pn+rr,On+Wt]}return en.invert=function(cn){var pn=cn[0]-rr,On=cn[1]-Wt;if($t){var Rn=On*Ht+pn*sn;pn=pn*Ht-On*sn,On=Rn}return[pn/wn,On/kn]},en.stream=function(cn){return Yn&&Nn===cn?Yn:Yn=Ln(hn(Nn=cn))},en.postclip=function(cn){return arguments.length?(hn=cn,rn=gn=bn=Cn=null,Jt()):hn},en.clipExtent=function(cn){return arguments.length?(hn=cn==null?(rn=gn=bn=Cn=null,oe.Z):(0,l.Z)(rn=+cn[0][0],gn=+cn[0][1],bn=+cn[1][0],Cn=+cn[1][1]),Jt()):rn==null?null:[[rn,gn],[bn,Cn]]},en.scale=function(cn){return arguments.length?(jn=+cn,Jt()):jn},en.translate=function(cn){return arguments.length?(rr=+cn[0],Wt=+cn[1],Jt()):[rr,Wt]},en.angle=function(cn){return arguments.length?($t=cn%360*u.uR,sn=(0,u.O$)($t),Ht=(0,u.mC)($t),Jt()):$t*u.RW},en.reflectX=function(cn){return arguments.length?(An=cn?-1:1,Jt()):An<0},en.reflectY=function(cn){return arguments.length?(Lt=cn?-1:1,Jt()):Lt<0},en.fitExtent=function(cn,pn){return(0,gt.qg)(en,cn,pn)},en.fitSize=function(cn,pn){return(0,gt.mF)(en,cn,pn)},en.fitWidth=function(cn,pn){return(0,gt.V6)(en,cn,pn)},en.fitHeight=function(cn,pn){return(0,gt.rf)(en,cn,pn)},en}var Fn=e(26867),er=e(57962),ir=e(25382);function fr(Ht,sn){var gn=(0,u.mC)(sn),bn=1+(0,u.mC)(Ht)*gn;return[gn*(0,u.O$)(Ht)/bn,(0,u.O$)(sn)/bn]}function ar(){return(0,at.Z)(fr).scale(250).clipAngle(142)}function Kn(Ht,sn){return[(0,u.cM)((0,u.OR)((u.ou+sn)/2)),-Ht]}function wr(){var Ht=Ut(Kn),sn=Ht.center,gn=Ht.rotate;return Ht.center=function(bn){return arguments.length?sn([-bn[1],bn[0]]):[(bn=sn())[1],-bn[0]]},Ht.rotate=function(bn){return arguments.length?gn([bn[0],bn[1],bn.length>2?bn[2]+90:90]):[(bn=gn())[0],bn[1],bn[2]-90]},gn([0,0,90]).scale(159.155)}fr.invert=(0,ir.O)(function(Ht){return 2*(0,u.z4)(Ht)}),Kn.invert=function(Ht,sn){return[-sn,2*(0,u.z4)((0,u.Qq)(Ht))-u.ou]}},83074:function(R,E,e){e.d(E,{Z:function(){return k}});var w=e(39695);function k(i,_){var y=i[0]*w.uR,h=i[1]*w.uR,l=_[0]*w.uR,t=_[1]*w.uR,o=(0,w.mC)(h),r=(0,w.O$)(h),n=(0,w.mC)(t),a=(0,w.O$)(t),s=o*(0,w.mC)(y),u=o*(0,w.O$)(y),p=n*(0,w.mC)(l),c=n*(0,w.O$)(l),b=2*(0,w.ZR)((0,w._b)((0,w.Jy)(t-h)+o*n*(0,w.Jy)(l-y))),g=(0,w.O$)(b),f=b?function(v){var m=(0,w.O$)(v*=b)/g,x=(0,w.O$)(b-v)/g,T=x*s+m*p,d=x*u+m*c,M=x*r+m*a;return[(0,w.fv)(d,T)*w.RW,(0,w.fv)(M,(0,w._b)(T*T+d*d))*w.RW]}:function(){return[y*w.RW,h*w.RW]};return f.distance=b,f}},39695:function(R,E,e){e.d(E,{BZ:function(){return h},Ho:function(){return w},Jy:function(){return T},Kh:function(){return m},O$:function(){return b},OR:function(){return v},Qq:function(){return u},RW:function(){return l},Wn:function(){return o},Xx:function(){return g},ZR:function(){return x},_b:function(){return f},aW:function(){return k},cM:function(){return p},fv:function(){return n},mC:function(){return a},mD:function(){return s},ou:function(){return _},pi:function(){return i},pu:function(){return y},sQ:function(){return c},uR:function(){return t},z4:function(){return r}});var w=1e-6,k=1e-12,i=Math.PI,_=i/2,y=i/4,h=2*i,l=180/i,t=i/180,o=Math.abs,r=Math.atan,n=Math.atan2,a=Math.cos,s=Math.ceil,u=Math.exp,p=Math.log,c=Math.pow,b=Math.sin,g=Math.sign||function(d){return d>0?1:d<0?-1:0},f=Math.sqrt,v=Math.tan;function m(d){return d>1?0:d<-1?i:Math.acos(d)}function x(d){return d>1?_:d<-1?-_:Math.asin(d)}function T(d){return(d=b(d/2))*d}},73182:function(R,E,e){function w(){}e.d(E,{Z:function(){return w}})},3559:function(R,E,e){var w=e(73182),k=1/0,i=k,_=-k,y=_,h={point:function(l,t){l<k&&(k=l),l>_&&(_=l),t<i&&(i=t),t>y&&(y=t)},lineStart:w.Z,lineEnd:w.Z,polygonStart:w.Z,polygonEnd:w.Z,result:function(){var l=[[k,i],[_,y]];return _=y=-(i=k=1/0),l}};E.Z=h},67108:function(R,E,e){e.d(E,{Z:function(){return k}});var w=e(39695);function k(i,_){return(0,w.Wn)(i[0]-_[0])<w.Ho&&(0,w.Wn)(i[1]-_[1])<w.Ho}},23071:function(R,E,e){e.d(E,{Z:function(){return h}});var w=e(33940),k=e(7620),i=e(39695),_=(0,w.Z)();function y(l){return(0,i.Wn)(l[0])<=i.pi?l[0]:(0,i.Xx)(l[0])*(((0,i.Wn)(l[0])+i.pi)%i.BZ-i.pi)}function h(l,t){var o=y(t),r=t[1],n=(0,i.O$)(r),a=[(0,i.O$)(o),-(0,i.mC)(o),0],s=0,u=0;_.reset(),n===1?r=i.ou+i.Ho:n===-1&&(r=-i.ou-i.Ho);for(var p=0,c=l.length;p<c;++p)if(g=(b=l[p]).length)for(var b,g,f=b[g-1],v=y(f),m=f[1]/2+i.pu,x=(0,i.O$)(m),T=(0,i.mC)(m),d=0;d<g;++d,v=A,x=P,T=O,f=M){var M=b[d],A=y(M),C=M[1]/2+i.pu,P=(0,i.O$)(C),O=(0,i.mC)(C),z=A-v,B=z>=0?1:-1,Y=B*z,D=Y>i.pi,G=x*P;if(_.add((0,i.fv)(G*B*(0,i.O$)(Y),T*O+G*(0,i.mC)(Y))),s+=D?z+B*i.BZ:z,D^v>=o^A>=o){var V=(0,k.T5)((0,k.Og)(f),(0,k.Og)(M));(0,k.iJ)(V);var j=(0,k.T5)(a,V);(0,k.iJ)(j);var W=(D^z>=0?-1:1)*(0,i.ZR)(j[2]);(r>W||r===W&&(V[0]||V[1]))&&(u+=D^z>=0?1:-1)}}return(s<-i.Ho||s<i.Ho&&_<-i.Ho)^1&u}},25382:function(R,E,e){e.d(E,{O:function(){return i},W:function(){return k}});var w=e(39695);function k(_){return function(y,h){var l=(0,w.mC)(y),t=(0,w.mC)(h),o=_(l*t);return[o*t*(0,w.O$)(y),o*(0,w.O$)(h)]}}function i(_){return function(y,h){var l=(0,w._b)(y*y+h*h),t=_(l),o=(0,w.O$)(t),r=(0,w.mC)(t);return[(0,w.fv)(y*o,l*r),(0,w.ZR)(l&&h*o/l)]}}},12956:function(R,E,e){e.d(E,{Z:function(){return y},l:function(){return _}});var w=e(39695),k=e(25382),i=e(15002),_=(0,k.W)(function(h){return(0,w._b)(2/(1+h))});function y(){return(0,i.Z)(_).scale(124.75).clipAngle(179.999)}_.invert=(0,k.O)(function(h){return 2*(0,w.ZR)(h/2)})},17889:function(R,E,e){e.d(E,{N:function(){return _},Z:function(){return y}});var w=e(39695),k=e(25382),i=e(15002),_=(0,k.W)(function(h){return(h=(0,w.Kh)(h))&&h/(0,w.O$)(h)});function y(){return(0,i.Z)(_).scale(79.4188).clipAngle(179.999)}_.invert=(0,k.O)(function(h){return h})},97492:function(R,E,e){e.d(E,{Z:function(){return i},k:function(){return k}});var w=e(15002);function k(_,y){return[_,y]}function i(){return(0,w.Z)(k).scale(152.63)}k.invert=k},47589:function(R,E,e){e.d(E,{V6:function(){return h},mF:function(){return y},qg:function(){return _},rf:function(){return l}});var w=e(72736),k=e(3559);function i(t,o,r){var n=t.clipExtent&&t.clipExtent();return t.scale(150).translate([0,0]),n!=null&&t.clipExtent(null),(0,w.Z)(r,t.stream(k.Z)),o(k.Z.result()),n!=null&&t.clipExtent(n),t}function _(t,o,r){return i(t,function(n){var a=o[1][0]-o[0][0],s=o[1][1]-o[0][1],u=Math.min(a/(n[1][0]-n[0][0]),s/(n[1][1]-n[0][1])),p=+o[0][0]+(a-u*(n[1][0]+n[0][0]))/2,c=+o[0][1]+(s-u*(n[1][1]+n[0][1]))/2;t.scale(150*u).translate([p,c])},r)}function y(t,o,r){return _(t,[[0,0],o],r)}function h(t,o,r){return i(t,function(n){var a=+o,s=a/(n[1][0]-n[0][0]),u=(a-s*(n[1][0]+n[0][0]))/2,p=-s*n[0][1];t.scale(150*s).translate([u,p])},r)}function l(t,o,r){return i(t,function(n){var a=+o,s=a/(n[1][1]-n[0][1]),u=-s*n[0][0],p=(a-s*(n[1][1]+n[0][1]))/2;t.scale(150*s).translate([u,p])},r)}},98936:function(R,E,e){e.d(E,{M:function(){return _},Z:function(){return y}});var w=e(39695),k=e(25382),i=e(15002);function _(h,l){var t=(0,w.mC)(l),o=(0,w.mC)(h)*t;return[t*(0,w.O$)(h)/o,(0,w.O$)(l)/o]}function y(){return(0,i.Z)(_).scale(144.049).clipAngle(60)}_.invert=(0,k.O)(w.z4)},15002:function(R,E,e){e.d(E,{Z:function(){return b},r:function(){return g}});var w=e(87070),k=e(1457),i=e(87605),_=e(96059),y=e(8593),h=e(39695),l=e(49386),t=e(64684),o=e(47589),r=e(7620),n=16,a=(0,h.mC)(30*h.uR);function s(f,v){return+v?function(m,x){function T(d,M,A,C,P,O,z,B,Y,D,G,V,j,W){var Z=z-d,ie=B-M,te=Z*Z+ie*ie;if(te>4*x&&j--){var J=C+D,X=P+G,ee=O+V,re=(0,h._b)(J*J+X*X+ee*ee),oe=(0,h.ZR)(ee/=re),ue=(0,h.Wn)((0,h.Wn)(ee)-1)<h.Ho||(0,h.Wn)(A-Y)<h.Ho?(A+Y)/2:(0,h.fv)(X,J),ce=m(ue,oe),de=ce[0],me=ce[1],_e=de-d,Se=me-M,we=ie*_e-Z*Se;(we*we/te>x||(0,h.Wn)((Z*_e+ie*Se)/te-.5)>.3||C*D+P*G+O*V<a)&&(T(d,M,A,C,P,O,de,me,ue,J/=re,X/=re,ee,j,W),W.point(de,me),T(de,me,ue,J,X,ee,z,B,Y,D,G,V,j,W))}}return function(d){var M,A,C,P,O,z,B,Y,D,G,V,j,W={point:Z,lineStart:ie,lineEnd:J,polygonStart:function(){d.polygonStart(),W.lineStart=X},polygonEnd:function(){d.polygonEnd(),W.lineStart=ie}};function Z(oe,ue){oe=m(oe,ue),d.point(oe[0],oe[1])}function ie(){Y=NaN,W.point=te,d.lineStart()}function te(oe,ue){var ce=(0,r.Og)([oe,ue]),de=m(oe,ue);T(Y,D,B,G,V,j,Y=de[0],D=de[1],B=oe,G=ce[0],V=ce[1],j=ce[2],n,d),d.point(Y,D)}function J(){W.point=Z,d.lineEnd()}function X(){ie(),W.point=ee,W.lineEnd=re}function ee(oe,ue){te(M=oe,ue),A=Y,C=D,P=G,O=V,z=j,W.point=te}function re(){T(Y,D,B,G,V,j,A,C,M,P,O,z,n,d),W.lineEnd=J,J()}return W}}(f,v):function(m){return(0,t.l)({point:function(x,T){x=m(x,T),this.stream.point(x[0],x[1])}})}(f)}var u=(0,t.l)({point:function(f,v){this.stream.point(f*h.uR,v*h.uR)}});function p(f,v,m,x,T){function d(M,A){return[v+f*(M*=x),m-f*(A*=T)]}return d.invert=function(M,A){return[(M-v)/f*x,(m-A)/f*T]},d}function c(f,v,m,x,T,d){var M=(0,h.mC)(d),A=(0,h.O$)(d),C=M*f,P=A*f,O=M/f,z=A/f,B=(A*m-M*v)/f,Y=(A*v+M*m)/f;function D(G,V){return[C*(G*=x)-P*(V*=T)+v,m-P*G-C*V]}return D.invert=function(G,V){return[x*(O*G-z*V+B),T*(Y-z*G-O*V)]},D}function b(f){return g(function(){return f})()}function g(f){var v,m,x,T,d,M,A,C,P,O,z=150,B=480,Y=250,D=0,G=0,V=0,j=0,W=0,Z=0,ie=1,te=1,J=null,X=w.Z,ee=null,re=y.Z,oe=.5;function ue(_e){return C(_e[0]*h.uR,_e[1]*h.uR)}function ce(_e){return(_e=C.invert(_e[0],_e[1]))&&[_e[0]*h.RW,_e[1]*h.RW]}function de(){var _e=c(z,0,0,ie,te,Z).apply(null,v(D,G)),Se=(Z?c:p)(z,B-_e[0],Y-_e[1],ie,te,Z);return m=(0,l.I)(V,j,W),A=(0,_.Z)(v,Se),C=(0,_.Z)(m,A),M=s(A,oe),me()}function me(){return P=O=null,ue}return ue.stream=function(_e){return P&&O===_e?P:P=u(function(Se){return(0,t.l)({point:function(we,xe){var De=Se(we,xe);return this.stream.point(De[0],De[1])}})}(m)(X(M(re(O=_e)))))},ue.preclip=function(_e){return arguments.length?(X=_e,J=void 0,me()):X},ue.postclip=function(_e){return arguments.length?(re=_e,ee=x=T=d=null,me()):re},ue.clipAngle=function(_e){return arguments.length?(X=+_e?(0,k.Z)(J=_e*h.uR):(J=null,w.Z),me()):J*h.RW},ue.clipExtent=function(_e){return arguments.length?(re=_e==null?(ee=x=T=d=null,y.Z):(0,i.Z)(ee=+_e[0][0],x=+_e[0][1],T=+_e[1][0],d=+_e[1][1]),me()):ee==null?null:[[ee,x],[T,d]]},ue.scale=function(_e){return arguments.length?(z=+_e,de()):z},ue.translate=function(_e){return arguments.length?(B=+_e[0],Y=+_e[1],de()):[B,Y]},ue.center=function(_e){return arguments.length?(D=_e[0]%360*h.uR,G=_e[1]%360*h.uR,de()):[D*h.RW,G*h.RW]},ue.rotate=function(_e){return arguments.length?(V=_e[0]%360*h.uR,j=_e[1]%360*h.uR,W=_e.length>2?_e[2]%360*h.uR:0,de()):[V*h.RW,j*h.RW,W*h.RW]},ue.angle=function(_e){return arguments.length?(Z=_e%360*h.uR,de()):Z*h.RW},ue.reflectX=function(_e){return arguments.length?(ie=_e?-1:1,de()):ie<0},ue.reflectY=function(_e){return arguments.length?(te=_e?-1:1,de()):te<0},ue.precision=function(_e){return arguments.length?(M=s(A,oe=_e*_e),me()):(0,h._b)(oe)},ue.fitExtent=function(_e,Se){return(0,o.qg)(ue,_e,Se)},ue.fitSize=function(_e,Se){return(0,o.mF)(ue,_e,Se)},ue.fitWidth=function(_e,Se){return(0,o.V6)(ue,_e,Se)},ue.fitHeight=function(_e,Se){return(0,o.rf)(ue,_e,Se)},function(){return v=f.apply(this,arguments),ue.invert=v.invert&&ce,de()}}},26867:function(R,E,e){e.d(E,{K:function(){return i},Z:function(){return _}});var w=e(15002),k=e(39695);function i(y,h){var l=h*h,t=l*l;return[y*(.8707-.131979*l+t*(t*(.003971*l-.001529*t)-.013791)),h*(1.007226+l*(.015085+t*(.028874*l-.044475-.005916*t)))]}function _(){return(0,w.Z)(i).scale(175.295)}i.invert=function(y,h){var l,t=h,o=25;do{var r=t*t,n=r*r;t-=l=(t*(1.007226+r*(.015085+n*(.028874*r-.044475-.005916*n)))-h)/(1.007226+r*(.045255+n*(.259866*r-.311325-.06507600000000001*n)))}while((0,k.Wn)(l)>k.Ho&&--o>0);return[y/(.8707+(r=t*t)*(r*(r*r*r*(.003971-.001529*r)-.013791)-.131979)),t]}},57962:function(R,E,e){e.d(E,{I:function(){return _},Z:function(){return y}});var w=e(39695),k=e(25382),i=e(15002);function _(h,l){return[(0,w.mC)(l)*(0,w.O$)(h),(0,w.O$)(l)]}function y(){return(0,i.Z)(_).scale(249.5).clipAngle(90+w.Ho)}_.invert=(0,k.O)(w.ZR)},49386:function(R,E,e){e.d(E,{I:function(){return _},Z:function(){return t}});var w=e(96059),k=e(39695);function i(o,r){return[(0,k.Wn)(o)>k.pi?o+Math.round(-o/k.BZ)*k.BZ:o,r]}function _(o,r,n){return(o%=k.BZ)?r||n?(0,w.Z)(h(o),l(r,n)):h(o):r||n?l(r,n):i}function y(o){return function(r,n){return[(r+=o)>k.pi?r-k.BZ:r<-k.pi?r+k.BZ:r,n]}}function h(o){var r=y(o);return r.invert=y(-o),r}function l(o,r){var n=(0,k.mC)(o),a=(0,k.O$)(o),s=(0,k.mC)(r),u=(0,k.O$)(r);function p(c,b){var g=(0,k.mC)(b),f=(0,k.mC)(c)*g,v=(0,k.O$)(c)*g,m=(0,k.O$)(b),x=m*n+f*a;return[(0,k.fv)(v*s-x*u,f*n-m*a),(0,k.ZR)(x*s+v*u)]}return p.invert=function(c,b){var g=(0,k.mC)(b),f=(0,k.mC)(c)*g,v=(0,k.O$)(c)*g,m=(0,k.O$)(b),x=m*s-v*u;return[(0,k.fv)(v*s+m*u,f*n+x*a),(0,k.ZR)(x*n-f*a)]},p}function t(o){function r(n){return(n=o(n[0]*k.uR,n[1]*k.uR))[0]*=k.RW,n[1]*=k.RW,n}return o=_(o[0]*k.uR,o[1]*k.uR,o.length>2?o[2]*k.uR:0),r.invert=function(n){return(n=o.invert(n[0]*k.uR,n[1]*k.uR))[0]*=k.RW,n[1]*=k.RW,n},r}i.invert=i},72736:function(R,E,e){function w(l,t){l&&i.hasOwnProperty(l.type)&&i[l.type](l,t)}e.d(E,{Z:function(){return h}});var k={Feature:function(l,t){w(l.geometry,t)},FeatureCollection:function(l,t){for(var o=l.features,r=-1,n=o.length;++r<n;)w(o[r].geometry,t)}},i={Sphere:function(l,t){t.sphere()},Point:function(l,t){l=l.coordinates,t.point(l[0],l[1],l[2])},MultiPoint:function(l,t){for(var o=l.coordinates,r=-1,n=o.length;++r<n;)l=o[r],t.point(l[0],l[1],l[2])},LineString:function(l,t){_(l.coordinates,t,0)},MultiLineString:function(l,t){for(var o=l.coordinates,r=-1,n=o.length;++r<n;)_(o[r],t,0)},Polygon:function(l,t){y(l.coordinates,t)},MultiPolygon:function(l,t){for(var o=l.coordinates,r=-1,n=o.length;++r<n;)y(o[r],t)},GeometryCollection:function(l,t){for(var o=l.geometries,r=-1,n=o.length;++r<n;)w(o[r],t)}};function _(l,t,o){var r,n=-1,a=l.length-o;for(t.lineStart();++n<a;)r=l[n],t.point(r[0],r[1],r[2]);t.lineEnd()}function y(l,t){var o=-1,r=l.length;for(t.polygonStart();++o<r;)_(l[o],t,1);t.polygonEnd()}function h(l,t){l&&k.hasOwnProperty(l.type)?k[l.type](l,t):w(l,t)}},64684:function(R,E,e){function w(_){return{stream:k(_)}}function k(_){return function(y){var h=new i;for(var l in _)h[l]=_[l];return h.stream=y,h}}function i(){}e.d(E,{Z:function(){return w},l:function(){return k}}),i.prototype={constructor:i,point:function(_,y){this.stream.point(_,y)},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()}}},674:function(R,E,e){function w(fe,ae){return fe.parent===ae.parent?1:2}function k(fe,ae){return fe+ae.x}function i(fe,ae){return Math.max(fe,ae.y)}function _(){var fe=w,ae=1,be=1,Ie=!1;function Te(Ne){var qe,ve=0;Ne.eachAfter(function(Ve){var Ye=Ve.children;Ye?(Ve.x=function($e){return $e.reduce(k,0)/$e.length}(Ye),Ve.y=function($e){return 1+$e.reduce(i,0)}(Ye)):(Ve.x=qe?ve+=fe(Ve,qe):0,Ve.y=0,qe=Ve)});var Ce=function(Ve){for(var Ye;Ye=Ve.children;)Ve=Ye[0];return Ve}(Ne),Ae=function(Ve){for(var Ye;Ye=Ve.children;)Ve=Ye[Ye.length-1];return Ve}(Ne),ze=Ce.x-fe(Ce,Ae)/2,Ue=Ae.x+fe(Ae,Ce)/2;return Ne.eachAfter(Ie?function(Ve){Ve.x=(Ve.x-Ne.x)*ae,Ve.y=(Ne.y-Ve.y)*be}:function(Ve){Ve.x=(Ve.x-ze)/(Ue-ze)*ae,Ve.y=(1-(Ne.y?Ve.y/Ne.y:1))*be})}return Te.separation=function(Ne){return arguments.length?(fe=Ne,Te):fe},Te.size=function(Ne){return arguments.length?(Ie=!1,ae=+Ne[0],be=+Ne[1],Te):Ie?null:[ae,be]},Te.nodeSize=function(Ne){return arguments.length?(Ie=!0,ae=+Ne[0],be=+Ne[1],Te):Ie?[ae,be]:null},Te}function y(fe){var ae=0,be=fe.children,Ie=be&&be.length;if(Ie)for(;--Ie>=0;)ae+=be[Ie].value;else ae=1;fe.value=ae}function h(fe,ae){var be,Ie,Te,Ne,qe,ve=new r(fe),Ce=+fe.value&&(ve.value=fe.value),Ae=[ve];for(ae==null&&(ae=l);be=Ae.pop();)if(Ce&&(be.value=+be.data.value),(Te=ae(be.data))&&(qe=Te.length))for(be.children=new Array(qe),Ne=qe-1;Ne>=0;--Ne)Ae.push(Ie=be.children[Ne]=new r(Te[Ne])),Ie.parent=be,Ie.depth=be.depth+1;return ve.eachBefore(o)}function l(fe){return fe.children}function t(fe){fe.data=fe.data.data}function o(fe){var ae=0;do fe.height=ae;while((fe=fe.parent)&&fe.height<++ae)}function r(fe){this.data=fe,this.depth=this.height=0,this.parent=null}e.r(E),e.d(E,{cluster:function(){return _},hierarchy:function(){return h},pack:function(){return z},packEnclose:function(){return a},packSiblings:function(){return M},partition:function(){return j},stratify:function(){return X},tree:function(){return me},treemap:function(){return De},treemapBinary:function(){return Ee},treemapDice:function(){return V},treemapResquarify:function(){return he},treemapSlice:function(){return _e},treemapSliceDice:function(){return Me},treemapSquarify:function(){return xe}}),r.prototype=h.prototype={constructor:r,count:function(){return this.eachAfter(y)},each:function(fe){var ae,be,Ie,Te,Ne=this,qe=[Ne];do for(ae=qe.reverse(),qe=[];Ne=ae.pop();)if(fe(Ne),be=Ne.children)for(Ie=0,Te=be.length;Ie<Te;++Ie)qe.push(be[Ie]);while(qe.length);return this},eachAfter:function(fe){for(var ae,be,Ie,Te=this,Ne=[Te],qe=[];Te=Ne.pop();)if(qe.push(Te),ae=Te.children)for(be=0,Ie=ae.length;be<Ie;++be)Ne.push(ae[be]);for(;Te=qe.pop();)fe(Te);return this},eachBefore:function(fe){for(var ae,be,Ie=this,Te=[Ie];Ie=Te.pop();)if(fe(Ie),ae=Ie.children)for(be=ae.length-1;be>=0;--be)Te.push(ae[be]);return this},sum:function(fe){return this.eachAfter(function(ae){for(var be=+fe(ae.data)||0,Ie=ae.children,Te=Ie&&Ie.length;--Te>=0;)be+=Ie[Te].value;ae.value=be})},sort:function(fe){return this.eachBefore(function(ae){ae.children&&ae.children.sort(fe)})},path:function(fe){for(var ae=this,be=function(Ne,qe){if(Ne===qe)return Ne;var ve=Ne.ancestors(),Ce=qe.ancestors(),Ae=null;for(Ne=ve.pop(),qe=Ce.pop();Ne===qe;)Ae=Ne,Ne=ve.pop(),qe=Ce.pop();return Ae}(ae,fe),Ie=[ae];ae!==be;)ae=ae.parent,Ie.push(ae);for(var Te=Ie.length;fe!==be;)Ie.splice(Te,0,fe),fe=fe.parent;return Ie},ancestors:function(){for(var fe=this,ae=[fe];fe=fe.parent;)ae.push(fe);return ae},descendants:function(){var fe=[];return this.each(function(ae){fe.push(ae)}),fe},leaves:function(){var fe=[];return this.eachBefore(function(ae){ae.children||fe.push(ae)}),fe},links:function(){var fe=this,ae=[];return fe.each(function(be){be!==fe&&ae.push({source:be.parent,target:be})}),ae},copy:function(){return h(this).eachBefore(t)}};var n=Array.prototype.slice;function a(fe){for(var ae,be,Ie=0,Te=(fe=function(qe){for(var ve,Ce,Ae=qe.length;Ae;)Ce=Math.random()*Ae--|0,ve=qe[Ae],qe[Ae]=qe[Ce],qe[Ce]=ve;return qe}(n.call(fe))).length,Ne=[];Ie<Te;)ae=fe[Ie],be&&p(be,ae)?++Ie:(be=b(Ne=s(Ne,ae)),Ie=0);return be}function s(fe,ae){var be,Ie;if(c(ae,fe))return[ae];for(be=0;be<fe.length;++be)if(u(ae,fe[be])&&c(g(fe[be],ae),fe))return[fe[be],ae];for(be=0;be<fe.length-1;++be)for(Ie=be+1;Ie<fe.length;++Ie)if(u(g(fe[be],fe[Ie]),ae)&&u(g(fe[be],ae),fe[Ie])&&u(g(fe[Ie],ae),fe[be])&&c(f(fe[be],fe[Ie],ae),fe))return[fe[be],fe[Ie],ae];throw new Error}function u(fe,ae){var be=fe.r-ae.r,Ie=ae.x-fe.x,Te=ae.y-fe.y;return be<0||be*be<Ie*Ie+Te*Te}function p(fe,ae){var be=fe.r-ae.r+1e-6,Ie=ae.x-fe.x,Te=ae.y-fe.y;return be>0&&be*be>Ie*Ie+Te*Te}function c(fe,ae){for(var be=0;be<ae.length;++be)if(!p(fe,ae[be]))return!1;return!0}function b(fe){switch(fe.length){case 1:return{x:(ae=fe[0]).x,y:ae.y,r:ae.r};case 2:return g(fe[0],fe[1]);case 3:return f(fe[0],fe[1],fe[2])}var ae}function g(fe,ae){var be=fe.x,Ie=fe.y,Te=fe.r,Ne=ae.x,qe=ae.y,ve=ae.r,Ce=Ne-be,Ae=qe-Ie,ze=ve-Te,Ue=Math.sqrt(Ce*Ce+Ae*Ae);return{x:(be+Ne+Ce/Ue*ze)/2,y:(Ie+qe+Ae/Ue*ze)/2,r:(Ue+Te+ve)/2}}function f(fe,ae,be){var Ie=fe.x,Te=fe.y,Ne=fe.r,qe=ae.x,ve=ae.y,Ce=ae.r,Ae=be.x,ze=be.y,Ue=be.r,Ve=Ie-qe,Ye=Ie-Ae,$e=Te-ve,rt=Te-ze,ht=Ce-Ne,nt=Ue-Ne,bt=Ie*Ie+Te*Te-Ne*Ne,wt=bt-qe*qe-ve*ve+Ce*Ce,ut=bt-Ae*Ae-ze*ze+Ue*Ue,lt=Ye*$e-Ve*rt,Tt=($e*ut-rt*wt)/(2*lt)-Ie,Et=(rt*ht-$e*nt)/lt,St=(Ye*wt-Ve*ut)/(2*lt)-Te,Ft=(Ve*nt-Ye*ht)/lt,zt=Et*Et+Ft*Ft-1,Je=2*(Ne+Tt*Et+St*Ft),et=Tt*Tt+St*St-Ne*Ne,Ze=-(zt?(Je+Math.sqrt(Je*Je-4*zt*et))/(2*zt):et/Je);return{x:Ie+Tt+Et*Ze,y:Te+St+Ft*Ze,r:Ze}}function v(fe,ae,be){var Ie,Te,Ne,qe,ve=fe.x-ae.x,Ce=fe.y-ae.y,Ae=ve*ve+Ce*Ce;Ae?(Te=ae.r+be.r,Te*=Te,qe=fe.r+be.r,Te>(qe*=qe)?(Ie=(Ae+qe-Te)/(2*Ae),Ne=Math.sqrt(Math.max(0,qe/Ae-Ie*Ie)),be.x=fe.x-Ie*ve-Ne*Ce,be.y=fe.y-Ie*Ce+Ne*ve):(Ie=(Ae+Te-qe)/(2*Ae),Ne=Math.sqrt(Math.max(0,Te/Ae-Ie*Ie)),be.x=ae.x+Ie*ve-Ne*Ce,be.y=ae.y+Ie*Ce+Ne*ve)):(be.x=ae.x+be.r,be.y=ae.y)}function m(fe,ae){var be=fe.r+ae.r-1e-6,Ie=ae.x-fe.x,Te=ae.y-fe.y;return be>0&&be*be>Ie*Ie+Te*Te}function x(fe){var ae=fe._,be=fe.next._,Ie=ae.r+be.r,Te=(ae.x*be.r+be.x*ae.r)/Ie,Ne=(ae.y*be.r+be.y*ae.r)/Ie;return Te*Te+Ne*Ne}function T(fe){this._=fe,this.next=null,this.previous=null}function d(fe){if(!(Te=fe.length))return 0;var ae,be,Ie,Te,Ne,qe,ve,Ce,Ae,ze,Ue;if((ae=fe[0]).x=0,ae.y=0,!(Te>1))return ae.r;if(be=fe[1],ae.x=-be.r,be.x=ae.r,be.y=0,!(Te>2))return ae.r+be.r;v(be,ae,Ie=fe[2]),ae=new T(ae),be=new T(be),Ie=new T(Ie),ae.next=Ie.previous=be,be.next=ae.previous=Ie,Ie.next=be.previous=ae;e:for(ve=3;ve<Te;++ve){v(ae._,be._,Ie=fe[ve]),Ie=new T(Ie),Ce=be.next,Ae=ae.previous,ze=be._.r,Ue=ae._.r;do if(ze<=Ue){if(m(Ce._,Ie._)){be=Ce,ae.next=be,be.previous=ae,--ve;continue e}ze+=Ce._.r,Ce=Ce.next}else{if(m(Ae._,Ie._)){(ae=Ae).next=be,be.previous=ae,--ve;continue e}Ue+=Ae._.r,Ae=Ae.previous}while(Ce!==Ae.next);for(Ie.previous=ae,Ie.next=be,ae.next=be.previous=be=Ie,Ne=x(ae);(Ie=Ie.next)!==be;)(qe=x(Ie))<Ne&&(ae=Ie,Ne=qe);be=ae.next}for(ae=[be._],Ie=be;(Ie=Ie.next)!==be;)ae.push(Ie._);for(Ie=a(ae),ve=0;ve<Te;++ve)(ae=fe[ve]).x-=Ie.x,ae.y-=Ie.y;return Ie.r}function M(fe){return d(fe),fe}function A(fe){if(typeof fe!="function")throw new Error;return fe}function C(){return 0}function P(fe){return function(){return fe}}function O(fe){return Math.sqrt(fe.value)}function z(){var fe=null,ae=1,be=1,Ie=C;function Te(Ne){return Ne.x=ae/2,Ne.y=be/2,fe?Ne.eachBefore(B(fe)).eachAfter(Y(Ie,.5)).eachBefore(D(1)):Ne.eachBefore(B(O)).eachAfter(Y(C,1)).eachAfter(Y(Ie,Ne.r/Math.min(ae,be))).eachBefore(D(Math.min(ae,be)/(2*Ne.r))),Ne}return Te.radius=function(Ne){return arguments.length?(fe=(qe=Ne)==null?null:A(qe),Te):fe;var qe},Te.size=function(Ne){return arguments.length?(ae=+Ne[0],be=+Ne[1],Te):[ae,be]},Te.padding=function(Ne){return arguments.length?(Ie=typeof Ne=="function"?Ne:P(+Ne),Te):Ie},Te}function B(fe){return function(ae){ae.children||(ae.r=Math.max(0,+fe(ae)||0))}}function Y(fe,ae){return function(be){if(Ie=be.children){var Ie,Te,Ne,qe=Ie.length,ve=fe(be)*ae||0;if(ve)for(Te=0;Te<qe;++Te)Ie[Te].r+=ve;if(Ne=d(Ie),ve)for(Te=0;Te<qe;++Te)Ie[Te].r-=ve;be.r=Ne+ve}}}function D(fe){return function(ae){var be=ae.parent;ae.r*=fe,be&&(ae.x=be.x+fe*ae.x,ae.y=be.y+fe*ae.y)}}function G(fe){fe.x0=Math.round(fe.x0),fe.y0=Math.round(fe.y0),fe.x1=Math.round(fe.x1),fe.y1=Math.round(fe.y1)}function V(fe,ae,be,Ie,Te){for(var Ne,qe=fe.children,ve=-1,Ce=qe.length,Ae=fe.value&&(Ie-ae)/fe.value;++ve<Ce;)(Ne=qe[ve]).y0=be,Ne.y1=Te,Ne.x0=ae,Ne.x1=ae+=Ne.value*Ae}function j(){var fe=1,ae=1,be=0,Ie=!1;function Te(Ne){var qe=Ne.height+1;return Ne.x0=Ne.y0=be,Ne.x1=fe,Ne.y1=ae/qe,Ne.eachBefore(function(ve,Ce){return function(Ae){Ae.children&&V(Ae,Ae.x0,ve*(Ae.depth+1)/Ce,Ae.x1,ve*(Ae.depth+2)/Ce);var ze=Ae.x0,Ue=Ae.y0,Ve=Ae.x1-be,Ye=Ae.y1-be;Ve<ze&&(ze=Ve=(ze+Ve)/2),Ye<Ue&&(Ue=Ye=(Ue+Ye)/2),Ae.x0=ze,Ae.y0=Ue,Ae.x1=Ve,Ae.y1=Ye}}(ae,qe)),Ie&&Ne.eachBefore(G),Ne}return Te.round=function(Ne){return arguments.length?(Ie=!!Ne,Te):Ie},Te.size=function(Ne){return arguments.length?(fe=+Ne[0],ae=+Ne[1],Te):[fe,ae]},Te.padding=function(Ne){return arguments.length?(be=+Ne,Te):be},Te}var W="$",Z={depth:-1},ie={};function te(fe){return fe.id}function J(fe){return fe.parentId}function X(){var fe=te,ae=J;function be(Ie){var Te,Ne,qe,ve,Ce,Ae,ze,Ue=Ie.length,Ve=new Array(Ue),Ye={};for(Ne=0;Ne<Ue;++Ne)Te=Ie[Ne],Ce=Ve[Ne]=new r(Te),(Ae=fe(Te,Ne,Ie))!=null&&(Ae+="")&&(Ye[ze=W+(Ce.id=Ae)]=ze in Ye?ie:Ce);for(Ne=0;Ne<Ue;++Ne)if(Ce=Ve[Ne],(Ae=ae(Ie[Ne],Ne,Ie))!=null&&(Ae+="")){if(!(ve=Ye[W+Ae]))throw new Error("missing: "+Ae);if(ve===ie)throw new Error("ambiguous: "+Ae);ve.children?ve.children.push(Ce):ve.children=[Ce],Ce.parent=ve}else{if(qe)throw new Error("multiple roots");qe=Ce}if(!qe)throw new Error("no root");if(qe.parent=Z,qe.eachBefore(function($e){$e.depth=$e.parent.depth+1,--Ue}).eachBefore(o),qe.parent=null,Ue>0)throw new Error("cycle");return qe}return be.id=function(Ie){return arguments.length?(fe=A(Ie),be):fe},be.parentId=function(Ie){return arguments.length?(ae=A(Ie),be):ae},be}function ee(fe,ae){return fe.parent===ae.parent?1:2}function re(fe){var ae=fe.children;return ae?ae[0]:fe.t}function oe(fe){var ae=fe.children;return ae?ae[ae.length-1]:fe.t}function ue(fe,ae,be){var Ie=be/(ae.i-fe.i);ae.c-=Ie,ae.s+=be,fe.c+=Ie,ae.z+=be,ae.m+=be}function ce(fe,ae,be){return fe.a.parent===ae.parent?fe.a:be}function de(fe,ae){this._=fe,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=ae}function me(){var fe=ee,ae=1,be=1,Ie=null;function Te(Ce){var Ae=function(nt){for(var bt,wt,ut,lt,Tt,Et=new de(nt,0),St=[Et];bt=St.pop();)if(ut=bt._.children)for(bt.children=new Array(Tt=ut.length),lt=Tt-1;lt>=0;--lt)St.push(wt=bt.children[lt]=new de(ut[lt],lt)),wt.parent=bt;return(Et.parent=new de(null,0)).children=[Et],Et}(Ce);if(Ae.eachAfter(Ne),Ae.parent.m=-Ae.z,Ae.eachBefore(qe),Ie)Ce.eachBefore(ve);else{var ze=Ce,Ue=Ce,Ve=Ce;Ce.eachBefore(function(nt){nt.x<ze.x&&(ze=nt),nt.x>Ue.x&&(Ue=nt),nt.depth>Ve.depth&&(Ve=nt)});var Ye=ze===Ue?1:fe(ze,Ue)/2,$e=Ye-ze.x,rt=ae/(Ue.x+Ye+$e),ht=be/(Ve.depth||1);Ce.eachBefore(function(nt){nt.x=(nt.x+$e)*rt,nt.y=nt.depth*ht})}return Ce}function Ne(Ce){var Ae=Ce.children,ze=Ce.parent.children,Ue=Ce.i?ze[Ce.i-1]:null;if(Ae){(function(Ye){for(var $e,rt=0,ht=0,nt=Ye.children,bt=nt.length;--bt>=0;)($e=nt[bt]).z+=rt,$e.m+=rt,rt+=$e.s+(ht+=$e.c)})(Ce);var Ve=(Ae[0].z+Ae[Ae.length-1].z)/2;Ue?(Ce.z=Ue.z+fe(Ce._,Ue._),Ce.m=Ce.z-Ve):Ce.z=Ve}else Ue&&(Ce.z=Ue.z+fe(Ce._,Ue._));Ce.parent.A=function(Ye,$e,rt){if($e){for(var ht,nt=Ye,bt=Ye,wt=$e,ut=nt.parent.children[0],lt=nt.m,Tt=bt.m,Et=wt.m,St=ut.m;wt=oe(wt),nt=re(nt),wt&&nt;)ut=re(ut),(bt=oe(bt)).a=Ye,(ht=wt.z+Et-nt.z-lt+fe(wt._,nt._))>0&&(ue(ce(wt,Ye,rt),Ye,ht),lt+=ht,Tt+=ht),Et+=wt.m,lt+=nt.m,St+=ut.m,Tt+=bt.m;wt&&!oe(bt)&&(bt.t=wt,bt.m+=Et-Tt),nt&&!re(ut)&&(ut.t=nt,ut.m+=lt-St,rt=Ye)}return rt}(Ce,Ue,Ce.parent.A||ze[0])}function qe(Ce){Ce._.x=Ce.z+Ce.parent.m,Ce.m+=Ce.parent.m}function ve(Ce){Ce.x*=ae,Ce.y=Ce.depth*be}return Te.separation=function(Ce){return arguments.length?(fe=Ce,Te):fe},Te.size=function(Ce){return arguments.length?(Ie=!1,ae=+Ce[0],be=+Ce[1],Te):Ie?null:[ae,be]},Te.nodeSize=function(Ce){return arguments.length?(Ie=!0,ae=+Ce[0],be=+Ce[1],Te):Ie?[ae,be]:null},Te}function _e(fe,ae,be,Ie,Te){for(var Ne,qe=fe.children,ve=-1,Ce=qe.length,Ae=fe.value&&(Te-be)/fe.value;++ve<Ce;)(Ne=qe[ve]).x0=ae,Ne.x1=Ie,Ne.y0=be,Ne.y1=be+=Ne.value*Ae}de.prototype=Object.create(r.prototype);var Se=(1+Math.sqrt(5))/2;function we(fe,ae,be,Ie,Te,Ne){for(var qe,ve,Ce,Ae,ze,Ue,Ve,Ye,$e,rt,ht,nt=[],bt=ae.children,wt=0,ut=0,lt=bt.length,Tt=ae.value;wt<lt;){Ce=Te-be,Ae=Ne-Ie;do ze=bt[ut++].value;while(!ze&&ut<lt);for(Ue=Ve=ze,ht=ze*ze*(rt=Math.max(Ae/Ce,Ce/Ae)/(Tt*fe)),$e=Math.max(Ve/ht,ht/Ue);ut<lt;++ut){if(ze+=ve=bt[ut].value,ve<Ue&&(Ue=ve),ve>Ve&&(Ve=ve),ht=ze*ze*rt,(Ye=Math.max(Ve/ht,ht/Ue))>$e){ze-=ve;break}$e=Ye}nt.push(qe={value:ze,dice:Ce<Ae,children:bt.slice(wt,ut)}),qe.dice?V(qe,be,Ie,Te,Tt?Ie+=Ae*ze/Tt:Ne):_e(qe,be,Ie,Tt?be+=Ce*ze/Tt:Te,Ne),Tt-=ze,wt=ut}return nt}var xe=function fe(ae){function be(Ie,Te,Ne,qe,ve){we(ae,Ie,Te,Ne,qe,ve)}return be.ratio=function(Ie){return fe((Ie=+Ie)>1?Ie:1)},be}(Se);function De(){var fe=xe,ae=!1,be=1,Ie=1,Te=[0],Ne=C,qe=C,ve=C,Ce=C,Ae=C;function ze(Ve){return Ve.x0=Ve.y0=0,Ve.x1=be,Ve.y1=Ie,Ve.eachBefore(Ue),Te=[0],ae&&Ve.eachBefore(G),Ve}function Ue(Ve){var Ye=Te[Ve.depth],$e=Ve.x0+Ye,rt=Ve.y0+Ye,ht=Ve.x1-Ye,nt=Ve.y1-Ye;ht<$e&&($e=ht=($e+ht)/2),nt<rt&&(rt=nt=(rt+nt)/2),Ve.x0=$e,Ve.y0=rt,Ve.x1=ht,Ve.y1=nt,Ve.children&&(Ye=Te[Ve.depth+1]=Ne(Ve)/2,$e+=Ae(Ve)-Ye,rt+=qe(Ve)-Ye,(ht-=ve(Ve)-Ye)<$e&&($e=ht=($e+ht)/2),(nt-=Ce(Ve)-Ye)<rt&&(rt=nt=(rt+nt)/2),fe(Ve,$e,rt,ht,nt))}return ze.round=function(Ve){return arguments.length?(ae=!!Ve,ze):ae},ze.size=function(Ve){return arguments.length?(be=+Ve[0],Ie=+Ve[1],ze):[be,Ie]},ze.tile=function(Ve){return arguments.length?(fe=A(Ve),ze):fe},ze.padding=function(Ve){return arguments.length?ze.paddingInner(Ve).paddingOuter(Ve):ze.paddingInner()},ze.paddingInner=function(Ve){return arguments.length?(Ne=typeof Ve=="function"?Ve:P(+Ve),ze):Ne},ze.paddingOuter=function(Ve){return arguments.length?ze.paddingTop(Ve).paddingRight(Ve).paddingBottom(Ve).paddingLeft(Ve):ze.paddingTop()},ze.paddingTop=function(Ve){return arguments.length?(qe=typeof Ve=="function"?Ve:P(+Ve),ze):qe},ze.paddingRight=function(Ve){return arguments.length?(ve=typeof Ve=="function"?Ve:P(+Ve),ze):ve},ze.paddingBottom=function(Ve){return arguments.length?(Ce=typeof Ve=="function"?Ve:P(+Ve),ze):Ce},ze.paddingLeft=function(Ve){return arguments.length?(Ae=typeof Ve=="function"?Ve:P(+Ve),ze):Ae},ze}function Ee(fe,ae,be,Ie,Te){var Ne,qe,ve=fe.children,Ce=ve.length,Ae=new Array(Ce+1);for(Ae[0]=qe=Ne=0;Ne<Ce;++Ne)Ae[Ne+1]=qe+=ve[Ne].value;(function ze(Ue,Ve,Ye,$e,rt,ht,nt){if(Ue>=Ve-1){var bt=ve[Ue];return bt.x0=$e,bt.y0=rt,bt.x1=ht,void(bt.y1=nt)}for(var wt=Ae[Ue],ut=Ye/2+wt,lt=Ue+1,Tt=Ve-1;lt<Tt;){var Et=lt+Tt>>>1;Ae[Et]<ut?lt=Et+1:Tt=Et}ut-Ae[lt-1]<Ae[lt]-ut&&Ue+1<lt&&--lt;var St=Ae[lt]-wt,Ft=Ye-St;if(ht-$e>nt-rt){var zt=($e*Ft+ht*St)/Ye;ze(Ue,lt,St,$e,rt,zt,nt),ze(lt,Ve,Ft,zt,rt,ht,nt)}else{var Je=(rt*Ft+nt*St)/Ye;ze(Ue,lt,St,$e,rt,ht,Je),ze(lt,Ve,Ft,$e,Je,ht,nt)}})(0,Ce,fe.value,ae,be,Ie,Te)}function Me(fe,ae,be,Ie,Te){(1&fe.depth?_e:V)(fe,ae,be,Ie,Te)}var he=function fe(ae){function be(Ie,Te,Ne,qe,ve){if((Ce=Ie._squarify)&&Ce.ratio===ae)for(var Ce,Ae,ze,Ue,Ve,Ye=-1,$e=Ce.length,rt=Ie.value;++Ye<$e;){for(ze=(Ae=Ce[Ye]).children,Ue=Ae.value=0,Ve=ze.length;Ue<Ve;++Ue)Ae.value+=ze[Ue].value;Ae.dice?V(Ae,Te,Ne,qe,Ne+=(ve-Ne)*Ae.value/rt):_e(Ae,Te,Ne,Te+=(qe-Te)*Ae.value/rt,ve),rt-=Ae.value}else Ie._squarify=Ce=we(ae,Ie,Te,Ne,qe,ve),Ce.ratio=ae}return be.ratio=function(Ie){return fe((Ie=+Ie)>1?Ie:1)},be}(Se)},45879:function(R,E,e){e.d(E,{h5:function(){return p}});var w=Math.PI,k=2*w,i=1e-6,_=k-i;function y(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function h(){return new y}y.prototype=h.prototype={constructor:y,moveTo:function(c,b){this._+="M"+(this._x0=this._x1=+c)+","+(this._y0=this._y1=+b)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(c,b){this._+="L"+(this._x1=+c)+","+(this._y1=+b)},quadraticCurveTo:function(c,b,g,f){this._+="Q"+ +c+","+ +b+","+(this._x1=+g)+","+(this._y1=+f)},bezierCurveTo:function(c,b,g,f,v,m){this._+="C"+ +c+","+ +b+","+ +g+","+ +f+","+(this._x1=+v)+","+(this._y1=+m)},arcTo:function(c,b,g,f,v){c=+c,b=+b,g=+g,f=+f,v=+v;var m=this._x1,x=this._y1,T=g-c,d=f-b,M=m-c,A=x-b,C=M*M+A*A;if(v<0)throw new Error("negative radius: "+v);if(this._x1===null)this._+="M"+(this._x1=c)+","+(this._y1=b);else if(C>i)if(Math.abs(A*T-d*M)>i&&v){var P=g-m,O=f-x,z=T*T+d*d,B=P*P+O*O,Y=Math.sqrt(z),D=Math.sqrt(C),G=v*Math.tan((w-Math.acos((z+C-B)/(2*Y*D)))/2),V=G/D,j=G/Y;Math.abs(V-1)>i&&(this._+="L"+(c+V*M)+","+(b+V*A)),this._+="A"+v+","+v+",0,0,"+ +(A*P>M*O)+","+(this._x1=c+j*T)+","+(this._y1=b+j*d)}else this._+="L"+(this._x1=c)+","+(this._y1=b)},arc:function(c,b,g,f,v,m){c=+c,b=+b,m=!!m;var x=(g=+g)*Math.cos(f),T=g*Math.sin(f),d=c+x,M=b+T,A=1^m,C=m?f-v:v-f;if(g<0)throw new Error("negative radius: "+g);this._x1===null?this._+="M"+d+","+M:(Math.abs(this._x1-d)>i||Math.abs(this._y1-M)>i)&&(this._+="L"+d+","+M),g&&(C<0&&(C=C%k+k),C>_?this._+="A"+g+","+g+",0,1,"+A+","+(c-x)+","+(b-T)+"A"+g+","+g+",0,1,"+A+","+(this._x1=d)+","+(this._y1=M):C>i&&(this._+="A"+g+","+g+",0,"+ +(C>=w)+","+A+","+(this._x1=c+g*Math.cos(v))+","+(this._y1=b+g*Math.sin(v))))},rect:function(c,b,g,f){this._+="M"+(this._x0=this._x1=+c)+","+(this._y0=this._y1=+b)+"h"+ +g+"v"+ +f+"h"+-g+"Z"},toString:function(){return this._}};var l=h,t=Array.prototype.slice;function o(c){return function(){return c}}function r(c){return c[0]}function n(c){return c[1]}function a(c){return c.source}function s(c){return c.target}function u(c,b,g,f,v){c.moveTo(b,g),c.bezierCurveTo(b=(b+f)/2,g,b,v,f,v)}function p(){return function(c){var b=a,g=s,f=r,v=n,m=null;function x(){var T,d=t.call(arguments),M=b.apply(this,d),A=g.apply(this,d);if(m||(m=T=l()),c(m,+f.apply(this,(d[0]=M,d)),+v.apply(this,d),+f.apply(this,(d[0]=A,d)),+v.apply(this,d)),T)return m=null,T+""||null}return x.source=function(T){return arguments.length?(b=T,x):b},x.target=function(T){return arguments.length?(g=T,x):g},x.x=function(T){return arguments.length?(f=typeof T=="function"?T:o(+T),x):f},x.y=function(T){return arguments.length?(v=typeof T=="function"?T:o(+T),x):v},x.context=function(T){return arguments.length?(m=T??null,x):m},x}(u)}},84096:function(R,E,e){e.d(E,{i$:function(){return a},Dq:function(){return r},g0:function(){return s}});var w=e(58176),k=e(48480),i=e(59879),_=e(82301),y=e(34823),h=e(79791);function l(lt){if(0<=lt.y&<.y<100){var Tt=new Date(-1,lt.m,lt.d,lt.H,lt.M,lt.S,lt.L);return Tt.setFullYear(lt.y),Tt}return new Date(lt.y,lt.m,lt.d,lt.H,lt.M,lt.S,lt.L)}function t(lt){if(0<=lt.y&<.y<100){var Tt=new Date(Date.UTC(-1,lt.m,lt.d,lt.H,lt.M,lt.S,lt.L));return Tt.setUTCFullYear(lt.y),Tt}return new Date(Date.UTC(lt.y,lt.m,lt.d,lt.H,lt.M,lt.S,lt.L))}function o(lt,Tt,Et){return{y:lt,m:Tt,d:Et,H:0,M:0,S:0,L:0}}function r(lt){var Tt=lt.dateTime,Et=lt.date,St=lt.time,Ft=lt.periods,zt=lt.days,Je=lt.shortDays,et=lt.months,Ze=lt.shortMonths,Qe=v(Ft),st=m(Ft),ft=v(zt),Be=m(zt),je=v(Je),at=m(Je),ot=v(et),xt=m(et),yt=v(Ze),_t=m(Ze),gt={a:function(jt){return Je[jt.getDay()]},A:function(jt){return zt[jt.getDay()]},b:function(jt){return Ze[jt.getMonth()]},B:function(jt){return et[jt.getMonth()]},c:null,d:X,e:X,f:ce,H:ee,I:re,j:oe,L:ue,m:de,M:me,p:function(jt){return Ft[+(jt.getHours()>=12)]},q:function(jt){return 1+~~(jt.getMonth()/3)},Q:wt,s:ut,S:_e,u:Se,U:we,V:xe,w:De,W:Ee,x:null,X:null,y:Me,Y:he,Z:fe,"%":bt},Ct={a:function(jt){return Je[jt.getUTCDay()]},A:function(jt){return zt[jt.getUTCDay()]},b:function(jt){return Ze[jt.getUTCMonth()]},B:function(jt){return et[jt.getUTCMonth()]},c:null,d:ae,e:ae,f:qe,H:be,I:Ie,j:Te,L:Ne,m:ve,M:Ce,p:function(jt){return Ft[+(jt.getUTCHours()>=12)]},q:function(jt){return 1+~~(jt.getUTCMonth()/3)},Q:wt,s:ut,S:Ae,u:ze,U:Ue,V:Ve,w:Ye,W:$e,x:null,X:null,y:rt,Y:ht,Z:nt,"%":bt},dt={a:function(jt,Ut,tn){var Xt=je.exec(Ut.slice(tn));return Xt?(jt.w=at[Xt[0].toLowerCase()],tn+Xt[0].length):-1},A:function(jt,Ut,tn){var Xt=ft.exec(Ut.slice(tn));return Xt?(jt.w=Be[Xt[0].toLowerCase()],tn+Xt[0].length):-1},b:function(jt,Ut,tn){var Xt=yt.exec(Ut.slice(tn));return Xt?(jt.m=_t[Xt[0].toLowerCase()],tn+Xt[0].length):-1},B:function(jt,Ut,tn){var Xt=ot.exec(Ut.slice(tn));return Xt?(jt.m=xt[Xt[0].toLowerCase()],tn+Xt[0].length):-1},c:function(jt,Ut,tn){return Bt(jt,Tt,Ut,tn)},d:Y,e:Y,f:Z,H:G,I:G,j:D,L:W,m:B,M:V,p:function(jt,Ut,tn){var Xt=Qe.exec(Ut.slice(tn));return Xt?(jt.p=st[Xt[0].toLowerCase()],tn+Xt[0].length):-1},q:z,Q:te,s:J,S:j,u:T,U:d,V:M,w:x,W:A,x:function(jt,Ut,tn){return Bt(jt,Et,Ut,tn)},X:function(jt,Ut,tn){return Bt(jt,St,Ut,tn)},y:P,Y:C,Z:O,"%":ie};function vt(jt,Ut){return function(tn){var Xt,Qt,Gt,vn=[],Tn=-1,dn=0,Yt=jt.length;for(tn instanceof Date||(tn=new Date(+tn));++Tn<Yt;)jt.charCodeAt(Tn)===37&&(vn.push(jt.slice(dn,Tn)),(Qt=u[Xt=jt.charAt(++Tn)])!=null?Xt=jt.charAt(++Tn):Qt=Xt==="e"?" ":"0",(Gt=Ut[Xt])&&(Xt=Gt(tn,Qt)),vn.push(Xt),dn=Tn+1);return vn.push(jt.slice(dn,Tn)),vn.join("")}}function At(jt,Ut){return function(tn){var Xt,Qt,Gt=o(1900,void 0,1);if(Bt(Gt,jt,tn+="",0)!=tn.length)return null;if("Q"in Gt)return new Date(Gt.Q);if("s"in Gt)return new Date(1e3*Gt.s+("L"in Gt?Gt.L:0));if(Ut&&!("Z"in Gt)&&(Gt.Z=0),"p"in Gt&&(Gt.H=Gt.H%12+12*Gt.p),Gt.m===void 0&&(Gt.m="q"in Gt?Gt.q:0),"V"in Gt){if(Gt.V<1||Gt.V>53)return null;"w"in Gt||(Gt.w=1),"Z"in Gt?(Qt=(Xt=t(o(Gt.y,0,1))).getUTCDay(),Xt=Qt>4||Qt===0?w.l6.ceil(Xt):(0,w.l6)(Xt),Xt=k.Z.offset(Xt,7*(Gt.V-1)),Gt.y=Xt.getUTCFullYear(),Gt.m=Xt.getUTCMonth(),Gt.d=Xt.getUTCDate()+(Gt.w+6)%7):(Qt=(Xt=l(o(Gt.y,0,1))).getDay(),Xt=Qt>4||Qt===0?i.wA.ceil(Xt):(0,i.wA)(Xt),Xt=_.Z.offset(Xt,7*(Gt.V-1)),Gt.y=Xt.getFullYear(),Gt.m=Xt.getMonth(),Gt.d=Xt.getDate()+(Gt.w+6)%7)}else("W"in Gt||"U"in Gt)&&("w"in Gt||(Gt.w="u"in Gt?Gt.u%7:"W"in Gt?1:0),Qt="Z"in Gt?t(o(Gt.y,0,1)).getUTCDay():l(o(Gt.y,0,1)).getDay(),Gt.m=0,Gt.d="W"in Gt?(Gt.w+6)%7+7*Gt.W-(Qt+5)%7:Gt.w+7*Gt.U-(Qt+6)%7);return"Z"in Gt?(Gt.H+=Gt.Z/100|0,Gt.M+=Gt.Z%100,t(Gt)):l(Gt)}}function Bt(jt,Ut,tn,Xt){for(var Qt,Gt,vn=0,Tn=Ut.length,dn=tn.length;vn<Tn;){if(Xt>=dn)return-1;if((Qt=Ut.charCodeAt(vn++))===37){if(Qt=Ut.charAt(vn++),!(Gt=dt[Qt in u?Ut.charAt(vn++):Qt])||(Xt=Gt(jt,tn,Xt))<0)return-1}else if(Qt!=tn.charCodeAt(Xt++))return-1}return Xt}return gt.x=vt(Et,gt),gt.X=vt(St,gt),gt.c=vt(Tt,gt),Ct.x=vt(Et,Ct),Ct.X=vt(St,Ct),Ct.c=vt(Tt,Ct),{format:function(jt){var Ut=vt(jt+="",gt);return Ut.toString=function(){return jt},Ut},parse:function(jt){var Ut=At(jt+="",!1);return Ut.toString=function(){return jt},Ut},utcFormat:function(jt){var Ut=vt(jt+="",Ct);return Ut.toString=function(){return jt},Ut},utcParse:function(jt){var Ut=At(jt+="",!0);return Ut.toString=function(){return jt},Ut}}}var n,a,s,u={"-":"",_:" ",0:"0"},p=/^\s*\d+/,c=/^%/,b=/[\\^$*+?|[\]().{}]/g;function g(lt,Tt,Et){var St=lt<0?"-":"",Ft=(St?-lt:lt)+"",zt=Ft.length;return St+(zt<Et?new Array(Et-zt+1).join(Tt)+Ft:Ft)}function f(lt){return lt.replace(b,"\\$&")}function v(lt){return new RegExp("^(?:"+lt.map(f).join("|")+")","i")}function m(lt){for(var Tt={},Et=-1,St=lt.length;++Et<St;)Tt[lt[Et].toLowerCase()]=Et;return Tt}function x(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+1));return St?(lt.w=+St[0],Et+St[0].length):-1}function T(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+1));return St?(lt.u=+St[0],Et+St[0].length):-1}function d(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+2));return St?(lt.U=+St[0],Et+St[0].length):-1}function M(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+2));return St?(lt.V=+St[0],Et+St[0].length):-1}function A(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+2));return St?(lt.W=+St[0],Et+St[0].length):-1}function C(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+4));return St?(lt.y=+St[0],Et+St[0].length):-1}function P(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+2));return St?(lt.y=+St[0]+(+St[0]>68?1900:2e3),Et+St[0].length):-1}function O(lt,Tt,Et){var St=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Tt.slice(Et,Et+6));return St?(lt.Z=St[1]?0:-(St[2]+(St[3]||"00")),Et+St[0].length):-1}function z(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+1));return St?(lt.q=3*St[0]-3,Et+St[0].length):-1}function B(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+2));return St?(lt.m=St[0]-1,Et+St[0].length):-1}function Y(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+2));return St?(lt.d=+St[0],Et+St[0].length):-1}function D(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+3));return St?(lt.m=0,lt.d=+St[0],Et+St[0].length):-1}function G(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+2));return St?(lt.H=+St[0],Et+St[0].length):-1}function V(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+2));return St?(lt.M=+St[0],Et+St[0].length):-1}function j(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+2));return St?(lt.S=+St[0],Et+St[0].length):-1}function W(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+3));return St?(lt.L=+St[0],Et+St[0].length):-1}function Z(lt,Tt,Et){var St=p.exec(Tt.slice(Et,Et+6));return St?(lt.L=Math.floor(St[0]/1e3),Et+St[0].length):-1}function ie(lt,Tt,Et){var St=c.exec(Tt.slice(Et,Et+1));return St?Et+St[0].length:-1}function te(lt,Tt,Et){var St=p.exec(Tt.slice(Et));return St?(lt.Q=+St[0],Et+St[0].length):-1}function J(lt,Tt,Et){var St=p.exec(Tt.slice(Et));return St?(lt.s=+St[0],Et+St[0].length):-1}function X(lt,Tt){return g(lt.getDate(),Tt,2)}function ee(lt,Tt){return g(lt.getHours(),Tt,2)}function re(lt,Tt){return g(lt.getHours()%12||12,Tt,2)}function oe(lt,Tt){return g(1+_.Z.count((0,y.Z)(lt),lt),Tt,3)}function ue(lt,Tt){return g(lt.getMilliseconds(),Tt,3)}function ce(lt,Tt){return ue(lt,Tt)+"000"}function de(lt,Tt){return g(lt.getMonth()+1,Tt,2)}function me(lt,Tt){return g(lt.getMinutes(),Tt,2)}function _e(lt,Tt){return g(lt.getSeconds(),Tt,2)}function Se(lt){var Tt=lt.getDay();return Tt===0?7:Tt}function we(lt,Tt){return g(i.OM.count((0,y.Z)(lt)-1,lt),Tt,2)}function xe(lt,Tt){var Et=lt.getDay();return lt=Et>=4||Et===0?(0,i.bL)(lt):i.bL.ceil(lt),g(i.bL.count((0,y.Z)(lt),lt)+((0,y.Z)(lt).getDay()===4),Tt,2)}function De(lt){return lt.getDay()}function Ee(lt,Tt){return g(i.wA.count((0,y.Z)(lt)-1,lt),Tt,2)}function Me(lt,Tt){return g(lt.getFullYear()%100,Tt,2)}function he(lt,Tt){return g(lt.getFullYear()%1e4,Tt,4)}function fe(lt){var Tt=lt.getTimezoneOffset();return(Tt>0?"-":(Tt*=-1,"+"))+g(Tt/60|0,"0",2)+g(Tt%60,"0",2)}function ae(lt,Tt){return g(lt.getUTCDate(),Tt,2)}function be(lt,Tt){return g(lt.getUTCHours(),Tt,2)}function Ie(lt,Tt){return g(lt.getUTCHours()%12||12,Tt,2)}function Te(lt,Tt){return g(1+k.Z.count((0,h.Z)(lt),lt),Tt,3)}function Ne(lt,Tt){return g(lt.getUTCMilliseconds(),Tt,3)}function qe(lt,Tt){return Ne(lt,Tt)+"000"}function ve(lt,Tt){return g(lt.getUTCMonth()+1,Tt,2)}function Ce(lt,Tt){return g(lt.getUTCMinutes(),Tt,2)}function Ae(lt,Tt){return g(lt.getUTCSeconds(),Tt,2)}function ze(lt){var Tt=lt.getUTCDay();return Tt===0?7:Tt}function Ue(lt,Tt){return g(w.Ox.count((0,h.Z)(lt)-1,lt),Tt,2)}function Ve(lt,Tt){var Et=lt.getUTCDay();return lt=Et>=4||Et===0?(0,w.hB)(lt):w.hB.ceil(lt),g(w.hB.count((0,h.Z)(lt),lt)+((0,h.Z)(lt).getUTCDay()===4),Tt,2)}function Ye(lt){return lt.getUTCDay()}function $e(lt,Tt){return g(w.l6.count((0,h.Z)(lt)-1,lt),Tt,2)}function rt(lt,Tt){return g(lt.getUTCFullYear()%100,Tt,2)}function ht(lt,Tt){return g(lt.getUTCFullYear()%1e4,Tt,4)}function nt(){return"+0000"}function bt(){return"%"}function wt(lt){return+lt}function ut(lt){return Math.floor(+lt/1e3)}n=r({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"]}),a=n.format,n.parse,s=n.utcFormat,n.utcParse},82301:function(R,E,e){e.d(E,{a:function(){return _}});var w=e(30052),k=e(54263),i=(0,w.Z)(function(y){y.setHours(0,0,0,0)},function(y,h){y.setDate(y.getDate()+h)},function(y,h){return(h-y-(h.getTimezoneOffset()-y.getTimezoneOffset())*k.yB)/k.UD},function(y){return y.getDate()-1});E.Z=i;var _=i.range},54263:function(R,E,e){e.d(E,{UD:function(){return _},Y2:function(){return i},Ym:function(){return w},iM:function(){return y},yB:function(){return k}});var w=1e3,k=6e4,i=36e5,_=864e5,y=6048e5},81041:function(R,E,e){e.r(E),e.d(E,{timeDay:function(){return p.Z},timeDays:function(){return p.a},timeFriday:function(){return c.mC},timeFridays:function(){return c.b$},timeHour:function(){return s},timeHours:function(){return u},timeInterval:function(){return w.Z},timeMillisecond:function(){return i},timeMilliseconds:function(){return _},timeMinute:function(){return r},timeMinutes:function(){return n},timeMonday:function(){return c.wA},timeMondays:function(){return c.bJ},timeMonth:function(){return g},timeMonths:function(){return f},timeSaturday:function(){return c.EY},timeSaturdays:function(){return c.Ff},timeSecond:function(){return l},timeSeconds:function(){return t},timeSunday:function(){return c.OM},timeSundays:function(){return c.vm},timeThursday:function(){return c.bL},timeThursdays:function(){return c.$t},timeTuesday:function(){return c.sy},timeTuesdays:function(){return c.aU},timeWednesday:function(){return c.zg},timeWednesdays:function(){return c.Ld},timeWeek:function(){return c.OM},timeWeeks:function(){return c.vm},timeYear:function(){return v.Z},timeYears:function(){return v.g},utcDay:function(){return C.Z},utcDays:function(){return C.y},utcFriday:function(){return P.QQ},utcFridays:function(){return P.fz},utcHour:function(){return M},utcHours:function(){return A},utcMillisecond:function(){return i},utcMilliseconds:function(){return _},utcMinute:function(){return x},utcMinutes:function(){return T},utcMonday:function(){return P.l6},utcMondays:function(){return P.$3},utcMonth:function(){return z},utcMonths:function(){return B},utcSaturday:function(){return P.g4},utcSaturdays:function(){return P.Q_},utcSecond:function(){return l},utcSeconds:function(){return t},utcSunday:function(){return P.Ox},utcSundays:function(){return P.SU},utcThursday:function(){return P.hB},utcThursdays:function(){return P.xj},utcTuesday:function(){return P.J1},utcTuesdays:function(){return P.DK},utcWednesday:function(){return P.b3},utcWednesdays:function(){return P.uy},utcWeek:function(){return P.Ox},utcWeeks:function(){return P.SU},utcYear:function(){return Y.Z},utcYears:function(){return Y.D}});var w=e(30052),k=(0,w.Z)(function(){},function(D,G){D.setTime(+D+G)},function(D,G){return G-D});k.every=function(D){return D=Math.floor(D),isFinite(D)&&D>0?D>1?(0,w.Z)(function(G){G.setTime(Math.floor(G/D)*D)},function(G,V){G.setTime(+G+V*D)},function(G,V){return(V-G)/D}):k:null};var i=k,_=k.range,y=e(54263),h=(0,w.Z)(function(D){D.setTime(D-D.getMilliseconds())},function(D,G){D.setTime(+D+G*y.Ym)},function(D,G){return(G-D)/y.Ym},function(D){return D.getUTCSeconds()}),l=h,t=h.range,o=(0,w.Z)(function(D){D.setTime(D-D.getMilliseconds()-D.getSeconds()*y.Ym)},function(D,G){D.setTime(+D+G*y.yB)},function(D,G){return(G-D)/y.yB},function(D){return D.getMinutes()}),r=o,n=o.range,a=(0,w.Z)(function(D){D.setTime(D-D.getMilliseconds()-D.getSeconds()*y.Ym-D.getMinutes()*y.yB)},function(D,G){D.setTime(+D+G*y.Y2)},function(D,G){return(G-D)/y.Y2},function(D){return D.getHours()}),s=a,u=a.range,p=e(82301),c=e(59879),b=(0,w.Z)(function(D){D.setDate(1),D.setHours(0,0,0,0)},function(D,G){D.setMonth(D.getMonth()+G)},function(D,G){return G.getMonth()-D.getMonth()+12*(G.getFullYear()-D.getFullYear())},function(D){return D.getMonth()}),g=b,f=b.range,v=e(34823),m=(0,w.Z)(function(D){D.setUTCSeconds(0,0)},function(D,G){D.setTime(+D+G*y.yB)},function(D,G){return(G-D)/y.yB},function(D){return D.getUTCMinutes()}),x=m,T=m.range,d=(0,w.Z)(function(D){D.setUTCMinutes(0,0,0)},function(D,G){D.setTime(+D+G*y.Y2)},function(D,G){return(G-D)/y.Y2},function(D){return D.getUTCHours()}),M=d,A=d.range,C=e(48480),P=e(58176),O=(0,w.Z)(function(D){D.setUTCDate(1),D.setUTCHours(0,0,0,0)},function(D,G){D.setUTCMonth(D.getUTCMonth()+G)},function(D,G){return G.getUTCMonth()-D.getUTCMonth()+12*(G.getUTCFullYear()-D.getUTCFullYear())},function(D){return D.getUTCMonth()}),z=O,B=O.range,Y=e(79791)},30052:function(R,E,e){e.d(E,{Z:function(){return i}});var w=new Date,k=new Date;function i(_,y,h,l){function t(o){return _(o=arguments.length===0?new Date:new Date(+o)),o}return t.floor=function(o){return _(o=new Date(+o)),o},t.ceil=function(o){return _(o=new Date(o-1)),y(o,1),_(o),o},t.round=function(o){var r=t(o),n=t.ceil(o);return o-r<n-o?r:n},t.offset=function(o,r){return y(o=new Date(+o),r==null?1:Math.floor(r)),o},t.range=function(o,r,n){var a,s=[];if(o=t.ceil(o),n=n==null?1:Math.floor(n),!(o<r&&n>0))return s;do s.push(a=new Date(+o)),y(o,n),_(o);while(a<o&&o<r);return s},t.filter=function(o){return i(function(r){if(r>=r)for(;_(r),!o(r);)r.setTime(r-1)},function(r,n){if(r>=r)if(n<0)for(;++n<=0;)for(;y(r,-1),!o(r););else for(;--n>=0;)for(;y(r,1),!o(r););})},h&&(t.count=function(o,r){return w.setTime(+o),k.setTime(+r),_(w),_(k),Math.floor(h(w,k))},t.every=function(o){return o=Math.floor(o),isFinite(o)&&o>0?o>1?t.filter(l?function(r){return l(r)%o==0}:function(r){return t.count(0,r)%o==0}):t:null}),t}},48480:function(R,E,e){e.d(E,{y:function(){return _}});var w=e(30052),k=e(54263),i=(0,w.Z)(function(y){y.setUTCHours(0,0,0,0)},function(y,h){y.setUTCDate(y.getUTCDate()+h)},function(y,h){return(h-y)/k.UD},function(y){return y.getUTCDate()-1});E.Z=i;var _=i.range},58176:function(R,E,e){e.d(E,{$3:function(){return a},DK:function(){return s},J1:function(){return h},Ox:function(){return _},QQ:function(){return o},Q_:function(){return b},SU:function(){return n},b3:function(){return l},fz:function(){return c},g4:function(){return r},hB:function(){return t},l6:function(){return y},uy:function(){return u},xj:function(){return p}});var w=e(30052),k=e(54263);function i(g){return(0,w.Z)(function(f){f.setUTCDate(f.getUTCDate()-(f.getUTCDay()+7-g)%7),f.setUTCHours(0,0,0,0)},function(f,v){f.setUTCDate(f.getUTCDate()+7*v)},function(f,v){return(v-f)/k.iM})}var _=i(0),y=i(1),h=i(2),l=i(3),t=i(4),o=i(5),r=i(6),n=_.range,a=y.range,s=h.range,u=l.range,p=t.range,c=o.range,b=r.range},79791:function(R,E,e){e.d(E,{D:function(){return i}});var w=e(30052),k=(0,w.Z)(function(_){_.setUTCMonth(0,1),_.setUTCHours(0,0,0,0)},function(_,y){_.setUTCFullYear(_.getUTCFullYear()+y)},function(_,y){return y.getUTCFullYear()-_.getUTCFullYear()},function(_){return _.getUTCFullYear()});k.every=function(_){return isFinite(_=Math.floor(_))&&_>0?(0,w.Z)(function(y){y.setUTCFullYear(Math.floor(y.getUTCFullYear()/_)*_),y.setUTCMonth(0,1),y.setUTCHours(0,0,0,0)},function(y,h){y.setUTCFullYear(y.getUTCFullYear()+h*_)}):null},E.Z=k;var i=k.range},59879:function(R,E,e){e.d(E,{$t:function(){return p},EY:function(){return r},Ff:function(){return b},Ld:function(){return u},OM:function(){return _},aU:function(){return s},b$:function(){return c},bJ:function(){return a},bL:function(){return t},mC:function(){return o},sy:function(){return h},vm:function(){return n},wA:function(){return y},zg:function(){return l}});var w=e(30052),k=e(54263);function i(g){return(0,w.Z)(function(f){f.setDate(f.getDate()-(f.getDay()+7-g)%7),f.setHours(0,0,0,0)},function(f,v){f.setDate(f.getDate()+7*v)},function(f,v){return(v-f-(v.getTimezoneOffset()-f.getTimezoneOffset())*k.yB)/k.iM})}var _=i(0),y=i(1),h=i(2),l=i(3),t=i(4),o=i(5),r=i(6),n=_.range,a=y.range,s=h.range,u=l.range,p=t.range,c=o.range,b=r.range},34823:function(R,E,e){e.d(E,{g:function(){return i}});var w=e(30052),k=(0,w.Z)(function(_){_.setMonth(0,1),_.setHours(0,0,0,0)},function(_,y){_.setFullYear(_.getFullYear()+y)},function(_,y){return y.getFullYear()-_.getFullYear()},function(_){return _.getFullYear()});k.every=function(_){return isFinite(_=Math.floor(_))&&_>0?(0,w.Z)(function(y){y.setFullYear(Math.floor(y.getFullYear()/_)*_),y.setMonth(0,1),y.setHours(0,0,0,0)},function(y,h){y.setFullYear(y.getFullYear()+h*_)}):null},E.Z=k;var i=k.range},17045:function(R,E,e){var w=e(8709),k=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",i=Object.prototype.toString,_=Array.prototype.concat,y=Object.defineProperty,h=e(55622)(),l=y&&h,t=function(r,n,a,s){if(n in r){if(s===!0){if(r[n]===a)return}else if(typeof(u=s)!="function"||i.call(u)!=="[object Function]"||!s())return}var u;l?y(r,n,{configurable:!0,enumerable:!1,value:a,writable:!0}):r[n]=a},o=function(r,n){var a=arguments.length>2?arguments[2]:{},s=w(n);k&&(s=_.call(s,Object.getOwnPropertySymbols(n)));for(var u=0;u<s.length;u+=1)t(r,s[u],n[s[u]],a[s[u]])};o.supportsDescriptors=!!l,R.exports=o},46775:function(R){R.exports=function(){for(var E=0;E<arguments.length;E++)if(arguments[E]!==void 0)return arguments[E]}},53545:function(R){R.exports=w;var E=(w.canvas=document.createElement("canvas")).getContext("2d"),e=k([32,126]);function w(i,_){Array.isArray(i)&&(i=i.join(", "));var y,h={},l=16,t=.05;_&&(_.length===2&&typeof _[0]=="number"?y=k(_):Array.isArray(_)?y=_:(_.o?y=k(_.o):_.pairs&&(y=_.pairs),_.fontSize&&(l=_.fontSize),_.threshold!=null&&(t=_.threshold))),y||(y=e),E.font=l+"px "+i;for(var o=0;o<y.length;o++){var r=y[o],n=E.measureText(r[0]).width+E.measureText(r[1]).width,a=E.measureText(r).width;if(Math.abs(n-a)>l*t){var s=(a-n)/l;h[r]=1e3*s}}return h}function k(i){for(var _=[],y=i[0];y<=i[1];y++)for(var h=String.fromCharCode(y),l=i[0];l<i[1];l++){var t=h+String.fromCharCode(l);_.push(t)}return _}w.createPairs=k,w.ascii=e},31457:function(R,E,e){var w=e(65185),k=e(18625),i={M:"moveTo",C:"bezierCurveTo"};R.exports=function(_,y){_.beginPath(),k(w(y)).forEach(function(h){var l=h[0],t=h.slice(1);_[i[l]].apply(_,t)}),_.closePath()}},90660:function(R){R.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}}},12129:function(R){function E(e,w,k){var i=0|e[k];if(i<=0)return[];var _,y=new Array(i);if(k===e.length-1)for(_=0;_<i;++_)y[_]=w;else for(_=0;_<i;++_)y[_]=E(e,w,k+1);return y}R.exports=function(e,w){switch(w===void 0&&(w=0),typeof e){case"number":if(e>0)return function(k,i){var _,y;for(_=new Array(k),y=0;y<k;++y)_[y]=i;return _}(0|e,w);break;case"object":if(typeof e.length=="number")return E(e,w,0)}return[]}},11474:function(R){function E(M,A,C){C=C||2;var P,O,z,B,Y,D,G,V=A&&A.length,j=V?A[0]*C:M.length,W=e(M,0,j,C,!0),Z=[];if(!W||W.next===W.prev)return Z;if(V&&(W=function(te,J,X,ee){var re,oe,ue,ce=[];for(re=0,oe=J.length;re<oe;re++)(ue=e(te,J[re]*ee,re<oe-1?J[re+1]*ee:te.length,ee,!1))===ue.next&&(ue.steiner=!0),ce.push(n(ue));for(ce.sort(l),re=0;re<ce.length;re++)t(ce[re],X),X=w(X,X.next);return X}(M,A,W,C)),M.length>80*C){P=z=M[0],O=B=M[1];for(var ie=C;ie<j;ie+=C)(Y=M[ie])<P&&(P=Y),(D=M[ie+1])<O&&(O=D),Y>z&&(z=Y),D>B&&(B=D);G=(G=Math.max(z-P,B-O))!==0?1/G:0}return k(W,Z,C,P,O,G),Z}function e(M,A,C,P,O){var z,B;if(O===d(M,A,C,P)>0)for(z=A;z<C;z+=P)B=m(z,M[z],M[z+1],B);else for(z=C-P;z>=A;z-=P)B=m(z,M[z],M[z+1],B);return B&&p(B,B.next)&&(x(B),B=B.next),B}function w(M,A){if(!M)return M;A||(A=M);var C,P=M;do if(C=!1,P.steiner||!p(P,P.next)&&u(P.prev,P,P.next)!==0)P=P.next;else{if(x(P),(P=A=P.prev)===P.next)break;C=!0}while(C||P!==A);return A}function k(M,A,C,P,O,z,B){if(M){!B&&z&&function(V,j,W,Z){var ie=V;do ie.z===null&&(ie.z=r(ie.x,ie.y,j,W,Z)),ie.prevZ=ie.prev,ie.nextZ=ie.next,ie=ie.next;while(ie!==V);ie.prevZ.nextZ=null,ie.prevZ=null,function(te){var J,X,ee,re,oe,ue,ce,de,me=1;do{for(X=te,te=null,oe=null,ue=0;X;){for(ue++,ee=X,ce=0,J=0;J<me&&(ce++,ee=ee.nextZ);J++);for(de=me;ce>0||de>0&ⅇ)ce!==0&&(de===0||!ee||X.z<=ee.z)?(re=X,X=X.nextZ,ce--):(re=ee,ee=ee.nextZ,de--),oe?oe.nextZ=re:te=re,re.prevZ=oe,oe=re;X=ee}oe.nextZ=null,me*=2}while(ue>1)}(ie)}(M,P,O,z);for(var Y,D,G=M;M.prev!==M.next;)if(Y=M.prev,D=M.next,z?_(M,P,O,z):i(M))A.push(Y.i/C),A.push(M.i/C),A.push(D.i/C),x(M),M=D.next,G=D.next;else if((M=D)===G){B?B===1?k(M=y(w(M),A,C),A,C,P,O,z,2):B===2&&h(M,A,C,P,O,z):k(w(M),A,C,P,O,z,1);break}}}function i(M){var A=M.prev,C=M,P=M.next;if(u(A,C,P)>=0)return!1;for(var O=M.next.next;O!==M.prev;){if(a(A.x,A.y,C.x,C.y,P.x,P.y,O.x,O.y)&&u(O.prev,O,O.next)>=0)return!1;O=O.next}return!0}function _(M,A,C,P){var O=M.prev,z=M,B=M.next;if(u(O,z,B)>=0)return!1;for(var Y=O.x<z.x?O.x<B.x?O.x:B.x:z.x<B.x?z.x:B.x,D=O.y<z.y?O.y<B.y?O.y:B.y:z.y<B.y?z.y:B.y,G=O.x>z.x?O.x>B.x?O.x:B.x:z.x>B.x?z.x:B.x,V=O.y>z.y?O.y>B.y?O.y:B.y:z.y>B.y?z.y:B.y,j=r(Y,D,A,C,P),W=r(G,V,A,C,P),Z=M.prevZ,ie=M.nextZ;Z&&Z.z>=j&&ie&&ie.z<=W;){if(Z!==M.prev&&Z!==M.next&&a(O.x,O.y,z.x,z.y,B.x,B.y,Z.x,Z.y)&&u(Z.prev,Z,Z.next)>=0||(Z=Z.prevZ,ie!==M.prev&&ie!==M.next&&a(O.x,O.y,z.x,z.y,B.x,B.y,ie.x,ie.y)&&u(ie.prev,ie,ie.next)>=0))return!1;ie=ie.nextZ}for(;Z&&Z.z>=j;){if(Z!==M.prev&&Z!==M.next&&a(O.x,O.y,z.x,z.y,B.x,B.y,Z.x,Z.y)&&u(Z.prev,Z,Z.next)>=0)return!1;Z=Z.prevZ}for(;ie&&ie.z<=W;){if(ie!==M.prev&&ie!==M.next&&a(O.x,O.y,z.x,z.y,B.x,B.y,ie.x,ie.y)&&u(ie.prev,ie,ie.next)>=0)return!1;ie=ie.nextZ}return!0}function y(M,A,C){var P=M;do{var O=P.prev,z=P.next.next;!p(O,z)&&c(O,P,P.next,z)&&f(O,z)&&f(z,O)&&(A.push(O.i/C),A.push(P.i/C),A.push(z.i/C),x(P),x(P.next),P=M=z),P=P.next}while(P!==M);return w(P)}function h(M,A,C,P,O,z){var B=M;do{for(var Y=B.next.next;Y!==B.prev;){if(B.i!==Y.i&&s(B,Y)){var D=v(B,Y);return B=w(B,B.next),D=w(D,D.next),k(B,A,C,P,O,z),void k(D,A,C,P,O,z)}Y=Y.next}B=B.next}while(B!==M)}function l(M,A){return M.x-A.x}function t(M,A){if(A=function(P,O){var z,B=O,Y=P.x,D=P.y,G=-1/0;do{if(D<=B.y&&D>=B.next.y&&B.next.y!==B.y){var V=B.x+(D-B.y)*(B.next.x-B.x)/(B.next.y-B.y);if(V<=Y&&V>G){if(G=V,V===Y){if(D===B.y)return B;if(D===B.next.y)return B.next}z=B.x<B.next.x?B:B.next}}B=B.next}while(B!==O);if(!z)return null;if(Y===G)return z;var j,W=z,Z=z.x,ie=z.y,te=1/0;B=z;do Y>=B.x&&B.x>=Z&&Y!==B.x&&a(D<ie?Y:G,D,Z,ie,D<ie?G:Y,D,B.x,B.y)&&(j=Math.abs(D-B.y)/(Y-B.x),f(B,P)&&(j<te||j===te&&(B.x>z.x||B.x===z.x&&o(z,B)))&&(z=B,te=j)),B=B.next;while(B!==W);return z}(M,A),A){var C=v(A,M);w(A,A.next),w(C,C.next)}}function o(M,A){return u(M.prev,M,A.prev)<0&&u(A.next,M,M.next)<0}function r(M,A,C,P,O){return(M=1431655765&((M=858993459&((M=252645135&((M=16711935&((M=32767*(M-C)*O)|M<<8))|M<<4))|M<<2))|M<<1))|(A=1431655765&((A=858993459&((A=252645135&((A=16711935&((A=32767*(A-P)*O)|A<<8))|A<<4))|A<<2))|A<<1))<<1}function n(M){var A=M,C=M;do(A.x<C.x||A.x===C.x&&A.y<C.y)&&(C=A),A=A.next;while(A!==M);return C}function a(M,A,C,P,O,z,B,Y){return(O-B)*(A-Y)-(M-B)*(z-Y)>=0&&(M-B)*(P-Y)-(C-B)*(A-Y)>=0&&(C-B)*(z-Y)-(O-B)*(P-Y)>=0}function s(M,A){return M.next.i!==A.i&&M.prev.i!==A.i&&!function(C,P){var O=C;do{if(O.i!==C.i&&O.next.i!==C.i&&O.i!==P.i&&O.next.i!==P.i&&c(O,O.next,C,P))return!0;O=O.next}while(O!==C);return!1}(M,A)&&(f(M,A)&&f(A,M)&&function(C,P){var O=C,z=!1,B=(C.x+P.x)/2,Y=(C.y+P.y)/2;do O.y>Y!=O.next.y>Y&&O.next.y!==O.y&&B<(O.next.x-O.x)*(Y-O.y)/(O.next.y-O.y)+O.x&&(z=!z),O=O.next;while(O!==C);return z}(M,A)&&(u(M.prev,M,A.prev)||u(M,A.prev,A))||p(M,A)&&u(M.prev,M,M.next)>0&&u(A.prev,A,A.next)>0)}function u(M,A,C){return(A.y-M.y)*(C.x-A.x)-(A.x-M.x)*(C.y-A.y)}function p(M,A){return M.x===A.x&&M.y===A.y}function c(M,A,C,P){var O=g(u(M,A,C)),z=g(u(M,A,P)),B=g(u(C,P,M)),Y=g(u(C,P,A));return O!==z&&B!==Y||!(O!==0||!b(M,C,A))||!(z!==0||!b(M,P,A))||!(B!==0||!b(C,M,P))||!(Y!==0||!b(C,A,P))}function b(M,A,C){return A.x<=Math.max(M.x,C.x)&&A.x>=Math.min(M.x,C.x)&&A.y<=Math.max(M.y,C.y)&&A.y>=Math.min(M.y,C.y)}function g(M){return M>0?1:M<0?-1:0}function f(M,A){return u(M.prev,M,M.next)<0?u(M,A,M.next)>=0&&u(M,M.prev,A)>=0:u(M,A,M.prev)<0||u(M,M.next,A)<0}function v(M,A){var C=new T(M.i,M.x,M.y),P=new T(A.i,A.x,A.y),O=M.next,z=A.prev;return M.next=A,A.prev=M,C.next=O,O.prev=C,P.next=C,C.prev=P,z.next=P,P.prev=z,P}function m(M,A,C,P){var O=new T(M,A,C);return P?(O.next=P.next,O.prev=P,P.next.prev=O,P.next=O):(O.prev=O,O.next=O),O}function x(M){M.next.prev=M.prev,M.prev.next=M.next,M.prevZ&&(M.prevZ.nextZ=M.nextZ),M.nextZ&&(M.nextZ.prevZ=M.prevZ)}function T(M,A,C){this.i=M,this.x=A,this.y=C,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function d(M,A,C,P){for(var O=0,z=A,B=C-P;z<C;z+=P)O+=(M[B]-M[z])*(M[z+1]+M[B+1]),B=z;return O}R.exports=E,R.exports.default=E,E.deviation=function(M,A,C,P){var O=A&&A.length,z=O?A[0]*C:M.length,B=Math.abs(d(M,0,z,C));if(O)for(var Y=0,D=A.length;Y<D;Y++){var G=A[Y]*C,V=Y<D-1?A[Y+1]*C:M.length;B-=Math.abs(d(M,G,V,C))}var j=0;for(Y=0;Y<P.length;Y+=3){var W=P[Y]*C,Z=P[Y+1]*C,ie=P[Y+2]*C;j+=Math.abs((M[W]-M[ie])*(M[Z+1]-M[W+1])-(M[W]-M[Z])*(M[ie+1]-M[W+1]))}return B===0&&j===0?0:Math.abs((j-B)/B)},E.flatten=function(M){for(var A=M[0][0].length,C={vertices:[],holes:[],dimensions:A},P=0,O=0;O<M.length;O++){for(var z=0;z<M[O].length;z++)for(var B=0;B<A;B++)C.vertices.push(M[O][z][B]);O>0&&(P+=M[O-1].length,C.holes.push(P))}return C}},2502:function(R,E,e){var w=e(68664);R.exports=function(k,i){var _,y=[],h=[],l=[],t={},o=[];function r(f){l[f]=!1,t.hasOwnProperty(f)&&Object.keys(t[f]).forEach(function(v){delete t[f][v],l[v]&&r(v)})}function n(f){var v,m,x=!1;for(h.push(f),l[f]=!0,v=0;v<o[f].length;v++)(m=o[f][v])===_?(a(_,h),x=!0):l[m]||(x=n(m));if(x)r(f);else for(v=0;v<o[f].length;v++){m=o[f][v];var T=t[m];T||(T={},t[m]=T),T[m]=!0}return h.pop(),x}function a(f,v){var m=[].concat(v).concat(f);i?i(n):y.push(m)}function s(f){(function(C){for(var P=0;P<k.length;P++)P<C&&(k[P]=[]),k[P]=k[P].filter(function(O){return O>=C})})(f);for(var v,m=w(k).components.filter(function(C){return C.length>1}),x=1/0,T=0;T<m.length;T++)for(var d=0;d<m[T].length;d++)m[T][d]<x&&(x=m[T][d],v=T);var M=m[v];if(!M)return!1;var A=k.map(function(C,P){return M.indexOf(P)===-1?[]:C.filter(function(O){return M.indexOf(O)!==-1})});return{leastVertex:x,adjList:A}}_=0;for(var u=k.length;_<u;){var p=s(_);if(_=p.leastVertex,o=p.adjList){for(var c=0;c<o.length;c++)for(var b=0;b<o[c].length;b++){var g=o[c][b];l[+g]=!1,t[g]={}}n(_),_+=1}else _=u}return i?void 0:y}},16134:function(R,E,e){var w=e(36672);R.exports=function(){return w(this).length=0,this}},4892:function(R,E,e){R.exports=e(64404)()?Array.from:e(49441)},64404:function(R){R.exports=function(){var E,e,w=Array.from;return typeof w=="function"&&(e=w(E=["raz","dwa"]),!!(e&&e!==E&&e[1]==="dwa"))}},49441:function(R,E,e){var w=e(8260).iterator,k=e(73051),i=e(33717),_=e(35976),y=e(78513),h=e(36672),l=e(95296),t=e(87963),o=Array.isArray,r=Function.prototype.call,n={configurable:!0,enumerable:!0,writable:!0,value:null},a=Object.defineProperty;R.exports=function(s){var u,p,c,b,g,f,v,m,x,T,d=arguments[1],M=arguments[2];if(s=Object(h(s)),l(d)&&y(d),this&&this!==Array&&i(this))u=this;else{if(!d){if(k(s))return(g=s.length)!==1?Array.apply(null,s):((b=new Array(1))[0]=s[0],b);if(o(s)){for(b=new Array(g=s.length),p=0;p<g;++p)b[p]=s[p];return b}}b=[]}if(!o(s)){if((x=s[w])!==void 0){for(v=y(x).call(s),u&&(b=new u),m=v.next(),p=0;!m.done;)T=d?r.call(d,M,m.value,p):m.value,u?(n.value=T,a(b,p,n)):b[p]=T,m=v.next(),++p;g=p}else if(t(s)){for(g=s.length,u&&(b=new u),p=0,c=0;p<g;++p)T=s[p],p+1<g&&(f=T.charCodeAt(0))>=55296&&f<=56319&&(T+=s[++p]),T=d?r.call(d,M,T,c):T,u?(n.value=T,a(b,c,n)):b[c]=T,++c;g=c}}if(g===void 0)for(g=_(s.length),u&&(b=new u(g)),p=0;p<g;++p)T=d?r.call(d,M,s[p],p):s[p],u?(n.value=T,a(b,p,n)):b[p]=T;return u&&(n.value=null,b.length=g),b}},73051:function(R){var E=Object.prototype.toString,e=E.call(function(){return arguments}());R.exports=function(w){return E.call(w)===e}},33717:function(R){var E=Object.prototype.toString,e=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);R.exports=function(w){return typeof w=="function"&&e(E.call(w))}},52345:function(R){R.exports=function(){}},9953:function(R,E,e){R.exports=e(90436)()?Math.sign:e(6069)},90436:function(R){R.exports=function(){var E=Math.sign;return typeof E=="function"&&E(10)===1&&E(-20)===-1}},6069:function(R){R.exports=function(E){return E=Number(E),isNaN(E)||E===0?E:E>0?1:-1}},56247:function(R,E,e){var w=e(9953),k=Math.abs,i=Math.floor;R.exports=function(_){return isNaN(_)?0:(_=Number(_))!==0&&isFinite(_)?w(_)*i(k(_)):_}},35976:function(R,E,e){var w=e(56247),k=Math.max;R.exports=function(i){return k(0,w(i))}},67260:function(R,E,e){var w=e(78513),k=e(36672),i=Function.prototype.bind,_=Function.prototype.call,y=Object.keys,h=Object.prototype.propertyIsEnumerable;R.exports=function(l,t){return function(o,r){var n,a=arguments[2],s=arguments[3];return o=Object(k(o)),w(r),n=y(o),s&&n.sort(typeof s=="function"?i.call(s,o):void 0),typeof l!="function"&&(l=n[l]),_.call(l,n,function(u,p){return h.call(o,u)?_.call(r,a,o[u],u,o,p):t})}}},95879:function(R,E,e){R.exports=e(73583)()?Object.assign:e(34205)},73583:function(R){R.exports=function(){var E,e=Object.assign;return typeof e=="function"&&(e(E={foo:"raz"},{bar:"dwa"},{trzy:"trzy"}),E.foo+E.bar+E.trzy==="razdwatrzy")}},34205:function(R,E,e){var w=e(68700),k=e(36672),i=Math.max;R.exports=function(_,y){var h,l,t,o=i(arguments.length,2);for(_=Object(k(_)),t=function(r){try{_[r]=y[r]}catch(n){h||(h=n)}},l=1;l<o;++l)w(y=arguments[l]).forEach(t);if(h!==void 0)throw h;return _}},19012:function(R,E,e){var w=e(4892),k=e(95879),i=e(36672);R.exports=function(_){var y=Object(i(_)),h=arguments[1],l=Object(arguments[2]);if(y!==_&&!h)return y;var t={};return h?w(h,function(o){(l.ensure||o in _)&&(t[o]=_[o])}):k(t,_),t}},52818:function(R,E,e){var w,k,i,_,y=Object.create;e(33247)()||(w=e(51882)),R.exports=w?w.level!==1?y:(k={},i={},_={configurable:!1,enumerable:!1,writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(h){i[h]=h!=="__proto__"?_:{configurable:!0,enumerable:!1,writable:!0,value:void 0}}),Object.defineProperties(k,i),Object.defineProperty(w,"nullPolyfill",{configurable:!1,enumerable:!1,writable:!1,value:k}),function(h,l){return y(h===null?k:h,l)}):y},96437:function(R,E,e){R.exports=e(67260)("forEach")},99611:function(R,E,e){var w=e(95296),k={function:!0,object:!0};R.exports=function(i){return w(i)&&k[typeof i]||!1}},95296:function(R,E,e){var w=e(52345)();R.exports=function(k){return k!==w&&k!==null}},68700:function(R,E,e){R.exports=e(13895)()?Object.keys:e(25217)},13895:function(R){R.exports=function(){try{return Object.keys("primitive"),!0}catch{return!1}}},25217:function(R,E,e){var w=e(95296),k=Object.keys;R.exports=function(i){return k(w(i)?Object(i):i)}},16906:function(R,E,e){var w=e(78513),k=e(96437),i=Function.prototype.call;R.exports=function(_,y){var h={},l=arguments[2];return w(y),k(_,function(t,o,r,n){h[o]=i.call(y,l,t,o,r,n)}),h}},21780:function(R,E,e){var w=e(95296),k=Array.prototype.forEach,i=Object.create;R.exports=function(_){var y=i(null);return k.call(arguments,function(h){w(h)&&function(l,t){var o;for(o in l)t[o]=l[o]}(Object(h),y)}),y}},1496:function(R,E,e){R.exports=e(33247)()?Object.setPrototypeOf:e(51882)},33247:function(R){var E=Object.create,e=Object.getPrototypeOf,w={};R.exports=function(){var k=Object.setPrototypeOf;return typeof k=="function"&&e(k((arguments[0]||E)(null),w))===w}},51882:function(R,E,e){var w,k,i,_,y=e(99611),h=e(36672),l=Object.prototype.isPrototypeOf,t=Object.defineProperty,o={configurable:!0,enumerable:!1,writable:!0,value:void 0};w=function(r,n){if(h(r),n===null||y(n))return r;throw new TypeError("Prototype must be null or an object")},R.exports=(k=function(){var r,n=Object.create(null),a={},s=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__");if(s){try{(r=s.set).call(n,a)}catch{}if(Object.getPrototypeOf(n)===a)return{set:r,level:2}}return n.__proto__=a,Object.getPrototypeOf(n)===a?{level:2}:((n={}).__proto__=a,Object.getPrototypeOf(n)===a&&{level:1})}(),k?(k.level===2?k.set?(_=k.set,i=function(r,n){return _.call(w(r,n),n),r}):i=function(r,n){return w(r,n).__proto__=n,r}:i=function r(n,a){var s;return w(n,a),(s=l.call(r.nullPolyfill,n))&&delete r.nullPolyfill.__proto__,a===null&&(a=r.nullPolyfill),n.__proto__=a,s&&t(r.nullPolyfill,"__proto__",o),n},Object.defineProperty(i,"level",{configurable:!1,enumerable:!1,writable:!1,value:k.level})):null),e(52818)},78513:function(R){R.exports=function(E){if(typeof E!="function")throw new TypeError(E+" is not a function");return E}},98976:function(R,E,e){var w=e(99611);R.exports=function(k){if(!w(k))throw new TypeError(k+" is not an Object");return k}},36672:function(R,E,e){var w=e(95296);R.exports=function(k){if(!w(k))throw new TypeError("Cannot use null or undefined");return k}},66741:function(R,E,e){R.exports=e(17557)()?String.prototype.contains:e(60381)},17557:function(R){var E="razdwatrzy";R.exports=function(){return typeof E.contains=="function"&&E.contains("dwa")===!0&&E.contains("foo")===!1}},60381:function(R){var E=String.prototype.indexOf;R.exports=function(e){return E.call(this,e,arguments[1])>-1}},87963:function(R){var E=Object.prototype.toString,e=E.call("");R.exports=function(w){return typeof w=="string"||w&&typeof w=="object"&&(w instanceof String||E.call(w)===e)||!1}},43043:function(R){var E=Object.create(null),e=Math.random;R.exports=function(){var w;do w=e().toString(36).slice(2);while(E[w]);return w}},32411:function(R,E,e){var w,k=e(1496),i=e(66741),_=e(62072),y=e(8260),h=e(95426),l=Object.defineProperty;w=R.exports=function(t,o){if(!(this instanceof w))throw new TypeError("Constructor requires 'new'");h.call(this,t),o=o?i.call(o,"key+value")?"key+value":i.call(o,"key")?"key":"value":"value",l(this,"__kind__",_("",o))},k&&k(w,h),delete w.prototype.constructor,w.prototype=Object.create(h.prototype,{_resolve:_(function(t){return this.__kind__==="value"?this.__list__[t]:this.__kind__==="key+value"?[t,this.__list__[t]]:t})}),l(w.prototype,y.toStringTag,_("c","Array Iterator"))},27515:function(R,E,e){var w=e(73051),k=e(78513),i=e(87963),_=e(66661),y=Array.isArray,h=Function.prototype.call,l=Array.prototype.some;R.exports=function(t,o){var r,n,a,s,u,p,c,b,g=arguments[2];if(y(t)||w(t)?r="array":i(t)?r="string":t=_(t),k(o),a=function(){s=!0},r!=="array")if(r!=="string")for(n=t.next();!n.done;){if(h.call(o,g,n.value,a),s)return;n=t.next()}else for(p=t.length,u=0;u<p&&(c=t[u],u+1<p&&(b=c.charCodeAt(0))>=55296&&b<=56319&&(c+=t[++u]),h.call(o,g,c,a),!s);++u);else l.call(t,function(f){return h.call(o,g,f,a),s})}},66661:function(R,E,e){var w=e(73051),k=e(87963),i=e(32411),_=e(259),y=e(58095),h=e(8260).iterator;R.exports=function(l){return typeof y(l)[h]=="function"?l[h]():w(l)?new i(l):k(l)?new _(l):new i(l)}},95426:function(R,E,e){var w,k=e(16134),i=e(95879),_=e(78513),y=e(36672),h=e(62072),l=e(55174),t=e(8260),o=Object.defineProperty,r=Object.defineProperties;R.exports=w=function(n,a){if(!(this instanceof w))throw new TypeError("Constructor requires 'new'");r(this,{__list__:h("w",y(n)),__context__:h("w",a),__nextIndex__:h("w",0)}),a&&(_(a.on),a.on("_add",this._onAdd),a.on("_delete",this._onDelete),a.on("_clear",this._onClear))},delete w.prototype.constructor,r(w.prototype,i({_next:h(function(){var n;if(this.__list__)return this.__redo__&&(n=this.__redo__.shift())!==void 0?n:this.__nextIndex__<this.__list__.length?this.__nextIndex__++:void this._unBind()}),next:h(function(){return this._createResult(this._next())}),_createResult:h(function(n){return n===void 0?{done:!0,value:void 0}:{done:!1,value:this._resolve(n)}}),_resolve:h(function(n){return this.__list__[n]}),_unBind:h(function(){this.__list__=null,delete this.__redo__,this.__context__&&(this.__context__.off("_add",this._onAdd),this.__context__.off("_delete",this._onDelete),this.__context__.off("_clear",this._onClear),this.__context__=null)}),toString:h(function(){return"[object "+(this[t.toStringTag]||"Object")+"]"})},l({_onAdd:h(function(n){n>=this.__nextIndex__||(++this.__nextIndex__,this.__redo__?(this.__redo__.forEach(function(a,s){a>=n&&(this.__redo__[s]=++a)},this),this.__redo__.push(n)):o(this,"__redo__",h("c",[n])))}),_onDelete:h(function(n){var a;n>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&((a=this.__redo__.indexOf(n))!==-1&&this.__redo__.splice(a,1),this.__redo__.forEach(function(s,u){s>n&&(this.__redo__[u]=--s)},this)))}),_onClear:h(function(){this.__redo__&&k.call(this.__redo__),this.__nextIndex__=0})}))),o(w.prototype,t.iterator,h(function(){return this}))},35940:function(R,E,e){var w=e(73051),k=e(95296),i=e(87963),_=e(8260).iterator,y=Array.isArray;R.exports=function(h){return!(!k(h)||!y(h)&&!i(h)&&!w(h)&&typeof h[_]!="function")}},259:function(R,E,e){var w,k=e(1496),i=e(62072),_=e(8260),y=e(95426),h=Object.defineProperty;w=R.exports=function(l){if(!(this instanceof w))throw new TypeError("Constructor requires 'new'");l=String(l),y.call(this,l),h(this,"__length__",i("",l.length))},k&&k(w,y),delete w.prototype.constructor,w.prototype=Object.create(y.prototype,{_next:i(function(){if(this.__list__)return this.__nextIndex__<this.__length__?this.__nextIndex__++:void this._unBind()}),_resolve:i(function(l){var t,o=this.__list__[l];return this.__nextIndex__===this.__length__?o:(t=o.charCodeAt(0))>=55296&&t<=56319?o+this.__list__[this.__nextIndex__++]:o})}),h(w.prototype,_.toStringTag,i("c","String Iterator"))},58095:function(R,E,e){var w=e(35940);R.exports=function(k){if(!w(k))throw new TypeError(k+" is not iterable");return k}},73523:function(R){function E(e,w){if(e==null)throw new TypeError("Cannot convert first argument to object");for(var k=Object(e),i=1;i<arguments.length;i++){var _=arguments[i];if(_!=null)for(var y=Object.keys(Object(_)),h=0,l=y.length;h<l;h++){var t=y[h],o=Object.getOwnPropertyDescriptor(_,t);o!==void 0&&o.enumerable&&(k[t]=_[t])}}return k}R.exports={assign:E,polyfill:function(){Object.assign||Object.defineProperty(Object,"assign",{enumerable:!1,configurable:!0,writable:!0,value:E})}}},8260:function(R,E,e){R.exports=e(69711)()?e(94908).Symbol:e(18415)},69711:function(R,E,e){var w=e(94908),k={object:!0,symbol:!0};R.exports=function(){var i,_=w.Symbol;if(typeof _!="function")return!1;i=_("test symbol");try{String(i)}catch{return!1}return!!k[typeof _.iterator]&&!!k[typeof _.toPrimitive]&&!!k[typeof _.toStringTag]}},82276:function(R){R.exports=function(E){return!!E&&(typeof E=="symbol"||!!E.constructor&&E.constructor.name==="Symbol"&&E[E.constructor.toStringTag]==="Symbol")}},29366:function(R,E,e){var w=e(62072),k=Object.create,i=Object.defineProperty,_=Object.prototype,y=k(null);R.exports=function(h){for(var l,t,o=0;y[h+(o||"")];)++o;return y[h+=o||""]=!0,i(_,l="@@"+h,w.gs(null,function(r){t||(t=!0,i(this,l,w(r)),t=!1)})),l}},92842:function(R,E,e){var w=e(62072),k=e(94908).Symbol;R.exports=function(i){return Object.defineProperties(i,{hasInstance:w("",k&&k.hasInstance||i("hasInstance")),isConcatSpreadable:w("",k&&k.isConcatSpreadable||i("isConcatSpreadable")),iterator:w("",k&&k.iterator||i("iterator")),match:w("",k&&k.match||i("match")),replace:w("",k&&k.replace||i("replace")),search:w("",k&&k.search||i("search")),species:w("",k&&k.species||i("species")),split:w("",k&&k.split||i("split")),toPrimitive:w("",k&&k.toPrimitive||i("toPrimitive")),toStringTag:w("",k&&k.toStringTag||i("toStringTag")),unscopables:w("",k&&k.unscopables||i("unscopables"))})}},13304:function(R,E,e){var w=e(62072),k=e(53308),i=Object.create(null);R.exports=function(_){return Object.defineProperties(_,{for:w(function(y){return i[y]?i[y]:i[y]=_(String(y))}),keyFor:w(function(y){var h;for(h in k(y),i)if(i[h]===y)return h})})}},18415:function(R,E,e){var w,k,i,_=e(62072),y=e(53308),h=e(94908).Symbol,l=e(29366),t=e(92842),o=e(13304),r=Object.create,n=Object.defineProperties,a=Object.defineProperty;if(typeof h=="function")try{String(h()),i=!0}catch{}else h=null;k=function(s){if(this instanceof k)throw new TypeError("Symbol is not a constructor");return w(s)},R.exports=w=function s(u){var p;if(this instanceof s)throw new TypeError("Symbol is not a constructor");return i?h(u):(p=r(k.prototype),u=u===void 0?"":String(u),n(p,{__description__:_("",u),__name__:_("",l(u))}))},t(w),o(w),n(k.prototype,{constructor:_(w),toString:_("",function(){return this.__name__})}),n(w.prototype,{toString:_(function(){return"Symbol ("+y(this).__description__+")"}),valueOf:_(function(){return y(this)})}),a(w.prototype,w.toPrimitive,_("",function(){var s=y(this);return typeof s=="symbol"?s:s.toString()})),a(w.prototype,w.toStringTag,_("c","Symbol")),a(k.prototype,w.toStringTag,_("c",w.prototype[w.toStringTag])),a(k.prototype,w.toPrimitive,_("c",w.prototype[w.toPrimitive]))},53308:function(R,E,e){var w=e(82276);R.exports=function(k){if(!w(k))throw new TypeError(k+" is not a symbol");return k}},83522:function(R,E,e){R.exports=e(96402)()?WeakMap:e(329)},96402:function(R){R.exports=function(){var E,e;if(typeof WeakMap!="function")return!1;try{E=new WeakMap([[e={},"one"],[{},"two"],[{},"three"]])}catch{return!1}return String(E)==="[object WeakMap]"&&typeof E.set=="function"&&E.set({},1)===E&&typeof E.delete=="function"&&typeof E.has=="function"&&E.get(e)==="one"}},96416:function(R){R.exports=typeof WeakMap=="function"&&Object.prototype.toString.call(new WeakMap)==="[object WeakMap]"},329:function(R,E,e){var w,k=e(95296),i=e(1496),_=e(98976),y=e(36672),h=e(43043),l=e(62072),t=e(66661),o=e(27515),r=e(8260).toStringTag,n=e(96416),a=Array.isArray,s=Object.defineProperty,u=Object.prototype.hasOwnProperty,p=Object.getPrototypeOf;R.exports=w=function(){var c,b=arguments[0];if(!(this instanceof w))throw new TypeError("Constructor requires 'new'");return c=n&&i&&WeakMap!==w?i(new WeakMap,p(this)):this,k(b)&&(a(b)||(b=t(b))),s(c,"__weakMapData__",l("c","$weakMap$"+h())),b&&o(b,function(g){y(g),c.set(g[0],g[1])}),c},n&&(i&&i(w,WeakMap),w.prototype=Object.create(WeakMap.prototype,{constructor:l(w)})),Object.defineProperties(w.prototype,{delete:l(function(c){return!!u.call(_(c),this.__weakMapData__)&&(delete c[this.__weakMapData__],!0)}),get:l(function(c){if(u.call(_(c),this.__weakMapData__))return c[this.__weakMapData__]}),has:l(function(c){return u.call(_(c),this.__weakMapData__)}),set:l(function(c,b){return s(_(c),this.__weakMapData__,l("c",b)),this}),toString:l(function(){return"[object WeakMap]"})}),s(w.prototype,r,l("c","WeakMap"))},15398:function(R){var E,e=typeof Reflect=="object"?Reflect:null,w=e&&typeof e.apply=="function"?e.apply:function(u,p,c){return Function.prototype.apply.call(u,p,c)};E=e&&typeof e.ownKeys=="function"?e.ownKeys:Object.getOwnPropertySymbols?function(u){return Object.getOwnPropertyNames(u).concat(Object.getOwnPropertySymbols(u))}:function(u){return Object.getOwnPropertyNames(u)};var k=Number.isNaN||function(u){return u!=u};function i(){i.init.call(this)}R.exports=i,R.exports.once=function(u,p){return new Promise(function(c,b){function g(v){u.removeListener(p,f),b(v)}function f(){typeof u.removeListener=="function"&&u.removeListener("error",g),c([].slice.call(arguments))}s(u,p,f,{once:!0}),p!=="error"&&function(v,m,x){typeof v.on=="function"&&s(v,"error",m,{once:!0})}(u,g)})},i.EventEmitter=i,i.prototype._events=void 0,i.prototype._eventsCount=0,i.prototype._maxListeners=void 0;var _=10;function y(u){if(typeof u!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof u)}function h(u){return u._maxListeners===void 0?i.defaultMaxListeners:u._maxListeners}function l(u,p,c,b){var g,f,v,m;if(y(c),(f=u._events)===void 0?(f=u._events=Object.create(null),u._eventsCount=0):(f.newListener!==void 0&&(u.emit("newListener",p,c.listener?c.listener:c),f=u._events),v=f[p]),v===void 0)v=f[p]=c,++u._eventsCount;else if(typeof v=="function"?v=f[p]=b?[c,v]:[v,c]:b?v.unshift(c):v.push(c),(g=h(u))>0&&v.length>g&&!v.warned){v.warned=!0;var x=new Error("Possible EventEmitter memory leak detected. "+v.length+" "+String(p)+" listeners added. Use emitter.setMaxListeners() to increase limit");x.name="MaxListenersExceededWarning",x.emitter=u,x.type=p,x.count=v.length,m=x,console&&console.warn&&console.warn(m)}return u}function t(){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 o(u,p,c){var b={fired:!1,wrapFn:void 0,target:u,type:p,listener:c},g=t.bind(b);return g.listener=c,b.wrapFn=g,g}function r(u,p,c){var b=u._events;if(b===void 0)return[];var g=b[p];return g===void 0?[]:typeof g=="function"?c?[g.listener||g]:[g]:c?function(f){for(var v=new Array(f.length),m=0;m<v.length;++m)v[m]=f[m].listener||f[m];return v}(g):a(g,g.length)}function n(u){var p=this._events;if(p!==void 0){var c=p[u];if(typeof c=="function")return 1;if(c!==void 0)return c.length}return 0}function a(u,p){for(var c=new Array(p),b=0;b<p;++b)c[b]=u[b];return c}function s(u,p,c,b){if(typeof u.on=="function")b.once?u.once(p,c):u.on(p,c);else{if(typeof u.addEventListener!="function")throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof u);u.addEventListener(p,function g(f){b.once&&u.removeEventListener(p,g),c(f)})}}Object.defineProperty(i,"defaultMaxListeners",{enumerable:!0,get:function(){return _},set:function(u){if(typeof u!="number"||u<0||k(u))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+u+".");_=u}}),i.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},i.prototype.setMaxListeners=function(u){if(typeof u!="number"||u<0||k(u))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+u+".");return this._maxListeners=u,this},i.prototype.getMaxListeners=function(){return h(this)},i.prototype.emit=function(u){for(var p=[],c=1;c<arguments.length;c++)p.push(arguments[c]);var b=u==="error",g=this._events;if(g!==void 0)b=b&&g.error===void 0;else if(!b)return!1;if(b){var f;if(p.length>0&&(f=p[0]),f instanceof Error)throw f;var v=new Error("Unhandled error."+(f?" ("+f.message+")":""));throw v.context=f,v}var m=g[u];if(m===void 0)return!1;if(typeof m=="function")w(m,this,p);else{var x=m.length,T=a(m,x);for(c=0;c<x;++c)w(T[c],this,p)}return!0},i.prototype.addListener=function(u,p){return l(this,u,p,!1)},i.prototype.on=i.prototype.addListener,i.prototype.prependListener=function(u,p){return l(this,u,p,!0)},i.prototype.once=function(u,p){return y(p),this.on(u,o(this,u,p)),this},i.prototype.prependOnceListener=function(u,p){return y(p),this.prependListener(u,o(this,u,p)),this},i.prototype.removeListener=function(u,p){var c,b,g,f,v;if(y(p),(b=this._events)===void 0)return this;if((c=b[u])===void 0)return this;if(c===p||c.listener===p)--this._eventsCount==0?this._events=Object.create(null):(delete b[u],b.removeListener&&this.emit("removeListener",u,c.listener||p));else if(typeof c!="function"){for(g=-1,f=c.length-1;f>=0;f--)if(c[f]===p||c[f].listener===p){v=c[f].listener,g=f;break}if(g<0)return this;g===0?c.shift():function(m,x){for(;x+1<m.length;x++)m[x]=m[x+1];m.pop()}(c,g),c.length===1&&(b[u]=c[0]),b.removeListener!==void 0&&this.emit("removeListener",u,v||p)}return this},i.prototype.off=i.prototype.removeListener,i.prototype.removeAllListeners=function(u){var p,c,b;if((c=this._events)===void 0)return this;if(c.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):c[u]!==void 0&&(--this._eventsCount==0?this._events=Object.create(null):delete c[u]),this;if(arguments.length===0){var g,f=Object.keys(c);for(b=0;b<f.length;++b)(g=f[b])!=="removeListener"&&this.removeAllListeners(g);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(typeof(p=c[u])=="function")this.removeListener(u,p);else if(p!==void 0)for(b=p.length-1;b>=0;b--)this.removeListener(u,p[b]);return this},i.prototype.listeners=function(u){return r(this,u,!0)},i.prototype.rawListeners=function(u){return r(this,u,!1)},i.listenerCount=function(u,p){return typeof u.listenerCount=="function"?u.listenerCount(p):n.call(u,p)},i.prototype.listenerCount=n,i.prototype.eventNames=function(){return this._eventsCount>0?E(this._events):[]}},60774:function(R){var E=function(){if(typeof self=="object"&&self)return self;if(typeof window=="object"&&window)return window;throw new Error("Unable to resolve global `this`")};R.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch{return E()}try{return __global__||E()}finally{delete Object.prototype.__global__}}()},94908:function(R,E,e){R.exports=e(51152)()?globalThis:e(60774)},51152:function(R){R.exports=function(){return typeof globalThis=="object"&&!!globalThis&&globalThis.Array===Array}},92770:function(R,E,e){var w=e(18546);R.exports=function(k){var i=typeof k;if(i==="string"){var _=k;if((k=+k)==0&&w(_))return!1}else if(i!=="number")return!1;return k-k<1}},30120:function(R,E,e){var w=e(90660);R.exports=function(k,i,_){if(!k)throw new TypeError("must specify data as first parameter");if(_=0|+(_||0),Array.isArray(k)&&k[0]&&typeof k[0][0]=="number"){var y,h,l,t,o=k[0].length,r=k.length*o;i&&typeof i!="string"||(i=new(w(i||"float32"))(r+_));var n=i.length-_;if(r!==n)throw new Error("source length "+r+" ("+o+"x"+k.length+") does not match destination length "+n);for(y=0,l=_;y<k.length;y++)for(h=0;h<o;h++)i[l++]=k[y][h]===null?NaN:k[y][h]}else if(i&&typeof i!="string")i.set(k,_);else{var a=w(i||"float32");if(Array.isArray(k)||i==="array")for(y=0,l=_,t=(i=new a(k.length+_)).length;l<t;l++,y++)i[l]=k[y]===null?NaN:k[y];else _===0?i=new a(k):(i=new a(k.length+_)).set(k,_)}return i}},68016:function(R,E,e){var w=e(53313),k=[32,126];R.exports=function(i){var _=(i=i||{}).shape?i.shape:i.canvas?[i.canvas.width,i.canvas.height]:[512,512],y=i.canvas||document.createElement("canvas"),h=i.font,l=typeof i.step=="number"?[i.step,i.step]:i.step||[32,32],t=i.chars||k;if(h&&typeof h!="string"&&(h=w(h)),Array.isArray(t)){if(t.length===2&&typeof t[0]=="number"&&typeof t[1]=="number"){for(var o=[],r=t[0],n=0;r<=t[1];r++)o[n++]=String.fromCharCode(r);t=o}}else t=String(t).split("");_=_.slice(),y.width=_[0],y.height=_[1];var a=y.getContext("2d");a.fillStyle="#000",a.fillRect(0,0,y.width,y.height),a.font=h,a.textAlign="center",a.textBaseline="middle",a.fillStyle="#fff";var s=l[0]/2,u=l[1]/2;for(r=0;r<t.length;r++)a.fillText(t[r],s,u),(s+=l[0])>_[0]-l[0]/2&&(s=l[0]/2,u+=l[1]);return y}},32879:function(R){function E(i,_){_||(_={}),(typeof i=="string"||Array.isArray(i))&&(_.family=i);var y=Array.isArray(_.family)?_.family.join(", "):_.family;if(!y)throw Error("`family` must be defined");var h=_.size||_.fontSize||_.em||48,l=_.weight||_.fontWeight||"",t=(i=[_.style||_.fontStyle||"",l,h].join(" ")+"px "+y,_.origin||"top");if(E.cache[y]&&h<=E.cache[y].em)return e(E.cache[y],t);var o=_.canvas||E.canvas,r=o.getContext("2d"),n={upper:_.upper!==void 0?_.upper:"H",lower:_.lower!==void 0?_.lower:"x",descent:_.descent!==void 0?_.descent:"p",ascent:_.ascent!==void 0?_.ascent:"h",tittle:_.tittle!==void 0?_.tittle:"i",overshoot:_.overshoot!==void 0?_.overshoot:"O"},a=Math.ceil(1.5*h);o.height=a,o.width=.5*a,r.font=i;var s="H",u={top:0};r.clearRect(0,0,a,a),r.textBaseline="top",r.fillStyle="black",r.fillText(s,0,0);var p=w(r.getImageData(0,0,a,a));r.clearRect(0,0,a,a),r.textBaseline="bottom",r.fillText(s,0,a);var c=w(r.getImageData(0,0,a,a));u.lineHeight=u.bottom=a-c+p,r.clearRect(0,0,a,a),r.textBaseline="alphabetic",r.fillText(s,0,a);var b=a-w(r.getImageData(0,0,a,a))-1+p;u.baseline=u.alphabetic=b,r.clearRect(0,0,a,a),r.textBaseline="middle",r.fillText(s,0,.5*a);var g=w(r.getImageData(0,0,a,a));u.median=u.middle=a-g-1+p-.5*a,r.clearRect(0,0,a,a),r.textBaseline="hanging",r.fillText(s,0,.5*a);var f=w(r.getImageData(0,0,a,a));u.hanging=a-f-1+p-.5*a,r.clearRect(0,0,a,a),r.textBaseline="ideographic",r.fillText(s,0,a);var v=w(r.getImageData(0,0,a,a));if(u.ideographic=a-v-1+p,n.upper&&(r.clearRect(0,0,a,a),r.textBaseline="top",r.fillText(n.upper,0,0),u.upper=w(r.getImageData(0,0,a,a)),u.capHeight=u.baseline-u.upper),n.lower&&(r.clearRect(0,0,a,a),r.textBaseline="top",r.fillText(n.lower,0,0),u.lower=w(r.getImageData(0,0,a,a)),u.xHeight=u.baseline-u.lower),n.tittle&&(r.clearRect(0,0,a,a),r.textBaseline="top",r.fillText(n.tittle,0,0),u.tittle=w(r.getImageData(0,0,a,a))),n.ascent&&(r.clearRect(0,0,a,a),r.textBaseline="top",r.fillText(n.ascent,0,0),u.ascent=w(r.getImageData(0,0,a,a))),n.descent&&(r.clearRect(0,0,a,a),r.textBaseline="top",r.fillText(n.descent,0,0),u.descent=k(r.getImageData(0,0,a,a))),n.overshoot){r.clearRect(0,0,a,a),r.textBaseline="top",r.fillText(n.overshoot,0,0);var m=k(r.getImageData(0,0,a,a));u.overshoot=m-b}for(var x in u)u[x]/=h;return u.em=h,E.cache[y]=u,e(u,t)}function e(i,_){var y={};for(var h in typeof _=="string"&&(_=i[_]),i)h!=="em"&&(y[h]=i[h]-_);return y}function w(i){for(var _=i.height,y=i.data,h=3;h<y.length;h+=4)if(y[h]!==0)return Math.floor(.25*(h-3)/_)}function k(i){for(var _=i.height,y=i.data,h=y.length-1;h>0;h-=4)if(y[h]!==0)return Math.floor(.25*(h-3)/_)}R.exports=E,E.canvas=document.createElement("canvas"),E.cache={}},31353:function(R,E,e){var w=e(85395),k=Object.prototype.toString,i=Object.prototype.hasOwnProperty;R.exports=function(_,y,h){if(!w(y))throw new TypeError("iterator must be a function");var l;arguments.length>=3&&(l=h),k.call(_)==="[object Array]"?function(t,o,r){for(var n=0,a=t.length;n<a;n++)i.call(t,n)&&(r==null?o(t[n],n,t):o.call(r,t[n],n,t))}(_,y,l):typeof _=="string"?function(t,o,r){for(var n=0,a=t.length;n<a;n++)r==null?o(t.charAt(n),n,t):o.call(r,t.charAt(n),n,t)}(_,y,l):function(t,o,r){for(var n in t)i.call(t,n)&&(r==null?o(t[n],n,t):o.call(r,t[n],n,t))}(_,y,l)}},73047:function(R){var E=Array.prototype.slice,e=Object.prototype.toString;R.exports=function(w){var k=this;if(typeof k!="function"||e.call(k)!=="[object Function]")throw new TypeError("Function.prototype.bind called on incompatible "+k);for(var i,_=E.call(arguments,1),y=Math.max(0,k.length-_.length),h=[],l=0;l<y;l++)h.push("$"+l);if(i=Function("binder","return function ("+h.join(",")+"){ return binder.apply(this,arguments); }")(function(){if(this instanceof i){var o=k.apply(this,_.concat(E.call(arguments)));return Object(o)===o?o:this}return k.apply(w,_.concat(E.call(arguments)))}),k.prototype){var t=function(){};t.prototype=k.prototype,i.prototype=new t,t.prototype=null}return i}},77575:function(R,E,e){var w=e(73047);R.exports=Function.prototype.bind||w},86249:function(R){R.exports=function(E,e){if(typeof E!="string")throw new TypeError("must specify type string");if(e=e||{},typeof document>"u"&&!e.canvas)return null;var w=e.canvas||document.createElement("canvas");typeof e.width=="number"&&(w.width=e.width),typeof e.height=="number"&&(w.height=e.height);var k,i=e;try{var _=[E];E.indexOf("webgl")===0&&_.push("experimental-"+E);for(var y=0;y<_.length;y++)if(k=w.getContext(_[y],i))return k}catch{k=null}return k||null}},68318:function(R,E,e){var w,k=SyntaxError,i=Function,_=TypeError,y=function(C){try{return i('"use strict"; return ('+C+").constructor;")()}catch{}},h=Object.getOwnPropertyDescriptor;if(h)try{h({},"")}catch{h=null}var l=function(){throw new _},t=h?function(){try{return l}catch{try{return h(arguments,"callee").get}catch{return l}}}():l,o=e(57877)(),r=Object.getPrototypeOf||function(C){return C.__proto__},n={},a=typeof Uint8Array>"u"?w:r(Uint8Array),s={"%AggregateError%":typeof AggregateError>"u"?w:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?w:ArrayBuffer,"%ArrayIteratorPrototype%":o?r([][Symbol.iterator]()):w,"%AsyncFromSyncIteratorPrototype%":w,"%AsyncFunction%":n,"%AsyncGenerator%":n,"%AsyncGeneratorFunction%":n,"%AsyncIteratorPrototype%":n,"%Atomics%":typeof Atomics>"u"?w:Atomics,"%BigInt%":typeof BigInt>"u"?w:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?w:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?w:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?w:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":Error,"%eval%":eval,"%EvalError%":EvalError,"%Float32Array%":typeof Float32Array>"u"?w:Float32Array,"%Float64Array%":typeof Float64Array>"u"?w:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?w:FinalizationRegistry,"%Function%":i,"%GeneratorFunction%":n,"%Int8Array%":typeof Int8Array>"u"?w:Int8Array,"%Int16Array%":typeof Int16Array>"u"?w:Int16Array,"%Int32Array%":typeof Int32Array>"u"?w:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":o?r(r([][Symbol.iterator]())):w,"%JSON%":typeof JSON=="object"?JSON:w,"%Map%":typeof Map>"u"?w:Map,"%MapIteratorPrototype%":typeof Map<"u"&&o?r(new Map()[Symbol.iterator]()):w,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?w:Promise,"%Proxy%":typeof Proxy>"u"?w:Proxy,"%RangeError%":RangeError,"%ReferenceError%":ReferenceError,"%Reflect%":typeof Reflect>"u"?w:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?w:Set,"%SetIteratorPrototype%":typeof Set<"u"&&o?r(new Set()[Symbol.iterator]()):w,"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?w:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":o?r(""[Symbol.iterator]()):w,"%Symbol%":o?Symbol:w,"%SyntaxError%":k,"%ThrowTypeError%":t,"%TypedArray%":a,"%TypeError%":_,"%Uint8Array%":typeof Uint8Array>"u"?w:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?w:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?w:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?w:Uint32Array,"%URIError%":URIError,"%WeakMap%":typeof WeakMap>"u"?w:WeakMap,"%WeakRef%":typeof WeakRef>"u"?w:WeakRef,"%WeakSet%":typeof WeakSet>"u"?w:WeakSet};try{null.error}catch(C){var u=r(r(C));s["%Error.prototype%"]=u}var p=function C(P){var O;if(P==="%AsyncFunction%")O=y("async function () {}");else if(P==="%GeneratorFunction%")O=y("function* () {}");else if(P==="%AsyncGeneratorFunction%")O=y("async function* () {}");else if(P==="%AsyncGenerator%"){var z=C("%AsyncGeneratorFunction%");z&&(O=z.prototype)}else if(P==="%AsyncIteratorPrototype%"){var B=C("%AsyncGenerator%");B&&(O=r(B.prototype))}return s[P]=O,O},c={"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},b=e(77575),g=e(35065),f=b.call(Function.call,Array.prototype.concat),v=b.call(Function.apply,Array.prototype.splice),m=b.call(Function.call,String.prototype.replace),x=b.call(Function.call,String.prototype.slice),T=b.call(Function.call,RegExp.prototype.exec),d=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,M=/\\(\\)?/g,A=function(C,P){var O,z=C;if(g(c,z)&&(z="%"+(O=c[z])[0]+"%"),g(s,z)){var B=s[z];if(B===n&&(B=p(z)),B===void 0&&!P)throw new _("intrinsic "+C+" exists, but is not available. Please file an issue!");return{alias:O,name:z,value:B}}throw new k("intrinsic "+C+" does not exist!")};R.exports=function(C,P){if(typeof C!="string"||C.length===0)throw new _("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof P!="boolean")throw new _('"allowMissing" argument must be a boolean');if(T(/^%?[^%]*%?$/,C)===null)throw new k("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var O=function(X){var ee=x(X,0,1),re=x(X,-1);if(ee==="%"&&re!=="%")throw new k("invalid intrinsic syntax, expected closing `%`");if(re==="%"&&ee!=="%")throw new k("invalid intrinsic syntax, expected opening `%`");var oe=[];return m(X,d,function(ue,ce,de,me){oe[oe.length]=de?m(me,M,"$1"):ce||ue}),oe}(C),z=O.length>0?O[0]:"",B=A("%"+z+"%",P),Y=B.name,D=B.value,G=!1,V=B.alias;V&&(z=V[0],v(O,f([0,1],V)));for(var j=1,W=!0;j<O.length;j+=1){var Z=O[j],ie=x(Z,0,1),te=x(Z,-1);if((ie==='"'||ie==="'"||ie==="`"||te==='"'||te==="'"||te==="`")&&ie!==te)throw new k("property names with quotes must have matching quotes");if(Z!=="constructor"&&W||(G=!0),g(s,Y="%"+(z+="."+Z)+"%"))D=s[Y];else if(D!=null){if(!(Z in D)){if(!P)throw new _("base intrinsic for "+C+" exists, but the property is not available.");return}if(h&&j+1>=O.length){var J=h(D,Z);D=(W=!!J)&&"get"in J&&!("originalValue"in J.get)?J.get:D[Z]}else W=g(D,Z),D=D[Z];W&&!G&&(s[Y]=D)}}return D}},85400:function(R){R.exports=function(E,e){var w=e[0],k=e[1],i=e[2],_=e[3],y=e[4],h=e[5],l=e[6],t=e[7],o=e[8],r=e[9],n=e[10],a=e[11],s=e[12],u=e[13],p=e[14],c=e[15];return E[0]=h*(n*c-a*p)-r*(l*c-t*p)+u*(l*a-t*n),E[1]=-(k*(n*c-a*p)-r*(i*c-_*p)+u*(i*a-_*n)),E[2]=k*(l*c-t*p)-h*(i*c-_*p)+u*(i*t-_*l),E[3]=-(k*(l*a-t*n)-h*(i*a-_*n)+r*(i*t-_*l)),E[4]=-(y*(n*c-a*p)-o*(l*c-t*p)+s*(l*a-t*n)),E[5]=w*(n*c-a*p)-o*(i*c-_*p)+s*(i*a-_*n),E[6]=-(w*(l*c-t*p)-y*(i*c-_*p)+s*(i*t-_*l)),E[7]=w*(l*a-t*n)-y*(i*a-_*n)+o*(i*t-_*l),E[8]=y*(r*c-a*u)-o*(h*c-t*u)+s*(h*a-t*r),E[9]=-(w*(r*c-a*u)-o*(k*c-_*u)+s*(k*a-_*r)),E[10]=w*(h*c-t*u)-y*(k*c-_*u)+s*(k*t-_*h),E[11]=-(w*(h*a-t*r)-y*(k*a-_*r)+o*(k*t-_*h)),E[12]=-(y*(r*p-n*u)-o*(h*p-l*u)+s*(h*n-l*r)),E[13]=w*(r*p-n*u)-o*(k*p-i*u)+s*(k*n-i*r),E[14]=-(w*(h*p-l*u)-y*(k*p-i*u)+s*(k*l-i*h)),E[15]=w*(h*n-l*r)-y*(k*n-i*r)+o*(k*l-i*h),E}},42331:function(R){R.exports=function(E){var e=new Float32Array(16);return e[0]=E[0],e[1]=E[1],e[2]=E[2],e[3]=E[3],e[4]=E[4],e[5]=E[5],e[6]=E[6],e[7]=E[7],e[8]=E[8],e[9]=E[9],e[10]=E[10],e[11]=E[11],e[12]=E[12],e[13]=E[13],e[14]=E[14],e[15]=E[15],e}},31042:function(R){R.exports=function(E,e){return E[0]=e[0],E[1]=e[1],E[2]=e[2],E[3]=e[3],E[4]=e[4],E[5]=e[5],E[6]=e[6],E[7]=e[7],E[8]=e[8],E[9]=e[9],E[10]=e[10],E[11]=e[11],E[12]=e[12],E[13]=e[13],E[14]=e[14],E[15]=e[15],E}},11902:function(R){R.exports=function(){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}},89887:function(R){R.exports=function(E){var e=E[0],w=E[1],k=E[2],i=E[3],_=E[4],y=E[5],h=E[6],l=E[7],t=E[8],o=E[9],r=E[10],n=E[11],a=E[12],s=E[13],u=E[14],p=E[15];return(e*y-w*_)*(r*p-n*u)-(e*h-k*_)*(o*p-n*s)+(e*l-i*_)*(o*u-r*s)+(w*h-k*y)*(t*p-n*a)-(w*l-i*y)*(t*u-r*a)+(k*l-i*h)*(t*s-o*a)}},27812:function(R){R.exports=function(E,e){var w=e[0],k=e[1],i=e[2],_=e[3],y=w+w,h=k+k,l=i+i,t=w*y,o=k*y,r=k*h,n=i*y,a=i*h,s=i*l,u=_*y,p=_*h,c=_*l;return E[0]=1-r-s,E[1]=o+c,E[2]=n-p,E[3]=0,E[4]=o-c,E[5]=1-t-s,E[6]=a+u,E[7]=0,E[8]=n+p,E[9]=a-u,E[10]=1-t-r,E[11]=0,E[12]=0,E[13]=0,E[14]=0,E[15]=1,E}},34045:function(R){R.exports=function(E,e,w){var k,i,_,y=w[0],h=w[1],l=w[2],t=Math.sqrt(y*y+h*h+l*l);return Math.abs(t)<1e-6?null:(y*=t=1/t,h*=t,l*=t,k=Math.sin(e),_=1-(i=Math.cos(e)),E[0]=y*y*_+i,E[1]=h*y*_+l*k,E[2]=l*y*_-h*k,E[3]=0,E[4]=y*h*_-l*k,E[5]=h*h*_+i,E[6]=l*h*_+y*k,E[7]=0,E[8]=y*l*_+h*k,E[9]=h*l*_-y*k,E[10]=l*l*_+i,E[11]=0,E[12]=0,E[13]=0,E[14]=0,E[15]=1,E)}},45973:function(R){R.exports=function(E,e,w){var k=e[0],i=e[1],_=e[2],y=e[3],h=k+k,l=i+i,t=_+_,o=k*h,r=k*l,n=k*t,a=i*l,s=i*t,u=_*t,p=y*h,c=y*l,b=y*t;return E[0]=1-(a+u),E[1]=r+b,E[2]=n-c,E[3]=0,E[4]=r-b,E[5]=1-(o+u),E[6]=s+p,E[7]=0,E[8]=n+c,E[9]=s-p,E[10]=1-(o+a),E[11]=0,E[12]=w[0],E[13]=w[1],E[14]=w[2],E[15]=1,E}},81472:function(R){R.exports=function(E,e){return E[0]=e[0],E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=e[1],E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[10]=e[2],E[11]=0,E[12]=0,E[13]=0,E[14]=0,E[15]=1,E}},14669:function(R){R.exports=function(E,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]=e[0],E[13]=e[1],E[14]=e[2],E[15]=1,E}},75262:function(R){R.exports=function(E,e){var w=Math.sin(e),k=Math.cos(e);return E[0]=1,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=k,E[6]=w,E[7]=0,E[8]=0,E[9]=-w,E[10]=k,E[11]=0,E[12]=0,E[13]=0,E[14]=0,E[15]=1,E}},331:function(R){R.exports=function(E,e){var w=Math.sin(e),k=Math.cos(e);return E[0]=k,E[1]=0,E[2]=-w,E[3]=0,E[4]=0,E[5]=1,E[6]=0,E[7]=0,E[8]=w,E[9]=0,E[10]=k,E[11]=0,E[12]=0,E[13]=0,E[14]=0,E[15]=1,E}},11049:function(R){R.exports=function(E,e){var w=Math.sin(e),k=Math.cos(e);return E[0]=k,E[1]=w,E[2]=0,E[3]=0,E[4]=-w,E[5]=k,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}},75195:function(R){R.exports=function(E,e,w,k,i,_,y){var h=1/(w-e),l=1/(i-k),t=1/(_-y);return E[0]=2*_*h,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=2*_*l,E[6]=0,E[7]=0,E[8]=(w+e)*h,E[9]=(i+k)*l,E[10]=(y+_)*t,E[11]=-1,E[12]=0,E[13]=0,E[14]=y*_*2*t,E[15]=0,E}},71551:function(R){R.exports=function(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}},79576:function(R,E,e){R.exports={create:e(11902),clone:e(42331),copy:e(31042),identity:e(71551),transpose:e(88654),invert:e(95874),adjoint:e(85400),determinant:e(89887),multiply:e(91362),translate:e(31283),scale:e(10789),rotate:e(65074),rotateX:e(35545),rotateY:e(94918),rotateZ:e(15692),fromRotation:e(34045),fromRotationTranslation:e(45973),fromScaling:e(81472),fromTranslation:e(14669),fromXRotation:e(75262),fromYRotation:e(331),fromZRotation:e(11049),fromQuat:e(27812),frustum:e(75195),perspective:e(7864),perspectiveFromFieldOfView:e(35279),ortho:e(60378),lookAt:e(65551),str:e(6726)}},95874:function(R){R.exports=function(E,e){var w=e[0],k=e[1],i=e[2],_=e[3],y=e[4],h=e[5],l=e[6],t=e[7],o=e[8],r=e[9],n=e[10],a=e[11],s=e[12],u=e[13],p=e[14],c=e[15],b=w*h-k*y,g=w*l-i*y,f=w*t-_*y,v=k*l-i*h,m=k*t-_*h,x=i*t-_*l,T=o*u-r*s,d=o*p-n*s,M=o*c-a*s,A=r*p-n*u,C=r*c-a*u,P=n*c-a*p,O=b*P-g*C+f*A+v*M-m*d+x*T;return O?(O=1/O,E[0]=(h*P-l*C+t*A)*O,E[1]=(i*C-k*P-_*A)*O,E[2]=(u*x-p*m+c*v)*O,E[3]=(n*m-r*x-a*v)*O,E[4]=(l*M-y*P-t*d)*O,E[5]=(w*P-i*M+_*d)*O,E[6]=(p*f-s*x-c*g)*O,E[7]=(o*x-n*f+a*g)*O,E[8]=(y*C-h*M+t*T)*O,E[9]=(k*M-w*C-_*T)*O,E[10]=(s*m-u*f+c*b)*O,E[11]=(r*f-o*m-a*b)*O,E[12]=(h*d-y*A-l*T)*O,E[13]=(w*A-k*d+i*T)*O,E[14]=(u*g-s*v-p*b)*O,E[15]=(o*v-r*g+n*b)*O,E):null}},65551:function(R,E,e){var w=e(71551);R.exports=function(k,i,_,y){var h,l,t,o,r,n,a,s,u,p,c=i[0],b=i[1],g=i[2],f=y[0],v=y[1],m=y[2],x=_[0],T=_[1],d=_[2];return Math.abs(c-x)<1e-6&&Math.abs(b-T)<1e-6&&Math.abs(g-d)<1e-6?w(k):(a=c-x,s=b-T,u=g-d,h=v*(u*=p=1/Math.sqrt(a*a+s*s+u*u))-m*(s*=p),l=m*(a*=p)-f*u,t=f*s-v*a,(p=Math.sqrt(h*h+l*l+t*t))?(h*=p=1/p,l*=p,t*=p):(h=0,l=0,t=0),o=s*t-u*l,r=u*h-a*t,n=a*l-s*h,(p=Math.sqrt(o*o+r*r+n*n))?(o*=p=1/p,r*=p,n*=p):(o=0,r=0,n=0),k[0]=h,k[1]=o,k[2]=a,k[3]=0,k[4]=l,k[5]=r,k[6]=s,k[7]=0,k[8]=t,k[9]=n,k[10]=u,k[11]=0,k[12]=-(h*c+l*b+t*g),k[13]=-(o*c+r*b+n*g),k[14]=-(a*c+s*b+u*g),k[15]=1,k)}},91362:function(R){R.exports=function(E,e,w){var k=e[0],i=e[1],_=e[2],y=e[3],h=e[4],l=e[5],t=e[6],o=e[7],r=e[8],n=e[9],a=e[10],s=e[11],u=e[12],p=e[13],c=e[14],b=e[15],g=w[0],f=w[1],v=w[2],m=w[3];return E[0]=g*k+f*h+v*r+m*u,E[1]=g*i+f*l+v*n+m*p,E[2]=g*_+f*t+v*a+m*c,E[3]=g*y+f*o+v*s+m*b,g=w[4],f=w[5],v=w[6],m=w[7],E[4]=g*k+f*h+v*r+m*u,E[5]=g*i+f*l+v*n+m*p,E[6]=g*_+f*t+v*a+m*c,E[7]=g*y+f*o+v*s+m*b,g=w[8],f=w[9],v=w[10],m=w[11],E[8]=g*k+f*h+v*r+m*u,E[9]=g*i+f*l+v*n+m*p,E[10]=g*_+f*t+v*a+m*c,E[11]=g*y+f*o+v*s+m*b,g=w[12],f=w[13],v=w[14],m=w[15],E[12]=g*k+f*h+v*r+m*u,E[13]=g*i+f*l+v*n+m*p,E[14]=g*_+f*t+v*a+m*c,E[15]=g*y+f*o+v*s+m*b,E}},60378:function(R){R.exports=function(E,e,w,k,i,_,y){var h=1/(e-w),l=1/(k-i),t=1/(_-y);return E[0]=-2*h,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*t,E[11]=0,E[12]=(e+w)*h,E[13]=(i+k)*l,E[14]=(y+_)*t,E[15]=1,E}},7864:function(R){R.exports=function(E,e,w,k,i){var _=1/Math.tan(e/2),y=1/(k-i);return E[0]=_/w,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=_,E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[10]=(i+k)*y,E[11]=-1,E[12]=0,E[13]=0,E[14]=2*i*k*y,E[15]=0,E}},35279:function(R){R.exports=function(E,e,w,k){var i=Math.tan(e.upDegrees*Math.PI/180),_=Math.tan(e.downDegrees*Math.PI/180),y=Math.tan(e.leftDegrees*Math.PI/180),h=Math.tan(e.rightDegrees*Math.PI/180),l=2/(y+h),t=2/(i+_);return E[0]=l,E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=t,E[6]=0,E[7]=0,E[8]=-(y-h)*l*.5,E[9]=(i-_)*t*.5,E[10]=k/(w-k),E[11]=-1,E[12]=0,E[13]=0,E[14]=k*w/(w-k),E[15]=0,E}},65074:function(R){R.exports=function(E,e,w,k){var i,_,y,h,l,t,o,r,n,a,s,u,p,c,b,g,f,v,m,x,T,d,M,A,C=k[0],P=k[1],O=k[2],z=Math.sqrt(C*C+P*P+O*O);return Math.abs(z)<1e-6?null:(C*=z=1/z,P*=z,O*=z,i=Math.sin(w),y=1-(_=Math.cos(w)),h=e[0],l=e[1],t=e[2],o=e[3],r=e[4],n=e[5],a=e[6],s=e[7],u=e[8],p=e[9],c=e[10],b=e[11],g=C*C*y+_,f=P*C*y+O*i,v=O*C*y-P*i,m=C*P*y-O*i,x=P*P*y+_,T=O*P*y+C*i,d=C*O*y+P*i,M=P*O*y-C*i,A=O*O*y+_,E[0]=h*g+r*f+u*v,E[1]=l*g+n*f+p*v,E[2]=t*g+a*f+c*v,E[3]=o*g+s*f+b*v,E[4]=h*m+r*x+u*T,E[5]=l*m+n*x+p*T,E[6]=t*m+a*x+c*T,E[7]=o*m+s*x+b*T,E[8]=h*d+r*M+u*A,E[9]=l*d+n*M+p*A,E[10]=t*d+a*M+c*A,E[11]=o*d+s*M+b*A,e!==E&&(E[12]=e[12],E[13]=e[13],E[14]=e[14],E[15]=e[15]),E)}},35545:function(R){R.exports=function(E,e,w){var k=Math.sin(w),i=Math.cos(w),_=e[4],y=e[5],h=e[6],l=e[7],t=e[8],o=e[9],r=e[10],n=e[11];return e!==E&&(E[0]=e[0],E[1]=e[1],E[2]=e[2],E[3]=e[3],E[12]=e[12],E[13]=e[13],E[14]=e[14],E[15]=e[15]),E[4]=_*i+t*k,E[5]=y*i+o*k,E[6]=h*i+r*k,E[7]=l*i+n*k,E[8]=t*i-_*k,E[9]=o*i-y*k,E[10]=r*i-h*k,E[11]=n*i-l*k,E}},94918:function(R){R.exports=function(E,e,w){var k=Math.sin(w),i=Math.cos(w),_=e[0],y=e[1],h=e[2],l=e[3],t=e[8],o=e[9],r=e[10],n=e[11];return e!==E&&(E[4]=e[4],E[5]=e[5],E[6]=e[6],E[7]=e[7],E[12]=e[12],E[13]=e[13],E[14]=e[14],E[15]=e[15]),E[0]=_*i-t*k,E[1]=y*i-o*k,E[2]=h*i-r*k,E[3]=l*i-n*k,E[8]=_*k+t*i,E[9]=y*k+o*i,E[10]=h*k+r*i,E[11]=l*k+n*i,E}},15692:function(R){R.exports=function(E,e,w){var k=Math.sin(w),i=Math.cos(w),_=e[0],y=e[1],h=e[2],l=e[3],t=e[4],o=e[5],r=e[6],n=e[7];return e!==E&&(E[8]=e[8],E[9]=e[9],E[10]=e[10],E[11]=e[11],E[12]=e[12],E[13]=e[13],E[14]=e[14],E[15]=e[15]),E[0]=_*i+t*k,E[1]=y*i+o*k,E[2]=h*i+r*k,E[3]=l*i+n*k,E[4]=t*i-_*k,E[5]=o*i-y*k,E[6]=r*i-h*k,E[7]=n*i-l*k,E}},10789:function(R){R.exports=function(E,e,w){var k=w[0],i=w[1],_=w[2];return E[0]=e[0]*k,E[1]=e[1]*k,E[2]=e[2]*k,E[3]=e[3]*k,E[4]=e[4]*i,E[5]=e[5]*i,E[6]=e[6]*i,E[7]=e[7]*i,E[8]=e[8]*_,E[9]=e[9]*_,E[10]=e[10]*_,E[11]=e[11]*_,E[12]=e[12],E[13]=e[13],E[14]=e[14],E[15]=e[15],E}},6726:function(R){R.exports=function(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]+")"}},31283:function(R){R.exports=function(E,e,w){var k,i,_,y,h,l,t,o,r,n,a,s,u=w[0],p=w[1],c=w[2];return e===E?(E[12]=e[0]*u+e[4]*p+e[8]*c+e[12],E[13]=e[1]*u+e[5]*p+e[9]*c+e[13],E[14]=e[2]*u+e[6]*p+e[10]*c+e[14],E[15]=e[3]*u+e[7]*p+e[11]*c+e[15]):(k=e[0],i=e[1],_=e[2],y=e[3],h=e[4],l=e[5],t=e[6],o=e[7],r=e[8],n=e[9],a=e[10],s=e[11],E[0]=k,E[1]=i,E[2]=_,E[3]=y,E[4]=h,E[5]=l,E[6]=t,E[7]=o,E[8]=r,E[9]=n,E[10]=a,E[11]=s,E[12]=k*u+h*p+r*c+e[12],E[13]=i*u+l*p+n*c+e[13],E[14]=_*u+t*p+a*c+e[14],E[15]=y*u+o*p+s*c+e[15]),E}},88654:function(R){R.exports=function(E,e){if(E===e){var w=e[1],k=e[2],i=e[3],_=e[6],y=e[7],h=e[11];E[1]=e[4],E[2]=e[8],E[3]=e[12],E[4]=w,E[6]=e[9],E[7]=e[13],E[8]=k,E[9]=_,E[11]=e[14],E[12]=i,E[13]=y,E[14]=h}else E[0]=e[0],E[1]=e[4],E[2]=e[8],E[3]=e[12],E[4]=e[1],E[5]=e[5],E[6]=e[9],E[7]=e[13],E[8]=e[2],E[9]=e[6],E[10]=e[10],E[11]=e[14],E[12]=e[3],E[13]=e[7],E[14]=e[11],E[15]=e[15];return E}},42505:function(R,E,e){var w=e(72791),k=e(71299),i=e(98580),_=e(12018),y=e(83522),h=e(25075),l=e(68016),t=e(58404),o=e(18863),r=e(10973),n=e(25677),a=e(75686),s=e(53545),u=e(56131),p=e(32879),c=e(30120),b=e(13547).nextPow2,g=new y,f=!1;if(document.body){var v=document.body.appendChild(document.createElement("div"));v.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(v).fontStretch&&(f=!0),document.body.removeChild(v)}var m=function(x){(function(T){return typeof T=="function"&&T._gl&&T.prop&&T.texture&&T.buffer})(x)?(x={regl:x},this.gl=x.regl._gl):this.gl=_(x),this.shader=g.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=x.regl||i({gl:this.gl}),this.charBuffer=this.regl.buffer({type:"uint8",usage:"stream"}),this.sizeBuffer=this.regl.buffer({type:"float",usage:"stream"}),this.shader||(this.shader=this.createShader(),g.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(r(x)?x:{})};m.prototype.createShader=function(){var x=this.regl,T=x({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:x.prop("count"),offset:x.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:x.this("sizeBuffer")},width:{offset:0,stride:8,buffer:x.this("sizeBuffer")},char:x.this("charBuffer"),position:x.this("position")},uniforms:{atlasSize:function(d,M){return[M.atlas.width,M.atlas.height]},atlasDim:function(d,M){return[M.atlas.cols,M.atlas.rows]},atlas:function(d,M){return M.atlas.texture},charStep:function(d,M){return M.atlas.step},em:function(d,M){return M.atlas.em},color:x.prop("color"),opacity:x.prop("opacity"),viewport:x.this("viewportArray"),scale:x.this("scale"),align:x.prop("align"),baseline:x.prop("baseline"),translate:x.this("translate"),positionOffset:x.prop("positionOffset")},primitive:"points",viewport:x.this("viewport"),vert:`
|
||
precision highp float;
|
||
attribute float width, charOffset, char;
|
||
attribute vec2 position;
|
||
uniform float fontSize, charStep, em, align, baseline;
|
||
uniform vec4 viewport;
|
||
uniform vec4 color;
|
||
uniform vec2 atlasSize, atlasDim, scale, translate, positionOffset;
|
||
varying vec2 charCoord, charId;
|
||
varying float charWidth;
|
||
varying vec4 fontColor;
|
||
void main () {
|
||
vec2 offset = floor(em * (vec2(align + charOffset, baseline)
|
||
+ vec2(positionOffset.x, -positionOffset.y)))
|
||
/ (viewport.zw * scale.xy);
|
||
|
||
vec2 position = (position + translate) * scale;
|
||
position += offset * scale;
|
||
|
||
charCoord = position * viewport.zw + viewport.xy;
|
||
|
||
gl_Position = vec4(position * 2. - 1., 0, 1);
|
||
|
||
gl_PointSize = charStep;
|
||
|
||
charId.x = mod(char, atlasDim.x);
|
||
charId.y = floor(char / atlasDim.x);
|
||
|
||
charWidth = width * em;
|
||
|
||
fontColor = color / 255.;
|
||
}`,frag:`
|
||
precision highp float;
|
||
uniform float fontSize, charStep, opacity;
|
||
uniform vec2 atlasSize;
|
||
uniform vec4 viewport;
|
||
uniform sampler2D atlas;
|
||
varying vec4 fontColor;
|
||
varying vec2 charCoord, charId;
|
||
varying float charWidth;
|
||
|
||
float lightness(vec4 color) {
|
||
return color.r * 0.299 + color.g * 0.587 + color.b * 0.114;
|
||
}
|
||
|
||
void main () {
|
||
vec2 uv = gl_FragCoord.xy - charCoord + charStep * .5;
|
||
float halfCharStep = floor(charStep * .5 + .5);
|
||
|
||
// invert y and shift by 1px (FF expecially needs that)
|
||
uv.y = charStep - uv.y;
|
||
|
||
// ignore points outside of character bounding box
|
||
float halfCharWidth = ceil(charWidth * .5);
|
||
if (floor(uv.x) > halfCharStep + halfCharWidth ||
|
||
floor(uv.x) < halfCharStep - halfCharWidth) return;
|
||
|
||
uv += charId * charStep;
|
||
uv = uv / atlasSize;
|
||
|
||
vec4 color = fontColor;
|
||
vec4 mask = texture2D(atlas, uv);
|
||
|
||
float maskY = lightness(mask);
|
||
// float colorY = lightness(color);
|
||
color.a *= maskY;
|
||
color.a *= opacity;
|
||
|
||
// color.a += .1;
|
||
|
||
// antialiasing, see yiq color space y-channel formula
|
||
// color.rgb += (1. - color.rgb) * (1. - mask.rgb);
|
||
|
||
gl_FragColor = color;
|
||
}`});return{regl:x,draw:T,atlas:{}}},m.prototype.update=function(x){var T=this;if(typeof x=="string")x={text:x};else if(!x)return;(x=k(x,{position:"position positions coord coords coordinates",font:"font fontFace fontface typeface cssFont css-font family fontFamily",fontSize:"fontSize fontsize size font-size",text:"text texts chars characters value values symbols",align:"align alignment textAlign textbaseline",baseline:"baseline textBaseline textbaseline",direction:"dir direction textDirection",color:"color colour fill fill-color fillColor textColor textcolor",kerning:"kerning kern",range:"range dataBox",viewport:"vp viewport viewBox viewbox viewPort",opacity:"opacity alpha transparency visible visibility opaque",offset:"offset positionOffset padding shift indent indentation"},!0)).opacity!=null&&(Array.isArray(x.opacity)?this.opacity=x.opacity.map(function(ae){return parseFloat(ae)}):this.opacity=parseFloat(x.opacity)),x.viewport!=null&&(this.viewport=o(x.viewport),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),this.viewport==null&&(this.viewport={x:0,y:0,width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight},this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),x.kerning!=null&&(this.kerning=x.kerning),x.offset!=null&&(typeof x.offset=="number"&&(x.offset=[x.offset,0]),this.positionOffset=c(x.offset)),x.direction&&(this.direction=x.direction),x.range&&(this.range=x.range,this.scale=[1/(x.range[2]-x.range[0]),1/(x.range[3]-x.range[1])],this.translate=[-x.range[0],-x.range[1]]),x.scale&&(this.scale=x.scale),x.translate&&(this.translate=x.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),this.font.length||x.font||(x.font=m.baseFontSize+"px sans-serif");var d,M=!1,A=!1;if(x.font&&(Array.isArray(x.font)?x.font:[x.font]).forEach(function(ae,be){if(typeof ae=="string")try{ae=w.parse(ae)}catch{ae=w.parse(m.baseFontSize+"px "+ae)}else ae=w.parse(w.stringify(ae));var Ie=w.stringify({size:m.baseFontSize,family:ae.family,stretch:f?ae.stretch:void 0,variant:ae.variant,weight:ae.weight,style:ae.style}),Te=n(ae.size),Ne=Math.round(Te[0]*a(Te[1]));if(Ne!==T.fontSize[be]&&(A=!0,T.fontSize[be]=Ne),!(T.font[be]&&Ie==T.font[be].baseString||(M=!0,T.font[be]=m.fonts[Ie],T.font[be]))){var qe=ae.family.join(", "),ve=[ae.style];ae.style!=ae.variant&&ve.push(ae.variant),ae.variant!=ae.weight&&ve.push(ae.weight),f&&ae.weight!=ae.stretch&&ve.push(ae.stretch),T.font[be]={baseString:Ie,family:qe,weight:ae.weight,stretch:ae.stretch,style:ae.style,variant:ae.variant,width:{},kerning:{},metrics:p(qe,{origin:"top",fontSize:m.baseFontSize,fontStyle:ve.join(" ")})},m.fonts[Ie]=T.font[be]}}),(M||A)&&this.font.forEach(function(ae,be){var Ie=w.stringify({size:T.fontSize[be],family:ae.family,stretch:f?ae.stretch:void 0,variant:ae.variant,weight:ae.weight,style:ae.style});if(T.fontAtlas[be]=T.shader.atlas[Ie],!T.fontAtlas[be]){var Te=ae.metrics;T.shader.atlas[Ie]=T.fontAtlas[be]={fontString:Ie,step:2*Math.ceil(T.fontSize[be]*Te.bottom*.5),em:T.fontSize[be],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:T.regl.texture()}}x.text==null&&(x.text=T.text)}),typeof x.text=="string"&&x.position&&x.position.length>2){for(var C=Array(.5*x.position.length),P=0;P<C.length;P++)C[P]=x.text;x.text=C}if(x.text!=null||M){if(this.textOffsets=[0],Array.isArray(x.text)){this.count=x.text[0].length,this.counts=[this.count];for(var O=1;O<x.text.length;O++)this.textOffsets[O]=this.textOffsets[O-1]+x.text[O-1].length,this.count+=x.text[O].length,this.counts.push(x.text[O].length);this.text=x.text.join("")}else this.text=x.text,this.count=this.text.length,this.counts=[this.count];d=[],this.font.forEach(function(ae,be){m.atlasContext.font=ae.baseString;for(var Ie=T.fontAtlas[be],Te=0;Te<T.text.length;Te++){var Ne=T.text.charAt(Te);if(Ie.ids[Ne]==null&&(Ie.ids[Ne]=Ie.chars.length,Ie.chars.push(Ne),d.push(Ne)),ae.width[Ne]==null&&(ae.width[Ne]=m.atlasContext.measureText(Ne).width/m.baseFontSize,T.kerning)){var qe=[];for(var ve in ae.width)qe.push(ve+Ne,Ne+ve);u(ae.kerning,s(ae.family,{pairs:qe}))}}})}if(x.position)if(x.position.length>2){for(var z=!x.position[0].length,B=t.mallocFloat(2*this.count),Y=0,D=0;Y<this.counts.length;Y++){var G=this.counts[Y];if(z)for(var V=0;V<G;V++)B[D++]=x.position[2*Y],B[D++]=x.position[2*Y+1];else for(var j=0;j<G;j++)B[D++]=x.position[Y][0],B[D++]=x.position[Y][1]}this.position.call?this.position({type:"float",data:B}):this.position=this.regl.buffer({type:"float",data:B}),t.freeFloat(B)}else this.position.destroy&&this.position.destroy(),this.position={constant:x.position};if(x.text||M){var W=t.mallocUint8(this.count),Z=t.mallocFloat(2*this.count);this.textWidth=[];for(var ie=0,te=0;ie<this.counts.length;ie++){for(var J=this.counts[ie],X=this.font[ie]||this.font[0],ee=this.fontAtlas[ie]||this.fontAtlas[0],re=0;re<J;re++){var oe=this.text.charAt(te),ue=this.text.charAt(te-1);if(W[te]=ee.ids[oe],Z[2*te]=X.width[oe],re){var ce=Z[2*te-2],de=Z[2*te],me=Z[2*te-1]+.5*ce+.5*de;if(this.kerning){var _e=X.kerning[ue+oe];_e&&(me+=.001*_e)}Z[2*te+1]=me}else Z[2*te+1]=.5*Z[2*te];te++}this.textWidth.push(Z.length?.5*Z[2*te-2]+Z[2*te-1]:0)}x.align||(x.align=this.align),this.charBuffer({data:W,type:"uint8",usage:"stream"}),this.sizeBuffer({data:Z,type:"float",usage:"stream"}),t.freeUint8(W),t.freeFloat(Z),d.length&&this.font.forEach(function(ae,be){var Ie=T.fontAtlas[be],Te=Ie.step,Ne=Math.floor(m.maxAtlasSize/Te),qe=Math.min(Ne,Ie.chars.length),ve=Math.ceil(Ie.chars.length/qe),Ce=b(qe*Te),Ae=b(ve*Te);Ie.width=Ce,Ie.height=Ae,Ie.rows=ve,Ie.cols=qe,Ie.em&&Ie.texture({data:l({canvas:m.atlasCanvas,font:Ie.fontString,chars:Ie.chars,shape:[Ce,Ae],step:[Te,Te]})})})}if(x.align&&(this.align=x.align,this.alignOffset=this.textWidth.map(function(ae,be){var Ie=Array.isArray(T.align)?T.align.length>1?T.align[be]:T.align[0]:T.align;if(typeof Ie=="number")return Ie;switch(Ie){case"right":case"end":return-ae;case"center":case"centre":case"middle":return .5*-ae}return 0})),this.baseline==null&&x.baseline==null&&(x.baseline=0),x.baseline!=null&&(this.baseline=x.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map(function(ae,be){var Ie=(T.font[be]||T.font[0]).metrics,Te=0;return Te+=.5*Ie.bottom,-1*(Te+=typeof ae=="number"?ae-Ie.baseline:-Ie[ae])})),x.color!=null)if(x.color||(x.color="transparent"),typeof x.color!="string"&&isNaN(x.color)){var Se;if(typeof x.color[0]=="number"&&x.color.length>this.counts.length){var we=x.color.length;Se=t.mallocUint8(we);for(var xe=(x.color.subarray||x.color.slice).bind(x.color),De=0;De<we;De+=4)Se.set(h(xe(De,De+4),"uint8"),De)}else{var Ee=x.color.length;Se=t.mallocUint8(4*Ee);for(var Me=0;Me<Ee;Me++)Se.set(h(x.color[Me]||0,"uint8"),4*Me)}this.color=Se}else this.color=h(x.color,"uint8");if(x.position||x.text||x.color||x.baseline||x.align||x.font||x.offset||x.opacity)if(this.color.length>4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2){var he=Math.max(.5*this.position.length||0,.25*this.color.length||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,.5*this.positionOffset.length||0);this.batch=Array(he);for(var fe=0;fe<this.batch.length;fe++)this.batch[fe]={count:this.counts.length>1?this.counts[fe]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[fe]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(4*fe,4*fe+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[fe]:this.opacity,baseline:this.baselineOffset[fe]!=null?this.baselineOffset[fe]:this.baselineOffset[0],align:this.align?this.alignOffset[fe]!=null?this.alignOffset[fe]:this.alignOffset[0]:0,atlas:this.fontAtlas[fe]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(2*fe,2*fe+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]},m.prototype.destroy=function(){},m.prototype.kerning=!0,m.prototype.position={constant:new Float32Array(2)},m.prototype.translate=null,m.prototype.scale=null,m.prototype.font=null,m.prototype.text="",m.prototype.positionOffset=[0,0],m.prototype.opacity=1,m.prototype.color=new Uint8Array([0,0,0,255]),m.prototype.alignOffset=[0,0],m.maxAtlasSize=1024,m.atlasCanvas=document.createElement("canvas"),m.atlasContext=m.atlasCanvas.getContext("2d",{alpha:!1}),m.baseFontSize=64,m.fonts={},R.exports=m},12018:function(R,E,e){var w=e(71299);function k(y){if(y.container)if(y.container==document.body)document.body.style.width||(y.canvas.width=y.width||y.pixelRatio*e.g.innerWidth),document.body.style.height||(y.canvas.height=y.height||y.pixelRatio*e.g.innerHeight);else{var h=y.container.getBoundingClientRect();y.canvas.width=y.width||h.right-h.left,y.canvas.height=y.height||h.bottom-h.top}}function i(y){return typeof y.getContext=="function"&&"width"in y&&"height"in y}function _(){var y=document.createElement("canvas");return y.style.position="absolute",y.style.top=0,y.style.left=0,y}R.exports=function(y){var h;if(y?typeof y=="string"&&(y={container:y}):y={},(y=i(y)||typeof(h=y).nodeName=="string"&&typeof h.appendChild=="function"&&typeof h.getBoundingClientRect=="function"?{container:y}:function(t){return typeof t.drawArrays=="function"||typeof t.drawElements=="function"}(y)?{gl:y}:w(y,{container:"container target element el canvas holder parent parentNode wrapper use ref root node",gl:"gl context webgl glContext",attrs:"attributes attrs contextAttributes",pixelRatio:"pixelRatio pxRatio px ratio pxratio pixelratio",width:"w width",height:"h height"},!0)).pixelRatio||(y.pixelRatio=e.g.pixelRatio||1),y.gl)return y.gl;if(y.canvas&&(y.container=y.canvas.parentNode),y.container){if(typeof y.container=="string"){var l=document.querySelector(y.container);if(!l)throw Error("Element "+y.container+" is not found");y.container=l}i(y.container)?(y.canvas=y.container,y.container=y.canvas.parentNode):y.canvas||(y.canvas=_(),y.container.appendChild(y.canvas),k(y))}else if(!y.canvas){if(typeof document>"u")throw Error("Not DOM environment. Use headless-gl.");y.container=document.body||document.documentElement,y.canvas=_(),y.container.appendChild(y.canvas),k(y)}return y.gl||["webgl","experimental-webgl","webgl-experimental"].some(function(t){try{y.gl=y.canvas.getContext(t,y.attrs)}catch{}return y.gl}),y.gl}},56068:function(R){R.exports=function(E){typeof E=="string"&&(E=[E]);for(var e=[].slice.call(arguments,1),w=[],k=0;k<E.length-1;k++)w.push(E[k],e[k]||"");return w.push(E[k]),w.join("")}},40383:function(R,E,e){var w=e(68318)("%Object.getOwnPropertyDescriptor%",!0);if(w)try{w([],"length")}catch{w=null}R.exports=w},57035:function(R,E,e){var w,k=e(54404);w=typeof e.g.matchMedia=="function"?!e.g.matchMedia("(hover: none)").matches:k,R.exports=w},38520:function(R,E,e){var w=e(54404);R.exports=w&&function(){var k=!1;try{var i=Object.defineProperty({},"passive",{get:function(){k=!0}});window.addEventListener("test",null,i),window.removeEventListener("test",null,i)}catch{k=!1}return k}()},55622:function(R,E,e){var w=e(68318)("%Object.defineProperty%",!0),k=function(){if(w)try{return w({},"a",{value:1}),!0}catch{return!1}return!1};k.hasArrayLengthDefineBug=function(){if(!k())return null;try{return w([],"length",{value:1}).length!==1}catch{return!0}},R.exports=k},57877:function(R,E,e){var w=typeof Symbol<"u"&&Symbol,k=e(35638);R.exports=function(){return typeof w=="function"&&typeof Symbol=="function"&&typeof w("foo")=="symbol"&&typeof Symbol("bar")=="symbol"&&k()}},35638:function(R){R.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var E={},e=Symbol("test"),w=Object(e);if(typeof e=="string"||Object.prototype.toString.call(e)!=="[object Symbol]"||Object.prototype.toString.call(w)!=="[object Symbol]")return!1;for(e in E[e]=42,E)return!1;if(typeof Object.keys=="function"&&Object.keys(E).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(E).length!==0)return!1;var k=Object.getOwnPropertySymbols(E);if(k.length!==1||k[0]!==e||!Object.prototype.propertyIsEnumerable.call(E,e))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var i=Object.getOwnPropertyDescriptor(E,e);if(i.value!==42||i.enumerable!==!0)return!1}return!0}},84543:function(R,E,e){var w=e(35638);R.exports=function(){return w()&&!!Symbol.toStringTag}},35065:function(R,E,e){var w=e(77575);R.exports=w.call(Function.call,Object.prototype.hasOwnProperty)},95280:function(R,E){E.read=function(e,w,k,i,_){var y,h,l=8*_-i-1,t=(1<<l)-1,o=t>>1,r=-7,n=k?_-1:0,a=k?-1:1,s=e[w+n];for(n+=a,y=s&(1<<-r)-1,s>>=-r,r+=l;r>0;y=256*y+e[w+n],n+=a,r-=8);for(h=y&(1<<-r)-1,y>>=-r,r+=i;r>0;h=256*h+e[w+n],n+=a,r-=8);if(y===0)y=1-o;else{if(y===t)return h?NaN:1/0*(s?-1:1);h+=Math.pow(2,i),y-=o}return(s?-1:1)*h*Math.pow(2,y-i)},E.write=function(e,w,k,i,_,y){var h,l,t,o=8*y-_-1,r=(1<<o)-1,n=r>>1,a=_===23?Math.pow(2,-24)-Math.pow(2,-77):0,s=i?0:y-1,u=i?1:-1,p=w<0||w===0&&1/w<0?1:0;for(w=Math.abs(w),isNaN(w)||w===1/0?(l=isNaN(w)?1:0,h=r):(h=Math.floor(Math.log(w)/Math.LN2),w*(t=Math.pow(2,-h))<1&&(h--,t*=2),(w+=h+n>=1?a/t:a*Math.pow(2,1-n))*t>=2&&(h++,t/=2),h+n>=r?(l=0,h=r):h+n>=1?(l=(w*t-1)*Math.pow(2,_),h+=n):(l=w*Math.pow(2,n-1)*Math.pow(2,_),h=0));_>=8;e[k+s]=255&l,s+=u,l/=256,_-=8);for(h=h<<_|l,o+=_;o>0;e[k+s]=255&h,s+=u,h/=256,o-=8);e[k+s-u]|=128*p}},42018:function(R){typeof Object.create=="function"?R.exports=function(E,e){e&&(E.super_=e,E.prototype=Object.create(e.prototype,{constructor:{value:E,enumerable:!1,writable:!0,configurable:!0}}))}:R.exports=function(E,e){if(e){E.super_=e;var w=function(){};w.prototype=e.prototype,E.prototype=new w,E.prototype.constructor=E}}},47216:function(R,E,e){var w=e(84543)(),k=e(6614)("Object.prototype.toString"),i=function(h){return!(w&&h&&typeof h=="object"&&Symbol.toStringTag in h)&&k(h)==="[object Arguments]"},_=function(h){return!!i(h)||h!==null&&typeof h=="object"&&typeof h.length=="number"&&h.length>=0&&k(h)!=="[object Array]"&&k(h.callee)==="[object Function]"},y=function(){return i(arguments)}();i.isLegacyArguments=_,R.exports=y?i:_},54404:function(R){R.exports=!0},85395:function(R){var E,e,w=Function.prototype.toString,k=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply;if(typeof k=="function"&&typeof Object.defineProperty=="function")try{E=Object.defineProperty({},"length",{get:function(){throw e}}),e={},k(function(){throw 42},null,E)}catch(n){n!==e&&(k=null)}else k=null;var i=/^\s*class\b/,_=function(n){try{var a=w.call(n);return i.test(a)}catch{return!1}},y=function(n){try{return!_(n)&&(w.call(n),!0)}catch{return!1}},h=Object.prototype.toString,l=typeof Symbol=="function"&&!!Symbol.toStringTag,t=!(0 in[,]),o=function(){return!1};if(typeof document=="object"){var r=document.all;h.call(r)===h.call(document.all)&&(o=function(n){if((t||!n)&&(n===void 0||typeof n=="object"))try{var a=h.call(n);return(a==="[object HTMLAllCollection]"||a==="[object HTML document.all class]"||a==="[object HTMLCollection]"||a==="[object Object]")&&n("")==null}catch{}return!1})}R.exports=k?function(n){if(o(n))return!0;if(!n||typeof n!="function"&&typeof n!="object")return!1;try{k(n,null,E)}catch(a){if(a!==e)return!1}return!_(n)&&y(n)}:function(n){if(o(n))return!0;if(!n||typeof n!="function"&&typeof n!="object")return!1;if(l)return y(n);if(_(n))return!1;var a=h.call(n);return!(a!=="[object Function]"&&a!=="[object GeneratorFunction]"&&!/^\[object HTML/.test(a))&&y(n)}},65481:function(R,E,e){var w,k=Object.prototype.toString,i=Function.prototype.toString,_=/^\s*(?:function)?\*/,y=e(84543)(),h=Object.getPrototypeOf;R.exports=function(l){if(typeof l!="function")return!1;if(_.test(i.call(l)))return!0;if(!y)return k.call(l)==="[object GeneratorFunction]";if(!h)return!1;if(w===void 0){var t=function(){if(!y)return!1;try{return Function("return function*() {}")()}catch{}}();w=!!t&&h(t)}return h(l)===w}},62683:function(R){R.exports=typeof navigator<"u"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))},64274:function(R){R.exports=function(E){return E!=E}},15567:function(R,E,e){var w=e(68222),k=e(17045),i=e(64274),_=e(14922),y=e(22442),h=w(_(),Number);k(h,{getPolyfill:_,implementation:i,shim:y}),R.exports=h},14922:function(R,E,e){var w=e(64274);R.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:w}},22442:function(R,E,e){var w=e(17045),k=e(14922);R.exports=function(){var i=k();return w(Number,{isNaN:i},{isNaN:function(){return Number.isNaN!==i}}),i}},64941:function(R){R.exports=function(E){var e=typeof E;return E!==null&&(e==="object"||e==="function")}},10973:function(R){var E=Object.prototype.toString;R.exports=function(e){var w;return E.call(e)==="[object Object]"&&((w=Object.getPrototypeOf(e))===null||w===Object.getPrototypeOf({}))}},18546:function(R){R.exports=function(E){for(var e,w=E.length,k=0;k<w;k++)if(((e=E.charCodeAt(k))<9||e>13)&&e!==32&&e!==133&&e!==160&&e!==5760&&e!==6158&&(e<8192||e>8205)&&e!==8232&&e!==8233&&e!==8239&&e!==8287&&e!==8288&&e!==12288&&e!==65279)return!1;return!0}},89546:function(R){R.exports=function(E){return typeof E=="string"&&(E=E.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(E)&&/[\dz]$/i.test(E)&&E.length>4))}},9187:function(R,E,e){var w=e(31353),k=e(72077),i=e(6614),_=i("Object.prototype.toString"),y=e(84543)(),h=e(40383),l=typeof globalThis>"u"?e.g:globalThis,t=k(),o=i("Array.prototype.indexOf",!0)||function(s,u){for(var p=0;p<s.length;p+=1)if(s[p]===u)return p;return-1},r=i("String.prototype.slice"),n={},a=Object.getPrototypeOf;y&&h&&a&&w(t,function(s){var u=new l[s];if(Symbol.toStringTag in u){var p=a(u),c=h(p,Symbol.toStringTag);if(!c){var b=a(p);c=h(b,Symbol.toStringTag)}n[s]=c.get}}),R.exports=function(s){if(!s||typeof s!="object")return!1;if(!y||!(Symbol.toStringTag in s)){var u=r(_(s),8,-1);return o(t,u)>-1}return!!h&&function(p){var c=!1;return w(n,function(b,g){if(!c)try{c=b.call(p)===g}catch{}}),c}(s)}},44517:function(R){R.exports=function(){var E,e,w;function k(i,_){if(E)if(e){var y="var sharedChunk = {}; ("+E+")(sharedChunk); ("+e+")(sharedChunk);",h={};E(h),(w=_(h)).workerUrl=window.URL.createObjectURL(new Blob([y],{type:"text/javascript"}))}else e=_;else E=_}return k(0,function(i){function _(S,F){return S(F={exports:{}},F.exports),F.exports}var y="1.10.1",h=l;function l(S,F,K,pe){this.cx=3*S,this.bx=3*(K-S)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*F,this.by=3*(pe-F)-this.cy,this.ay=1-this.cy-this.by,this.p1x=S,this.p1y=pe,this.p2x=K,this.p2y=pe}l.prototype.sampleCurveX=function(S){return((this.ax*S+this.bx)*S+this.cx)*S},l.prototype.sampleCurveY=function(S){return((this.ay*S+this.by)*S+this.cy)*S},l.prototype.sampleCurveDerivativeX=function(S){return(3*this.ax*S+2*this.bx)*S+this.cx},l.prototype.solveCurveX=function(S,F){var K,pe,Oe,Fe,Ge;for(F===void 0&&(F=1e-6),Oe=S,Ge=0;Ge<8;Ge++){if(Fe=this.sampleCurveX(Oe)-S,Math.abs(Fe)<F)return Oe;var tt=this.sampleCurveDerivativeX(Oe);if(Math.abs(tt)<1e-6)break;Oe-=Fe/tt}if((Oe=S)<(K=0))return K;if(Oe>(pe=1))return pe;for(;K<pe;){if(Fe=this.sampleCurveX(Oe),Math.abs(Fe-S)<F)return Oe;S>Fe?K=Oe:pe=Oe,Oe=.5*(pe-K)+K}return Oe},l.prototype.solve=function(S,F){return this.sampleCurveY(this.solveCurveX(S,F))};var t=o;function o(S,F){this.x=S,this.y=F}function r(S,F,K,pe){var Oe=new h(S,F,K,pe);return function(Fe){return Oe.solve(Fe)}}o.prototype={clone:function(){return new o(this.x,this.y)},add:function(S){return this.clone()._add(S)},sub:function(S){return this.clone()._sub(S)},multByPoint:function(S){return this.clone()._multByPoint(S)},divByPoint:function(S){return this.clone()._divByPoint(S)},mult:function(S){return this.clone()._mult(S)},div:function(S){return this.clone()._div(S)},rotate:function(S){return this.clone()._rotate(S)},rotateAround:function(S,F){return this.clone()._rotateAround(S,F)},matMult:function(S){return this.clone()._matMult(S)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(S){return this.x===S.x&&this.y===S.y},dist:function(S){return Math.sqrt(this.distSqr(S))},distSqr:function(S){var F=S.x-this.x,K=S.y-this.y;return F*F+K*K},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(S){return Math.atan2(this.y-S.y,this.x-S.x)},angleWith:function(S){return this.angleWithSep(S.x,S.y)},angleWithSep:function(S,F){return Math.atan2(this.x*F-this.y*S,this.x*S+this.y*F)},_matMult:function(S){var F=S[0]*this.x+S[1]*this.y,K=S[2]*this.x+S[3]*this.y;return this.x=F,this.y=K,this},_add:function(S){return this.x+=S.x,this.y+=S.y,this},_sub:function(S){return this.x-=S.x,this.y-=S.y,this},_mult:function(S){return this.x*=S,this.y*=S,this},_div:function(S){return this.x/=S,this.y/=S,this},_multByPoint:function(S){return this.x*=S.x,this.y*=S.y,this},_divByPoint:function(S){return this.x/=S.x,this.y/=S.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var S=this.y;return this.y=this.x,this.x=-S,this},_rotate:function(S){var F=Math.cos(S),K=Math.sin(S),pe=F*this.x-K*this.y,Oe=K*this.x+F*this.y;return this.x=pe,this.y=Oe,this},_rotateAround:function(S,F){var K=Math.cos(S),pe=Math.sin(S),Oe=F.x+K*(this.x-F.x)-pe*(this.y-F.y),Fe=F.y+pe*(this.x-F.x)+K*(this.y-F.y);return this.x=Oe,this.y=Fe,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},o.convert=function(S){return S instanceof o?S:Array.isArray(S)?new o(S[0],S[1]):S};var n=r(.25,.1,.25,1);function a(S,F,K){return Math.min(K,Math.max(F,S))}function s(S,F,K){var pe=K-F,Oe=((S-F)%pe+pe)%pe+F;return Oe===F?K:Oe}function u(S){for(var F=[],K=arguments.length-1;K-- >0;)F[K]=arguments[K+1];for(var pe=0,Oe=F;pe<Oe.length;pe+=1){var Fe=Oe[pe];for(var Ge in Fe)S[Ge]=Fe[Ge]}return S}var p=1;function c(){return p++}function b(){return function S(F){return F?(F^16*Math.random()>>F/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,S)}()}function g(S){return!!S&&/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(S)}function f(S,F){S.forEach(function(K){F[K]&&(F[K]=F[K].bind(F))})}function v(S,F){return S.indexOf(F,S.length-F.length)!==-1}function m(S,F,K){var pe={};for(var Oe in S)pe[Oe]=F.call(K||this,S[Oe],Oe,S);return pe}function x(S,F,K){var pe={};for(var Oe in S)F.call(K||this,S[Oe],Oe,S)&&(pe[Oe]=S[Oe]);return pe}function T(S){return Array.isArray(S)?S.map(T):typeof S=="object"&&S?m(S,T):S}var d={};function M(S){d[S]||(typeof console<"u"&&console.warn(S),d[S]=!0)}function A(S,F,K){return(K.y-S.y)*(F.x-S.x)>(F.y-S.y)*(K.x-S.x)}function C(S){for(var F=0,K=0,pe=S.length,Oe=pe-1,Fe=void 0,Ge=void 0;K<pe;Oe=K++)Fe=S[K],F+=((Ge=S[Oe]).x-Fe.x)*(Fe.y+Ge.y);return F}function P(){return typeof WorkerGlobalScope<"u"&&typeof self<"u"&&self instanceof WorkerGlobalScope}function O(S){var F={};if(S.replace(/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,function(pe,Oe,Fe,Ge){var tt=Fe||Ge;return F[Oe]=!tt||tt.toLowerCase(),""}),F["max-age"]){var K=parseInt(F["max-age"],10);isNaN(K)?delete F["max-age"]:F["max-age"]=K}return F}var z=null;function B(S){if(z==null){var F=S.navigator?S.navigator.userAgent:null;z=!!S.safari||!(!F||!(/\b(iPad|iPhone|iPod)\b/.test(F)||F.match("Safari")&&!F.match("Chrome")))}return z}function Y(S){try{var F=self[S];return F.setItem("_mapbox_test_",1),F.removeItem("_mapbox_test_"),!0}catch{return!1}}var D,G,V,j,W=self.performance&&self.performance.now?self.performance.now.bind(self.performance):Date.now.bind(Date),Z=self.requestAnimationFrame||self.mozRequestAnimationFrame||self.webkitRequestAnimationFrame||self.msRequestAnimationFrame,ie=self.cancelAnimationFrame||self.mozCancelAnimationFrame||self.webkitCancelAnimationFrame||self.msCancelAnimationFrame,te={now:W,frame:function(S){var F=Z(S);return{cancel:function(){return ie(F)}}},getImageData:function(S,F){F===void 0&&(F=0);var K=self.document.createElement("canvas"),pe=K.getContext("2d");if(!pe)throw new Error("failed to create canvas 2d context");return K.width=S.width,K.height=S.height,pe.drawImage(S,0,0,S.width,S.height),pe.getImageData(-F,-F,S.width+2*F,S.height+2*F)},resolveURL:function(S){return D||(D=self.document.createElement("a")),D.href=S,D.href},hardwareConcurrency:self.navigator.hardwareConcurrency||4,get devicePixelRatio(){return self.devicePixelRatio},get prefersReducedMotion(){return!!self.matchMedia&&(G==null&&(G=self.matchMedia("(prefers-reduced-motion: reduce)")),G.matches)}},J={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?this.API_URL.indexOf("https://api.mapbox.cn")===0?"https://events.mapbox.cn/events/v2":this.API_URL.indexOf("https://api.mapbox.com")===0?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},X={supported:!1,testSupport:function(S){!ee&&j&&(re?oe(S):V=S)}},ee=!1,re=!1;function oe(S){var F=S.createTexture();S.bindTexture(S.TEXTURE_2D,F);try{if(S.texImage2D(S.TEXTURE_2D,0,S.RGBA,S.RGBA,S.UNSIGNED_BYTE,j),S.isContextLost())return;X.supported=!0}catch{}S.deleteTexture(F),ee=!0}self.document&&((j=self.document.createElement("img")).onload=function(){V&&oe(V),V=null,re=!0},j.onerror=function(){ee=!0,V=null},j.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");var ue="01",ce=function(S,F){this._transformRequestFn=S,this._customAccessToken=F,this._createSkuToken()};function de(S){return S.indexOf("mapbox:")===0}ce.prototype._createSkuToken=function(){var S=function(){for(var F="",K=0;K<10;K++)F+="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"[Math.floor(62*Math.random())];return{token:["1",ue,F].join(""),tokenExpiresAt:Date.now()+432e5}}();this._skuToken=S.token,this._skuTokenExpiresAt=S.tokenExpiresAt},ce.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},ce.prototype.transformRequest=function(S,F){return this._transformRequestFn&&this._transformRequestFn(S,F)||{url:S}},ce.prototype.normalizeStyleURL=function(S,F){if(!de(S))return S;var K=we(S);return K.path="/styles/v1"+K.path,this._makeAPIURL(K,this._customAccessToken||F)},ce.prototype.normalizeGlyphsURL=function(S,F){if(!de(S))return S;var K=we(S);return K.path="/fonts/v1"+K.path,this._makeAPIURL(K,this._customAccessToken||F)},ce.prototype.normalizeSourceURL=function(S,F){if(!de(S))return S;var K=we(S);return K.path="/v4/"+K.authority+".json",K.params.push("secure"),this._makeAPIURL(K,this._customAccessToken||F)},ce.prototype.normalizeSpriteURL=function(S,F,K,pe){var Oe=we(S);return de(S)?(Oe.path="/styles/v1"+Oe.path+"/sprite"+F+K,this._makeAPIURL(Oe,this._customAccessToken||pe)):(Oe.path+=""+F+K,xe(Oe))},ce.prototype.normalizeTileURL=function(S,F){if(this._isSkuTokenExpired()&&this._createSkuToken(),S&&!de(S))return S;var K=we(S),pe=te.devicePixelRatio>=2||F===512?"@2x":"",Oe=X.supported?".webp":"$1";K.path=K.path.replace(/(\.(png|jpg)\d*)(?=$)/,""+pe+Oe),K.path=K.path.replace(/^.+\/v4\//,"/"),K.path="/v4"+K.path;var Fe=this._customAccessToken||function(Ge){for(var tt=0,ct=Ge;tt<ct.length;tt+=1){var kt=ct[tt].match(/^access_token=(.*)$/);if(kt)return kt[1]}return null}(K.params)||J.ACCESS_TOKEN;return J.REQUIRE_ACCESS_TOKEN&&Fe&&this._skuToken&&K.params.push("sku="+this._skuToken),this._makeAPIURL(K,Fe)},ce.prototype.canonicalizeTileURL=function(S,F){var K=we(S);if(!K.path.match(/(^\/v4\/)/)||!K.path.match(/\.[\w]+$/))return S;var pe="mapbox://tiles/";pe+=K.path.replace("/v4/","");var Oe=K.params;return F&&(Oe=Oe.filter(function(Fe){return!Fe.match(/^access_token=/)})),Oe.length&&(pe+="?"+Oe.join("&")),pe},ce.prototype.canonicalizeTileset=function(S,F){for(var K=!!F&&de(F),pe=[],Oe=0,Fe=S.tiles||[];Oe<Fe.length;Oe+=1){var Ge=Fe[Oe];_e(Ge)?pe.push(this.canonicalizeTileURL(Ge,K)):pe.push(Ge)}return pe},ce.prototype._makeAPIURL=function(S,F){var K="See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes",pe=we(J.API_URL);if(S.protocol=pe.protocol,S.authority=pe.authority,pe.path!=="/"&&(S.path=""+pe.path+S.path),!J.REQUIRE_ACCESS_TOKEN)return xe(S);if(!(F=F||J.ACCESS_TOKEN))throw new Error("An API access token is required to use Mapbox GL. "+K);if(F[0]==="s")throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+K);return S.params=S.params.filter(function(Oe){return Oe.indexOf("access_token")===-1}),S.params.push("access_token="+F),xe(S)};var me=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function _e(S){return me.test(S)}var Se=/^(\w+):\/\/([^/?]*)(\/[^?]+)?\??(.+)?/;function we(S){var F=S.match(Se);if(!F)throw new Error("Unable to parse URL object");return{protocol:F[1],authority:F[2],path:F[3]||"/",params:F[4]?F[4].split("&"):[]}}function xe(S){var F=S.params.length?"?"+S.params.join("&"):"";return S.protocol+"://"+S.authority+S.path+F}var De="mapbox.eventData";function Ee(S){if(!S)return null;var F,K=S.split(".");if(!K||K.length!==3)return null;try{return JSON.parse((F=K[1],decodeURIComponent(self.atob(F).split("").map(function(pe){return"%"+("00"+pe.charCodeAt(0).toString(16)).slice(-2)}).join(""))))}catch{return null}}var Me=function(S){this.type=S,this.anonId=null,this.eventData={},this.queue=[],this.pendingRequest=null};Me.prototype.getStorageKey=function(S){var F,K,pe=Ee(J.ACCESS_TOKEN);return F=pe&&pe.u?(K=pe.u,self.btoa(encodeURIComponent(K).replace(/%([0-9A-F]{2})/g,function(Oe,Fe){return String.fromCharCode(+("0x"+Fe))}))):J.ACCESS_TOKEN||"",S?De+"."+S+":"+F:De+":"+F},Me.prototype.fetchEventData=function(){var S=Y("localStorage"),F=this.getStorageKey(),K=this.getStorageKey("uuid");if(S)try{var pe=self.localStorage.getItem(F);pe&&(this.eventData=JSON.parse(pe));var Oe=self.localStorage.getItem(K);Oe&&(this.anonId=Oe)}catch{M("Unable to read from LocalStorage")}},Me.prototype.saveEventData=function(){var S=Y("localStorage"),F=this.getStorageKey(),K=this.getStorageKey("uuid");if(S)try{self.localStorage.setItem(K,this.anonId),Object.keys(this.eventData).length>=1&&self.localStorage.setItem(F,JSON.stringify(this.eventData))}catch{M("Unable to write to LocalStorage")}},Me.prototype.processRequests=function(S){},Me.prototype.postEvent=function(S,F,K,pe){var Oe=this;if(J.EVENTS_URL){var Fe=we(J.EVENTS_URL);Fe.params.push("access_token="+(pe||J.ACCESS_TOKEN||""));var Ge={event:this.type,created:new Date(S).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:y,skuId:ue,userId:this.anonId},tt=F?u(Ge,F):Ge,ct={url:xe(Fe),headers:{"Content-Type":"text/plain"},body:JSON.stringify([tt])};this.pendingRequest=St(ct,function(kt){Oe.pendingRequest=null,K(kt),Oe.saveEventData(),Oe.processRequests(pe)})}},Me.prototype.queueRequest=function(S,F){this.queue.push(S),this.processRequests(F)};var he,fe,ae=function(S){function F(){S.call(this,"map.load"),this.success={},this.skuToken=""}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.postMapLoadEvent=function(K,pe,Oe,Fe){this.skuToken=Oe,(J.EVENTS_URL&&Fe||J.ACCESS_TOKEN&&Array.isArray(K)&&K.some(function(Ge){return de(Ge)||_e(Ge)}))&&this.queueRequest({id:pe,timestamp:Date.now()},Fe)},F.prototype.processRequests=function(K){var pe=this;if(!this.pendingRequest&&this.queue.length!==0){var Oe=this.queue.shift(),Fe=Oe.id,Ge=Oe.timestamp;Fe&&this.success[Fe]||(this.anonId||this.fetchEventData(),g(this.anonId)||(this.anonId=b()),this.postEvent(Ge,{skuToken:this.skuToken},function(tt){tt||Fe&&(pe.success[Fe]=!0)},K))}},F}(Me),be=function(S){function F(K){S.call(this,"appUserTurnstile"),this._customAccessToken=K}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.postTurnstileEvent=function(K,pe){J.EVENTS_URL&&J.ACCESS_TOKEN&&Array.isArray(K)&&K.some(function(Oe){return de(Oe)||_e(Oe)})&&this.queueRequest(Date.now(),pe)},F.prototype.processRequests=function(K){var pe=this;if(!this.pendingRequest&&this.queue.length!==0){this.anonId&&this.eventData.lastSuccess&&this.eventData.tokenU||this.fetchEventData();var Oe=Ee(J.ACCESS_TOKEN),Fe=Oe?Oe.u:J.ACCESS_TOKEN,Ge=Fe!==this.eventData.tokenU;g(this.anonId)||(this.anonId=b(),Ge=!0);var tt=this.queue.shift();if(this.eventData.lastSuccess){var ct=new Date(this.eventData.lastSuccess),kt=new Date(tt),Mt=(tt-this.eventData.lastSuccess)/864e5;Ge=Ge||Mt>=1||Mt<-1||ct.getDate()!==kt.getDate()}else Ge=!0;if(!Ge)return this.processRequests();this.postEvent(tt,{"enabled.telemetry":!1},function(Dt){Dt||(pe.eventData.lastSuccess=tt,pe.eventData.tokenU=Fe)},K)}},F}(Me),Ie=new be,Te=Ie.postTurnstileEvent.bind(Ie),Ne=new ae,qe=Ne.postMapLoadEvent.bind(Ne),ve="mapbox-tiles",Ce=500,Ae=50,ze=42e4;function Ue(){self.caches&&!he&&(he=self.caches.open(ve))}function Ve(S,F,K){if(Ue(),he){var pe={status:F.status,statusText:F.statusText,headers:new self.Headers};F.headers.forEach(function(Fe,Ge){return pe.headers.set(Ge,Fe)});var Oe=O(F.headers.get("Cache-Control")||"");Oe["no-store"]||(Oe["max-age"]&&pe.headers.set("Expires",new Date(K+1e3*Oe["max-age"]).toUTCString()),new Date(pe.headers.get("Expires")).getTime()-K<ze||function(Fe,Ge){if(fe===void 0)try{new Response(new ReadableStream),fe=!0}catch{fe=!1}fe?Ge(Fe.body):Fe.blob().then(Ge)}(F,function(Fe){var Ge=new self.Response(Fe,pe);Ue(),he&&he.then(function(tt){return tt.put(Ye(S.url),Ge)}).catch(function(tt){return M(tt.message)})}))}}function Ye(S){var F=S.indexOf("?");return F<0?S:S.slice(0,F)}function $e(S,F){if(Ue(),!he)return F(null);var K=Ye(S.url);he.then(function(pe){pe.match(K).then(function(Oe){var Fe=function(Ge){if(!Ge)return!1;var tt=new Date(Ge.headers.get("Expires")||0),ct=O(Ge.headers.get("Cache-Control")||"");return tt>Date.now()&&!ct["no-cache"]}(Oe);pe.delete(K),Fe&&pe.put(K,Oe.clone()),F(null,Oe,Fe)}).catch(F)}).catch(F)}var rt,ht=1/0;function nt(){return rt==null&&(rt=self.OffscreenCanvas&&new self.OffscreenCanvas(1,1).getContext("2d")&&typeof self.createImageBitmap=="function"),rt}var bt={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image"};typeof Object.freeze=="function"&&Object.freeze(bt);var wt=function(S){function F(K,pe,Oe){pe===401&&_e(Oe)&&(K+=": you may have provided an invalid Mapbox access token. See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes"),S.call(this,K),this.status=pe,this.url=Oe,this.name=this.constructor.name,this.message=K}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.toString=function(){return this.name+": "+this.message+" ("+this.status+"): "+this.url},F}(Error),ut=P()?function(){return self.worker&&self.worker.referrer}:function(){return(self.location.protocol==="blob:"?self.parent:self).location.href};function lt(S,F){var K,pe=new self.AbortController,Oe=new self.Request(S.url,{method:S.method||"GET",body:S.body,credentials:S.credentials,headers:S.headers,referrer:ut(),signal:pe.signal}),Fe=!1,Ge=!1,tt=(K=Oe.url).indexOf("sku=")>0&&_e(K);S.type==="json"&&Oe.headers.set("Accept","application/json");var ct=function(Mt,Dt,qt){if(!Ge){if(Mt&&Mt.message!=="SecurityError"&&M(Mt),Dt&&qt)return kt(Dt);var Nt=Date.now();self.fetch(Oe).then(function(an){if(an.ok){var un=tt?an.clone():null;return kt(an,un,Nt)}return F(new wt(an.statusText,an.status,S.url))}).catch(function(an){an.code!==20&&F(new Error(an.message))})}},kt=function(Mt,Dt,qt){(S.type==="arrayBuffer"?Mt.arrayBuffer():S.type==="json"?Mt.json():Mt.text()).then(function(Nt){Ge||(Dt&&qt&&Ve(Oe,Dt,qt),Fe=!0,F(null,Nt,Mt.headers.get("Cache-Control"),Mt.headers.get("Expires")))}).catch(function(Nt){Ge||F(new Error(Nt.message))})};return tt?$e(Oe,ct):ct(null,null),{cancel:function(){Ge=!0,Fe||pe.abort()}}}var Tt=function(S,F){if(K=S.url,!(/^file:/.test(K)||/^file:/.test(ut())&&!/^\w+:/.test(K))){if(self.fetch&&self.Request&&self.AbortController&&self.Request.prototype.hasOwnProperty("signal"))return lt(S,F);if(P()&&self.worker&&self.worker.actor)return self.worker.actor.send("getResource",S,F,void 0,!0)}var K;return function(pe,Oe){var Fe=new self.XMLHttpRequest;for(var Ge in Fe.open(pe.method||"GET",pe.url,!0),pe.type==="arrayBuffer"&&(Fe.responseType="arraybuffer"),pe.headers)Fe.setRequestHeader(Ge,pe.headers[Ge]);return pe.type==="json"&&(Fe.responseType="text",Fe.setRequestHeader("Accept","application/json")),Fe.withCredentials=pe.credentials==="include",Fe.onerror=function(){Oe(new Error(Fe.statusText))},Fe.onload=function(){if((Fe.status>=200&&Fe.status<300||Fe.status===0)&&Fe.response!==null){var tt=Fe.response;if(pe.type==="json")try{tt=JSON.parse(Fe.response)}catch(ct){return Oe(ct)}Oe(null,tt,Fe.getResponseHeader("Cache-Control"),Fe.getResponseHeader("Expires"))}else Oe(new wt(Fe.statusText,Fe.status,pe.url))},Fe.send(pe.body),{cancel:function(){return Fe.abort()}}}(S,F)},Et=function(S,F){return Tt(u(S,{type:"arrayBuffer"}),F)},St=function(S,F){return Tt(u(S,{method:"POST"}),F)},Ft,zt;Ft=[],zt=0;var Je=function(S,F){if(X.supported&&(S.headers||(S.headers={}),S.headers.accept="image/webp,*/*"),zt>=J.MAX_PARALLEL_IMAGE_REQUESTS){var K={requestParameters:S,callback:F,cancelled:!1,cancel:function(){this.cancelled=!0}};return Ft.push(K),K}zt++;var pe=!1,Oe=function(){if(!pe)for(pe=!0,zt--;Ft.length&&zt<J.MAX_PARALLEL_IMAGE_REQUESTS;){var Ge=Ft.shift(),tt=Ge.requestParameters,ct=Ge.callback;Ge.cancelled||(Ge.cancel=Je(tt,ct).cancel)}},Fe=Et(S,function(Ge,tt,ct,kt){Oe(),Ge?F(Ge):tt&&(nt()?function(Mt,Dt){var qt=new self.Blob([new Uint8Array(Mt)],{type:"image/png"});self.createImageBitmap(qt).then(function(Nt){Dt(null,Nt)}).catch(function(Nt){Dt(new Error("Could not load image because of "+Nt.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))})}(tt,F):function(Mt,Dt,qt,Nt){var an=new self.Image,un=self.URL;an.onload=function(){Dt(null,an),un.revokeObjectURL(an.src)},an.onerror=function(){return Dt(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))};var Sn=new self.Blob([new Uint8Array(Mt)],{type:"image/png"});an.cacheControl=qt,an.expires=Nt,an.src=Mt.byteLength?un.createObjectURL(Sn):"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII="}(tt,F,ct,kt))});return{cancel:function(){Fe.cancel(),Oe()}}};function et(S,F,K){K[S]&&K[S].indexOf(F)!==-1||(K[S]=K[S]||[],K[S].push(F))}function Ze(S,F,K){if(K&&K[S]){var pe=K[S].indexOf(F);pe!==-1&&K[S].splice(pe,1)}}var Qe=function(S,F){F===void 0&&(F={}),u(this,F),this.type=S},st=function(S){function F(K,pe){pe===void 0&&(pe={}),S.call(this,"error",u({error:K},pe))}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F}(Qe),ft=function(){};ft.prototype.on=function(S,F){return this._listeners=this._listeners||{},et(S,F,this._listeners),this},ft.prototype.off=function(S,F){return Ze(S,F,this._listeners),Ze(S,F,this._oneTimeListeners),this},ft.prototype.once=function(S,F){return this._oneTimeListeners=this._oneTimeListeners||{},et(S,F,this._oneTimeListeners),this},ft.prototype.fire=function(S,F){typeof S=="string"&&(S=new Qe(S,F||{}));var K=S.type;if(this.listens(K)){S.target=this;for(var pe=0,Oe=this._listeners&&this._listeners[K]?this._listeners[K].slice():[];pe<Oe.length;pe+=1)Oe[pe].call(this,S);for(var Fe=0,Ge=this._oneTimeListeners&&this._oneTimeListeners[K]?this._oneTimeListeners[K].slice():[];Fe<Ge.length;Fe+=1){var tt=Ge[Fe];Ze(K,tt,this._oneTimeListeners),tt.call(this,S)}var ct=this._eventedParent;ct&&(u(S,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),ct.fire(S))}else S instanceof st&&console.error(S.error);return this},ft.prototype.listens=function(S){return this._listeners&&this._listeners[S]&&this._listeners[S].length>0||this._oneTimeListeners&&this._oneTimeListeners[S]&&this._oneTimeListeners[S].length>0||this._eventedParent&&this._eventedParent.listens(S)},ft.prototype.setEventedParent=function(S,F){return this._eventedParent=S,this._eventedParentData=F,this};var Be={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},expression_name:{type:"enum",values:{let:{group:"Variable binding"},var:{group:"Variable binding"},literal:{group:"Types"},array:{group:"Types"},at:{group:"Lookup"},in:{group:"Lookup"},"index-of":{group:"Lookup"},slice:{group:"Lookup"},case:{group:"Decision"},match:{group:"Decision"},coalesce:{group:"Decision"},step:{group:"Ramps, scales, curves"},interpolate:{group:"Ramps, scales, curves"},"interpolate-hcl":{group:"Ramps, scales, curves"},"interpolate-lab":{group:"Ramps, scales, curves"},ln2:{group:"Math"},pi:{group:"Math"},e:{group:"Math"},typeof:{group:"Types"},string:{group:"Types"},number:{group:"Types"},boolean:{group:"Types"},object:{group:"Types"},collator:{group:"Types"},format:{group:"Types"},image:{group:"Types"},"number-format":{group:"Types"},"to-string":{group:"Types"},"to-number":{group:"Types"},"to-boolean":{group:"Types"},"to-rgba":{group:"Color"},"to-color":{group:"Types"},rgb:{group:"Color"},rgba:{group:"Color"},get:{group:"Lookup"},has:{group:"Lookup"},length:{group:"Lookup"},properties:{group:"Feature data"},"feature-state":{group:"Feature data"},"geometry-type":{group:"Feature data"},id:{group:"Feature data"},zoom:{group:"Zoom"},"heatmap-density":{group:"Heatmap"},"line-progress":{group:"Feature data"},accumulated:{group:"Feature data"},"+":{group:"Math"},"*":{group:"Math"},"-":{group:"Math"},"/":{group:"Math"},"%":{group:"Math"},"^":{group:"Math"},sqrt:{group:"Math"},log10:{group:"Math"},ln:{group:"Math"},log2:{group:"Math"},sin:{group:"Math"},cos:{group:"Math"},tan:{group:"Math"},asin:{group:"Math"},acos:{group:"Math"},atan:{group:"Math"},min:{group:"Math"},max:{group:"Math"},round:{group:"Math"},abs:{group:"Math"},ceil:{group:"Math"},floor:{group:"Math"},distance:{group:"Math"},"==":{group:"Decision"},"!=":{group:"Decision"},">":{group:"Decision"},"<":{group:"Decision"},">=":{group:"Decision"},"<=":{group:"Decision"},all:{group:"Decision"},any:{group:"Decision"},"!":{group:"Decision"},within:{group:"Decision"},"is-supported-script":{group:"String"},upcase:{group:"String"},downcase:{group:"String"},concat:{group:"String"},"resolved-locale":{group:"String"}}},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}},je=function(S,F,K,pe){this.message=(S?S+": ":"")+K,pe&&(this.identifier=pe),F!=null&&F.__line__&&(this.line=F.__line__)};function at(S){var F=S.key,K=S.value;return K?[new je(F,K,"constants have been deprecated as of v8")]:[]}function ot(S){for(var F=[],K=arguments.length-1;K-- >0;)F[K]=arguments[K+1];for(var pe=0,Oe=F;pe<Oe.length;pe+=1){var Fe=Oe[pe];for(var Ge in Fe)S[Ge]=Fe[Ge]}return S}function xt(S){return S instanceof Number||S instanceof String||S instanceof Boolean?S.valueOf():S}function yt(S){if(Array.isArray(S))return S.map(yt);if(S instanceof Object&&!(S instanceof Number||S instanceof String||S instanceof Boolean)){var F={};for(var K in S)F[K]=yt(S[K]);return F}return xt(S)}var _t=function(S){function F(K,pe){S.call(this,pe),this.message=pe,this.key=K}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F}(Error),gt=function(S,F){F===void 0&&(F=[]),this.parent=S,this.bindings={};for(var K=0,pe=F;K<pe.length;K+=1){var Oe=pe[K],Fe=Oe[0],Ge=Oe[1];this.bindings[Fe]=Ge}};gt.prototype.concat=function(S){return new gt(this,S)},gt.prototype.get=function(S){if(this.bindings[S])return this.bindings[S];if(this.parent)return this.parent.get(S);throw new Error(S+" not found in scope.")},gt.prototype.has=function(S){return!!this.bindings[S]||!!this.parent&&this.parent.has(S)};var Ct={kind:"null"},dt={kind:"number"},vt={kind:"string"},At={kind:"boolean"},Bt={kind:"color"},jt={kind:"object"},Ut={kind:"value"},tn={kind:"collator"},Xt={kind:"formatted"},Qt={kind:"resolvedImage"};function Gt(S,F){return{kind:"array",itemType:S,N:F}}function vn(S){if(S.kind==="array"){var F=vn(S.itemType);return typeof S.N=="number"?"array<"+F+", "+S.N+">":S.itemType.kind==="value"?"array":"array<"+F+">"}return S.kind}var Tn=[Ct,dt,vt,At,Bt,Xt,jt,Gt(Ut),Qt];function dn(S,F){if(F.kind==="error")return null;if(S.kind==="array"){if(F.kind==="array"&&(F.N===0&&F.itemType.kind==="value"||!dn(S.itemType,F.itemType))&&(typeof S.N!="number"||S.N===F.N))return null}else{if(S.kind===F.kind)return null;if(S.kind==="value"){for(var K=0,pe=Tn;K<pe.length;K+=1)if(!dn(pe[K],F))return null}}return"Expected "+vn(S)+" but found "+vn(F)+" instead."}function Yt(S,F){return F.some(function(K){return K.kind===S.kind})}function ln(S,F){return F.some(function(K){return K==="null"?S===null:K==="array"?Array.isArray(S):K==="object"?S&&!Array.isArray(S)&&typeof S=="object":K===typeof S})}var nn=_(function(S,F){var K={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function pe(ct){return(ct=Math.round(ct))<0?0:ct>255?255:ct}function Oe(ct){return ct<0?0:ct>1?1:ct}function Fe(ct){return ct[ct.length-1]==="%"?pe(parseFloat(ct)/100*255):pe(parseInt(ct))}function Ge(ct){return ct[ct.length-1]==="%"?Oe(parseFloat(ct)/100):Oe(parseFloat(ct))}function tt(ct,kt,Mt){return Mt<0?Mt+=1:Mt>1&&(Mt-=1),6*Mt<1?ct+(kt-ct)*Mt*6:2*Mt<1?kt:3*Mt<2?ct+(kt-ct)*(2/3-Mt)*6:ct}try{F.parseCSSColor=function(ct){var kt,Mt=ct.replace(/ /g,"").toLowerCase();if(Mt in K)return K[Mt].slice();if(Mt[0]==="#")return Mt.length===4?(kt=parseInt(Mt.substr(1),16))>=0&&kt<=4095?[(3840&kt)>>4|(3840&kt)>>8,240&kt|(240&kt)>>4,15&kt|(15&kt)<<4,1]:null:Mt.length===7&&(kt=parseInt(Mt.substr(1),16))>=0&&kt<=16777215?[(16711680&kt)>>16,(65280&kt)>>8,255&kt,1]:null;var Dt=Mt.indexOf("("),qt=Mt.indexOf(")");if(Dt!==-1&&qt+1===Mt.length){var Nt=Mt.substr(0,Dt),an=Mt.substr(Dt+1,qt-(Dt+1)).split(","),un=1;switch(Nt){case"rgba":if(an.length!==4)return null;un=Ge(an.pop());case"rgb":return an.length!==3?null:[Fe(an[0]),Fe(an[1]),Fe(an[2]),un];case"hsla":if(an.length!==4)return null;un=Ge(an.pop());case"hsl":if(an.length!==3)return null;var Sn=(parseFloat(an[0])%360+360)%360/360,Mn=Ge(an[1]),zn=Ge(an[2]),Bn=zn<=.5?zn*(Mn+1):zn+Mn-zn*Mn,Gn=2*zn-Bn;return[pe(255*tt(Gn,Bn,Sn+1/3)),pe(255*tt(Gn,Bn,Sn)),pe(255*tt(Gn,Bn,Sn-1/3)),un];default:return null}}return null}}catch{}}),fn=nn.parseCSSColor,mn=function(S,F,K,pe){pe===void 0&&(pe=1),this.r=S,this.g=F,this.b=K,this.a=pe};mn.parse=function(S){if(S){if(S instanceof mn)return S;if(typeof S=="string"){var F=fn(S);if(F)return new mn(F[0]/255*F[3],F[1]/255*F[3],F[2]/255*F[3],F[3])}}},mn.prototype.toString=function(){var S=this.toArray(),F=S[0],K=S[1],pe=S[2],Oe=S[3];return"rgba("+Math.round(F)+","+Math.round(K)+","+Math.round(pe)+","+Oe+")"},mn.prototype.toArray=function(){var S=this,F=S.r,K=S.g,pe=S.b,Oe=S.a;return Oe===0?[0,0,0,0]:[255*F/Oe,255*K/Oe,255*pe/Oe,Oe]},mn.black=new mn(0,0,0,1),mn.white=new mn(1,1,1,1),mn.transparent=new mn(0,0,0,0),mn.red=new mn(1,0,0,1);var xn=function(S,F,K){this.sensitivity=S?F?"variant":"case":F?"accent":"base",this.locale=K,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};xn.prototype.compare=function(S,F){return this.collator.compare(S,F)},xn.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var Pn=function(S,F,K,pe,Oe){this.text=S,this.image=F,this.scale=K,this.fontStack=pe,this.textColor=Oe},Dn=function(S){this.sections=S};Dn.fromString=function(S){return new Dn([new Pn(S,null,null,null,null)])},Dn.prototype.isEmpty=function(){return this.sections.length===0||!this.sections.some(function(S){return S.text.length!==0||S.image&&S.image.name.length!==0})},Dn.factory=function(S){return S instanceof Dn?S:Dn.fromString(S)},Dn.prototype.toString=function(){return this.sections.length===0?"":this.sections.map(function(S){return S.text}).join("")},Dn.prototype.serialize=function(){for(var S=["format"],F=0,K=this.sections;F<K.length;F+=1){var pe=K[F];if(pe.image)S.push(["image",pe.image.name]);else{S.push(pe.text);var Oe={};pe.fontStack&&(Oe["text-font"]=["literal",pe.fontStack.split(",")]),pe.scale&&(Oe["font-scale"]=pe.scale),pe.textColor&&(Oe["text-color"]=["rgba"].concat(pe.textColor.toArray())),S.push(Oe)}}return S};var En=function(S){this.name=S.name,this.available=S.available};function Fn(S,F,K,pe){return typeof S=="number"&&S>=0&&S<=255&&typeof F=="number"&&F>=0&&F<=255&&typeof K=="number"&&K>=0&&K<=255?pe===void 0||typeof pe=="number"&&pe>=0&&pe<=1?null:"Invalid rgba value ["+[S,F,K,pe].join(", ")+"]: 'a' must be between 0 and 1.":"Invalid rgba value ["+(typeof pe=="number"?[S,F,K,pe]:[S,F,K]).join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}function er(S){if(S===null||typeof S=="string"||typeof S=="boolean"||typeof S=="number"||S instanceof mn||S instanceof xn||S instanceof Dn||S instanceof En)return!0;if(Array.isArray(S)){for(var F=0,K=S;F<K.length;F+=1)if(!er(K[F]))return!1;return!0}if(typeof S=="object"){for(var pe in S)if(!er(S[pe]))return!1;return!0}return!1}function ir(S){if(S===null)return Ct;if(typeof S=="string")return vt;if(typeof S=="boolean")return At;if(typeof S=="number")return dt;if(S instanceof mn)return Bt;if(S instanceof xn)return tn;if(S instanceof Dn)return Xt;if(S instanceof En)return Qt;if(Array.isArray(S)){for(var F,K=S.length,pe=0,Oe=S;pe<Oe.length;pe+=1){var Fe=ir(Oe[pe]);if(F){if(F===Fe)continue;F=Ut;break}F=Fe}return Gt(F||Ut,K)}return jt}function fr(S){var F=typeof S;return S===null?"":F==="string"||F==="number"||F==="boolean"?String(S):S instanceof mn||S instanceof Dn||S instanceof En?S.toString():JSON.stringify(S)}En.prototype.toString=function(){return this.name},En.fromString=function(S){return S?new En({name:S,available:!1}):null},En.prototype.serialize=function(){return["image",this.name]};var ar=function(S,F){this.type=S,this.value=F};ar.parse=function(S,F){if(S.length!==2)return F.error("'literal' expression requires exactly one argument, but found "+(S.length-1)+" instead.");if(!er(S[1]))return F.error("invalid value");var K=S[1],pe=ir(K),Oe=F.expectedType;return pe.kind!=="array"||pe.N!==0||!Oe||Oe.kind!=="array"||typeof Oe.N=="number"&&Oe.N!==0||(pe=Oe),new ar(pe,K)},ar.prototype.evaluate=function(){return this.value},ar.prototype.eachChild=function(){},ar.prototype.outputDefined=function(){return!0},ar.prototype.serialize=function(){return this.type.kind==="array"||this.type.kind==="object"?["literal",this.value]:this.value instanceof mn?["rgba"].concat(this.value.toArray()):this.value instanceof Dn?this.value.serialize():this.value};var Kn=function(S){this.name="ExpressionEvaluationError",this.message=S};Kn.prototype.toJSON=function(){return this.message};var wr={string:vt,number:dt,boolean:At,object:jt},Ht=function(S,F){this.type=S,this.args=F};Ht.parse=function(S,F){if(S.length<2)return F.error("Expected at least one argument.");var K,pe=1,Oe=S[0];if(Oe==="array"){var Fe,Ge;if(S.length>2){var tt=S[1];if(typeof tt!="string"||!(tt in wr)||tt==="object")return F.error('The item type argument of "array" must be one of string, number, boolean',1);Fe=wr[tt],pe++}else Fe=Ut;if(S.length>3){if(S[2]!==null&&(typeof S[2]!="number"||S[2]<0||S[2]!==Math.floor(S[2])))return F.error('The length argument to "array" must be a positive integer literal',2);Ge=S[2],pe++}K=Gt(Fe,Ge)}else K=wr[Oe];for(var ct=[];pe<S.length;pe++){var kt=F.parse(S[pe],pe,Ut);if(!kt)return null;ct.push(kt)}return new Ht(K,ct)},Ht.prototype.evaluate=function(S){for(var F=0;F<this.args.length;F++){var K=this.args[F].evaluate(S);if(!dn(this.type,ir(K)))return K;if(F===this.args.length-1)throw new Kn("Expected value to be of type "+vn(this.type)+", but found "+vn(ir(K))+" instead.")}return null},Ht.prototype.eachChild=function(S){this.args.forEach(S)},Ht.prototype.outputDefined=function(){return this.args.every(function(S){return S.outputDefined()})},Ht.prototype.serialize=function(){var S=this.type,F=[S.kind];if(S.kind==="array"){var K=S.itemType;if(K.kind==="string"||K.kind==="number"||K.kind==="boolean"){F.push(K.kind);var pe=S.N;(typeof pe=="number"||this.args.length>1)&&F.push(pe)}}return F.concat(this.args.map(function(Oe){return Oe.serialize()}))};var sn=function(S){this.type=Xt,this.sections=S};sn.parse=function(S,F){if(S.length<2)return F.error("Expected at least one argument.");var K=S[1];if(!Array.isArray(K)&&typeof K=="object")return F.error("First argument must be an image or text section.");for(var pe=[],Oe=!1,Fe=1;Fe<=S.length-1;++Fe){var Ge=S[Fe];if(Oe&&typeof Ge=="object"&&!Array.isArray(Ge)){Oe=!1;var tt=null;if(Ge["font-scale"]&&!(tt=F.parse(Ge["font-scale"],1,dt)))return null;var ct=null;if(Ge["text-font"]&&!(ct=F.parse(Ge["text-font"],1,Gt(vt))))return null;var kt=null;if(Ge["text-color"]&&!(kt=F.parse(Ge["text-color"],1,Bt)))return null;var Mt=pe[pe.length-1];Mt.scale=tt,Mt.font=ct,Mt.textColor=kt}else{var Dt=F.parse(S[Fe],1,Ut);if(!Dt)return null;var qt=Dt.type.kind;if(qt!=="string"&&qt!=="value"&&qt!=="null"&&qt!=="resolvedImage")return F.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");Oe=!0,pe.push({content:Dt,scale:null,font:null,textColor:null})}}return new sn(pe)},sn.prototype.evaluate=function(S){return new Dn(this.sections.map(function(F){var K=F.content.evaluate(S);return ir(K)===Qt?new Pn("",K,null,null,null):new Pn(fr(K),null,F.scale?F.scale.evaluate(S):null,F.font?F.font.evaluate(S).join(","):null,F.textColor?F.textColor.evaluate(S):null)}))},sn.prototype.eachChild=function(S){for(var F=0,K=this.sections;F<K.length;F+=1){var pe=K[F];S(pe.content),pe.scale&&S(pe.scale),pe.font&&S(pe.font),pe.textColor&&S(pe.textColor)}},sn.prototype.outputDefined=function(){return!1},sn.prototype.serialize=function(){for(var S=["format"],F=0,K=this.sections;F<K.length;F+=1){var pe=K[F];S.push(pe.content.serialize());var Oe={};pe.scale&&(Oe["font-scale"]=pe.scale.serialize()),pe.font&&(Oe["text-font"]=pe.font.serialize()),pe.textColor&&(Oe["text-color"]=pe.textColor.serialize()),S.push(Oe)}return S};var gn=function(S){this.type=Qt,this.input=S};gn.parse=function(S,F){if(S.length!==2)return F.error("Expected two arguments.");var K=F.parse(S[1],1,vt);return K?new gn(K):F.error("No image name provided.")},gn.prototype.evaluate=function(S){var F=this.input.evaluate(S),K=En.fromString(F);return K&&S.availableImages&&(K.available=S.availableImages.indexOf(F)>-1),K},gn.prototype.eachChild=function(S){S(this.input)},gn.prototype.outputDefined=function(){return!1},gn.prototype.serialize=function(){return["image",this.input.serialize()]};var bn={"to-boolean":At,"to-color":Bt,"to-number":dt,"to-string":vt},Cn=function(S,F){this.type=S,this.args=F};Cn.parse=function(S,F){if(S.length<2)return F.error("Expected at least one argument.");var K=S[0];if((K==="to-boolean"||K==="to-string")&&S.length!==2)return F.error("Expected one argument.");for(var pe=bn[K],Oe=[],Fe=1;Fe<S.length;Fe++){var Ge=F.parse(S[Fe],Fe,Ut);if(!Ge)return null;Oe.push(Ge)}return new Cn(pe,Oe)},Cn.prototype.evaluate=function(S){if(this.type.kind==="boolean")return!!this.args[0].evaluate(S);if(this.type.kind==="color"){for(var F,K,pe=0,Oe=this.args;pe<Oe.length;pe+=1){if(K=null,(F=Oe[pe].evaluate(S))instanceof mn)return F;if(typeof F=="string"){var Fe=S.parseColor(F);if(Fe)return Fe}else if(Array.isArray(F)&&!(K=F.length<3||F.length>4?"Invalid rbga value "+JSON.stringify(F)+": expected an array containing either three or four numeric values.":Fn(F[0],F[1],F[2],F[3])))return new mn(F[0]/255,F[1]/255,F[2]/255,F[3])}throw new Kn(K||"Could not parse color from value '"+(typeof F=="string"?F:String(JSON.stringify(F)))+"'")}if(this.type.kind==="number"){for(var Ge=null,tt=0,ct=this.args;tt<ct.length;tt+=1){if((Ge=ct[tt].evaluate(S))===null)return 0;var kt=Number(Ge);if(!isNaN(kt))return kt}throw new Kn("Could not convert "+JSON.stringify(Ge)+" to number.")}return this.type.kind==="formatted"?Dn.fromString(fr(this.args[0].evaluate(S))):this.type.kind==="resolvedImage"?En.fromString(fr(this.args[0].evaluate(S))):fr(this.args[0].evaluate(S))},Cn.prototype.eachChild=function(S){this.args.forEach(S)},Cn.prototype.outputDefined=function(){return this.args.every(function(S){return S.outputDefined()})},Cn.prototype.serialize=function(){if(this.type.kind==="formatted")return new sn([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if(this.type.kind==="resolvedImage")return new gn(this.args[0]).serialize();var S=["to-"+this.type.kind];return this.eachChild(function(F){S.push(F.serialize())}),S};var Yn=["Unknown","Point","LineString","Polygon"],Nn=function(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null};Nn.prototype.id=function(){return this.feature&&"id"in this.feature?this.feature.id:null},Nn.prototype.geometryType=function(){return this.feature?typeof this.feature.type=="number"?Yn[this.feature.type]:this.feature.type:null},Nn.prototype.geometry=function(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null},Nn.prototype.canonicalID=function(){return this.canonical},Nn.prototype.properties=function(){return this.feature&&this.feature.properties||{}},Nn.prototype.parseColor=function(S){var F=this._parseColorCache[S];return F||(F=this._parseColorCache[S]=mn.parse(S)),F};var jn=function(S,F,K,pe){this.name=S,this.type=F,this._evaluate=K,this.args=pe};jn.prototype.evaluate=function(S){return this._evaluate(S,this.args)},jn.prototype.eachChild=function(S){this.args.forEach(S)},jn.prototype.outputDefined=function(){return!1},jn.prototype.serialize=function(){return[this.name].concat(this.args.map(function(S){return S.serialize()}))},jn.parse=function(S,F){var K,pe=S[0],Oe=jn.definitions[pe];if(!Oe)return F.error('Unknown expression "'+pe+'". If you wanted a literal array, use ["literal", [...]].',0);for(var Fe=Array.isArray(Oe)?Oe[0]:Oe.type,Ge=Array.isArray(Oe)?[[Oe[1],Oe[2]]]:Oe.overloads,tt=Ge.filter(function(Hr){var Or=Hr[0];return!Array.isArray(Or)||Or.length===S.length-1}),ct=null,kt=0,Mt=tt;kt<Mt.length;kt+=1){var Dt=Mt[kt],qt=Dt[0],Nt=Dt[1];ct=new sr(F.registry,F.path,null,F.scope);for(var an=[],un=!1,Sn=1;Sn<S.length;Sn++){var Mn=S[Sn],zn=Array.isArray(qt)?qt[Sn-1]:qt.type,Bn=ct.parse(Mn,1+an.length,zn);if(!Bn){un=!0;break}an.push(Bn)}if(!un)if(Array.isArray(qt)&&qt.length!==an.length)ct.error("Expected "+qt.length+" arguments, but found "+an.length+" instead.");else{for(var Gn=0;Gn<an.length;Gn++){var $n=Array.isArray(qt)?qt[Gn]:qt.type,nr=an[Gn];ct.concat(Gn+1).checkSubtype($n,nr.type)}if(ct.errors.length===0)return new jn(pe,Fe,Nt,an)}}if(tt.length===1)(K=F.errors).push.apply(K,ct.errors);else{for(var xr=(tt.length?tt:Ge).map(function(Hr){return Or=Hr[0],Array.isArray(Or)?"("+Or.map(vn).join(", ")+")":"("+vn(Or.type)+"...)";var Or}).join(" | "),dr=[],kr=1;kr<S.length;kr++){var Cr=F.parse(S[kr],1+dr.length);if(!Cr)return null;dr.push(vn(Cr.type))}F.error("Expected arguments of type "+xr+", but found ("+dr.join(", ")+") instead.")}return null},jn.register=function(S,F){for(var K in jn.definitions=F,F)S[K]=jn};var rr=function(S,F,K){this.type=tn,this.locale=K,this.caseSensitive=S,this.diacriticSensitive=F};rr.parse=function(S,F){if(S.length!==2)return F.error("Expected one argument.");var K=S[1];if(typeof K!="object"||Array.isArray(K))return F.error("Collator options argument must be an object.");var pe=F.parse(K["case-sensitive"]!==void 0&&K["case-sensitive"],1,At);if(!pe)return null;var Oe=F.parse(K["diacritic-sensitive"]!==void 0&&K["diacritic-sensitive"],1,At);if(!Oe)return null;var Fe=null;return K.locale&&!(Fe=F.parse(K.locale,1,vt))?null:new rr(pe,Oe,Fe)},rr.prototype.evaluate=function(S){return new xn(this.caseSensitive.evaluate(S),this.diacriticSensitive.evaluate(S),this.locale?this.locale.evaluate(S):null)},rr.prototype.eachChild=function(S){S(this.caseSensitive),S(this.diacriticSensitive),this.locale&&S(this.locale)},rr.prototype.outputDefined=function(){return!1},rr.prototype.serialize=function(){var S={};return S["case-sensitive"]=this.caseSensitive.serialize(),S["diacritic-sensitive"]=this.diacriticSensitive.serialize(),this.locale&&(S.locale=this.locale.serialize()),["collator",S]};var Wt=8192;function An(S,F){S[0]=Math.min(S[0],F[0]),S[1]=Math.min(S[1],F[1]),S[2]=Math.max(S[2],F[0]),S[3]=Math.max(S[3],F[1])}function Lt(S,F){return!(S[0]<=F[0]||S[2]>=F[2]||S[1]<=F[1]||S[3]>=F[3])}function $t(S,F){var K,pe=(180+S[0])/360,Oe=(K=S[1],(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+K*Math.PI/360)))/360),Fe=Math.pow(2,F.z);return[Math.round(pe*Fe*Wt),Math.round(Oe*Fe*Wt)]}function rn(S,F,K){return F[1]>S[1]!=K[1]>S[1]&&S[0]<(K[0]-F[0])*(S[1]-F[1])/(K[1]-F[1])+F[0]}function wn(S,F){for(var K=!1,pe=0,Oe=F.length;pe<Oe;pe++)for(var Fe=F[pe],Ge=0,tt=Fe.length;Ge<tt-1;Ge++){if(ct=S,kt=Fe[Ge],Mt=Fe[Ge+1],Dt=void 0,qt=void 0,Nt=void 0,an=void 0,Dt=ct[0]-kt[0],qt=ct[1]-kt[1],Nt=ct[0]-Mt[0],an=ct[1]-Mt[1],Dt*an-Nt*qt==0&&Dt*Nt<=0&&qt*an<=0)return!1;rn(S,Fe[Ge],Fe[Ge+1])&&(K=!K)}var ct,kt,Mt,Dt,qt,Nt,an;return K}function kn(S,F){for(var K=0;K<F.length;K++)if(wn(S,F[K]))return!0;return!1}function Ln(S,F,K,pe){var Oe=S[0]-K[0],Fe=S[1]-K[1],Ge=F[0]-K[0],tt=F[1]-K[1],ct=pe[0]-K[0],kt=pe[1]-K[1],Mt=Oe*kt-ct*Fe,Dt=Ge*kt-ct*tt;return Mt>0&&Dt<0||Mt<0&&Dt>0}function hn(S,F,K){for(var pe=0,Oe=K;pe<Oe.length;pe+=1)for(var Fe=Oe[pe],Ge=0;Ge<Fe.length-1;++Ge)if(tt=S,ct=F,kt=Fe[Ge],Mt=Fe[Ge+1],Dt=void 0,qt=void 0,Nt=void 0,Nt=[ct[0]-tt[0],ct[1]-tt[1]],Dt=[Mt[0]-kt[0],Mt[1]-kt[1]],qt=Nt,Dt[0]*qt[1]-Dt[1]*qt[0]!=0&&Ln(tt,ct,kt,Mt)&&Ln(kt,Mt,tt,ct))return!0;var tt,ct,kt,Mt,Dt,qt,Nt;return!1}function Jt(S,F){for(var K=0;K<S.length;++K)if(!wn(S[K],F))return!1;for(var pe=0;pe<S.length-1;++pe)if(hn(S[pe],S[pe+1],F))return!1;return!0}function en(S,F){for(var K=0;K<F.length;K++)if(Jt(S,F[K]))return!0;return!1}function cn(S,F,K){for(var pe=[],Oe=0;Oe<S.length;Oe++){for(var Fe=[],Ge=0;Ge<S[Oe].length;Ge++){var tt=$t(S[Oe][Ge],K);An(F,tt),Fe.push(tt)}pe.push(Fe)}return pe}function pn(S,F,K){for(var pe=[],Oe=0;Oe<S.length;Oe++){var Fe=cn(S[Oe],F,K);pe.push(Fe)}return pe}function On(S,F,K,pe){if(S[0]<K[0]||S[0]>K[2]){var Oe=.5*pe,Fe=S[0]-K[0]>Oe?-pe:K[0]-S[0]>Oe?pe:0;Fe===0&&(Fe=S[0]-K[2]>Oe?-pe:K[2]-S[0]>Oe?pe:0),S[0]+=Fe}An(F,S)}function Rn(S,F,K,pe){for(var Oe=Math.pow(2,pe.z)*Wt,Fe=[pe.x*Wt,pe.y*Wt],Ge=[],tt=0,ct=S;tt<ct.length;tt+=1)for(var kt=0,Mt=ct[tt];kt<Mt.length;kt+=1){var Dt=Mt[kt],qt=[Dt.x+Fe[0],Dt.y+Fe[1]];On(qt,F,K,Oe),Ge.push(qt)}return Ge}function Wn(S,F,K,pe){for(var Oe=Math.pow(2,pe.z)*Wt,Fe=[pe.x*Wt,pe.y*Wt],Ge=[],tt=0,ct=S;tt<ct.length;tt+=1){for(var kt=[],Mt=0,Dt=ct[tt];Mt<Dt.length;Mt+=1){var qt=Dt[Mt],Nt=[qt.x+Fe[0],qt.y+Fe[1]];An(F,Nt),kt.push(Nt)}Ge.push(kt)}if(F[2]-F[0]<=Oe/2){(zn=F)[0]=zn[1]=1/0,zn[2]=zn[3]=-1/0;for(var an=0,un=Ge;an<un.length;an+=1)for(var Sn=0,Mn=un[an];Sn<Mn.length;Sn+=1)On(Mn[Sn],F,K,Oe)}var zn;return Ge}var Hn=function(S,F){this.type=At,this.geojson=S,this.geometries=F};function tr(S){if(S instanceof jn&&(S.name==="get"&&S.args.length===1||S.name==="feature-state"||S.name==="has"&&S.args.length===1||S.name==="properties"||S.name==="geometry-type"||S.name==="id"||/^filter-/.test(S.name))||S instanceof Hn)return!1;var F=!0;return S.eachChild(function(K){F&&!tr(K)&&(F=!1)}),F}function Xn(S){if(S instanceof jn&&S.name==="feature-state")return!1;var F=!0;return S.eachChild(function(K){F&&!Xn(K)&&(F=!1)}),F}function lr(S,F){if(S instanceof jn&&F.indexOf(S.name)>=0)return!1;var K=!0;return S.eachChild(function(pe){K&&!lr(pe,F)&&(K=!1)}),K}Hn.parse=function(S,F){if(S.length!==2)return F.error("'within' expression requires exactly one argument, but found "+(S.length-1)+" instead.");if(er(S[1])){var K=S[1];if(K.type==="FeatureCollection")for(var pe=0;pe<K.features.length;++pe){var Oe=K.features[pe].geometry.type;if(Oe==="Polygon"||Oe==="MultiPolygon")return new Hn(K,K.features[pe].geometry)}else if(K.type==="Feature"){var Fe=K.geometry.type;if(Fe==="Polygon"||Fe==="MultiPolygon")return new Hn(K,K.geometry)}else if(K.type==="Polygon"||K.type==="MultiPolygon")return new Hn(K,K)}return F.error("'within' expression requires valid geojson object that contains polygon geometry type.")},Hn.prototype.evaluate=function(S){if(S.geometry()!=null&&S.canonicalID()!=null){if(S.geometryType()==="Point")return function(F,K){var pe=[1/0,1/0,-1/0,-1/0],Oe=[1/0,1/0,-1/0,-1/0],Fe=F.canonicalID();if(K.type==="Polygon"){var Ge=cn(K.coordinates,Oe,Fe),tt=Rn(F.geometry(),pe,Oe,Fe);if(!Lt(pe,Oe))return!1;for(var ct=0,kt=tt;ct<kt.length;ct+=1)if(!wn(kt[ct],Ge))return!1}if(K.type==="MultiPolygon"){var Mt=pn(K.coordinates,Oe,Fe),Dt=Rn(F.geometry(),pe,Oe,Fe);if(!Lt(pe,Oe))return!1;for(var qt=0,Nt=Dt;qt<Nt.length;qt+=1)if(!kn(Nt[qt],Mt))return!1}return!0}(S,this.geometries);if(S.geometryType()==="LineString")return function(F,K){var pe=[1/0,1/0,-1/0,-1/0],Oe=[1/0,1/0,-1/0,-1/0],Fe=F.canonicalID();if(K.type==="Polygon"){var Ge=cn(K.coordinates,Oe,Fe),tt=Wn(F.geometry(),pe,Oe,Fe);if(!Lt(pe,Oe))return!1;for(var ct=0,kt=tt;ct<kt.length;ct+=1)if(!Jt(kt[ct],Ge))return!1}if(K.type==="MultiPolygon"){var Mt=pn(K.coordinates,Oe,Fe),Dt=Wn(F.geometry(),pe,Oe,Fe);if(!Lt(pe,Oe))return!1;for(var qt=0,Nt=Dt;qt<Nt.length;qt+=1)if(!en(Nt[qt],Mt))return!1}return!0}(S,this.geometries)}return!1},Hn.prototype.eachChild=function(){},Hn.prototype.outputDefined=function(){return!0},Hn.prototype.serialize=function(){return["within",this.geojson]};var or=function(S,F){this.type=F.type,this.name=S,this.boundExpression=F};or.parse=function(S,F){if(S.length!==2||typeof S[1]!="string")return F.error("'var' expression requires exactly one string literal argument.");var K=S[1];return F.scope.has(K)?new or(K,F.scope.get(K)):F.error('Unknown variable "'+K+'". Make sure "'+K+'" has been bound in an enclosing "let" expression before using it.',1)},or.prototype.evaluate=function(S){return this.boundExpression.evaluate(S)},or.prototype.eachChild=function(){},or.prototype.outputDefined=function(){return!1},or.prototype.serialize=function(){return["var",this.name]};var sr=function(S,F,K,pe,Oe){F===void 0&&(F=[]),pe===void 0&&(pe=new gt),Oe===void 0&&(Oe=[]),this.registry=S,this.path=F,this.key=F.map(function(Fe){return"["+Fe+"]"}).join(""),this.scope=pe,this.errors=Oe,this.expectedType=K};function gr(S){if(S instanceof or)return gr(S.boundExpression);if(S instanceof jn&&S.name==="error"||S instanceof rr||S instanceof Hn)return!1;var F=S instanceof Cn||S instanceof Ht,K=!0;return S.eachChild(function(pe){K=F?K&&gr(pe):K&&pe instanceof ar}),!!K&&tr(S)&&lr(S,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function vr(S,F){for(var K,pe,Oe=S.length-1,Fe=0,Ge=Oe,tt=0;Fe<=Ge;)if(K=S[tt=Math.floor((Fe+Ge)/2)],pe=S[tt+1],K<=F){if(tt===Oe||F<pe)return tt;Fe=tt+1}else{if(!(K>F))throw new Kn("Input is not a number.");Ge=tt-1}return 0}sr.prototype.parse=function(S,F,K,pe,Oe){return Oe===void 0&&(Oe={}),F?this.concat(F,K,pe)._parse(S,Oe):this._parse(S,Oe)},sr.prototype._parse=function(S,F){function K(kt,Mt,Dt){return Dt==="assert"?new Ht(Mt,[kt]):Dt==="coerce"?new Cn(Mt,[kt]):kt}if(S!==null&&typeof S!="string"&&typeof S!="boolean"&&typeof S!="number"||(S=["literal",S]),Array.isArray(S)){if(S.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var pe=S[0];if(typeof pe!="string")return this.error("Expression name must be a string, but found "+typeof pe+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var Oe=this.registry[pe];if(Oe){var Fe=Oe.parse(S,this);if(!Fe)return null;if(this.expectedType){var Ge=this.expectedType,tt=Fe.type;if(Ge.kind!=="string"&&Ge.kind!=="number"&&Ge.kind!=="boolean"&&Ge.kind!=="object"&&Ge.kind!=="array"||tt.kind!=="value")if(Ge.kind!=="color"&&Ge.kind!=="formatted"&&Ge.kind!=="resolvedImage"||tt.kind!=="value"&&tt.kind!=="string"){if(this.checkSubtype(Ge,tt))return null}else Fe=K(Fe,Ge,F.typeAnnotation||"coerce");else Fe=K(Fe,Ge,F.typeAnnotation||"assert")}if(!(Fe instanceof ar)&&Fe.type.kind!=="resolvedImage"&&gr(Fe)){var ct=new Nn;try{Fe=new ar(Fe.type,Fe.evaluate(ct))}catch(kt){return this.error(kt.message),null}}return Fe}return this.error('Unknown expression "'+pe+'". If you wanted a literal array, use ["literal", [...]].',0)}return S===void 0?this.error("'undefined' value invalid. Use null instead."):typeof S=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof S+" instead.")},sr.prototype.concat=function(S,F,K){var pe=typeof S=="number"?this.path.concat(S):this.path,Oe=K?this.scope.concat(K):this.scope;return new sr(this.registry,pe,F||null,Oe,this.errors)},sr.prototype.error=function(S){for(var F=[],K=arguments.length-1;K-- >0;)F[K]=arguments[K+1];var pe=""+this.key+F.map(function(Oe){return"["+Oe+"]"}).join("");this.errors.push(new _t(pe,S))},sr.prototype.checkSubtype=function(S,F){var K=dn(S,F);return K&&this.error(K),K};var Er=function(S,F,K){this.type=S,this.input=F,this.labels=[],this.outputs=[];for(var pe=0,Oe=K;pe<Oe.length;pe+=1){var Fe=Oe[pe],Ge=Fe[0],tt=Fe[1];this.labels.push(Ge),this.outputs.push(tt)}};function Jn(S,F,K){return S*(1-K)+F*K}Er.parse=function(S,F){if(S.length-1<4)return F.error("Expected at least 4 arguments, but found only "+(S.length-1)+".");if((S.length-1)%2!=0)return F.error("Expected an even number of arguments.");var K=F.parse(S[1],1,dt);if(!K)return null;var pe=[],Oe=null;F.expectedType&&F.expectedType.kind!=="value"&&(Oe=F.expectedType);for(var Fe=1;Fe<S.length;Fe+=2){var Ge=Fe===1?-1/0:S[Fe],tt=S[Fe+1],ct=Fe,kt=Fe+1;if(typeof Ge!="number")return F.error('Input/output pairs for "step" expressions must be defined using literal numeric values (not computed expressions) for the input values.',ct);if(pe.length&&pe[pe.length-1][0]>=Ge)return F.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',ct);var Mt=F.parse(tt,kt,Oe);if(!Mt)return null;Oe=Oe||Mt.type,pe.push([Ge,Mt])}return new Er(Oe,K,pe)},Er.prototype.evaluate=function(S){var F=this.labels,K=this.outputs;if(F.length===1)return K[0].evaluate(S);var pe=this.input.evaluate(S);if(pe<=F[0])return K[0].evaluate(S);var Oe=F.length;return pe>=F[Oe-1]?K[Oe-1].evaluate(S):K[vr(F,pe)].evaluate(S)},Er.prototype.eachChild=function(S){S(this.input);for(var F=0,K=this.outputs;F<K.length;F+=1)S(K[F])},Er.prototype.outputDefined=function(){return this.outputs.every(function(S){return S.outputDefined()})},Er.prototype.serialize=function(){for(var S=["step",this.input.serialize()],F=0;F<this.labels.length;F++)F>0&&S.push(this.labels[F]),S.push(this.outputs[F].serialize());return S};var br=Object.freeze({__proto__:null,number:Jn,color:function(S,F,K){return new mn(Jn(S.r,F.r,K),Jn(S.g,F.g,K),Jn(S.b,F.b,K),Jn(S.a,F.a,K))},array:function(S,F,K){return S.map(function(pe,Oe){return Jn(pe,F[Oe],K)})}}),zr=.95047,ii=1,xi=1.08883,vi=4/29,Ai=6/29,ci=3*Ai*Ai,zi=Ai*Ai*Ai,Do=Math.PI/180,Ha=180/Math.PI;function Ko(S){return S>zi?Math.pow(S,.3333333333333333):S/ci+vi}function Eu(S){return S>Ai?S*S*S:ci*(S-vi)}function qs(S){return 255*(S<=.0031308?12.92*S:1.055*Math.pow(S,.4166666666666667)-.055)}function zl(S){return(S/=255)<=.04045?S/12.92:Math.pow((S+.055)/1.055,2.4)}function Cu(S){var F=zl(S.r),K=zl(S.g),pe=zl(S.b),Oe=Ko((.4124564*F+.3575761*K+.1804375*pe)/zr),Fe=Ko((.2126729*F+.7151522*K+.072175*pe)/ii);return{l:116*Fe-16,a:500*(Oe-Fe),b:200*(Fe-Ko((.0193339*F+.119192*K+.9503041*pe)/xi)),alpha:S.a}}function Fo(S){var F=(S.l+16)/116,K=isNaN(S.a)?F:F+S.a/500,pe=isNaN(S.b)?F:F-S.b/200;return F=ii*Eu(F),K=zr*Eu(K),pe=xi*Eu(pe),new mn(qs(3.2404542*K-1.5371385*F-.4985314*pe),qs(-.969266*K+1.8760108*F+.041556*pe),qs(.0556434*K-.2040259*F+1.0572252*pe),S.alpha)}function ac(S,F,K){var pe=F-S;return S+K*(pe>180||pe<-180?pe-360*Math.round(pe/360):pe)}var Gs={forward:Cu,reverse:Fo,interpolate:function(S,F,K){return{l:Jn(S.l,F.l,K),a:Jn(S.a,F.a,K),b:Jn(S.b,F.b,K),alpha:Jn(S.alpha,F.alpha,K)}}},Ws={forward:function(S){var F=Cu(S),K=F.l,pe=F.a,Oe=F.b,Fe=Math.atan2(Oe,pe)*Ha;return{h:Fe<0?Fe+360:Fe,c:Math.sqrt(pe*pe+Oe*Oe),l:K,alpha:S.a}},reverse:function(S){var F=S.h*Do,K=S.c;return Fo({l:S.l,a:Math.cos(F)*K,b:Math.sin(F)*K,alpha:S.alpha})},interpolate:function(S,F,K){return{h:ac(S.h,F.h,K),c:Jn(S.c,F.c,K),l:Jn(S.l,F.l,K),alpha:Jn(S.alpha,F.alpha,K)}}},Bo=Object.freeze({__proto__:null,lab:Gs,hcl:Ws}),qi=function(S,F,K,pe,Oe){this.type=S,this.operator=F,this.interpolation=K,this.input=pe,this.labels=[],this.outputs=[];for(var Fe=0,Ge=Oe;Fe<Ge.length;Fe+=1){var tt=Ge[Fe],ct=tt[0],kt=tt[1];this.labels.push(ct),this.outputs.push(kt)}};function Dl(S,F,K,pe){var Oe=pe-K,Fe=S-K;return Oe===0?0:F===1?Fe/Oe:(Math.pow(F,Fe)-1)/(Math.pow(F,Oe)-1)}qi.interpolationFactor=function(S,F,K,pe){var Oe=0;if(S.name==="exponential")Oe=Dl(F,S.base,K,pe);else if(S.name==="linear")Oe=Dl(F,1,K,pe);else if(S.name==="cubic-bezier"){var Fe=S.controlPoints;Oe=new h(Fe[0],Fe[1],Fe[2],Fe[3]).solve(Dl(F,1,K,pe))}return Oe},qi.parse=function(S,F){var K=S[0],pe=S[1],Oe=S[2],Fe=S.slice(3);if(!Array.isArray(pe)||pe.length===0)return F.error("Expected an interpolation type expression.",1);if(pe[0]==="linear")pe={name:"linear"};else if(pe[0]==="exponential"){var Ge=pe[1];if(typeof Ge!="number")return F.error("Exponential interpolation requires a numeric base.",1,1);pe={name:"exponential",base:Ge}}else{if(pe[0]!=="cubic-bezier")return F.error("Unknown interpolation type "+String(pe[0]),1,0);var tt=pe.slice(1);if(tt.length!==4||tt.some(function(Sn){return typeof Sn!="number"||Sn<0||Sn>1}))return F.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);pe={name:"cubic-bezier",controlPoints:tt}}if(S.length-1<4)return F.error("Expected at least 4 arguments, but found only "+(S.length-1)+".");if((S.length-1)%2!=0)return F.error("Expected an even number of arguments.");if(!(Oe=F.parse(Oe,2,dt)))return null;var ct=[],kt=null;K==="interpolate-hcl"||K==="interpolate-lab"?kt=Bt:F.expectedType&&F.expectedType.kind!=="value"&&(kt=F.expectedType);for(var Mt=0;Mt<Fe.length;Mt+=2){var Dt=Fe[Mt],qt=Fe[Mt+1],Nt=Mt+3,an=Mt+4;if(typeof Dt!="number")return F.error('Input/output pairs for "interpolate" expressions must be defined using literal numeric values (not computed expressions) for the input values.',Nt);if(ct.length&&ct[ct.length-1][0]>=Dt)return F.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',Nt);var un=F.parse(qt,an,kt);if(!un)return null;kt=kt||un.type,ct.push([Dt,un])}return kt.kind==="number"||kt.kind==="color"||kt.kind==="array"&&kt.itemType.kind==="number"&&typeof kt.N=="number"?new qi(kt,K,pe,Oe,ct):F.error("Type "+vn(kt)+" is not interpolatable.")},qi.prototype.evaluate=function(S){var F=this.labels,K=this.outputs;if(F.length===1)return K[0].evaluate(S);var pe=this.input.evaluate(S);if(pe<=F[0])return K[0].evaluate(S);var Oe=F.length;if(pe>=F[Oe-1])return K[Oe-1].evaluate(S);var Fe=vr(F,pe),Ge=F[Fe],tt=F[Fe+1],ct=qi.interpolationFactor(this.interpolation,pe,Ge,tt),kt=K[Fe].evaluate(S),Mt=K[Fe+1].evaluate(S);return this.operator==="interpolate"?br[this.type.kind.toLowerCase()](kt,Mt,ct):this.operator==="interpolate-hcl"?Ws.reverse(Ws.interpolate(Ws.forward(kt),Ws.forward(Mt),ct)):Gs.reverse(Gs.interpolate(Gs.forward(kt),Gs.forward(Mt),ct))},qi.prototype.eachChild=function(S){S(this.input);for(var F=0,K=this.outputs;F<K.length;F+=1)S(K[F])},qi.prototype.outputDefined=function(){return this.outputs.every(function(S){return S.outputDefined()})},qi.prototype.serialize=function(){var S;S=this.interpolation.name==="linear"?["linear"]:this.interpolation.name==="exponential"?this.interpolation.base===1?["linear"]:["exponential",this.interpolation.base]:["cubic-bezier"].concat(this.interpolation.controlPoints);for(var F=[this.operator,S,this.input.serialize()],K=0;K<this.labels.length;K++)F.push(this.labels[K],this.outputs[K].serialize());return F};var ti=function(S,F){this.type=S,this.args=F};ti.parse=function(S,F){if(S.length<2)return F.error("Expectected at least one argument.");var K=null,pe=F.expectedType;pe&&pe.kind!=="value"&&(K=pe);for(var Oe=[],Fe=0,Ge=S.slice(1);Fe<Ge.length;Fe+=1){var tt=Ge[Fe],ct=F.parse(tt,1+Oe.length,K,void 0,{typeAnnotation:"omit"});if(!ct)return null;K=K||ct.type,Oe.push(ct)}var kt=pe&&Oe.some(function(Mt){return dn(pe,Mt.type)});return new ti(kt?Ut:K,Oe)},ti.prototype.evaluate=function(S){for(var F,K=null,pe=0,Oe=0,Fe=this.args;Oe<Fe.length&&(pe++,(K=Fe[Oe].evaluate(S))&&K instanceof En&&!K.available&&(F||(F=K.name),K=null,pe===this.args.length&&(K=F)),K===null);Oe+=1);return K},ti.prototype.eachChild=function(S){this.args.forEach(S)},ti.prototype.outputDefined=function(){return this.args.every(function(S){return S.outputDefined()})},ti.prototype.serialize=function(){var S=["coalesce"];return this.eachChild(function(F){S.push(F.serialize())}),S};var No=function(S,F){this.type=F.type,this.bindings=[].concat(S),this.result=F};No.prototype.evaluate=function(S){return this.result.evaluate(S)},No.prototype.eachChild=function(S){for(var F=0,K=this.bindings;F<K.length;F+=1)S(K[F][1]);S(this.result)},No.parse=function(S,F){if(S.length<4)return F.error("Expected at least 3 arguments, but found "+(S.length-1)+" instead.");for(var K=[],pe=1;pe<S.length-1;pe+=2){var Oe=S[pe];if(typeof Oe!="string")return F.error("Expected string, but found "+typeof Oe+" instead.",pe);if(/[^a-zA-Z0-9_]/.test(Oe))return F.error("Variable names must contain only alphanumeric characters or '_'.",pe);var Fe=F.parse(S[pe+1],pe+1);if(!Fe)return null;K.push([Oe,Fe])}var Ge=F.parse(S[S.length-1],S.length-1,F.expectedType,K);return Ge?new No(K,Ge):null},No.prototype.outputDefined=function(){return this.result.outputDefined()},No.prototype.serialize=function(){for(var S=["let"],F=0,K=this.bindings;F<K.length;F+=1){var pe=K[F],Oe=pe[0],Fe=pe[1];S.push(Oe,Fe.serialize())}return S.push(this.result.serialize()),S};var Qa=function(S,F,K){this.type=S,this.index=F,this.input=K};Qa.parse=function(S,F){if(S.length!==3)return F.error("Expected 2 arguments, but found "+(S.length-1)+" instead.");var K=F.parse(S[1],1,dt),pe=F.parse(S[2],2,Gt(F.expectedType||Ut));if(!K||!pe)return null;var Oe=pe.type;return new Qa(Oe.itemType,K,pe)},Qa.prototype.evaluate=function(S){var F=this.index.evaluate(S),K=this.input.evaluate(S);if(F<0)throw new Kn("Array index out of bounds: "+F+" < 0.");if(F>=K.length)throw new Kn("Array index out of bounds: "+F+" > "+(K.length-1)+".");if(F!==Math.floor(F))throw new Kn("Array index must be an integer, but found "+F+" instead.");return K[F]},Qa.prototype.eachChild=function(S){S(this.index),S(this.input)},Qa.prototype.outputDefined=function(){return!1},Qa.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var Jo=function(S,F){this.type=At,this.needle=S,this.haystack=F};Jo.parse=function(S,F){if(S.length!==3)return F.error("Expected 2 arguments, but found "+(S.length-1)+" instead.");var K=F.parse(S[1],1,Ut),pe=F.parse(S[2],2,Ut);return K&&pe?Yt(K.type,[At,vt,dt,Ct,Ut])?new Jo(K,pe):F.error("Expected first argument to be of type boolean, string, number or null, but found "+vn(K.type)+" instead"):null},Jo.prototype.evaluate=function(S){var F=this.needle.evaluate(S),K=this.haystack.evaluate(S);if(!K)return!1;if(!ln(F,["boolean","string","number","null"]))throw new Kn("Expected first argument to be of type boolean, string, number or null, but found "+vn(ir(F))+" instead.");if(!ln(K,["string","array"]))throw new Kn("Expected second argument to be of type array or string, but found "+vn(ir(K))+" instead.");return K.indexOf(F)>=0},Jo.prototype.eachChild=function(S){S(this.needle),S(this.haystack)},Jo.prototype.outputDefined=function(){return!0},Jo.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var xo=function(S,F,K){this.type=dt,this.needle=S,this.haystack=F,this.fromIndex=K};xo.parse=function(S,F){if(S.length<=2||S.length>=5)return F.error("Expected 3 or 4 arguments, but found "+(S.length-1)+" instead.");var K=F.parse(S[1],1,Ut),pe=F.parse(S[2],2,Ut);if(!K||!pe)return null;if(!Yt(K.type,[At,vt,dt,Ct,Ut]))return F.error("Expected first argument to be of type boolean, string, number or null, but found "+vn(K.type)+" instead");if(S.length===4){var Oe=F.parse(S[3],3,dt);return Oe?new xo(K,pe,Oe):null}return new xo(K,pe)},xo.prototype.evaluate=function(S){var F=this.needle.evaluate(S),K=this.haystack.evaluate(S);if(!ln(F,["boolean","string","number","null"]))throw new Kn("Expected first argument to be of type boolean, string, number or null, but found "+vn(ir(F))+" instead.");if(!ln(K,["string","array"]))throw new Kn("Expected second argument to be of type array or string, but found "+vn(ir(K))+" instead.");if(this.fromIndex){var pe=this.fromIndex.evaluate(S);return K.indexOf(F,pe)}return K.indexOf(F)},xo.prototype.eachChild=function(S){S(this.needle),S(this.haystack),this.fromIndex&&S(this.fromIndex)},xo.prototype.outputDefined=function(){return!1},xo.prototype.serialize=function(){if(this.fromIndex!=null&&this.fromIndex!==void 0){var S=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),S]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var xs=function(S,F,K,pe,Oe,Fe){this.inputType=S,this.type=F,this.input=K,this.cases=pe,this.outputs=Oe,this.otherwise=Fe};xs.parse=function(S,F){if(S.length<5)return F.error("Expected at least 4 arguments, but found only "+(S.length-1)+".");if(S.length%2!=1)return F.error("Expected an even number of arguments.");var K,pe;F.expectedType&&F.expectedType.kind!=="value"&&(pe=F.expectedType);for(var Oe={},Fe=[],Ge=2;Ge<S.length-1;Ge+=2){var tt=S[Ge],ct=S[Ge+1];Array.isArray(tt)||(tt=[tt]);var kt=F.concat(Ge);if(tt.length===0)return kt.error("Expected at least one branch label.");for(var Mt=0,Dt=tt;Mt<Dt.length;Mt+=1){var qt=Dt[Mt];if(typeof qt!="number"&&typeof qt!="string")return kt.error("Branch labels must be numbers or strings.");if(typeof qt=="number"&&Math.abs(qt)>Number.MAX_SAFE_INTEGER)return kt.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if(typeof qt=="number"&&Math.floor(qt)!==qt)return kt.error("Numeric branch labels must be integer values.");if(K){if(kt.checkSubtype(K,ir(qt)))return null}else K=ir(qt);if(Oe[String(qt)]!==void 0)return kt.error("Branch labels must be unique.");Oe[String(qt)]=Fe.length}var Nt=F.parse(ct,Ge,pe);if(!Nt)return null;pe=pe||Nt.type,Fe.push(Nt)}var an=F.parse(S[1],1,Ut);if(!an)return null;var un=F.parse(S[S.length-1],S.length-1,pe);return un?an.type.kind!=="value"&&F.concat(1).checkSubtype(K,an.type)?null:new xs(K,pe,an,Oe,Fe,un):null},xs.prototype.evaluate=function(S){var F=this.input.evaluate(S);return(ir(F)===this.inputType&&this.outputs[this.cases[F]]||this.otherwise).evaluate(S)},xs.prototype.eachChild=function(S){S(this.input),this.outputs.forEach(S),S(this.otherwise)},xs.prototype.outputDefined=function(){return this.outputs.every(function(S){return S.outputDefined()})&&this.otherwise.outputDefined()},xs.prototype.serialize=function(){for(var S=this,F=["match",this.input.serialize()],K=[],pe={},Oe=0,Fe=Object.keys(this.cases).sort();Oe<Fe.length;Oe+=1){var Ge=Fe[Oe];(Dt=pe[this.cases[Ge]])===void 0?(pe[this.cases[Ge]]=K.length,K.push([this.cases[Ge],[Ge]])):K[Dt][1].push(Ge)}for(var tt=function(Nt){return S.inputType.kind==="number"?Number(Nt):Nt},ct=0,kt=K;ct<kt.length;ct+=1){var Mt=kt[ct],Dt=Mt[0],qt=Mt[1];qt.length===1?F.push(tt(qt[0])):F.push(qt.map(tt)),F.push(this.outputs[outputIndex$1].serialize())}return F.push(this.otherwise.serialize()),F};var Qo=function(S,F,K){this.type=S,this.branches=F,this.otherwise=K};Qo.parse=function(S,F){if(S.length<4)return F.error("Expected at least 3 arguments, but found only "+(S.length-1)+".");if(S.length%2!=0)return F.error("Expected an odd number of arguments.");var K;F.expectedType&&F.expectedType.kind!=="value"&&(K=F.expectedType);for(var pe=[],Oe=1;Oe<S.length-1;Oe+=2){var Fe=F.parse(S[Oe],Oe,At);if(!Fe)return null;var Ge=F.parse(S[Oe+1],Oe+1,K);if(!Ge)return null;pe.push([Fe,Ge]),K=K||Ge.type}var tt=F.parse(S[S.length-1],S.length-1,K);return tt?new Qo(K,pe,tt):null},Qo.prototype.evaluate=function(S){for(var F=0,K=this.branches;F<K.length;F+=1){var pe=K[F],Oe=pe[0],Fe=pe[1];if(Oe.evaluate(S))return Fe.evaluate(S)}return this.otherwise.evaluate(S)},Qo.prototype.eachChild=function(S){for(var F=0,K=this.branches;F<K.length;F+=1){var pe=K[F],Oe=pe[0],Fe=pe[1];S(Oe),S(Fe)}S(this.otherwise)},Qo.prototype.outputDefined=function(){return this.branches.every(function(S){return S[0],S[1].outputDefined()})&&this.otherwise.outputDefined()},Qo.prototype.serialize=function(){var S=["case"];return this.eachChild(function(F){S.push(F.serialize())}),S};var es=function(S,F,K,pe){this.type=S,this.input=F,this.beginIndex=K,this.endIndex=pe};function ou(S,F){return S==="=="||S==="!="?F.kind==="boolean"||F.kind==="string"||F.kind==="number"||F.kind==="null"||F.kind==="value":F.kind==="string"||F.kind==="number"||F.kind==="value"}function oc(S,F,K,pe){return pe.compare(F,K)===0}function bs(S,F,K){var pe=S!=="=="&&S!=="!=";return function(){function Oe(Fe,Ge,tt){this.type=At,this.lhs=Fe,this.rhs=Ge,this.collator=tt,this.hasUntypedArgument=Fe.type.kind==="value"||Ge.type.kind==="value"}return Oe.parse=function(Fe,Ge){if(Fe.length!==3&&Fe.length!==4)return Ge.error("Expected two or three arguments.");var tt=Fe[0],ct=Ge.parse(Fe[1],1,Ut);if(!ct)return null;if(!ou(tt,ct.type))return Ge.concat(1).error('"'+tt+`" comparisons are not supported for type '`+vn(ct.type)+"'.");var kt=Ge.parse(Fe[2],2,Ut);if(!kt)return null;if(!ou(tt,kt.type))return Ge.concat(2).error('"'+tt+`" comparisons are not supported for type '`+vn(kt.type)+"'.");if(ct.type.kind!==kt.type.kind&&ct.type.kind!=="value"&&kt.type.kind!=="value")return Ge.error("Cannot compare types '"+vn(ct.type)+"' and '"+vn(kt.type)+"'.");pe&&(ct.type.kind==="value"&&kt.type.kind!=="value"?ct=new Ht(kt.type,[ct]):ct.type.kind!=="value"&&kt.type.kind==="value"&&(kt=new Ht(ct.type,[kt])));var Mt=null;if(Fe.length===4){if(ct.type.kind!=="string"&&kt.type.kind!=="string"&&ct.type.kind!=="value"&&kt.type.kind!=="value")return Ge.error("Cannot use collator to compare non-string types.");if(!(Mt=Ge.parse(Fe[3],3,tn)))return null}return new Oe(ct,kt,Mt)},Oe.prototype.evaluate=function(Fe){var Ge=this.lhs.evaluate(Fe),tt=this.rhs.evaluate(Fe);if(pe&&this.hasUntypedArgument){var ct=ir(Ge),kt=ir(tt);if(ct.kind!==kt.kind||ct.kind!=="string"&&ct.kind!=="number")throw new Kn('Expected arguments for "'+S+'" to be (string, string) or (number, number), but found ('+ct.kind+", "+kt.kind+") instead.")}if(this.collator&&!pe&&this.hasUntypedArgument){var Mt=ir(Ge),Dt=ir(tt);if(Mt.kind!=="string"||Dt.kind!=="string")return F(Fe,Ge,tt)}return this.collator?K(Fe,Ge,tt,this.collator.evaluate(Fe)):F(Fe,Ge,tt)},Oe.prototype.eachChild=function(Fe){Fe(this.lhs),Fe(this.rhs),this.collator&&Fe(this.collator)},Oe.prototype.outputDefined=function(){return!0},Oe.prototype.serialize=function(){var Fe=[S];return this.eachChild(function(Ge){Fe.push(Ge.serialize())}),Fe},Oe}()}es.parse=function(S,F){if(S.length<=2||S.length>=5)return F.error("Expected 3 or 4 arguments, but found "+(S.length-1)+" instead.");var K=F.parse(S[1],1,Ut),pe=F.parse(S[2],2,dt);if(!K||!pe)return null;if(!Yt(K.type,[Gt(Ut),vt,Ut]))return F.error("Expected first argument to be of type array or string, but found "+vn(K.type)+" instead");if(S.length===4){var Oe=F.parse(S[3],3,dt);return Oe?new es(K.type,K,pe,Oe):null}return new es(K.type,K,pe)},es.prototype.evaluate=function(S){var F=this.input.evaluate(S),K=this.beginIndex.evaluate(S);if(!ln(F,["string","array"]))throw new Kn("Expected first argument to be of type array or string, but found "+vn(ir(F))+" instead.");if(this.endIndex){var pe=this.endIndex.evaluate(S);return F.slice(K,pe)}return F.slice(K)},es.prototype.eachChild=function(S){S(this.input),S(this.beginIndex),this.endIndex&&S(this.endIndex)},es.prototype.outputDefined=function(){return!1},es.prototype.serialize=function(){if(this.endIndex!=null&&this.endIndex!==void 0){var S=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),S]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};var sc=bs("==",function(S,F,K){return F===K},oc),Lu=bs("!=",function(S,F,K){return F!==K},function(S,F,K,pe){return!oc(0,F,K,pe)}),lc=bs("<",function(S,F,K){return F<K},function(S,F,K,pe){return pe.compare(F,K)<0}),Pu=bs(">",function(S,F,K){return F>K},function(S,F,K,pe){return pe.compare(F,K)>0}),uc=bs("<=",function(S,F,K){return F<=K},function(S,F,K,pe){return pe.compare(F,K)<=0}),vl=bs(">=",function(S,F,K){return F>=K},function(S,F,K,pe){return pe.compare(F,K)>=0}),_s=function(S,F,K,pe,Oe){this.type=vt,this.number=S,this.locale=F,this.currency=K,this.minFractionDigits=pe,this.maxFractionDigits=Oe};_s.parse=function(S,F){if(S.length!==3)return F.error("Expected two arguments.");var K=F.parse(S[1],1,dt);if(!K)return null;var pe=S[2];if(typeof pe!="object"||Array.isArray(pe))return F.error("NumberFormat options argument must be an object.");var Oe=null;if(pe.locale&&!(Oe=F.parse(pe.locale,1,vt)))return null;var Fe=null;if(pe.currency&&!(Fe=F.parse(pe.currency,1,vt)))return null;var Ge=null;if(pe["min-fraction-digits"]&&!(Ge=F.parse(pe["min-fraction-digits"],1,dt)))return null;var tt=null;return pe["max-fraction-digits"]&&!(tt=F.parse(pe["max-fraction-digits"],1,dt))?null:new _s(K,Oe,Fe,Ge,tt)},_s.prototype.evaluate=function(S){return new Intl.NumberFormat(this.locale?this.locale.evaluate(S):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(S):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(S):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(S):void 0}).format(this.number.evaluate(S))},_s.prototype.eachChild=function(S){S(this.number),this.locale&&S(this.locale),this.currency&&S(this.currency),this.minFractionDigits&&S(this.minFractionDigits),this.maxFractionDigits&&S(this.maxFractionDigits)},_s.prototype.outputDefined=function(){return!1},_s.prototype.serialize=function(){var S={};return this.locale&&(S.locale=this.locale.serialize()),this.currency&&(S.currency=this.currency.serialize()),this.minFractionDigits&&(S["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(S["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),S]};var Zs=function(S){this.type=dt,this.input=S};Zs.parse=function(S,F){if(S.length!==2)return F.error("Expected 1 argument, but found "+(S.length-1)+" instead.");var K=F.parse(S[1],1);return K?K.type.kind!=="array"&&K.type.kind!=="string"&&K.type.kind!=="value"?F.error("Expected argument of type string or array, but found "+vn(K.type)+" instead."):new Zs(K):null},Zs.prototype.evaluate=function(S){var F=this.input.evaluate(S);if(typeof F=="string"||Array.isArray(F))return F.length;throw new Kn("Expected value to be of type string or array, but found "+vn(ir(F))+" instead.")},Zs.prototype.eachChild=function(S){S(this.input)},Zs.prototype.outputDefined=function(){return!1},Zs.prototype.serialize=function(){var S=["length"];return this.eachChild(function(F){S.push(F.serialize())}),S};var ml={"==":sc,"!=":Lu,">":Pu,"<":lc,">=":vl,"<=":uc,array:Ht,at:Qa,boolean:Ht,case:Qo,coalesce:ti,collator:rr,format:sn,image:gn,in:Jo,"index-of":xo,interpolate:qi,"interpolate-hcl":qi,"interpolate-lab":qi,length:Zs,let:No,literal:ar,match:xs,number:Ht,"number-format":_s,object:Ht,slice:es,step:Er,string:Ht,"to-boolean":Cn,"to-color":Cn,"to-number":Cn,"to-string":Cn,var:or,within:Hn};function su(S,F){var K=F[0],pe=F[1],Oe=F[2],Fe=F[3];K=K.evaluate(S),pe=pe.evaluate(S),Oe=Oe.evaluate(S);var Ge=Fe?Fe.evaluate(S):1,tt=Fn(K,pe,Oe,Ge);if(tt)throw new Kn(tt);return new mn(K/255*Ge,pe/255*Ge,Oe/255*Ge,Ge)}function Ou(S,F){return S in F}function Iu(S,F){var K=F[S];return K===void 0?null:K}function so(S){return{type:S}}function Ys(S){return{result:"success",value:S}}function jo(S){return{result:"error",value:S}}function ts(S){return S["property-type"]==="data-driven"||S["property-type"]==="cross-faded-data-driven"}function cc(S){return!!S.expression&&S.expression.parameters.indexOf("zoom")>-1}function ws(S){return!!S.expression&&S.expression.interpolated}function fi(S){return S instanceof Number?"number":S instanceof String?"string":S instanceof Boolean?"boolean":Array.isArray(S)?"array":S===null?"null":typeof S}function bo(S){return typeof S=="object"&&S!==null&&!Array.isArray(S)}function Fl(S){return S}function lo(S,F){var K,pe,Oe,Fe=F.type==="color",Ge=S.stops&&typeof S.stops[0][0]=="object",tt=Ge||S.property!==void 0,ct=Ge||!tt,kt=S.type||(ws(F)?"exponential":"interval");if(Fe&&((S=ot({},S)).stops&&(S.stops=S.stops.map(function(dr){return[dr[0],mn.parse(dr[1])]})),S.default?S.default=mn.parse(S.default):S.default=mn.parse(F.default)),S.colorSpace&&S.colorSpace!=="rgb"&&!Bo[S.colorSpace])throw new Error("Unknown color space: "+S.colorSpace);if(kt==="exponential")K=fc;else if(kt==="interval")K=lu;else if(kt==="categorical"){K=$c,pe=Object.create(null);for(var Mt=0,Dt=S.stops;Mt<Dt.length;Mt+=1){var qt=Dt[Mt];pe[qt[0]]=qt[1]}Oe=typeof S.stops[0][0]}else{if(kt!=="identity")throw new Error('Unknown function type "'+kt+'"');K=hc}if(Ge){for(var Nt={},an=[],un=0;un<S.stops.length;un++){var Sn=S.stops[un],Mn=Sn[0].zoom;Nt[Mn]===void 0&&(Nt[Mn]={zoom:Mn,type:S.type,property:S.property,default:S.default,stops:[]},an.push(Mn)),Nt[Mn].stops.push([Sn[0].value,Sn[1]])}for(var zn=[],Bn=0,Gn=an;Bn<Gn.length;Bn+=1){var $n=Gn[Bn];zn.push([Nt[$n].zoom,lo(Nt[$n],F)])}var nr={name:"linear"};return{kind:"composite",interpolationType:nr,interpolationFactor:qi.interpolationFactor.bind(void 0,nr),zoomStops:zn.map(function(dr){return dr[0]}),evaluate:function(dr,kr){var Cr=dr.zoom;return fc({stops:zn,base:S.base},F,Cr).evaluate(Cr,kr)}}}if(ct){var xr=kt==="exponential"?{name:"exponential",base:S.base!==void 0?S.base:1}:null;return{kind:"camera",interpolationType:xr,interpolationFactor:qi.interpolationFactor.bind(void 0,xr),zoomStops:S.stops.map(function(dr){return dr[0]}),evaluate:function(dr){var kr=dr.zoom;return K(S,F,kr,pe,Oe)}}}return{kind:"source",evaluate:function(dr,kr){var Cr=kr&&kr.properties?kr.properties[S.property]:void 0;return Cr===void 0?Xs(S.default,F.default):K(S,F,Cr,pe,Oe)}}}function Xs(S,F,K){return S!==void 0?S:F!==void 0?F:K!==void 0?K:void 0}function $c(S,F,K,pe,Oe){return Xs(typeof K===Oe?pe[K]:void 0,S.default,F.default)}function lu(S,F,K){if(fi(K)!=="number")return Xs(S.default,F.default);var pe=S.stops.length;if(pe===1||K<=S.stops[0][0])return S.stops[0][1];if(K>=S.stops[pe-1][0])return S.stops[pe-1][1];var Oe=vr(S.stops.map(function(Fe){return Fe[0]}),K);return S.stops[Oe][1]}function fc(S,F,K){var pe=S.base!==void 0?S.base:1;if(fi(K)!=="number")return Xs(S.default,F.default);var Oe=S.stops.length;if(Oe===1||K<=S.stops[0][0])return S.stops[0][1];if(K>=S.stops[Oe-1][0])return S.stops[Oe-1][1];var Fe=vr(S.stops.map(function(Dt){return Dt[0]}),K),Ge=function(Dt,qt,Nt,an){var un=an-Nt,Sn=Dt-Nt;return un===0?0:qt===1?Sn/un:(Math.pow(qt,Sn)-1)/(Math.pow(qt,un)-1)}(K,pe,S.stops[Fe][0],S.stops[Fe+1][0]),tt=S.stops[Fe][1],ct=S.stops[Fe+1][1],kt=br[F.type]||Fl;if(S.colorSpace&&S.colorSpace!=="rgb"){var Mt=Bo[S.colorSpace];kt=function(Dt,qt){return Mt.reverse(Mt.interpolate(Mt.forward(Dt),Mt.forward(qt),Ge))}}return typeof tt.evaluate=="function"?{evaluate:function(){for(var Dt=[],qt=arguments.length;qt--;)Dt[qt]=arguments[qt];var Nt=tt.evaluate.apply(void 0,Dt),an=ct.evaluate.apply(void 0,Dt);if(Nt!==void 0&&an!==void 0)return kt(Nt,an,Ge)}}:kt(tt,ct,Ge)}function hc(S,F,K){return F.type==="color"?K=mn.parse(K):F.type==="formatted"?K=Dn.fromString(K.toString()):F.type==="resolvedImage"?K=En.fromString(K.toString()):fi(K)===F.type||F.type==="enum"&&F.values[K]||(K=void 0),Xs(K,S.default,F.default)}jn.register(ml,{error:[{kind:"error"},[vt],function(S,F){var K=F[0];throw new Kn(K.evaluate(S))}],typeof:[vt,[Ut],function(S,F){return vn(ir(F[0].evaluate(S)))}],"to-rgba":[Gt(dt,4),[Bt],function(S,F){return F[0].evaluate(S).toArray()}],rgb:[Bt,[dt,dt,dt],su],rgba:[Bt,[dt,dt,dt,dt],su],has:{type:At,overloads:[[[vt],function(S,F){return Ou(F[0].evaluate(S),S.properties())}],[[vt,jt],function(S,F){var K=F[0],pe=F[1];return Ou(K.evaluate(S),pe.evaluate(S))}]]},get:{type:Ut,overloads:[[[vt],function(S,F){return Iu(F[0].evaluate(S),S.properties())}],[[vt,jt],function(S,F){var K=F[0],pe=F[1];return Iu(K.evaluate(S),pe.evaluate(S))}]]},"feature-state":[Ut,[vt],function(S,F){return Iu(F[0].evaluate(S),S.featureState||{})}],properties:[jt,[],function(S){return S.properties()}],"geometry-type":[vt,[],function(S){return S.geometryType()}],id:[Ut,[],function(S){return S.id()}],zoom:[dt,[],function(S){return S.globals.zoom}],"heatmap-density":[dt,[],function(S){return S.globals.heatmapDensity||0}],"line-progress":[dt,[],function(S){return S.globals.lineProgress||0}],accumulated:[Ut,[],function(S){return S.globals.accumulated===void 0?null:S.globals.accumulated}],"+":[dt,so(dt),function(S,F){for(var K=0,pe=0,Oe=F;pe<Oe.length;pe+=1)K+=Oe[pe].evaluate(S);return K}],"*":[dt,so(dt),function(S,F){for(var K=1,pe=0,Oe=F;pe<Oe.length;pe+=1)K*=Oe[pe].evaluate(S);return K}],"-":{type:dt,overloads:[[[dt,dt],function(S,F){var K=F[0],pe=F[1];return K.evaluate(S)-pe.evaluate(S)}],[[dt],function(S,F){return-F[0].evaluate(S)}]]},"/":[dt,[dt,dt],function(S,F){var K=F[0],pe=F[1];return K.evaluate(S)/pe.evaluate(S)}],"%":[dt,[dt,dt],function(S,F){var K=F[0],pe=F[1];return K.evaluate(S)%pe.evaluate(S)}],ln2:[dt,[],function(){return Math.LN2}],pi:[dt,[],function(){return Math.PI}],e:[dt,[],function(){return Math.E}],"^":[dt,[dt,dt],function(S,F){var K=F[0],pe=F[1];return Math.pow(K.evaluate(S),pe.evaluate(S))}],sqrt:[dt,[dt],function(S,F){var K=F[0];return Math.sqrt(K.evaluate(S))}],log10:[dt,[dt],function(S,F){var K=F[0];return Math.log(K.evaluate(S))/Math.LN10}],ln:[dt,[dt],function(S,F){var K=F[0];return Math.log(K.evaluate(S))}],log2:[dt,[dt],function(S,F){var K=F[0];return Math.log(K.evaluate(S))/Math.LN2}],sin:[dt,[dt],function(S,F){var K=F[0];return Math.sin(K.evaluate(S))}],cos:[dt,[dt],function(S,F){var K=F[0];return Math.cos(K.evaluate(S))}],tan:[dt,[dt],function(S,F){var K=F[0];return Math.tan(K.evaluate(S))}],asin:[dt,[dt],function(S,F){var K=F[0];return Math.asin(K.evaluate(S))}],acos:[dt,[dt],function(S,F){var K=F[0];return Math.acos(K.evaluate(S))}],atan:[dt,[dt],function(S,F){var K=F[0];return Math.atan(K.evaluate(S))}],min:[dt,so(dt),function(S,F){return Math.min.apply(Math,F.map(function(K){return K.evaluate(S)}))}],max:[dt,so(dt),function(S,F){return Math.max.apply(Math,F.map(function(K){return K.evaluate(S)}))}],abs:[dt,[dt],function(S,F){var K=F[0];return Math.abs(K.evaluate(S))}],round:[dt,[dt],function(S,F){var K=F[0].evaluate(S);return K<0?-Math.round(-K):Math.round(K)}],floor:[dt,[dt],function(S,F){var K=F[0];return Math.floor(K.evaluate(S))}],ceil:[dt,[dt],function(S,F){var K=F[0];return Math.ceil(K.evaluate(S))}],"filter-==":[At,[vt,Ut],function(S,F){var K=F[0],pe=F[1];return S.properties()[K.value]===pe.value}],"filter-id-==":[At,[Ut],function(S,F){var K=F[0];return S.id()===K.value}],"filter-type-==":[At,[vt],function(S,F){var K=F[0];return S.geometryType()===K.value}],"filter-<":[At,[vt,Ut],function(S,F){var K=F[0],pe=F[1],Oe=S.properties()[K.value],Fe=pe.value;return typeof Oe==typeof Fe&&Oe<Fe}],"filter-id-<":[At,[Ut],function(S,F){var K=F[0],pe=S.id(),Oe=K.value;return typeof pe==typeof Oe&&pe<Oe}],"filter->":[At,[vt,Ut],function(S,F){var K=F[0],pe=F[1],Oe=S.properties()[K.value],Fe=pe.value;return typeof Oe==typeof Fe&&Oe>Fe}],"filter-id->":[At,[Ut],function(S,F){var K=F[0],pe=S.id(),Oe=K.value;return typeof pe==typeof Oe&&pe>Oe}],"filter-<=":[At,[vt,Ut],function(S,F){var K=F[0],pe=F[1],Oe=S.properties()[K.value],Fe=pe.value;return typeof Oe==typeof Fe&&Oe<=Fe}],"filter-id-<=":[At,[Ut],function(S,F){var K=F[0],pe=S.id(),Oe=K.value;return typeof pe==typeof Oe&&pe<=Oe}],"filter->=":[At,[vt,Ut],function(S,F){var K=F[0],pe=F[1],Oe=S.properties()[K.value],Fe=pe.value;return typeof Oe==typeof Fe&&Oe>=Fe}],"filter-id->=":[At,[Ut],function(S,F){var K=F[0],pe=S.id(),Oe=K.value;return typeof pe==typeof Oe&&pe>=Oe}],"filter-has":[At,[Ut],function(S,F){return F[0].value in S.properties()}],"filter-has-id":[At,[],function(S){return S.id()!==null&&S.id()!==void 0}],"filter-type-in":[At,[Gt(vt)],function(S,F){return F[0].value.indexOf(S.geometryType())>=0}],"filter-id-in":[At,[Gt(Ut)],function(S,F){return F[0].value.indexOf(S.id())>=0}],"filter-in-small":[At,[vt,Gt(Ut)],function(S,F){var K=F[0];return F[1].value.indexOf(S.properties()[K.value])>=0}],"filter-in-large":[At,[vt,Gt(Ut)],function(S,F){var K=F[0],pe=F[1];return function(Oe,Fe,Ge,tt){for(;Ge<=tt;){var ct=Ge+tt>>1;if(Fe[ct]===Oe)return!0;Fe[ct]>Oe?tt=ct-1:Ge=ct+1}return!1}(S.properties()[K.value],pe.value,0,pe.value.length-1)}],all:{type:At,overloads:[[[At,At],function(S,F){var K=F[0],pe=F[1];return K.evaluate(S)&&pe.evaluate(S)}],[so(At),function(S,F){for(var K=0,pe=F;K<pe.length;K+=1)if(!pe[K].evaluate(S))return!1;return!0}]]},any:{type:At,overloads:[[[At,At],function(S,F){var K=F[0],pe=F[1];return K.evaluate(S)||pe.evaluate(S)}],[so(At),function(S,F){for(var K=0,pe=F;K<pe.length;K+=1)if(pe[K].evaluate(S))return!0;return!1}]]},"!":[At,[At],function(S,F){return!F[0].evaluate(S)}],"is-supported-script":[At,[vt],function(S,F){var K=F[0],pe=S.globals&&S.globals.isSupportedScript;return!pe||pe(K.evaluate(S))}],upcase:[vt,[vt],function(S,F){return F[0].evaluate(S).toUpperCase()}],downcase:[vt,[vt],function(S,F){return F[0].evaluate(S).toLowerCase()}],concat:[vt,so(Ut),function(S,F){return F.map(function(K){return fr(K.evaluate(S))}).join("")}],"resolved-locale":[vt,[tn],function(S,F){return F[0].evaluate(S).resolvedLocale()}]});var Bl=function(S,F){this.expression=S,this._warningHistory={},this._evaluator=new Nn,this._defaultValue=F?function(K){return K.type==="color"&&bo(K.default)?new mn(0,0,0,0):K.type==="color"?mn.parse(K.default)||null:K.default===void 0?null:K.default}(F):null,this._enumValues=F&&F.type==="enum"?F.values:null};function yl(S){return Array.isArray(S)&&S.length>0&&typeof S[0]=="string"&&S[0]in ml}function Nl(S,F){var K=new sr(ml,[],F?function(Oe){var Fe={color:Bt,string:vt,number:dt,enum:vt,boolean:At,formatted:Xt,resolvedImage:Qt};return Oe.type==="array"?Gt(Fe[Oe.value]||Ut,Oe.length):Fe[Oe.type]}(F):void 0),pe=K.parse(S,void 0,void 0,void 0,F&&F.type==="string"?{typeAnnotation:"coerce"}:void 0);return pe?Ys(new Bl(pe,F)):jo(K.errors)}Bl.prototype.evaluateWithoutErrorHandling=function(S,F,K,pe,Oe,Fe){return this._evaluator.globals=S,this._evaluator.feature=F,this._evaluator.featureState=K,this._evaluator.canonical=pe,this._evaluator.availableImages=Oe||null,this._evaluator.formattedSection=Fe,this.expression.evaluate(this._evaluator)},Bl.prototype.evaluate=function(S,F,K,pe,Oe,Fe){this._evaluator.globals=S,this._evaluator.feature=F||null,this._evaluator.featureState=K||null,this._evaluator.canonical=pe,this._evaluator.availableImages=Oe||null,this._evaluator.formattedSection=Fe||null;try{var Ge=this.expression.evaluate(this._evaluator);if(Ge==null||typeof Ge=="number"&&Ge!=Ge)return this._defaultValue;if(this._enumValues&&!(Ge in this._enumValues))throw new Kn("Expected value to be one of "+Object.keys(this._enumValues).map(function(tt){return JSON.stringify(tt)}).join(", ")+", but found "+JSON.stringify(Ge)+" instead.");return Ge}catch(tt){return this._warningHistory[tt.message]||(this._warningHistory[tt.message]=!0,typeof console<"u"&&console.warn(tt.message)),this._defaultValue}};var ks=function(S,F){this.kind=S,this._styleExpression=F,this.isStateDependent=S!=="constant"&&!Xn(F.expression)};ks.prototype.evaluateWithoutErrorHandling=function(S,F,K,pe,Oe,Fe){return this._styleExpression.evaluateWithoutErrorHandling(S,F,K,pe,Oe,Fe)},ks.prototype.evaluate=function(S,F,K,pe,Oe,Fe){return this._styleExpression.evaluate(S,F,K,pe,Oe,Fe)};var ns=function(S,F,K,pe){this.kind=S,this.zoomStops=K,this._styleExpression=F,this.isStateDependent=S!=="camera"&&!Xn(F.expression),this.interpolationType=pe};function Ts(S,F){if((S=Nl(S,F)).result==="error")return S;var K=S.value.expression,pe=tr(K);if(!pe&&!ts(F))return jo([new _t("","data expressions not supported")]);var Oe=lr(K,["zoom"]);if(!Oe&&!cc(F))return jo([new _t("","zoom expressions not supported")]);var Fe=uu(K);if(!Fe&&!Oe)return jo([new _t("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(Fe instanceof _t)return jo([Fe]);if(Fe instanceof qi&&!ws(F))return jo([new _t("",'"interpolate" expressions cannot be used with this property')]);if(!Fe)return Ys(new ks(pe?"constant":"source",S.value));var Ge=Fe instanceof qi?Fe.interpolation:void 0;return Ys(new ns(pe?"camera":"composite",S.value,Fe.labels,Ge))}ns.prototype.evaluateWithoutErrorHandling=function(S,F,K,pe,Oe,Fe){return this._styleExpression.evaluateWithoutErrorHandling(S,F,K,pe,Oe,Fe)},ns.prototype.evaluate=function(S,F,K,pe,Oe,Fe){return this._styleExpression.evaluate(S,F,K,pe,Oe,Fe)},ns.prototype.interpolationFactor=function(S,F,K){return this.interpolationType?qi.interpolationFactor(this.interpolationType,S,F,K):0};var rs=function(S,F){this._parameters=S,this._specification=F,ot(this,lo(this._parameters,this._specification))};function uu(S){var F=null;if(S instanceof No)F=uu(S.result);else if(S instanceof ti)for(var K=0,pe=S.args;K<pe.length;K+=1){var Oe=pe[K];if(F=uu(Oe))break}else(S instanceof Er||S instanceof qi)&&S.input instanceof jn&&S.input.name==="zoom"&&(F=S);return F instanceof _t||S.eachChild(function(Fe){var Ge=uu(Fe);Ge instanceof _t?F=Ge:!F&&Ge?F=new _t("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):F&&Ge&&F!==Ge&&(F=new _t("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),F}function _o(S){var F=S.key,K=S.value,pe=S.valueSpec||{},Oe=S.objectElementValidators||{},Fe=S.style,Ge=S.styleSpec,tt=[],ct=fi(K);if(ct!=="object")return[new je(F,K,"object expected, "+ct+" found")];for(var kt in K){var Mt=kt.split(".")[0],Dt=pe[Mt]||pe["*"],qt=void 0;if(Oe[Mt])qt=Oe[Mt];else if(pe[Mt])qt=Ci;else if(Oe["*"])qt=Oe["*"];else{if(!pe["*"]){tt.push(new je(F,K[kt],'unknown property "'+kt+'"'));continue}qt=Ci}tt=tt.concat(qt({key:(F&&F+".")+kt,value:K[kt],valueSpec:Dt,style:Fe,styleSpec:Ge,object:K,objectKey:kt},K))}for(var Nt in pe)Oe[Nt]||pe[Nt].required&&pe[Nt].default===void 0&&K[Nt]===void 0&&tt.push(new je(F,K,'missing required property "'+Nt+'"'));return tt}function pc(S){var F=S.value,K=S.valueSpec,pe=S.style,Oe=S.styleSpec,Fe=S.key,Ge=S.arrayElementValidator||Ci;if(fi(F)!=="array")return[new je(Fe,F,"array expected, "+fi(F)+" found")];if(K.length&&F.length!==K.length)return[new je(Fe,F,"array length "+K.length+" expected, length "+F.length+" found")];if(K["min-length"]&&F.length<K["min-length"])return[new je(Fe,F,"array length at least "+K["min-length"]+" expected, length "+F.length+" found")];var tt={type:K.value,values:K.values};Oe.$version<7&&(tt.function=K.function),fi(K.value)==="object"&&(tt=K.value);for(var ct=[],kt=0;kt<F.length;kt++)ct=ct.concat(Ge({array:F,arrayIndex:kt,value:F[kt],valueSpec:tt,style:pe,styleSpec:Oe,key:Fe+"["+kt+"]"}));return ct}function dc(S){var F=S.key,K=S.value,pe=S.valueSpec,Oe=fi(K);return Oe==="number"&&K!=K&&(Oe="NaN"),Oe!=="number"?[new je(F,K,"number expected, "+Oe+" found")]:"minimum"in pe&&K<pe.minimum?[new je(F,K,K+" is less than the minimum value "+pe.minimum)]:"maximum"in pe&&K>pe.maximum?[new je(F,K,K+" is greater than the maximum value "+pe.maximum)]:[]}function cu(S){var F,K,pe,Oe=S.valueSpec,Fe=xt(S.value.type),Ge={},tt=Fe!=="categorical"&&S.value.property===void 0,ct=!tt,kt=fi(S.value.stops)==="array"&&fi(S.value.stops[0])==="array"&&fi(S.value.stops[0][0])==="object",Mt=_o({key:S.key,value:S.value,valueSpec:S.styleSpec.function,style:S.style,styleSpec:S.styleSpec,objectElementValidators:{stops:function(Nt){if(Fe==="identity")return[new je(Nt.key,Nt.value,'identity function may not have a "stops" property')];var an=[],un=Nt.value;return an=an.concat(pc({key:Nt.key,value:un,valueSpec:Nt.valueSpec,style:Nt.style,styleSpec:Nt.styleSpec,arrayElementValidator:Dt})),fi(un)==="array"&&un.length===0&&an.push(new je(Nt.key,un,"array must have at least one stop")),an},default:function(Nt){return Ci({key:Nt.key,value:Nt.value,valueSpec:Oe,style:Nt.style,styleSpec:Nt.styleSpec})}}});return Fe==="identity"&&tt&&Mt.push(new je(S.key,S.value,'missing required property "property"')),Fe==="identity"||S.value.stops||Mt.push(new je(S.key,S.value,'missing required property "stops"')),Fe==="exponential"&&S.valueSpec.expression&&!ws(S.valueSpec)&&Mt.push(new je(S.key,S.value,"exponential functions not supported")),S.styleSpec.$version>=8&&(ct&&!ts(S.valueSpec)?Mt.push(new je(S.key,S.value,"property functions not supported")):tt&&!cc(S.valueSpec)&&Mt.push(new je(S.key,S.value,"zoom functions not supported"))),Fe!=="categorical"&&!kt||S.value.property!==void 0||Mt.push(new je(S.key,S.value,'"property" property is required')),Mt;function Dt(Nt){var an=[],un=Nt.value,Sn=Nt.key;if(fi(un)!=="array")return[new je(Sn,un,"array expected, "+fi(un)+" found")];if(un.length!==2)return[new je(Sn,un,"array length 2 expected, length "+un.length+" found")];if(kt){if(fi(un[0])!=="object")return[new je(Sn,un,"object expected, "+fi(un[0])+" found")];if(un[0].zoom===void 0)return[new je(Sn,un,"object stop key must have zoom")];if(un[0].value===void 0)return[new je(Sn,un,"object stop key must have value")];if(pe&&pe>xt(un[0].zoom))return[new je(Sn,un[0].zoom,"stop zoom values must appear in ascending order")];xt(un[0].zoom)!==pe&&(pe=xt(un[0].zoom),K=void 0,Ge={}),an=an.concat(_o({key:Sn+"[0]",value:un[0],valueSpec:{zoom:{}},style:Nt.style,styleSpec:Nt.styleSpec,objectElementValidators:{zoom:dc,value:qt}}))}else an=an.concat(qt({key:Sn+"[0]",value:un[0],valueSpec:{},style:Nt.style,styleSpec:Nt.styleSpec},un));return yl(yt(un[1]))?an.concat([new je(Sn+"[1]",un[1],"expressions are not allowed in function stops.")]):an.concat(Ci({key:Sn+"[1]",value:un[1],valueSpec:Oe,style:Nt.style,styleSpec:Nt.styleSpec}))}function qt(Nt,an){var un=fi(Nt.value),Sn=xt(Nt.value),Mn=Nt.value!==null?Nt.value:an;if(F){if(un!==F)return[new je(Nt.key,Mn,un+" stop domain type must match previous stop domain type "+F)]}else F=un;if(un!=="number"&&un!=="string"&&un!=="boolean")return[new je(Nt.key,Mn,"stop domain value must be a number, string, or boolean")];if(un!=="number"&&Fe!=="categorical"){var zn="number expected, "+un+" found";return ts(Oe)&&Fe===void 0&&(zn+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new je(Nt.key,Mn,zn)]}return Fe!=="categorical"||un!=="number"||isFinite(Sn)&&Math.floor(Sn)===Sn?Fe!=="categorical"&&un==="number"&&K!==void 0&&Sn<K?[new je(Nt.key,Mn,"stop domain values must appear in ascending order")]:(K=Sn,Fe==="categorical"&&Sn in Ge?[new je(Nt.key,Mn,"stop domain values must be unique")]:(Ge[Sn]=!0,[])):[new je(Nt.key,Mn,"integer expected, found "+Sn)]}}function As(S){var F=(S.expressionContext==="property"?Ts:Nl)(yt(S.value),S.valueSpec);if(F.result==="error")return F.value.map(function(pe){return new je(""+S.key+pe.key,S.value,pe.message)});var K=F.value.expression||F.value._styleExpression.expression;if(S.expressionContext==="property"&&S.propertyKey==="text-font"&&!K.outputDefined())return[new je(S.key,S.value,'Invalid data expression for "'+S.propertyKey+'". Output values must be contained as literals within the expression.')];if(S.expressionContext==="property"&&S.propertyType==="layout"&&!Xn(K))return[new je(S.key,S.value,'"feature-state" data expressions are not supported with layout properties.')];if(S.expressionContext==="filter"&&!Xn(K))return[new je(S.key,S.value,'"feature-state" data expressions are not supported with filters.')];if(S.expressionContext&&S.expressionContext.indexOf("cluster")===0){if(!lr(K,["zoom","feature-state"]))return[new je(S.key,S.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(S.expressionContext==="cluster-initial"&&!tr(K))return[new je(S.key,S.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function fu(S){var F=S.key,K=S.value,pe=S.valueSpec,Oe=[];return Array.isArray(pe.values)?pe.values.indexOf(xt(K))===-1&&Oe.push(new je(F,K,"expected one of ["+pe.values.join(", ")+"], "+JSON.stringify(K)+" found")):Object.keys(pe.values).indexOf(xt(K))===-1&&Oe.push(new je(F,K,"expected one of ["+Object.keys(pe.values).join(", ")+"], "+JSON.stringify(K)+" found")),Oe}function $s(S){if(S===!0||S===!1)return!0;if(!Array.isArray(S)||S.length===0)return!1;switch(S[0]){case"has":return S.length>=2&&S[1]!=="$id"&&S[1]!=="$type";case"in":return S.length>=3&&(typeof S[1]!="string"||Array.isArray(S[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return S.length!==3||Array.isArray(S[1])||Array.isArray(S[2]);case"any":case"all":for(var F=0,K=S.slice(1);F<K.length;F+=1){var pe=K[F];if(!$s(pe)&&typeof pe!="boolean")return!1}return!0;default:return!0}}rs.deserialize=function(S){return new rs(S._parameters,S._specification)},rs.serialize=function(S){return{_parameters:S._parameters,_specification:S._specification}};var Ru={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function xl(S){if(S==null)return{filter:function(){return!0},needGeometry:!1};$s(S)||(S=bl(S));var F=Nl(S,Ru);if(F.result==="error")throw new Error(F.value.map(function(K){return K.key+": "+K.message}).join(", "));return{filter:function(K,pe,Oe){return F.value.evaluate(K,pe,{},Oe)},needGeometry:jl(S)}}function Ks(S,F){return S<F?-1:S>F?1:0}function jl(S){if(!Array.isArray(S))return!1;if(S[0]==="within")return!0;for(var F=1;F<S.length;F++)if(jl(S[F]))return!0;return!1}function bl(S){if(!S)return!0;var F,K=S[0];return S.length<=1?K!=="any":K==="=="?hi(S[1],S[2],"=="):K==="!="?ia(hi(S[1],S[2],"==")):K==="<"||K===">"||K==="<="||K===">="?hi(S[1],S[2],K):K==="any"?(F=S.slice(1),["any"].concat(F.map(bl))):K==="all"?["all"].concat(S.slice(1).map(bl)):K==="none"?["all"].concat(S.slice(1).map(bl).map(ia)):K==="in"?Ms(S[1],S.slice(2)):K==="!in"?ia(Ms(S[1],S.slice(2))):K==="has"?is(S[1]):K==="!has"?ia(is(S[1])):K!=="within"||S}function hi(S,F,K){switch(S){case"$type":return["filter-type-"+K,F];case"$id":return["filter-id-"+K,F];default:return["filter-"+K,S,F]}}function Ms(S,F){if(F.length===0)return!1;switch(S){case"$type":return["filter-type-in",["literal",F]];case"$id":return["filter-id-in",["literal",F]];default:return F.length>200&&!F.some(function(K){return typeof K!=typeof F[0]})?["filter-in-large",S,["literal",F.sort(Ks)]]:["filter-in-small",S,["literal",F]]}}function is(S){switch(S){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",S]}}function ia(S){return["!",S]}function Kr(S){return $s(yt(S.value))?As(ot({},S,{expressionContext:"filter",valueSpec:{value:"boolean"}})):ni(S)}function ni(S){var F=S.value,K=S.key;if(fi(F)!=="array")return[new je(K,F,"array expected, "+fi(F)+" found")];var pe,Oe=S.styleSpec,Fe=[];if(F.length<1)return[new je(K,F,"filter array must have at least 1 element")];switch(Fe=Fe.concat(fu({key:K+"[0]",value:F[0],valueSpec:Oe.filter_operator,style:S.style,styleSpec:S.styleSpec})),xt(F[0])){case"<":case"<=":case">":case">=":F.length>=2&&xt(F[1])==="$type"&&Fe.push(new je(K,F,'"$type" cannot be use with operator "'+F[0]+'"'));case"==":case"!=":F.length!==3&&Fe.push(new je(K,F,'filter array for operator "'+F[0]+'" must have 3 elements'));case"in":case"!in":F.length>=2&&(pe=fi(F[1]))!=="string"&&Fe.push(new je(K+"[1]",F[1],"string expected, "+pe+" found"));for(var Ge=2;Ge<F.length;Ge++)pe=fi(F[Ge]),xt(F[1])==="$type"?Fe=Fe.concat(fu({key:K+"["+Ge+"]",value:F[Ge],valueSpec:Oe.geometry_type,style:S.style,styleSpec:S.styleSpec})):pe!=="string"&&pe!=="number"&&pe!=="boolean"&&Fe.push(new je(K+"["+Ge+"]",F[Ge],"string, number, or boolean expected, "+pe+" found"));break;case"any":case"all":case"none":for(var tt=1;tt<F.length;tt++)Fe=Fe.concat(ni({key:K+"["+tt+"]",value:F[tt],style:S.style,styleSpec:S.styleSpec}));break;case"has":case"!has":pe=fi(F[1]),F.length!==2?Fe.push(new je(K,F,'filter array for "'+F[0]+'" operator must have 2 elements')):pe!=="string"&&Fe.push(new je(K+"[1]",F[1],"string expected, "+pe+" found"));break;case"within":pe=fi(F[1]),F.length!==2?Fe.push(new je(K,F,'filter array for "'+F[0]+'" operator must have 2 elements')):pe!=="object"&&Fe.push(new je(K+"[1]",F[1],"object expected, "+pe+" found"))}return Fe}function Ss(S,F){var K=S.key,pe=S.style,Oe=S.styleSpec,Fe=S.value,Ge=S.objectKey,tt=Oe[F+"_"+S.layerType];if(!tt)return[];var ct=Ge.match(/^(.*)-transition$/);if(F==="paint"&&ct&&tt[ct[1]]&&tt[ct[1]].transition)return Ci({key:K,value:Fe,valueSpec:Oe.transition,style:pe,styleSpec:Oe});var kt,Mt=S.valueSpec||tt[Ge];if(!Mt)return[new je(K,Fe,'unknown property "'+Ge+'"')];if(fi(Fe)==="string"&&ts(Mt)&&!Mt.tokens&&(kt=/^{([^}]+)}$/.exec(Fe)))return[new je(K,Fe,'"'+Ge+'" does not support interpolation syntax\nUse an identity property function instead: `{ "type": "identity", "property": '+JSON.stringify(kt[1])+" }`.")];var Dt=[];return S.layerType==="symbol"&&(Ge==="text-field"&&pe&&!pe.glyphs&&Dt.push(new je(K,Fe,'use of "text-field" requires a style "glyphs" property')),Ge==="text-font"&&bo(yt(Fe))&&xt(Fe.type)==="identity"&&Dt.push(new je(K,Fe,'"text-font" does not support identity functions'))),Dt.concat(Ci({key:S.key,value:Fe,valueSpec:Mt,style:pe,styleSpec:Oe,expressionContext:"property",propertyType:F,propertyKey:Ge}))}function as(S){return Ss(S,"paint")}function zu(S){return Ss(S,"layout")}function Ul(S){var F=[],K=S.value,pe=S.key,Oe=S.style,Fe=S.styleSpec;K.type||K.ref||F.push(new je(pe,K,'either "type" or "ref" is required'));var Ge,tt=xt(K.type),ct=xt(K.ref);if(K.id)for(var kt=xt(K.id),Mt=0;Mt<S.arrayIndex;Mt++){var Dt=Oe.layers[Mt];xt(Dt.id)===kt&&F.push(new je(pe,K.id,'duplicate layer id "'+K.id+'", previously used at line '+Dt.id.__line__))}if("ref"in K)["type","source","source-layer","filter","layout"].forEach(function(an){an in K&&F.push(new je(pe,K[an],'"'+an+'" is prohibited for ref layers'))}),Oe.layers.forEach(function(an){xt(an.id)===ct&&(Ge=an)}),Ge?Ge.ref?F.push(new je(pe,K.ref,"ref cannot reference another ref layer")):tt=xt(Ge.type):F.push(new je(pe,K.ref,'ref layer "'+ct+'" not found'));else if(tt!=="background")if(K.source){var qt=Oe.sources&&Oe.sources[K.source],Nt=qt&&xt(qt.type);qt?Nt==="vector"&&tt==="raster"?F.push(new je(pe,K.source,'layer "'+K.id+'" requires a raster source')):Nt==="raster"&&tt!=="raster"?F.push(new je(pe,K.source,'layer "'+K.id+'" requires a vector source')):Nt!=="vector"||K["source-layer"]?Nt==="raster-dem"&&tt!=="hillshade"?F.push(new je(pe,K.source,"raster-dem source can only be used with layer type 'hillshade'.")):tt!=="line"||!K.paint||!K.paint["line-gradient"]||Nt==="geojson"&&qt.lineMetrics||F.push(new je(pe,K,'layer "'+K.id+'" specifies a line-gradient, which requires a GeoJSON source with `lineMetrics` enabled.')):F.push(new je(pe,K,'layer "'+K.id+'" must specify a "source-layer"')):F.push(new je(pe,K.source,'source "'+K.source+'" not found'))}else F.push(new je(pe,K,'missing required property "source"'));return F=F.concat(_o({key:pe,value:K,valueSpec:Fe.layer,style:S.style,styleSpec:S.styleSpec,objectElementValidators:{"*":function(){return[]},type:function(){return Ci({key:pe+".type",value:K.type,valueSpec:Fe.layer.type,style:S.style,styleSpec:S.styleSpec,object:K,objectKey:"type"})},filter:Kr,layout:function(an){return _o({layer:K,key:an.key,value:an.value,style:an.style,styleSpec:an.styleSpec,objectElementValidators:{"*":function(un){return zu(ot({layerType:tt},un))}}})},paint:function(an){return _o({layer:K,key:an.key,value:an.value,style:an.style,styleSpec:an.styleSpec,objectElementValidators:{"*":function(un){return as(ot({layerType:tt},un))}}})}}})),F}function Es(S){var F=S.value,K=S.key,pe=fi(F);return pe!=="string"?[new je(K,F,"string expected, "+pe+" found")]:[]}var Vl={promoteId:function(S){var F=S.key,K=S.value;if(fi(K)==="string")return Es({key:F,value:K});var pe=[];for(var Oe in K)pe.push.apply(pe,Es({key:F+"."+Oe,value:K[Oe]}));return pe}};function os(S){var F=S.value,K=S.key,pe=S.styleSpec,Oe=S.style;if(!F.type)return[new je(K,F,'"type" is required')];var Fe,Ge=xt(F.type);switch(Ge){case"vector":case"raster":case"raster-dem":return _o({key:K,value:F,valueSpec:pe["source_"+Ge.replace("-","_")],style:S.style,styleSpec:pe,objectElementValidators:Vl});case"geojson":if(Fe=_o({key:K,value:F,valueSpec:pe.source_geojson,style:Oe,styleSpec:pe,objectElementValidators:Vl}),F.cluster)for(var tt in F.clusterProperties){var ct=F.clusterProperties[tt],kt=ct[0],Mt=ct[1],Dt=typeof kt=="string"?[kt,["accumulated"],["get",tt]]:kt;Fe.push.apply(Fe,As({key:K+"."+tt+".map",value:Mt,expressionContext:"cluster-map"})),Fe.push.apply(Fe,As({key:K+"."+tt+".reduce",value:Dt,expressionContext:"cluster-reduce"}))}return Fe;case"video":return _o({key:K,value:F,valueSpec:pe.source_video,style:Oe,styleSpec:pe});case"image":return _o({key:K,value:F,valueSpec:pe.source_image,style:Oe,styleSpec:pe});case"canvas":return[new je(K,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return fu({key:K+".type",value:F.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:Oe,styleSpec:pe})}}function Js(S){var F=S.value,K=S.styleSpec,pe=K.light,Oe=S.style,Fe=[],Ge=fi(F);if(F===void 0)return Fe;if(Ge!=="object")return Fe.concat([new je("light",F,"object expected, "+Ge+" found")]);for(var tt in F){var ct=tt.match(/^(.*)-transition$/);Fe=ct&&pe[ct[1]]&&pe[ct[1]].transition?Fe.concat(Ci({key:tt,value:F[tt],valueSpec:K.transition,style:Oe,styleSpec:K})):pe[tt]?Fe.concat(Ci({key:tt,value:F[tt],valueSpec:pe[tt],style:Oe,styleSpec:K})):Fe.concat([new je(tt,F[tt],'unknown property "'+tt+'"')])}return Fe}var Cs={"*":function(){return[]},array:pc,boolean:function(S){var F=S.value,K=S.key,pe=fi(F);return pe!=="boolean"?[new je(K,F,"boolean expected, "+pe+" found")]:[]},number:dc,color:function(S){var F=S.key,K=S.value,pe=fi(K);return pe!=="string"?[new je(F,K,"color expected, "+pe+" found")]:fn(K)===null?[new je(F,K,'color expected, "'+K+'" found')]:[]},constants:at,enum:fu,filter:Kr,function:cu,layer:Ul,object:_o,source:os,light:Js,string:Es,formatted:function(S){return Es(S).length===0?[]:As(S)},resolvedImage:function(S){return Es(S).length===0?[]:As(S)}};function Ci(S){var F=S.value,K=S.valueSpec,pe=S.styleSpec;return K.expression&&bo(xt(F))?cu(S):K.expression&&yl(yt(F))?As(S):K.type&&Cs[K.type]?Cs[K.type](S):_o(ot({},S,{valueSpec:K.type?pe[K.type]:K}))}function Qs(S){var F=S.value,K=S.key,pe=Es(S);return pe.length||(F.indexOf("{fontstack}")===-1&&pe.push(new je(K,F,'"glyphs" url must include a "{fontstack}" token')),F.indexOf("{range}")===-1&&pe.push(new je(K,F,'"glyphs" url must include a "{range}" token'))),pe}function el(S,F){F===void 0&&(F=Be);var K=[];return K=K.concat(Ci({key:"",value:S,valueSpec:F.$root,styleSpec:F,style:S,objectElementValidators:{glyphs:Qs,"*":function(){return[]}}})),S.constants&&(K=K.concat(at({key:"constants",value:S.constants,style:S,styleSpec:F}))),Xi(K)}function Xi(S){return[].concat(S).sort(function(F,K){return F.line-K.line})}function xa(S){return function(){for(var F=[],K=arguments.length;K--;)F[K]=arguments[K];return Xi(S.apply(this,F))}}el.source=xa(os),el.light=xa(Js),el.layer=xa(Ul),el.filter=xa(Kr),el.paintProperty=xa(as),el.layoutProperty=xa(zu);var da=el,$i=da.light,La=da.paintProperty,Ls=da.layoutProperty;function wo(S,F){var K=!1;if(F&&F.length)for(var pe=0,Oe=F;pe<Oe.length;pe+=1){var Fe=Oe[pe];S.fire(new st(new Error(Fe.message))),K=!0}return K}var aa=uo,eo=3;function uo(S,F,K){var pe=this.cells=[];if(S instanceof ArrayBuffer){this.arrayBuffer=S;var Oe=new Int32Array(this.arrayBuffer);S=Oe[0],F=Oe[1],K=Oe[2],this.d=F+2*K;for(var Fe=0;Fe<this.d*this.d;Fe++){var Ge=Oe[eo+Fe],tt=Oe[eo+Fe+1];pe.push(Ge===tt?null:Oe.subarray(Ge,tt))}var ct=Oe[eo+pe.length],kt=Oe[eo+pe.length+1];this.keys=Oe.subarray(ct,kt),this.bboxes=Oe.subarray(kt),this.insert=this._insertReadonly}else{this.d=F+2*K;for(var Mt=0;Mt<this.d*this.d;Mt++)pe.push([]);this.keys=[],this.bboxes=[]}this.n=F,this.extent=S,this.padding=K,this.scale=F/S,this.uid=0;var Dt=K/F*S;this.min=-Dt,this.max=S+Dt}uo.prototype.insert=function(S,F,K,pe,Oe){this._forEachCell(F,K,pe,Oe,this._insertCell,this.uid++),this.keys.push(S),this.bboxes.push(F),this.bboxes.push(K),this.bboxes.push(pe),this.bboxes.push(Oe)},uo.prototype._insertReadonly=function(){throw"Cannot insert into a GridIndex created from an ArrayBuffer."},uo.prototype._insertCell=function(S,F,K,pe,Oe,Fe){this.cells[Oe].push(Fe)},uo.prototype.query=function(S,F,K,pe,Oe){var Fe=this.min,Ge=this.max;if(S<=Fe&&F<=Fe&&Ge<=K&&Ge<=pe&&!Oe)return Array.prototype.slice.call(this.keys);var tt=[];return this._forEachCell(S,F,K,pe,this._queryCell,tt,{},Oe),tt},uo.prototype._queryCell=function(S,F,K,pe,Oe,Fe,Ge,tt){var ct=this.cells[Oe];if(ct!==null)for(var kt=this.keys,Mt=this.bboxes,Dt=0;Dt<ct.length;Dt++){var qt=ct[Dt];if(Ge[qt]===void 0){var Nt=4*qt;(tt?tt(Mt[Nt+0],Mt[Nt+1],Mt[Nt+2],Mt[Nt+3]):S<=Mt[Nt+2]&&F<=Mt[Nt+3]&&K>=Mt[Nt+0]&&pe>=Mt[Nt+1])?(Ge[qt]=!0,Fe.push(kt[qt])):Ge[qt]=!1}}},uo.prototype._forEachCell=function(S,F,K,pe,Oe,Fe,Ge,tt){for(var ct=this._convertToCellCoord(S),kt=this._convertToCellCoord(F),Mt=this._convertToCellCoord(K),Dt=this._convertToCellCoord(pe),qt=ct;qt<=Mt;qt++)for(var Nt=kt;Nt<=Dt;Nt++){var an=this.d*Nt+qt;if((!tt||tt(this._convertFromCellCoord(qt),this._convertFromCellCoord(Nt),this._convertFromCellCoord(qt+1),this._convertFromCellCoord(Nt+1)))&&Oe.call(this,S,F,K,pe,an,Fe,Ge,tt))return}},uo.prototype._convertFromCellCoord=function(S){return(S-this.padding)/this.scale},uo.prototype._convertToCellCoord=function(S){return Math.max(0,Math.min(this.d-1,Math.floor(S*this.scale)+this.padding))},uo.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var S=this.cells,F=eo+this.cells.length+1+1,K=0,pe=0;pe<this.cells.length;pe++)K+=this.cells[pe].length;var Oe=new Int32Array(F+K+this.keys.length+this.bboxes.length);Oe[0]=this.extent,Oe[1]=this.n,Oe[2]=this.padding;for(var Fe=F,Ge=0;Ge<S.length;Ge++){var tt=S[Ge];Oe[eo+Ge]=Fe,Oe.set(tt,Fe),Fe+=tt.length}return Oe[eo+S.length]=Fe,Oe.set(this.keys,Fe),Fe+=this.keys.length,Oe[eo+S.length+1]=Fe,Oe.set(this.bboxes,Fe),Fe+=this.bboxes.length,Oe.buffer};var hu=self.ImageData,co=self.ImageBitmap,oa={};function Sr(S,F,K){K===void 0&&(K={}),Object.defineProperty(F,"_classRegistryKey",{value:S,writeable:!1}),oa[S]={klass:F,omit:K.omit||[],shallow:K.shallow||[]}}for(var ba in Sr("Object",Object),aa.serialize=function(S,F){var K=S.toArrayBuffer();return F&&F.push(K),{buffer:K}},aa.deserialize=function(S){return new aa(S.buffer)},Sr("Grid",aa),Sr("Color",mn),Sr("Error",Error),Sr("ResolvedImage",En),Sr("StylePropertyFunction",rs),Sr("StyleExpression",Bl,{omit:["_evaluator"]}),Sr("ZoomDependentExpression",ns),Sr("ZoomConstantExpression",ks),Sr("CompoundExpression",jn,{omit:["_evaluate"]}),ml)ml[ba]._classRegistryKey||Sr("Expression_"+ba,ml[ba]);function Hl(S){return S&&typeof ArrayBuffer<"u"&&(S instanceof ArrayBuffer||S.constructor&&S.constructor.name==="ArrayBuffer")}function pu(S){return co&&S instanceof co}function tl(S,F){if(S==null||typeof S=="boolean"||typeof S=="number"||typeof S=="string"||S instanceof Boolean||S instanceof Number||S instanceof String||S instanceof Date||S instanceof RegExp)return S;if(Hl(S)||pu(S))return F&&F.push(S),S;if(ArrayBuffer.isView(S)){var K=S;return F&&F.push(K.buffer),K}if(S instanceof hu)return F&&F.push(S.data.buffer),S;if(Array.isArray(S)){for(var pe=[],Oe=0,Fe=S;Oe<Fe.length;Oe+=1){var Ge=Fe[Oe];pe.push(tl(Ge,F))}return pe}if(typeof S=="object"){var tt=S.constructor,ct=tt._classRegistryKey;if(!ct)throw new Error("can't serialize object of unregistered class");var kt=tt.serialize?tt.serialize(S,F):{};if(!tt.serialize){for(var Mt in S)if(S.hasOwnProperty(Mt)&&!(oa[ct].omit.indexOf(Mt)>=0)){var Dt=S[Mt];kt[Mt]=oa[ct].shallow.indexOf(Mt)>=0?Dt:tl(Dt,F)}S instanceof Error&&(kt.message=S.message)}if(kt.$name)throw new Error("$name property is reserved for worker serialization logic.");return ct!=="Object"&&(kt.$name=ct),kt}throw new Error("can't serialize object of type "+typeof S)}function nl(S){if(S==null||typeof S=="boolean"||typeof S=="number"||typeof S=="string"||S instanceof Boolean||S instanceof Number||S instanceof String||S instanceof Date||S instanceof RegExp||Hl(S)||pu(S)||ArrayBuffer.isView(S)||S instanceof hu)return S;if(Array.isArray(S))return S.map(nl);if(typeof S=="object"){var F=S.$name||"Object",K=oa[F].klass;if(!K)throw new Error("can't deserialize unregistered class "+F);if(K.deserialize)return K.deserialize(S);for(var pe=Object.create(K.prototype),Oe=0,Fe=Object.keys(S);Oe<Fe.length;Oe+=1){var Ge=Fe[Oe];if(Ge!=="$name"){var tt=S[Ge];pe[Ge]=oa[F].shallow.indexOf(Ge)>=0?tt:nl(tt)}}return pe}throw new Error("can't deserialize object of type "+typeof S)}var ss=function(){this.first=!0};ss.prototype.update=function(S,F){var K=Math.floor(S);return this.first?(this.first=!1,this.lastIntegerZoom=K,this.lastIntegerZoomTime=0,this.lastZoom=S,this.lastFloorZoom=K,!0):(this.lastFloorZoom>K?(this.lastIntegerZoom=K+1,this.lastIntegerZoomTime=F):this.lastFloorZoom<K&&(this.lastIntegerZoom=K,this.lastIntegerZoomTime=F),S!==this.lastZoom&&(this.lastZoom=S,this.lastFloorZoom=K,!0))};var Tr={"Latin-1 Supplement":function(S){return S>=128&&S<=255},Arabic:function(S){return S>=1536&&S<=1791},"Arabic Supplement":function(S){return S>=1872&&S<=1919},"Arabic Extended-A":function(S){return S>=2208&&S<=2303},"Hangul Jamo":function(S){return S>=4352&&S<=4607},"Unified Canadian Aboriginal Syllabics":function(S){return S>=5120&&S<=5759},Khmer:function(S){return S>=6016&&S<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(S){return S>=6320&&S<=6399},"General Punctuation":function(S){return S>=8192&&S<=8303},"Letterlike Symbols":function(S){return S>=8448&&S<=8527},"Number Forms":function(S){return S>=8528&&S<=8591},"Miscellaneous Technical":function(S){return S>=8960&&S<=9215},"Control Pictures":function(S){return S>=9216&&S<=9279},"Optical Character Recognition":function(S){return S>=9280&&S<=9311},"Enclosed Alphanumerics":function(S){return S>=9312&&S<=9471},"Geometric Shapes":function(S){return S>=9632&&S<=9727},"Miscellaneous Symbols":function(S){return S>=9728&&S<=9983},"Miscellaneous Symbols and Arrows":function(S){return S>=11008&&S<=11263},"CJK Radicals Supplement":function(S){return S>=11904&&S<=12031},"Kangxi Radicals":function(S){return S>=12032&&S<=12255},"Ideographic Description Characters":function(S){return S>=12272&&S<=12287},"CJK Symbols and Punctuation":function(S){return S>=12288&&S<=12351},Hiragana:function(S){return S>=12352&&S<=12447},Katakana:function(S){return S>=12448&&S<=12543},Bopomofo:function(S){return S>=12544&&S<=12591},"Hangul Compatibility Jamo":function(S){return S>=12592&&S<=12687},Kanbun:function(S){return S>=12688&&S<=12703},"Bopomofo Extended":function(S){return S>=12704&&S<=12735},"CJK Strokes":function(S){return S>=12736&&S<=12783},"Katakana Phonetic Extensions":function(S){return S>=12784&&S<=12799},"Enclosed CJK Letters and Months":function(S){return S>=12800&&S<=13055},"CJK Compatibility":function(S){return S>=13056&&S<=13311},"CJK Unified Ideographs Extension A":function(S){return S>=13312&&S<=19903},"Yijing Hexagram Symbols":function(S){return S>=19904&&S<=19967},"CJK Unified Ideographs":function(S){return S>=19968&&S<=40959},"Yi Syllables":function(S){return S>=40960&&S<=42127},"Yi Radicals":function(S){return S>=42128&&S<=42191},"Hangul Jamo Extended-A":function(S){return S>=43360&&S<=43391},"Hangul Syllables":function(S){return S>=44032&&S<=55215},"Hangul Jamo Extended-B":function(S){return S>=55216&&S<=55295},"Private Use Area":function(S){return S>=57344&&S<=63743},"CJK Compatibility Ideographs":function(S){return S>=63744&&S<=64255},"Arabic Presentation Forms-A":function(S){return S>=64336&&S<=65023},"Vertical Forms":function(S){return S>=65040&&S<=65055},"CJK Compatibility Forms":function(S){return S>=65072&&S<=65103},"Small Form Variants":function(S){return S>=65104&&S<=65135},"Arabic Presentation Forms-B":function(S){return S>=65136&&S<=65279},"Halfwidth and Fullwidth Forms":function(S){return S>=65280&&S<=65519}};function ko(S){for(var F=0,K=S;F<K.length;F+=1)if(_l(K[F].charCodeAt(0)))return!0;return!1}function _l(S){return!(S!==746&&S!==747&&(S<4352||!(Tr["Bopomofo Extended"](S)||Tr.Bopomofo(S)||Tr["CJK Compatibility Forms"](S)&&!(S>=65097&&S<=65103)||Tr["CJK Compatibility Ideographs"](S)||Tr["CJK Compatibility"](S)||Tr["CJK Radicals Supplement"](S)||Tr["CJK Strokes"](S)||!(!Tr["CJK Symbols and Punctuation"](S)||S>=12296&&S<=12305||S>=12308&&S<=12319||S===12336)||Tr["CJK Unified Ideographs Extension A"](S)||Tr["CJK Unified Ideographs"](S)||Tr["Enclosed CJK Letters and Months"](S)||Tr["Hangul Compatibility Jamo"](S)||Tr["Hangul Jamo Extended-A"](S)||Tr["Hangul Jamo Extended-B"](S)||Tr["Hangul Jamo"](S)||Tr["Hangul Syllables"](S)||Tr.Hiragana(S)||Tr["Ideographic Description Characters"](S)||Tr.Kanbun(S)||Tr["Kangxi Radicals"](S)||Tr["Katakana Phonetic Extensions"](S)||Tr.Katakana(S)&&S!==12540||!(!Tr["Halfwidth and Fullwidth Forms"](S)||S===65288||S===65289||S===65293||S>=65306&&S<=65310||S===65339||S===65341||S===65343||S>=65371&&S<=65503||S===65507||S>=65512&&S<=65519)||!(!Tr["Small Form Variants"](S)||S>=65112&&S<=65118||S>=65123&&S<=65126)||Tr["Unified Canadian Aboriginal Syllabics"](S)||Tr["Unified Canadian Aboriginal Syllabics Extended"](S)||Tr["Vertical Forms"](S)||Tr["Yijing Hexagram Symbols"](S)||Tr["Yi Syllables"](S)||Tr["Yi Radicals"](S))))}function ql(S){return!(_l(S)||function(F){return!!(Tr["Latin-1 Supplement"](F)&&(F===167||F===169||F===174||F===177||F===188||F===189||F===190||F===215||F===247)||Tr["General Punctuation"](F)&&(F===8214||F===8224||F===8225||F===8240||F===8241||F===8251||F===8252||F===8258||F===8263||F===8264||F===8265||F===8273)||Tr["Letterlike Symbols"](F)||Tr["Number Forms"](F)||Tr["Miscellaneous Technical"](F)&&(F>=8960&&F<=8967||F>=8972&&F<=8991||F>=8996&&F<=9e3||F===9003||F>=9085&&F<=9114||F>=9150&&F<=9165||F===9167||F>=9169&&F<=9179||F>=9186&&F<=9215)||Tr["Control Pictures"](F)&&F!==9251||Tr["Optical Character Recognition"](F)||Tr["Enclosed Alphanumerics"](F)||Tr["Geometric Shapes"](F)||Tr["Miscellaneous Symbols"](F)&&!(F>=9754&&F<=9759)||Tr["Miscellaneous Symbols and Arrows"](F)&&(F>=11026&&F<=11055||F>=11088&&F<=11097||F>=11192&&F<=11243)||Tr["CJK Symbols and Punctuation"](F)||Tr.Katakana(F)||Tr["Private Use Area"](F)||Tr["CJK Compatibility Forms"](F)||Tr["Small Form Variants"](F)||Tr["Halfwidth and Fullwidth Forms"](F)||F===8734||F===8756||F===8757||F>=9984&&F<=10087||F>=10102&&F<=10131||F===65532||F===65533)}(S))}function _a(S){return Tr.Arabic(S)||Tr["Arabic Supplement"](S)||Tr["Arabic Extended-A"](S)||Tr["Arabic Presentation Forms-A"](S)||Tr["Arabic Presentation Forms-B"](S)}function To(S){return S>=1424&&S<=2303||Tr["Arabic Presentation Forms-A"](S)||Tr["Arabic Presentation Forms-B"](S)}function fo(S,F){return!(!F&&To(S)||S>=2304&&S<=3583||S>=3840&&S<=4255||Tr.Khmer(S))}function to(S){for(var F=0,K=S;F<K.length;F+=1)if(To(K[F].charCodeAt(0)))return!0;return!1}var Uo="deferred",ls="loading",Ki="loaded",rl="error",wl=null,sa="unavailable",pi=null,Gl=function(S){S&&typeof S=="string"&&S.indexOf("NetworkError")>-1&&(sa=rl),wl&&wl(S)};function qa(){Ji.fire(new Qe("pluginStateChange",{pluginStatus:sa,pluginURL:pi}))}var Ji=new ft,Vo=function(){return sa},Du=function(){if(sa!==Uo||!pi)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");sa=ls,qa(),pi&&Et({url:pi},function(S){S?Gl(S):(sa=Ki,qa())})},Di={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return sa===Ki||Di.applyArabicShaping!=null},isLoading:function(){return sa===ls},setState:function(S){sa=S.pluginStatus,pi=S.pluginURL},isParsed:function(){return Di.applyArabicShaping!=null&&Di.processBidirectionalText!=null&&Di.processStyledBidirectionalText!=null},getPluginURL:function(){return pi}},li=function(S,F){this.zoom=S,F?(this.now=F.now,this.fadeDuration=F.fadeDuration,this.zoomHistory=F.zoomHistory,this.transition=F.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new ss,this.transition={})};li.prototype.isSupportedScript=function(S){return function(F,K){for(var pe=0,Oe=F;pe<Oe.length;pe+=1)if(!fo(Oe[pe].charCodeAt(0),K))return!1;return!0}(S,Di.isLoaded())},li.prototype.crossFadingFactor=function(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},li.prototype.getCrossfadeParameters=function(){var S=this.zoom,F=S-Math.floor(S),K=this.crossFadingFactor();return S>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:F+(1-F)*K}:{fromScale:.5,toScale:1,t:1-(1-K)*F}};var no=function(S,F){this.property=S,this.value=F,this.expression=function(K,pe){if(bo(K))return new rs(K,pe);if(yl(K)){var Oe=Ts(K,pe);if(Oe.result==="error")throw new Error(Oe.value.map(function(Ge){return Ge.key+": "+Ge.message}).join(", "));return Oe.value}var Fe=K;return typeof K=="string"&&pe.type==="color"&&(Fe=mn.parse(K)),{kind:"constant",evaluate:function(){return Fe}}}(F===void 0?S.specification.default:F,S.specification)};no.prototype.isDataDriven=function(){return this.expression.kind==="source"||this.expression.kind==="composite"},no.prototype.possiblyEvaluate=function(S,F,K){return this.property.possiblyEvaluate(this,S,F,K)};var Ho=function(S){this.property=S,this.value=new no(S,void 0)};Ho.prototype.transitioned=function(S,F){return new du(this.property,this.value,F,u({},S.transition,this.transition),S.now)},Ho.prototype.untransitioned=function(){return new du(this.property,this.value,null,{},0)};var Ao=function(S){this._properties=S,this._values=Object.create(S.defaultTransitionablePropertyValues)};Ao.prototype.getValue=function(S){return T(this._values[S].value.value)},Ao.prototype.setValue=function(S,F){this._values.hasOwnProperty(S)||(this._values[S]=new Ho(this._values[S].property)),this._values[S].value=new no(this._values[S].property,F===null?void 0:T(F))},Ao.prototype.getTransition=function(S){return T(this._values[S].transition)},Ao.prototype.setTransition=function(S,F){this._values.hasOwnProperty(S)||(this._values[S]=new Ho(this._values[S].property)),this._values[S].transition=T(F)||void 0},Ao.prototype.serialize=function(){for(var S={},F=0,K=Object.keys(this._values);F<K.length;F+=1){var pe=K[F],Oe=this.getValue(pe);Oe!==void 0&&(S[pe]=Oe);var Fe=this.getTransition(pe);Fe!==void 0&&(S[pe+"-transition"]=Fe)}return S},Ao.prototype.transitioned=function(S,F){for(var K=new Ps(this._properties),pe=0,Oe=Object.keys(this._values);pe<Oe.length;pe+=1){var Fe=Oe[pe];K._values[Fe]=this._values[Fe].transitioned(S,F._values[Fe])}return K},Ao.prototype.untransitioned=function(){for(var S=new Ps(this._properties),F=0,K=Object.keys(this._values);F<K.length;F+=1){var pe=K[F];S._values[pe]=this._values[pe].untransitioned()}return S};var du=function(S,F,K,pe,Oe){this.property=S,this.value=F,this.begin=Oe+pe.delay||0,this.end=this.begin+pe.duration||0,S.specification.transition&&(pe.delay||pe.duration)&&(this.prior=K)};du.prototype.possiblyEvaluate=function(S,F,K){var pe=S.now||0,Oe=this.value.possiblyEvaluate(S,F,K),Fe=this.prior;if(Fe){if(pe>this.end)return this.prior=null,Oe;if(this.value.isDataDriven())return this.prior=null,Oe;if(pe<this.begin)return Fe.possiblyEvaluate(S,F,K);var Ge=(pe-this.begin)/(this.end-this.begin);return this.property.interpolate(Fe.possiblyEvaluate(S,F,K),Oe,function(tt){if(tt<=0)return 0;if(tt>=1)return 1;var ct=tt*tt,kt=ct*tt;return 4*(tt<.5?kt:3*(tt-ct)+kt-.75)}(Ge))}return Oe};var Ps=function(S){this._properties=S,this._values=Object.create(S.defaultTransitioningPropertyValues)};Ps.prototype.possiblyEvaluate=function(S,F,K){for(var pe=new ga(this._properties),Oe=0,Fe=Object.keys(this._values);Oe<Fe.length;Oe+=1){var Ge=Fe[Oe];pe._values[Ge]=this._values[Ge].possiblyEvaluate(S,F,K)}return pe},Ps.prototype.hasTransition=function(){for(var S=0,F=Object.keys(this._values);S<F.length;S+=1){var K=F[S];if(this._values[K].prior)return!0}return!1};var il=function(S){this._properties=S,this._values=Object.create(S.defaultPropertyValues)};il.prototype.getValue=function(S){return T(this._values[S].value)},il.prototype.setValue=function(S,F){this._values[S]=new no(this._values[S].property,F===null?void 0:T(F))},il.prototype.serialize=function(){for(var S={},F=0,K=Object.keys(this._values);F<K.length;F+=1){var pe=K[F],Oe=this.getValue(pe);Oe!==void 0&&(S[pe]=Oe)}return S},il.prototype.possiblyEvaluate=function(S,F,K){for(var pe=new ga(this._properties),Oe=0,Fe=Object.keys(this._values);Oe<Fe.length;Oe+=1){var Ge=Fe[Oe];pe._values[Ge]=this._values[Ge].possiblyEvaluate(S,F,K)}return pe};var Gi=function(S,F,K){this.property=S,this.value=F,this.parameters=K};Gi.prototype.isConstant=function(){return this.value.kind==="constant"},Gi.prototype.constantOr=function(S){return this.value.kind==="constant"?this.value.value:S},Gi.prototype.evaluate=function(S,F,K,pe){return this.property.evaluate(this.value,this.parameters,S,F,K,pe)};var ga=function(S){this._properties=S,this._values=Object.create(S.defaultPossiblyEvaluatedValues)};ga.prototype.get=function(S){return this._values[S]};var Pr=function(S){this.specification=S};Pr.prototype.possiblyEvaluate=function(S,F){return S.expression.evaluate(F)},Pr.prototype.interpolate=function(S,F,K){var pe=br[this.specification.type];return pe?pe(S,F,K):S};var Ir=function(S,F){this.specification=S,this.overrides=F};Ir.prototype.possiblyEvaluate=function(S,F,K,pe){return S.expression.kind==="constant"||S.expression.kind==="camera"?new Gi(this,{kind:"constant",value:S.expression.evaluate(F,null,{},K,pe)},F):new Gi(this,S.expression,F)},Ir.prototype.interpolate=function(S,F,K){if(S.value.kind!=="constant"||F.value.kind!=="constant")return S;if(S.value.value===void 0||F.value.value===void 0)return new Gi(this,{kind:"constant",value:void 0},S.parameters);var pe=br[this.specification.type];return pe?new Gi(this,{kind:"constant",value:pe(S.value.value,F.value.value,K)},S.parameters):S},Ir.prototype.evaluate=function(S,F,K,pe,Oe,Fe){return S.kind==="constant"?S.value:S.evaluate(F,K,pe,Oe,Fe)};var kl=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.possiblyEvaluate=function(K,pe,Oe,Fe){if(K.value===void 0)return new Gi(this,{kind:"constant",value:void 0},pe);if(K.expression.kind==="constant"){var Ge=K.expression.evaluate(pe,null,{},Oe,Fe),tt=K.property.specification.type==="resolvedImage"&&typeof Ge!="string"?Ge.name:Ge,ct=this._calculate(tt,tt,tt,pe);return new Gi(this,{kind:"constant",value:ct},pe)}if(K.expression.kind==="camera"){var kt=this._calculate(K.expression.evaluate({zoom:pe.zoom-1}),K.expression.evaluate({zoom:pe.zoom}),K.expression.evaluate({zoom:pe.zoom+1}),pe);return new Gi(this,{kind:"constant",value:kt},pe)}return new Gi(this,K.expression,pe)},F.prototype.evaluate=function(K,pe,Oe,Fe,Ge,tt){if(K.kind==="source"){var ct=K.evaluate(pe,Oe,Fe,Ge,tt);return this._calculate(ct,ct,ct,pe)}return K.kind==="composite"?this._calculate(K.evaluate({zoom:Math.floor(pe.zoom)-1},Oe,Fe),K.evaluate({zoom:Math.floor(pe.zoom)},Oe,Fe),K.evaluate({zoom:Math.floor(pe.zoom)+1},Oe,Fe),pe):K.value},F.prototype._calculate=function(K,pe,Oe,Fe){return Fe.zoom>Fe.zoomHistory.lastIntegerZoom?{from:K,to:pe}:{from:Oe,to:pe}},F.prototype.interpolate=function(K){return K},F}(Ir),Pa=function(S){this.specification=S};Pa.prototype.possiblyEvaluate=function(S,F,K,pe){if(S.value!==void 0){if(S.expression.kind==="constant"){var Oe=S.expression.evaluate(F,null,{},K,pe);return this._calculate(Oe,Oe,Oe,F)}return this._calculate(S.expression.evaluate(new li(Math.floor(F.zoom-1),F)),S.expression.evaluate(new li(Math.floor(F.zoom),F)),S.expression.evaluate(new li(Math.floor(F.zoom+1),F)),F)}},Pa.prototype._calculate=function(S,F,K,pe){return pe.zoom>pe.zoomHistory.lastIntegerZoom?{from:S,to:F}:{from:K,to:F}},Pa.prototype.interpolate=function(S){return S};var Os=function(S){this.specification=S};Os.prototype.possiblyEvaluate=function(S,F,K,pe){return!!S.expression.evaluate(F,null,{},K,pe)},Os.prototype.interpolate=function(){return!1};var va=function(S){for(var F in this.properties=S,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[],S){var K=S[F];K.specification.overridable&&this.overridableProperties.push(F);var pe=this.defaultPropertyValues[F]=new no(K,void 0),Oe=this.defaultTransitionablePropertyValues[F]=new Ho(K);this.defaultTransitioningPropertyValues[F]=Oe.untransitioned(),this.defaultPossiblyEvaluatedValues[F]=pe.possiblyEvaluate({})}};Sr("DataDrivenProperty",Ir),Sr("DataConstantProperty",Pr),Sr("CrossFadedDataDrivenProperty",kl),Sr("CrossFadedProperty",Pa),Sr("ColorRampProperty",Os);var Tl="-transition",ma=function(S){function F(K,pe){if(S.call(this),this.id=K.id,this.type=K.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},K.type!=="custom"&&(this.metadata=K.metadata,this.minzoom=K.minzoom,this.maxzoom=K.maxzoom,K.type!=="background"&&(this.source=K.source,this.sourceLayer=K["source-layer"],this.filter=K.filter),pe.layout&&(this._unevaluatedLayout=new il(pe.layout)),pe.paint)){for(var Oe in this._transitionablePaint=new Ao(pe.paint),K.paint)this.setPaintProperty(Oe,K.paint[Oe],{validate:!1});for(var Fe in K.layout)this.setLayoutProperty(Fe,K.layout[Fe],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new ga(pe.paint)}}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},F.prototype.getLayoutProperty=function(K){return K==="visibility"?this.visibility:this._unevaluatedLayout.getValue(K)},F.prototype.setLayoutProperty=function(K,pe,Oe){if(Oe===void 0&&(Oe={}),pe!=null){var Fe="layers."+this.id+".layout."+K;if(this._validate(Ls,Fe,K,pe,Oe))return}K!=="visibility"?this._unevaluatedLayout.setValue(K,pe):this.visibility=pe},F.prototype.getPaintProperty=function(K){return v(K,Tl)?this._transitionablePaint.getTransition(K.slice(0,-11)):this._transitionablePaint.getValue(K)},F.prototype.setPaintProperty=function(K,pe,Oe){if(Oe===void 0&&(Oe={}),pe!=null){var Fe="layers."+this.id+".paint."+K;if(this._validate(La,Fe,K,pe,Oe))return!1}if(v(K,Tl))return this._transitionablePaint.setTransition(K.slice(0,-11),pe||void 0),!1;var Ge=this._transitionablePaint._values[K],tt=Ge.property.specification["property-type"]==="cross-faded-data-driven",ct=Ge.value.isDataDriven(),kt=Ge.value;this._transitionablePaint.setValue(K,pe),this._handleSpecialPaintPropertyUpdate(K);var Mt=this._transitionablePaint._values[K].value;return Mt.isDataDriven()||ct||tt||this._handleOverridablePaintPropertyUpdate(K,kt,Mt)},F.prototype._handleSpecialPaintPropertyUpdate=function(K){},F.prototype._handleOverridablePaintPropertyUpdate=function(K,pe,Oe){return!1},F.prototype.isHidden=function(K){return!!(this.minzoom&&K<this.minzoom)||!!(this.maxzoom&&K>=this.maxzoom)||this.visibility==="none"},F.prototype.updateTransitions=function(K){this._transitioningPaint=this._transitionablePaint.transitioned(K,this._transitioningPaint)},F.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},F.prototype.recalculate=function(K,pe){K.getCrossfadeParameters&&(this._crossfadeParameters=K.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(K,void 0,pe)),this.paint=this._transitioningPaint.possiblyEvaluate(K,void 0,pe)},F.prototype.serialize=function(){var K={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(K.layout=K.layout||{},K.layout.visibility=this.visibility),x(K,function(pe,Oe){return!(pe===void 0||Oe==="layout"&&!Object.keys(pe).length||Oe==="paint"&&!Object.keys(pe).length)})},F.prototype._validate=function(K,pe,Oe,Fe,Ge){return Ge===void 0&&(Ge={}),(!Ge||Ge.validate!==!1)&&wo(this,K.call(da,{key:pe,layerType:this.type,objectKey:Oe,value:Fe,styleSpec:Be,style:{glyphs:!0,sprite:!0}}))},F.prototype.is3D=function(){return!1},F.prototype.isTileClipped=function(){return!1},F.prototype.hasOffscreenPass=function(){return!1},F.prototype.resize=function(){},F.prototype.isStateDependent=function(){for(var K in this.paint._values){var pe=this.paint.get(K);if(pe instanceof Gi&&ts(pe.property.specification)&&(pe.value.kind==="source"||pe.value.kind==="composite")&&pe.value.isStateDependent)return!0}return!1},F}(ft),Is={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},Rs=function(S,F){this._structArray=S,this._pos1=F*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},Nr=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};function Qi(S,F){F===void 0&&(F=1);var K=0,pe=0;return{members:S.map(function(Oe){var Fe,Ge=(Fe=Oe.type,Is[Fe].BYTES_PER_ELEMENT),tt=K=qo(K,Math.max(F,Ge)),ct=Oe.components||1;return pe=Math.max(pe,Ge),K+=Ge*ct,{name:Oe.name,type:Oe.type,components:ct,offset:tt}}),size:qo(K,Math.max(pe,F)),alignment:F}}function qo(S,F){return Math.ceil(S/F)*F}Nr.serialize=function(S,F){return S._trim(),F&&(S.isTransferred=!0,F.push(S.arrayBuffer)),{length:S.length,arrayBuffer:S.arrayBuffer}},Nr.deserialize=function(S){var F=Object.create(this.prototype);return F.arrayBuffer=S.arrayBuffer,F.length=S.length,F.capacity=S.arrayBuffer.byteLength/F.bytesPerElement,F._refreshViews(),F},Nr.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},Nr.prototype.clear=function(){this.length=0},Nr.prototype.resize=function(S){this.reserve(S),this.length=S},Nr.prototype.reserve=function(S){if(S>this.capacity){this.capacity=Math.max(S,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var F=this.uint8;this._refreshViews(),F&&this.uint8.set(F)}},Nr.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};var Ga=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe){var Oe=this.length;return this.resize(Oe+1),this.emplace(Oe,K,pe)},F.prototype.emplace=function(K,pe,Oe){var Fe=2*K;return this.int16[Fe+0]=pe,this.int16[Fe+1]=Oe,K},F}(Nr);Ga.prototype.bytesPerElement=4,Sr("StructArrayLayout2i4",Ga);var al=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe,Fe){var Ge=this.length;return this.resize(Ge+1),this.emplace(Ge,K,pe,Oe,Fe)},F.prototype.emplace=function(K,pe,Oe,Fe,Ge){var tt=4*K;return this.int16[tt+0]=pe,this.int16[tt+1]=Oe,this.int16[tt+2]=Fe,this.int16[tt+3]=Ge,K},F}(Nr);al.prototype.bytesPerElement=8,Sr("StructArrayLayout4i8",al);var Al=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe,Fe,Ge,tt){var ct=this.length;return this.resize(ct+1),this.emplace(ct,K,pe,Oe,Fe,Ge,tt)},F.prototype.emplace=function(K,pe,Oe,Fe,Ge,tt,ct){var kt=6*K;return this.int16[kt+0]=pe,this.int16[kt+1]=Oe,this.int16[kt+2]=Fe,this.int16[kt+3]=Ge,this.int16[kt+4]=tt,this.int16[kt+5]=ct,K},F}(Nr);Al.prototype.bytesPerElement=12,Sr("StructArrayLayout2i4i12",Al);var ol=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe,Fe,Ge,tt){var ct=this.length;return this.resize(ct+1),this.emplace(ct,K,pe,Oe,Fe,Ge,tt)},F.prototype.emplace=function(K,pe,Oe,Fe,Ge,tt,ct){var kt=4*K,Mt=8*K;return this.int16[kt+0]=pe,this.int16[kt+1]=Oe,this.uint8[Mt+4]=Fe,this.uint8[Mt+5]=Ge,this.uint8[Mt+6]=tt,this.uint8[Mt+7]=ct,K},F}(Nr);ol.prototype.bytesPerElement=8,Sr("StructArrayLayout2i4ub8",ol);var us=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt){var qt=this.length;return this.resize(qt+1),this.emplace(qt,K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt)},F.prototype.emplace=function(K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt,qt){var Nt=9*K,an=18*K;return this.uint16[Nt+0]=pe,this.uint16[Nt+1]=Oe,this.uint16[Nt+2]=Fe,this.uint16[Nt+3]=Ge,this.uint16[Nt+4]=tt,this.uint16[Nt+5]=ct,this.uint16[Nt+6]=kt,this.uint16[Nt+7]=Mt,this.uint8[an+16]=Dt,this.uint8[an+17]=qt,K},F}(Nr);us.prototype.bytesPerElement=18,Sr("StructArrayLayout8ui2ub18",us);var N=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt,qt,Nt){var an=this.length;return this.resize(an+1),this.emplace(an,K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt,qt,Nt)},F.prototype.emplace=function(K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt,qt,Nt,an){var un=12*K;return this.int16[un+0]=pe,this.int16[un+1]=Oe,this.int16[un+2]=Fe,this.int16[un+3]=Ge,this.uint16[un+4]=tt,this.uint16[un+5]=ct,this.uint16[un+6]=kt,this.uint16[un+7]=Mt,this.int16[un+8]=Dt,this.int16[un+9]=qt,this.int16[un+10]=Nt,this.int16[un+11]=an,K},F}(Nr);N.prototype.bytesPerElement=24,Sr("StructArrayLayout4i4ui4i24",N);var q=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe){var Fe=this.length;return this.resize(Fe+1),this.emplace(Fe,K,pe,Oe)},F.prototype.emplace=function(K,pe,Oe,Fe){var Ge=3*K;return this.float32[Ge+0]=pe,this.float32[Ge+1]=Oe,this.float32[Ge+2]=Fe,K},F}(Nr);q.prototype.bytesPerElement=12,Sr("StructArrayLayout3f12",q);var H=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K){var pe=this.length;return this.resize(pe+1),this.emplace(pe,K)},F.prototype.emplace=function(K,pe){var Oe=1*K;return this.uint32[Oe+0]=pe,K},F}(Nr);H.prototype.bytesPerElement=4,Sr("StructArrayLayout1ul4",H);var Q=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe,Fe,Ge,tt,ct,kt,Mt){var Dt=this.length;return this.resize(Dt+1),this.emplace(Dt,K,pe,Oe,Fe,Ge,tt,ct,kt,Mt)},F.prototype.emplace=function(K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt){var qt=10*K,Nt=5*K;return this.int16[qt+0]=pe,this.int16[qt+1]=Oe,this.int16[qt+2]=Fe,this.int16[qt+3]=Ge,this.int16[qt+4]=tt,this.int16[qt+5]=ct,this.uint32[Nt+3]=kt,this.uint16[qt+8]=Mt,this.uint16[qt+9]=Dt,K},F}(Nr);Q.prototype.bytesPerElement=20,Sr("StructArrayLayout6i1ul2ui20",Q);var ge=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe,Fe,Ge,tt){var ct=this.length;return this.resize(ct+1),this.emplace(ct,K,pe,Oe,Fe,Ge,tt)},F.prototype.emplace=function(K,pe,Oe,Fe,Ge,tt,ct){var kt=6*K;return this.int16[kt+0]=pe,this.int16[kt+1]=Oe,this.int16[kt+2]=Fe,this.int16[kt+3]=Ge,this.int16[kt+4]=tt,this.int16[kt+5]=ct,K},F}(Nr);ge.prototype.bytesPerElement=12,Sr("StructArrayLayout2i2i2i12",ge);var Le=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe,Fe,Ge){var tt=this.length;return this.resize(tt+1),this.emplace(tt,K,pe,Oe,Fe,Ge)},F.prototype.emplace=function(K,pe,Oe,Fe,Ge,tt){var ct=4*K,kt=8*K;return this.float32[ct+0]=pe,this.float32[ct+1]=Oe,this.float32[ct+2]=Fe,this.int16[kt+6]=Ge,this.int16[kt+7]=tt,K},F}(Nr);Le.prototype.bytesPerElement=16,Sr("StructArrayLayout2f1f2i16",Le);var U=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe,Fe){var Ge=this.length;return this.resize(Ge+1),this.emplace(Ge,K,pe,Oe,Fe)},F.prototype.emplace=function(K,pe,Oe,Fe,Ge){var tt=12*K,ct=3*K;return this.uint8[tt+0]=pe,this.uint8[tt+1]=Oe,this.float32[ct+1]=Fe,this.float32[ct+2]=Ge,K},F}(Nr);U.prototype.bytesPerElement=12,Sr("StructArrayLayout2ub2f12",U);var ne=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe){var Fe=this.length;return this.resize(Fe+1),this.emplace(Fe,K,pe,Oe)},F.prototype.emplace=function(K,pe,Oe,Fe){var Ge=3*K;return this.uint16[Ge+0]=pe,this.uint16[Ge+1]=Oe,this.uint16[Ge+2]=Fe,K},F}(Nr);ne.prototype.bytesPerElement=6,Sr("StructArrayLayout3ui6",ne);var le=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt,qt,Nt,an,un,Sn,Mn,zn){var Bn=this.length;return this.resize(Bn+1),this.emplace(Bn,K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt,qt,Nt,an,un,Sn,Mn,zn)},F.prototype.emplace=function(K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt,qt,Nt,an,un,Sn,Mn,zn,Bn){var Gn=24*K,$n=12*K,nr=48*K;return this.int16[Gn+0]=pe,this.int16[Gn+1]=Oe,this.uint16[Gn+2]=Fe,this.uint16[Gn+3]=Ge,this.uint32[$n+2]=tt,this.uint32[$n+3]=ct,this.uint32[$n+4]=kt,this.uint16[Gn+10]=Mt,this.uint16[Gn+11]=Dt,this.uint16[Gn+12]=qt,this.float32[$n+7]=Nt,this.float32[$n+8]=an,this.uint8[nr+36]=un,this.uint8[nr+37]=Sn,this.uint8[nr+38]=Mn,this.uint32[$n+10]=zn,this.int16[Gn+22]=Bn,K},F}(Nr);le.prototype.bytesPerElement=48,Sr("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",le);var ye=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt,qt,Nt,an,un,Sn,Mn,zn,Bn,Gn,$n,nr,xr,dr,kr,Cr,Hr,Or,Ur){var Dr=this.length;return this.resize(Dr+1),this.emplace(Dr,K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt,qt,Nt,an,un,Sn,Mn,zn,Bn,Gn,$n,nr,xr,dr,kr,Cr,Hr,Or,Ur)},F.prototype.emplace=function(K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt,qt,Nt,an,un,Sn,Mn,zn,Bn,Gn,$n,nr,xr,dr,kr,Cr,Hr,Or,Ur,Dr){var Lr=34*K,Qr=17*K;return this.int16[Lr+0]=pe,this.int16[Lr+1]=Oe,this.int16[Lr+2]=Fe,this.int16[Lr+3]=Ge,this.int16[Lr+4]=tt,this.int16[Lr+5]=ct,this.int16[Lr+6]=kt,this.int16[Lr+7]=Mt,this.uint16[Lr+8]=Dt,this.uint16[Lr+9]=qt,this.uint16[Lr+10]=Nt,this.uint16[Lr+11]=an,this.uint16[Lr+12]=un,this.uint16[Lr+13]=Sn,this.uint16[Lr+14]=Mn,this.uint16[Lr+15]=zn,this.uint16[Lr+16]=Bn,this.uint16[Lr+17]=Gn,this.uint16[Lr+18]=$n,this.uint16[Lr+19]=nr,this.uint16[Lr+20]=xr,this.uint16[Lr+21]=dr,this.uint16[Lr+22]=kr,this.uint32[Qr+12]=Cr,this.float32[Qr+13]=Hr,this.float32[Qr+14]=Or,this.float32[Qr+15]=Ur,this.float32[Qr+16]=Dr,K},F}(Nr);ye.prototype.bytesPerElement=68,Sr("StructArrayLayout8i15ui1ul4f68",ye);var ke=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K){var pe=this.length;return this.resize(pe+1),this.emplace(pe,K)},F.prototype.emplace=function(K,pe){var Oe=1*K;return this.float32[Oe+0]=pe,K},F}(Nr);ke.prototype.bytesPerElement=4,Sr("StructArrayLayout1f4",ke);var Re=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe){var Fe=this.length;return this.resize(Fe+1),this.emplace(Fe,K,pe,Oe)},F.prototype.emplace=function(K,pe,Oe,Fe){var Ge=3*K;return this.int16[Ge+0]=pe,this.int16[Ge+1]=Oe,this.int16[Ge+2]=Fe,K},F}(Nr);Re.prototype.bytesPerElement=6,Sr("StructArrayLayout3i6",Re);var He=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe){var Fe=this.length;return this.resize(Fe+1),this.emplace(Fe,K,pe,Oe)},F.prototype.emplace=function(K,pe,Oe,Fe){var Ge=2*K,tt=4*K;return this.uint32[Ge+0]=pe,this.uint16[tt+2]=Oe,this.uint16[tt+3]=Fe,K},F}(Nr);He.prototype.bytesPerElement=8,Sr("StructArrayLayout1ul2ui8",He);var We=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe){var Oe=this.length;return this.resize(Oe+1),this.emplace(Oe,K,pe)},F.prototype.emplace=function(K,pe,Oe){var Fe=2*K;return this.uint16[Fe+0]=pe,this.uint16[Fe+1]=Oe,K},F}(Nr);We.prototype.bytesPerElement=4,Sr("StructArrayLayout2ui4",We);var Xe=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K){var pe=this.length;return this.resize(pe+1),this.emplace(pe,K)},F.prototype.emplace=function(K,pe){var Oe=1*K;return this.uint16[Oe+0]=pe,K},F}(Nr);Xe.prototype.bytesPerElement=2,Sr("StructArrayLayout1ui2",Xe);var Ke=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe){var Oe=this.length;return this.resize(Oe+1),this.emplace(Oe,K,pe)},F.prototype.emplace=function(K,pe,Oe){var Fe=2*K;return this.float32[Fe+0]=pe,this.float32[Fe+1]=Oe,K},F}(Nr);Ke.prototype.bytesPerElement=8,Sr("StructArrayLayout2f8",Ke);var it=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},F.prototype.emplaceBack=function(K,pe,Oe,Fe){var Ge=this.length;return this.resize(Ge+1),this.emplace(Ge,K,pe,Oe,Fe)},F.prototype.emplace=function(K,pe,Oe,Fe,Ge){var tt=4*K;return this.float32[tt+0]=pe,this.float32[tt+1]=Oe,this.float32[tt+2]=Fe,this.float32[tt+3]=Ge,K},F}(Nr);it.prototype.bytesPerElement=16,Sr("StructArrayLayout4f16",it);var pt=function(S){function F(){S.apply(this,arguments)}S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F;var K={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},anchorPoint:{configurable:!0}};return K.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},K.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},K.x1.get=function(){return this._structArray.int16[this._pos2+2]},K.y1.get=function(){return this._structArray.int16[this._pos2+3]},K.x2.get=function(){return this._structArray.int16[this._pos2+4]},K.y2.get=function(){return this._structArray.int16[this._pos2+5]},K.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},K.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},K.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},K.anchorPoint.get=function(){return new t(this.anchorPointX,this.anchorPointY)},Object.defineProperties(F.prototype,K),F}(Rs);pt.prototype.size=20;var mt=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.get=function(K){return new pt(this,K)},F}(Q);Sr("CollisionBoxArray",mt);var Ot=function(S){function F(){S.apply(this,arguments)}S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F;var K={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return K.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},K.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},K.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},K.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},K.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},K.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},K.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},K.segment.get=function(){return this._structArray.uint16[this._pos2+10]},K.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},K.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},K.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},K.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},K.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},K.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},K.placedOrientation.set=function(pe){this._structArray.uint8[this._pos1+37]=pe},K.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},K.hidden.set=function(pe){this._structArray.uint8[this._pos1+38]=pe},K.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},K.crossTileID.set=function(pe){this._structArray.uint32[this._pos4+10]=pe},K.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(F.prototype,K),F}(Rs);Ot.prototype.size=48;var Rt=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.get=function(K){return new Ot(this,K)},F}(le);Sr("PlacedSymbolArray",Rt);var Pt=function(S){function F(){S.apply(this,arguments)}S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F;var K={anchorX:{configurable:!0},anchorY:{configurable:!0},rightJustifiedTextSymbolIndex:{configurable:!0},centerJustifiedTextSymbolIndex:{configurable:!0},leftJustifiedTextSymbolIndex:{configurable:!0},verticalPlacedTextSymbolIndex:{configurable:!0},placedIconSymbolIndex:{configurable:!0},verticalPlacedIconSymbolIndex:{configurable:!0},key:{configurable:!0},textBoxStartIndex:{configurable:!0},textBoxEndIndex:{configurable:!0},verticalTextBoxStartIndex:{configurable:!0},verticalTextBoxEndIndex:{configurable:!0},iconBoxStartIndex:{configurable:!0},iconBoxEndIndex:{configurable:!0},verticalIconBoxStartIndex:{configurable:!0},verticalIconBoxEndIndex:{configurable:!0},featureIndex:{configurable:!0},numHorizontalGlyphVertices:{configurable:!0},numVerticalGlyphVertices:{configurable:!0},numIconVertices:{configurable:!0},numVerticalIconVertices:{configurable:!0},useRuntimeCollisionCircles:{configurable:!0},crossTileID:{configurable:!0},textBoxScale:{configurable:!0},textOffset0:{configurable:!0},textOffset1:{configurable:!0},collisionCircleDiameter:{configurable:!0}};return K.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},K.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},K.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},K.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},K.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},K.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},K.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},K.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},K.key.get=function(){return this._structArray.uint16[this._pos2+8]},K.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},K.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},K.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},K.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},K.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},K.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},K.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},K.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},K.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},K.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},K.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},K.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},K.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},K.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},K.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},K.crossTileID.set=function(pe){this._structArray.uint32[this._pos4+12]=pe},K.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},K.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},K.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},K.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(F.prototype,K),F}(Rs);Pt.prototype.size=68;var Vt=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.get=function(K){return new Pt(this,K)},F}(ye);Sr("SymbolInstanceArray",Vt);var It=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.getoffsetX=function(K){return this.float32[1*K+0]},F}(ke);Sr("GlyphOffsetArray",It);var on=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.getx=function(K){return this.int16[3*K+0]},F.prototype.gety=function(K){return this.int16[3*K+1]},F.prototype.gettileUnitDistanceFromAnchor=function(K){return this.int16[3*K+2]},F}(Re);Sr("SymbolLineVertexArray",on);var Kt=function(S){function F(){S.apply(this,arguments)}S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F;var K={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return K.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},K.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},K.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(F.prototype,K),F}(Rs);Kt.prototype.size=8;var Zt=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.get=function(K){return new Kt(this,K)},F}(He);Sr("FeatureIndexArray",Zt);var yn=Qi([{name:"a_pos",components:2,type:"Int16"}],4).members,_n=function(S){S===void 0&&(S=[]),this.segments=S};function Un(S,F){return 256*(S=a(Math.floor(S),0,255))+a(Math.floor(F),0,255)}_n.prototype.prepareSegment=function(S,F,K,pe){var Oe=this.segments[this.segments.length-1];return S>_n.MAX_VERTEX_ARRAY_LENGTH&&M("Max vertices per segment is "+_n.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+S),(!Oe||Oe.vertexLength+S>_n.MAX_VERTEX_ARRAY_LENGTH||Oe.sortKey!==pe)&&(Oe={vertexOffset:F.length,primitiveOffset:K.length,vertexLength:0,primitiveLength:0},pe!==void 0&&(Oe.sortKey=pe),this.segments.push(Oe)),Oe},_n.prototype.get=function(){return this.segments},_n.prototype.destroy=function(){for(var S=0,F=this.segments;S<F.length;S+=1){var K=F[S];for(var pe in K.vaos)K.vaos[pe].destroy()}},_n.simpleSegment=function(S,F,K,pe){return new _n([{vertexOffset:S,primitiveOffset:F,vertexLength:K,primitiveLength:pe,vaos:{},sortKey:0}])},_n.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Sr("SegmentVector",_n);var Vn=Qi([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint8"},{name:"a_pixel_ratio_to",components:1,type:"Uint8"}]),Zn=_(function(S){S.exports=function(F,K){var pe,Oe,Fe,Ge,tt,ct,kt,Mt;for(pe=3&F.length,Oe=F.length-pe,Fe=K,tt=3432918353,ct=461845907,Mt=0;Mt<Oe;)kt=255&F.charCodeAt(Mt)|(255&F.charCodeAt(++Mt))<<8|(255&F.charCodeAt(++Mt))<<16|(255&F.charCodeAt(++Mt))<<24,++Mt,Fe=27492+(65535&(Ge=5*(65535&(Fe=(Fe^=kt=(65535&(kt=(kt=(65535&kt)*tt+(((kt>>>16)*tt&65535)<<16)&4294967295)<<15|kt>>>17))*ct+(((kt>>>16)*ct&65535)<<16)&4294967295)<<13|Fe>>>19))+((5*(Fe>>>16)&65535)<<16)&4294967295))+((58964+(Ge>>>16)&65535)<<16);switch(kt=0,pe){case 3:kt^=(255&F.charCodeAt(Mt+2))<<16;case 2:kt^=(255&F.charCodeAt(Mt+1))<<8;case 1:Fe^=kt=(65535&(kt=(kt=(65535&(kt^=255&F.charCodeAt(Mt)))*tt+(((kt>>>16)*tt&65535)<<16)&4294967295)<<15|kt>>>17))*ct+(((kt>>>16)*ct&65535)<<16)&4294967295}return Fe^=F.length,Fe=2246822507*(65535&(Fe^=Fe>>>16))+((2246822507*(Fe>>>16)&65535)<<16)&4294967295,Fe=3266489909*(65535&(Fe^=Fe>>>13))+((3266489909*(Fe>>>16)&65535)<<16)&4294967295,(Fe^=Fe>>>16)>>>0}}),Qn=_(function(S){S.exports=function(F,K){for(var pe,Oe=F.length,Fe=K^Oe,Ge=0;Oe>=4;)pe=1540483477*(65535&(pe=255&F.charCodeAt(Ge)|(255&F.charCodeAt(++Ge))<<8|(255&F.charCodeAt(++Ge))<<16|(255&F.charCodeAt(++Ge))<<24))+((1540483477*(pe>>>16)&65535)<<16),Fe=1540483477*(65535&Fe)+((1540483477*(Fe>>>16)&65535)<<16)^(pe=1540483477*(65535&(pe^=pe>>>24))+((1540483477*(pe>>>16)&65535)<<16)),Oe-=4,++Ge;switch(Oe){case 3:Fe^=(255&F.charCodeAt(Ge+2))<<16;case 2:Fe^=(255&F.charCodeAt(Ge+1))<<8;case 1:Fe=1540483477*(65535&(Fe^=255&F.charCodeAt(Ge)))+((1540483477*(Fe>>>16)&65535)<<16)}return Fe=1540483477*(65535&(Fe^=Fe>>>13))+((1540483477*(Fe>>>16)&65535)<<16),(Fe^=Fe>>>15)>>>0}}),pr=Zn,cr=Zn,mr=Qn;pr.murmur3=cr,pr.murmur2=mr;var Ar=function(){this.ids=[],this.positions=[],this.indexed=!1};Ar.prototype.add=function(S,F,K,pe){this.ids.push(qn(S)),this.positions.push(F,K,pe)},Ar.prototype.getPositions=function(S){for(var F=qn(S),K=0,pe=this.ids.length-1;K<pe;){var Oe=K+pe>>1;this.ids[Oe]>=F?pe=Oe:K=Oe+1}for(var Fe=[];this.ids[K]===F;){var Ge=this.positions[3*K],tt=this.positions[3*K+1],ct=this.positions[3*K+2];Fe.push({index:Ge,start:tt,end:ct}),K++}return Fe},Ar.serialize=function(S,F){var K=new Float64Array(S.ids),pe=new Uint32Array(S.positions);return ur(K,pe,0,K.length-1),F&&F.push(K.buffer,pe.buffer),{ids:K,positions:pe}},Ar.deserialize=function(S){var F=new Ar;return F.ids=S.ids,F.positions=S.positions,F.indexed=!0,F};var Br=Math.pow(2,53)-1;function qn(S){var F=+S;return!isNaN(F)&&F<=Br?F:pr(String(S))}function ur(S,F,K,pe){for(;K<pe;){for(var Oe=S[K+pe>>1],Fe=K-1,Ge=pe+1;;){do Fe++;while(S[Fe]<Oe);do Ge--;while(S[Ge]>Oe);if(Fe>=Ge)break;yr(S,Fe,Ge),yr(F,3*Fe,3*Ge),yr(F,3*Fe+1,3*Ge+1),yr(F,3*Fe+2,3*Ge+2)}Ge-K<pe-Ge?(ur(S,F,K,Ge),K=Ge+1):(ur(S,F,Ge+1,pe),pe=Ge)}}function yr(S,F,K){var pe=S[F];S[F]=S[K],S[K]=pe}Sr("FeaturePositionMap",Ar);var Mr=function(S,F){this.gl=S.gl,this.location=F},Rr=function(S){function F(K,pe){S.call(this,K,pe),this.current=0}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.set=function(K){this.current!==K&&(this.current=K,this.gl.uniform1i(this.location,K))},F}(Mr),Vr=function(S){function F(K,pe){S.call(this,K,pe),this.current=0}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.set=function(K){this.current!==K&&(this.current=K,this.gl.uniform1f(this.location,K))},F}(Mr),$r=function(S){function F(K,pe){S.call(this,K,pe),this.current=[0,0]}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.set=function(K){K[0]===this.current[0]&&K[1]===this.current[1]||(this.current=K,this.gl.uniform2f(this.location,K[0],K[1]))},F}(Mr),ai=function(S){function F(K,pe){S.call(this,K,pe),this.current=[0,0,0]}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.set=function(K){K[0]===this.current[0]&&K[1]===this.current[1]&&K[2]===this.current[2]||(this.current=K,this.gl.uniform3f(this.location,K[0],K[1],K[2]))},F}(Mr),bi=function(S){function F(K,pe){S.call(this,K,pe),this.current=[0,0,0,0]}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.set=function(K){K[0]===this.current[0]&&K[1]===this.current[1]&&K[2]===this.current[2]&&K[3]===this.current[3]||(this.current=K,this.gl.uniform4f(this.location,K[0],K[1],K[2],K[3]))},F}(Mr),_i=function(S){function F(K,pe){S.call(this,K,pe),this.current=mn.transparent}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.set=function(K){K.r===this.current.r&&K.g===this.current.g&&K.b===this.current.b&&K.a===this.current.a||(this.current=K,this.gl.uniform4f(this.location,K.r,K.g,K.b,K.a))},F}(Mr),oi=new Float32Array(16),Fi=function(S){function F(K,pe){S.call(this,K,pe),this.current=oi}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.set=function(K){if(K[12]!==this.current[12]||K[0]!==this.current[0])return this.current=K,void this.gl.uniformMatrix4fv(this.location,!1,K);for(var pe=1;pe<16;pe++)if(K[pe]!==this.current[pe]){this.current=K,this.gl.uniformMatrix4fv(this.location,!1,K);break}},F}(Mr);function la(S){return[Un(255*S.r,255*S.g),Un(255*S.b,255*S.a)]}var Wi=function(S,F,K){this.value=S,this.uniformNames=F.map(function(pe){return"u_"+pe}),this.type=K};Wi.prototype.setUniform=function(S,F,K){S.set(K.constantOr(this.value))},Wi.prototype.getBinding=function(S,F,K){return this.type==="color"?new _i(S,F):new Vr(S,F)};var ea=function(S,F){this.uniformNames=F.map(function(K){return"u_"+K}),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1};ea.prototype.setConstantPatternPositions=function(S,F){this.pixelRatioFrom=F.pixelRatio,this.pixelRatioTo=S.pixelRatio,this.patternFrom=F.tlbr,this.patternTo=S.tlbr},ea.prototype.setUniform=function(S,F,K,pe){var Oe=pe==="u_pattern_to"?this.patternTo:pe==="u_pattern_from"?this.patternFrom:pe==="u_pixel_ratio_to"?this.pixelRatioTo:pe==="u_pixel_ratio_from"?this.pixelRatioFrom:null;Oe&&S.set(Oe)},ea.prototype.getBinding=function(S,F,K){return K.substr(0,9)==="u_pattern"?new bi(S,F):new Vr(S,F)};var ei=function(S,F,K,pe){this.expression=S,this.type=K,this.maxValue=0,this.paintVertexAttributes=F.map(function(Oe){return{name:"a_"+Oe,type:"Float32",components:K==="color"?2:1,offset:0}}),this.paintVertexArray=new pe};ei.prototype.populatePaintArray=function(S,F,K,pe,Oe){var Fe=this.paintVertexArray.length,Ge=this.expression.evaluate(new li(0),F,{},pe,[],Oe);this.paintVertexArray.resize(S),this._setPaintValue(Fe,S,Ge)},ei.prototype.updatePaintArray=function(S,F,K,pe){var Oe=this.expression.evaluate({zoom:0},K,pe);this._setPaintValue(S,F,Oe)},ei.prototype._setPaintValue=function(S,F,K){if(this.type==="color")for(var pe=la(K),Oe=S;Oe<F;Oe++)this.paintVertexArray.emplace(Oe,pe[0],pe[1]);else{for(var Fe=S;Fe<F;Fe++)this.paintVertexArray.emplace(Fe,K);this.maxValue=Math.max(this.maxValue,Math.abs(K))}},ei.prototype.upload=function(S){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=S.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))},ei.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};var Yr=function(S,F,K,pe,Oe,Fe){this.expression=S,this.uniformNames=F.map(function(Ge){return"u_"+Ge+"_t"}),this.type=K,this.useIntegerZoom=pe,this.zoom=Oe,this.maxValue=0,this.paintVertexAttributes=F.map(function(Ge){return{name:"a_"+Ge,type:"Float32",components:K==="color"?4:2,offset:0}}),this.paintVertexArray=new Fe};Yr.prototype.populatePaintArray=function(S,F,K,pe,Oe){var Fe=this.expression.evaluate(new li(this.zoom),F,{},pe,[],Oe),Ge=this.expression.evaluate(new li(this.zoom+1),F,{},pe,[],Oe),tt=this.paintVertexArray.length;this.paintVertexArray.resize(S),this._setPaintValue(tt,S,Fe,Ge)},Yr.prototype.updatePaintArray=function(S,F,K,pe){var Oe=this.expression.evaluate({zoom:this.zoom},K,pe),Fe=this.expression.evaluate({zoom:this.zoom+1},K,pe);this._setPaintValue(S,F,Oe,Fe)},Yr.prototype._setPaintValue=function(S,F,K,pe){if(this.type==="color")for(var Oe=la(K),Fe=la(pe),Ge=S;Ge<F;Ge++)this.paintVertexArray.emplace(Ge,Oe[0],Oe[1],Fe[0],Fe[1]);else{for(var tt=S;tt<F;tt++)this.paintVertexArray.emplace(tt,K,pe);this.maxValue=Math.max(this.maxValue,Math.abs(K),Math.abs(pe))}},Yr.prototype.upload=function(S){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=S.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))},Yr.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()},Yr.prototype.setUniform=function(S,F){var K=this.useIntegerZoom?Math.floor(F.zoom):F.zoom,pe=a(this.expression.interpolationFactor(K,this.zoom,this.zoom+1),0,1);S.set(pe)},Yr.prototype.getBinding=function(S,F,K){return new Vr(S,F)};var wi=function(S,F,K,pe,Oe,Fe){this.expression=S,this.type=F,this.useIntegerZoom=K,this.zoom=pe,this.layerId=Fe,this.zoomInPaintVertexArray=new Oe,this.zoomOutPaintVertexArray=new Oe};wi.prototype.populatePaintArray=function(S,F,K){var pe=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(S),this.zoomOutPaintVertexArray.resize(S),this._setPaintValues(pe,S,F.patterns&&F.patterns[this.layerId],K)},wi.prototype.updatePaintArray=function(S,F,K,pe,Oe){this._setPaintValues(S,F,K.patterns&&K.patterns[this.layerId],Oe)},wi.prototype._setPaintValues=function(S,F,K,pe){if(pe&&K){var Oe=K.min,Fe=K.mid,Ge=K.max,tt=pe[Oe],ct=pe[Fe],kt=pe[Ge];if(tt&&ct&&kt)for(var Mt=S;Mt<F;Mt++)this.zoomInPaintVertexArray.emplace(Mt,ct.tl[0],ct.tl[1],ct.br[0],ct.br[1],tt.tl[0],tt.tl[1],tt.br[0],tt.br[1],ct.pixelRatio,tt.pixelRatio),this.zoomOutPaintVertexArray.emplace(Mt,ct.tl[0],ct.tl[1],ct.br[0],ct.br[1],kt.tl[0],kt.tl[1],kt.br[0],kt.br[1],ct.pixelRatio,kt.pixelRatio)}},wi.prototype.upload=function(S){this.zoomInPaintVertexArray&&this.zoomInPaintVertexArray.arrayBuffer&&this.zoomOutPaintVertexArray&&this.zoomOutPaintVertexArray.arrayBuffer&&(this.zoomInPaintVertexBuffer=S.createVertexBuffer(this.zoomInPaintVertexArray,Vn.members,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=S.createVertexBuffer(this.zoomOutPaintVertexArray,Vn.members,this.expression.isStateDependent))},wi.prototype.destroy=function(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()};var gi=function(S,F,K,pe){this.binders={},this.layoutAttributes=pe,this._buffers=[];var Oe=[];for(var Fe in S.paint._values)if(K(Fe)){var Ge=S.paint.get(Fe);if(Ge instanceof Gi&&ts(Ge.property.specification)){var tt=za(Fe,S.type),ct=Ge.value,kt=Ge.property.specification.type,Mt=Ge.property.useIntegerZoom,Dt=Ge.property.specification["property-type"],qt=Dt==="cross-faded"||Dt==="cross-faded-data-driven";if(ct.kind==="constant")this.binders[Fe]=qt?new ea(ct.value,tt):new Wi(ct.value,tt,kt),Oe.push("/u_"+Fe);else if(ct.kind==="source"||qt){var Nt=Oi(Fe,kt,"source");this.binders[Fe]=qt?new wi(ct,kt,Mt,F,Nt,S.id):new ei(ct,tt,kt,Nt),Oe.push("/a_"+Fe)}else{var an=Oi(Fe,kt,"composite");this.binders[Fe]=new Yr(ct,tt,kt,Mt,F,an),Oe.push("/z_"+Fe)}}}this.cacheKey=Oe.sort().join("")};gi.prototype.getMaxValue=function(S){var F=this.binders[S];return F instanceof ei||F instanceof Yr?F.maxValue:0},gi.prototype.populatePaintArrays=function(S,F,K,pe,Oe){for(var Fe in this.binders){var Ge=this.binders[Fe];(Ge instanceof ei||Ge instanceof Yr||Ge instanceof wi)&&Ge.populatePaintArray(S,F,K,pe,Oe)}},gi.prototype.setConstantPatternPositions=function(S,F){for(var K in this.binders){var pe=this.binders[K];pe instanceof ea&&pe.setConstantPatternPositions(S,F)}},gi.prototype.updatePaintArrays=function(S,F,K,pe,Oe){var Fe=!1;for(var Ge in S)for(var tt=0,ct=F.getPositions(Ge);tt<ct.length;tt+=1){var kt=ct[tt],Mt=K.feature(kt.index);for(var Dt in this.binders){var qt=this.binders[Dt];if((qt instanceof ei||qt instanceof Yr||qt instanceof wi)&&qt.expression.isStateDependent===!0){var Nt=pe.paint.get(Dt);qt.expression=Nt.value,qt.updatePaintArray(kt.start,kt.end,Mt,S[Ge],Oe),Fe=!0}}}return Fe},gi.prototype.defines=function(){var S=[];for(var F in this.binders){var K=this.binders[F];(K instanceof Wi||K instanceof ea)&&S.push.apply(S,K.uniformNames.map(function(pe){return"#define HAS_UNIFORM_"+pe}))}return S},gi.prototype.getPaintVertexBuffers=function(){return this._buffers},gi.prototype.getUniforms=function(S,F){var K=[];for(var pe in this.binders){var Oe=this.binders[pe];if(Oe instanceof Wi||Oe instanceof ea||Oe instanceof Yr)for(var Fe=0,Ge=Oe.uniformNames;Fe<Ge.length;Fe+=1){var tt=Ge[Fe];if(F[tt]){var ct=Oe.getBinding(S,F[tt],tt);K.push({name:tt,property:pe,binding:ct})}}}return K},gi.prototype.setUniforms=function(S,F,K,pe){for(var Oe=0,Fe=F;Oe<Fe.length;Oe+=1){var Ge=Fe[Oe],tt=Ge.name,ct=Ge.property,kt=Ge.binding;this.binders[ct].setUniform(kt,pe,K.get(ct),tt)}},gi.prototype.updatePaintBuffers=function(S){for(var F in this._buffers=[],this.binders){var K=this.binders[F];if(S&&K instanceof wi){var pe=S.fromScale===2?K.zoomInPaintVertexBuffer:K.zoomOutPaintVertexBuffer;pe&&this._buffers.push(pe)}else(K instanceof ei||K instanceof Yr)&&K.paintVertexBuffer&&this._buffers.push(K.paintVertexBuffer)}},gi.prototype.upload=function(S){for(var F in this.binders){var K=this.binders[F];(K instanceof ei||K instanceof Yr||K instanceof wi)&&K.upload(S)}this.updatePaintBuffers()},gi.prototype.destroy=function(){for(var S in this.binders){var F=this.binders[S];(F instanceof ei||F instanceof Yr||F instanceof wi)&&F.destroy()}};var Mi=function(S,F,K,pe){pe===void 0&&(pe=function(){return!0}),this.programConfigurations={};for(var Oe=0,Fe=F;Oe<Fe.length;Oe+=1){var Ge=Fe[Oe];this.programConfigurations[Ge.id]=new gi(Ge,K,pe,S)}this.needsUpload=!1,this._featureMap=new Ar,this._bufferOffset=0};function za(S,F){return{"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[S]||[S.replace(F+"-","").replace(/-/g,"_")]}function Oi(S,F,K){var pe={color:{source:Ke,composite:it},number:{source:ke,composite:Ke}},Oe=function(Fe){return{"line-pattern":{source:us,composite:us},"fill-pattern":{source:us,composite:us},"fill-extrusion-pattern":{source:us,composite:us}}[Fe]}(S);return Oe&&Oe[K]||pe[F][K]}Mi.prototype.populatePaintArrays=function(S,F,K,pe,Oe,Fe){for(var Ge in this.programConfigurations)this.programConfigurations[Ge].populatePaintArrays(S,F,pe,Oe,Fe);F.id!==void 0&&this._featureMap.add(F.id,K,this._bufferOffset,S),this._bufferOffset=S,this.needsUpload=!0},Mi.prototype.updatePaintArrays=function(S,F,K,pe){for(var Oe=0,Fe=K;Oe<Fe.length;Oe+=1){var Ge=Fe[Oe];this.needsUpload=this.programConfigurations[Ge.id].updatePaintArrays(S,this._featureMap,F,Ge,pe)||this.needsUpload}},Mi.prototype.get=function(S){return this.programConfigurations[S]},Mi.prototype.upload=function(S){if(this.needsUpload){for(var F in this.programConfigurations)this.programConfigurations[F].upload(S);this.needsUpload=!1}},Mi.prototype.destroy=function(){for(var S in this.programConfigurations)this.programConfigurations[S].destroy()},Sr("ConstantBinder",Wi),Sr("CrossFadedConstantBinder",ea),Sr("SourceExpressionBinder",ei),Sr("CrossFadedCompositeBinder",wi),Sr("CompositeExpressionBinder",Yr),Sr("ProgramConfiguration",gi,{omit:["_buffers"]}),Sr("ProgramConfigurationSet",Mi);var si=8192,sl,Wa=(sl=15,{min:-1*Math.pow(2,sl-1),max:Math.pow(2,sl-1)-1});function ho(S){for(var F=si/S.extent,K=S.loadGeometry(),pe=0;pe<K.length;pe++)for(var Oe=K[pe],Fe=0;Fe<Oe.length;Fe++){var Ge=Oe[Fe];Ge.x=Math.round(Ge.x*F),Ge.y=Math.round(Ge.y*F),(Ge.x<Wa.min||Ge.x>Wa.max||Ge.y<Wa.min||Ge.y>Wa.max)&&(M("Geometry exceeds allowed extent, reduce your vector tile buffer size"),Ge.x=a(Ge.x,Wa.min,Wa.max),Ge.y=a(Ge.y,Wa.min,Wa.max))}return K}function Vi(S,F,K,pe,Oe){S.emplaceBack(2*F+(pe+1)/2,2*K+(Oe+1)/2)}var ua=function(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(function(F){return F.id}),this.index=S.index,this.hasPattern=!1,this.layoutVertexArray=new Ga,this.indexArray=new ne,this.segments=new _n,this.programConfigurations=new Mi(yn,S.layers,S.zoom),this.stateDependentLayerIds=this.layers.filter(function(F){return F.isStateDependent()}).map(function(F){return F.id})};function Mo(S,F){for(var K=0;K<S.length;K++)if(gc(F,S[K]))return!0;for(var pe=0;pe<F.length;pe++)if(gc(S,F[pe]))return!0;return!!jh(S,F)}function Of(S,F,K){return!!gc(S,F)||!!Uh(F,S,K)}function vd(S,F){if(S.length===1)return md(F,S[0]);for(var K=0;K<F.length;K++)for(var pe=F[K],Oe=0;Oe<pe.length;Oe++)if(gc(S,pe[Oe]))return!0;for(var Fe=0;Fe<S.length;Fe++)if(md(F,S[Fe]))return!0;for(var Ge=0;Ge<F.length;Ge++)if(jh(S,F[Ge]))return!0;return!1}function N1(S,F,K){if(S.length>1){if(jh(S,F))return!0;for(var pe=0;pe<F.length;pe++)if(Uh(F[pe],S,K))return!0}for(var Oe=0;Oe<S.length;Oe++)if(Uh(S[Oe],F,K))return!0;return!1}function jh(S,F){if(S.length===0||F.length===0)return!1;for(var K=0;K<S.length-1;K++)for(var pe=S[K],Oe=S[K+1],Fe=0;Fe<F.length-1;Fe++)if(If(pe,Oe,F[Fe],F[Fe+1]))return!0;return!1}function If(S,F,K,pe){return A(S,K,pe)!==A(F,K,pe)&&A(S,F,K)!==A(S,F,pe)}function Uh(S,F,K){var pe=K*K;if(F.length===1)return S.distSqr(F[0])<pe;for(var Oe=1;Oe<F.length;Oe++)if(Kc(S,F[Oe-1],F[Oe])<pe)return!0;return!1}function Kc(S,F,K){var pe=F.distSqr(K);if(pe===0)return S.distSqr(F);var Oe=((S.x-F.x)*(K.x-F.x)+(S.y-F.y)*(K.y-F.y))/pe;return Oe<0?S.distSqr(F):Oe>1?S.distSqr(K):S.distSqr(K.sub(F)._mult(Oe)._add(F))}function md(S,F){for(var K,pe,Oe,Fe=!1,Ge=0;Ge<S.length;Ge++)for(var tt=0,ct=(K=S[Ge]).length-1;tt<K.length;ct=tt++)pe=K[tt],Oe=K[ct],pe.y>F.y!=Oe.y>F.y&&F.x<(Oe.x-pe.x)*(F.y-pe.y)/(Oe.y-pe.y)+pe.x&&(Fe=!Fe);return Fe}function gc(S,F){for(var K=!1,pe=0,Oe=S.length-1;pe<S.length;Oe=pe++){var Fe=S[pe],Ge=S[Oe];Fe.y>F.y!=Ge.y>F.y&&F.x<(Ge.x-Fe.x)*(F.y-Fe.y)/(Ge.y-Fe.y)+Fe.x&&(K=!K)}return K}function Vh(S,F,K){var pe=K[0],Oe=K[2];if(S.x<pe.x&&F.x<pe.x||S.x>Oe.x&&F.x>Oe.x||S.y<pe.y&&F.y<pe.y||S.y>Oe.y&&F.y>Oe.y)return!1;var Fe=A(S,F,K[0]);return Fe!==A(S,F,K[1])||Fe!==A(S,F,K[2])||Fe!==A(S,F,K[3])}function Hh(S,F,K){var pe=F.paint.get(S).value;return pe.kind==="constant"?pe.value:K.programConfigurations.get(F.id).getMaxValue(S)}function yd(S){return Math.sqrt(S[0]*S[0]+S[1]*S[1])}function xd(S,F,K,pe,Oe){if(!F[0]&&!F[1])return S;var Fe=t.convert(F)._mult(Oe);K==="viewport"&&Fe._rotate(-pe);for(var Ge=[],tt=0;tt<S.length;tt++){var ct=S[tt];Ge.push(ct.sub(Fe))}return Ge}ua.prototype.populate=function(S,F,K){var pe=this.layers[0],Oe=[],Fe=null;pe.type==="circle"&&(Fe=pe.layout.get("circle-sort-key"));for(var Ge=0,tt=S;Ge<tt.length;Ge+=1){var ct=tt[Ge],kt=ct.feature,Mt=ct.id,Dt=ct.index,qt=ct.sourceLayerIndex,Nt=this.layers[0]._featureFilter.needGeometry,an={type:kt.type,id:Mt,properties:kt.properties,geometry:Nt?ho(kt):[]};if(this.layers[0]._featureFilter.filter(new li(this.zoom),an,K)){Nt||(an.geometry=ho(kt));var un=Fe?Fe.evaluate(an,{},K):void 0,Sn={id:Mt,properties:kt.properties,type:kt.type,sourceLayerIndex:qt,index:Dt,geometry:an.geometry,patterns:{},sortKey:un};Oe.push(Sn)}}Fe&&Oe.sort(function(kr,Cr){return kr.sortKey-Cr.sortKey});for(var Mn=0,zn=Oe;Mn<zn.length;Mn+=1){var Bn=zn[Mn],Gn=Bn,$n=Gn.geometry,nr=Gn.index,xr=Gn.sourceLayerIndex,dr=S[nr].feature;this.addFeature(Bn,$n,nr,K),F.featureIndex.insert(dr,$n,nr,xr,this.index)}},ua.prototype.update=function(S,F,K){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,F,this.stateDependentLayers,K)},ua.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},ua.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},ua.prototype.upload=function(S){this.uploaded||(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,yn),this.indexBuffer=S.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(S),this.uploaded=!0},ua.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},ua.prototype.addFeature=function(S,F,K,pe){for(var Oe=0,Fe=F;Oe<Fe.length;Oe+=1)for(var Ge=0,tt=Fe[Oe];Ge<tt.length;Ge+=1){var ct=tt[Ge],kt=ct.x,Mt=ct.y;if(!(kt<0||kt>=si||Mt<0||Mt>=si)){var Dt=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,S.sortKey),qt=Dt.vertexLength;Vi(this.layoutVertexArray,kt,Mt,-1,-1),Vi(this.layoutVertexArray,kt,Mt,1,-1),Vi(this.layoutVertexArray,kt,Mt,1,1),Vi(this.layoutVertexArray,kt,Mt,-1,1),this.indexArray.emplaceBack(qt,qt+1,qt+2),this.indexArray.emplaceBack(qt,qt+3,qt+2),Dt.vertexLength+=4,Dt.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,K,{},pe)},Sr("CircleBucket",ua,{omit:["layers"]});var X5=new va({"circle-sort-key":new Ir(Be.layout_circle["circle-sort-key"])}),$5={paint:new va({"circle-radius":new Ir(Be.paint_circle["circle-radius"]),"circle-color":new Ir(Be.paint_circle["circle-color"]),"circle-blur":new Ir(Be.paint_circle["circle-blur"]),"circle-opacity":new Ir(Be.paint_circle["circle-opacity"]),"circle-translate":new Pr(Be.paint_circle["circle-translate"]),"circle-translate-anchor":new Pr(Be.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new Pr(Be.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new Pr(Be.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new Ir(Be.paint_circle["circle-stroke-width"]),"circle-stroke-color":new Ir(Be.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new Ir(Be.paint_circle["circle-stroke-opacity"])}),layout:X5},zs=typeof Float32Array<"u"?Float32Array:Array;function j1(S){return S[0]=1,S[1]=0,S[2]=0,S[3]=0,S[4]=0,S[5]=1,S[6]=0,S[7]=0,S[8]=0,S[9]=0,S[10]=1,S[11]=0,S[12]=0,S[13]=0,S[14]=0,S[15]=1,S}function Ny(S,F,K){var pe=F[0],Oe=F[1],Fe=F[2],Ge=F[3],tt=F[4],ct=F[5],kt=F[6],Mt=F[7],Dt=F[8],qt=F[9],Nt=F[10],an=F[11],un=F[12],Sn=F[13],Mn=F[14],zn=F[15],Bn=K[0],Gn=K[1],$n=K[2],nr=K[3];return S[0]=Bn*pe+Gn*tt+$n*Dt+nr*un,S[1]=Bn*Oe+Gn*ct+$n*qt+nr*Sn,S[2]=Bn*Fe+Gn*kt+$n*Nt+nr*Mn,S[3]=Bn*Ge+Gn*Mt+$n*an+nr*zn,Bn=K[4],Gn=K[5],$n=K[6],nr=K[7],S[4]=Bn*pe+Gn*tt+$n*Dt+nr*un,S[5]=Bn*Oe+Gn*ct+$n*qt+nr*Sn,S[6]=Bn*Fe+Gn*kt+$n*Nt+nr*Mn,S[7]=Bn*Ge+Gn*Mt+$n*an+nr*zn,Bn=K[8],Gn=K[9],$n=K[10],nr=K[11],S[8]=Bn*pe+Gn*tt+$n*Dt+nr*un,S[9]=Bn*Oe+Gn*ct+$n*qt+nr*Sn,S[10]=Bn*Fe+Gn*kt+$n*Nt+nr*Mn,S[11]=Bn*Ge+Gn*Mt+$n*an+nr*zn,Bn=K[12],Gn=K[13],$n=K[14],nr=K[15],S[12]=Bn*pe+Gn*tt+$n*Dt+nr*un,S[13]=Bn*Oe+Gn*ct+$n*qt+nr*Sn,S[14]=Bn*Fe+Gn*kt+$n*Nt+nr*Mn,S[15]=Bn*Ge+Gn*Mt+$n*an+nr*zn,S}Math.hypot||(Math.hypot=function(){for(var S=arguments,F=0,K=arguments.length;K--;)F+=S[K]*S[K];return Math.sqrt(F)});var K5=Ny,bd,J5=function(S,F,K){return S[0]=F[0]-K[0],S[1]=F[1]-K[1],S[2]=F[2]-K[2],S};function _d(S,F,K){var pe=F[0],Oe=F[1],Fe=F[2],Ge=F[3];return S[0]=K[0]*pe+K[4]*Oe+K[8]*Fe+K[12]*Ge,S[1]=K[1]*pe+K[5]*Oe+K[9]*Fe+K[13]*Ge,S[2]=K[2]*pe+K[6]*Oe+K[10]*Fe+K[14]*Ge,S[3]=K[3]*pe+K[7]*Oe+K[11]*Fe+K[15]*Ge,S}bd=new zs(3),zs!=Float32Array&&(bd[0]=0,bd[1]=0,bd[2]=0),function(){var S=new zs(4);zs!=Float32Array&&(S[0]=0,S[1]=0,S[2]=0,S[3]=0)}();var Q5=function(S){var F=S[0],K=S[1];return F*F+K*K},e4=(function(){var S=new zs(2);zs!=Float32Array&&(S[0]=0,S[1]=0)}(),function(S){function F(K){S.call(this,K,$5)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.createBucket=function(K){return new ua(K)},F.prototype.queryRadius=function(K){var pe=K;return Hh("circle-radius",this,pe)+Hh("circle-stroke-width",this,pe)+yd(this.paint.get("circle-translate"))},F.prototype.queryIntersectsFeature=function(K,pe,Oe,Fe,Ge,tt,ct,kt){for(var Mt=xd(K,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),tt.angle,ct),Dt=this.paint.get("circle-radius").evaluate(pe,Oe)+this.paint.get("circle-stroke-width").evaluate(pe,Oe),qt=this.paint.get("circle-pitch-alignment")==="map",Nt=qt?Mt:function(xr,dr){return xr.map(function(kr){return jy(kr,dr)})}(Mt,kt),an=qt?Dt*ct:Dt,un=0,Sn=Fe;un<Sn.length;un+=1)for(var Mn=0,zn=Sn[un];Mn<zn.length;Mn+=1){var Bn=zn[Mn],Gn=qt?Bn:jy(Bn,kt),$n=an,nr=_d([],[Bn.x,Bn.y,0,1],kt);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?$n*=nr[3]/tt.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&($n*=tt.cameraToCenterDistance/nr[3]),Of(Nt,Gn,$n))return!0}return!1},F}(ma));function jy(S,F){var K=_d([],[S.x,S.y,0,1],F);return new t(K[0]/K[3],K[1]/K[3])}var Uy=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F}(ua);function U1(S,F,K,pe){var Oe=F.width,Fe=F.height;if(pe){if(pe instanceof Uint8ClampedArray)pe=new Uint8Array(pe.buffer);else if(pe.length!==Oe*Fe*K)throw new RangeError("mismatched image size")}else pe=new Uint8Array(Oe*Fe*K);return S.width=Oe,S.height=Fe,S.data=pe,S}function Vy(S,F,K){var pe=F.width,Oe=F.height;if(pe!==S.width||Oe!==S.height){var Fe=U1({},{width:pe,height:Oe},K);V1(S,Fe,{x:0,y:0},{x:0,y:0},{width:Math.min(S.width,pe),height:Math.min(S.height,Oe)},K),S.width=pe,S.height=Oe,S.data=Fe.data}}function V1(S,F,K,pe,Oe,Fe){if(Oe.width===0||Oe.height===0)return F;if(Oe.width>S.width||Oe.height>S.height||K.x>S.width-Oe.width||K.y>S.height-Oe.height)throw new RangeError("out of range source coordinates for image copy");if(Oe.width>F.width||Oe.height>F.height||pe.x>F.width-Oe.width||pe.y>F.height-Oe.height)throw new RangeError("out of range destination coordinates for image copy");for(var Ge=S.data,tt=F.data,ct=0;ct<Oe.height;ct++)for(var kt=((K.y+ct)*S.width+K.x)*Fe,Mt=((pe.y+ct)*F.width+pe.x)*Fe,Dt=0;Dt<Oe.width*Fe;Dt++)tt[Mt+Dt]=Ge[kt+Dt];return F}Sr("HeatmapBucket",Uy,{omit:["layers"]});var Jc=function(S,F){U1(this,S,1,F)};Jc.prototype.resize=function(S){Vy(this,S,1)},Jc.prototype.clone=function(){return new Jc({width:this.width,height:this.height},new Uint8Array(this.data))},Jc.copy=function(S,F,K,pe,Oe){V1(S,F,K,pe,Oe,1)};var Go=function(S,F){U1(this,S,4,F)};Go.prototype.resize=function(S){Vy(this,S,4)},Go.prototype.replace=function(S,F){F?this.data.set(S):S instanceof Uint8ClampedArray?this.data=new Uint8Array(S.buffer):this.data=S},Go.prototype.clone=function(){return new Go({width:this.width,height:this.height},new Uint8Array(this.data))},Go.copy=function(S,F,K,pe,Oe){V1(S,F,K,pe,Oe,4)},Sr("AlphaImage",Jc),Sr("RGBAImage",Go);var t4={paint:new va({"heatmap-radius":new Ir(Be.paint_heatmap["heatmap-radius"]),"heatmap-weight":new Ir(Be.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Pr(Be.paint_heatmap["heatmap-intensity"]),"heatmap-color":new Os(Be.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Pr(Be.paint_heatmap["heatmap-opacity"])})};function Hy(S,F){for(var K=new Uint8Array(1024),pe={},Oe=0,Fe=0;Oe<256;Oe++,Fe+=4){pe[F]=Oe/255;var Ge=S.evaluate(pe);K[Fe+0]=Math.floor(255*Ge.r/Ge.a),K[Fe+1]=Math.floor(255*Ge.g/Ge.a),K[Fe+2]=Math.floor(255*Ge.b/Ge.a),K[Fe+3]=Math.floor(255*Ge.a)}return new Go({width:256,height:1},K)}var n4=function(S){function F(K){S.call(this,K,t4),this._updateColorRamp()}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.createBucket=function(K){return new Uy(K)},F.prototype._handleSpecialPaintPropertyUpdate=function(K){K==="heatmap-color"&&this._updateColorRamp()},F.prototype._updateColorRamp=function(){var K=this._transitionablePaint._values["heatmap-color"].value.expression;this.colorRamp=Hy(K,"heatmapDensity"),this.colorRampTexture=null},F.prototype.resize=function(){this.heatmapFbo&&(this.heatmapFbo.destroy(),this.heatmapFbo=null)},F.prototype.queryRadius=function(){return 0},F.prototype.queryIntersectsFeature=function(){return!1},F.prototype.hasOffscreenPass=function(){return this.paint.get("heatmap-opacity")!==0&&this.visibility!=="none"},F}(ma),r4={paint:new va({"hillshade-illumination-direction":new Pr(Be.paint_hillshade["hillshade-illumination-direction"]),"hillshade-illumination-anchor":new Pr(Be.paint_hillshade["hillshade-illumination-anchor"]),"hillshade-exaggeration":new Pr(Be.paint_hillshade["hillshade-exaggeration"]),"hillshade-shadow-color":new Pr(Be.paint_hillshade["hillshade-shadow-color"]),"hillshade-highlight-color":new Pr(Be.paint_hillshade["hillshade-highlight-color"]),"hillshade-accent-color":new Pr(Be.paint_hillshade["hillshade-accent-color"])})},i4=function(S){function F(K){S.call(this,K,r4)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.hasOffscreenPass=function(){return this.paint.get("hillshade-exaggeration")!==0&&this.visibility!=="none"},F}(ma),qy=Qi([{name:"a_pos",components:2,type:"Int16"}],4).members,H1=wd,a4=wd;function wd(S,F,K){K=K||2;var pe,Oe,Fe,Ge,tt,ct,kt,Mt=F&&F.length,Dt=Mt?F[0]*K:S.length,qt=Gy(S,0,Dt,K,!0),Nt=[];if(!qt||qt.next===qt.prev)return Nt;if(Mt&&(qt=function(un,Sn,Mn,zn){var Bn,Gn,$n,nr=[];for(Bn=0,Gn=Sn.length;Bn<Gn;Bn++)($n=Gy(un,Sn[Bn]*zn,Bn<Gn-1?Sn[Bn+1]*zn:un.length,zn,!1))===$n.next&&($n.steiner=!0),nr.push(p4($n));for(nr.sort(c4),Bn=0;Bn<nr.length;Bn++)f4(nr[Bn],Mn),Mn=vc(Mn,Mn.next);return Mn}(S,F,qt,K)),S.length>80*K){pe=Fe=S[0],Oe=Ge=S[1];for(var an=K;an<Dt;an+=K)(tt=S[an])<pe&&(pe=tt),(ct=S[an+1])<Oe&&(Oe=ct),tt>Fe&&(Fe=tt),ct>Ge&&(Ge=ct);kt=(kt=Math.max(Fe-pe,Ge-Oe))!==0?1/kt:0}return qh(qt,Nt,K,pe,Oe,kt),Nt}function Gy(S,F,K,pe,Oe){var Fe,Ge;if(Oe===W1(S,F,K,pe)>0)for(Fe=F;Fe<K;Fe+=pe)Ge=Yy(Fe,S[Fe],S[Fe+1],Ge);else for(Fe=K-pe;Fe>=F;Fe-=pe)Ge=Yy(Fe,S[Fe],S[Fe+1],Ge);return Ge&&kd(Ge,Ge.next)&&(Wh(Ge),Ge=Ge.next),Ge}function vc(S,F){if(!S)return S;F||(F=S);var K,pe=S;do if(K=!1,pe.steiner||!kd(pe,pe.next)&&wa(pe.prev,pe,pe.next)!==0)pe=pe.next;else{if(Wh(pe),(pe=F=pe.prev)===pe.next)break;K=!0}while(K||pe!==F);return F}function qh(S,F,K,pe,Oe,Fe,Ge){if(S){!Ge&&Fe&&function(Mt,Dt,qt,Nt){var an=Mt;do an.z===null&&(an.z=q1(an.x,an.y,Dt,qt,Nt)),an.prevZ=an.prev,an.nextZ=an.next,an=an.next;while(an!==Mt);an.prevZ.nextZ=null,an.prevZ=null,function(un){var Sn,Mn,zn,Bn,Gn,$n,nr,xr,dr=1;do{for(Mn=un,un=null,Gn=null,$n=0;Mn;){for($n++,zn=Mn,nr=0,Sn=0;Sn<dr&&(nr++,zn=zn.nextZ);Sn++);for(xr=dr;nr>0||xr>0&&zn;)nr!==0&&(xr===0||!zn||Mn.z<=zn.z)?(Bn=Mn,Mn=Mn.nextZ,nr--):(Bn=zn,zn=zn.nextZ,xr--),Gn?Gn.nextZ=Bn:un=Bn,Bn.prevZ=Gn,Gn=Bn;Mn=zn}Gn.nextZ=null,dr*=2}while($n>1)}(an)}(S,pe,Oe,Fe);for(var tt,ct,kt=S;S.prev!==S.next;)if(tt=S.prev,ct=S.next,Fe?s4(S,pe,Oe,Fe):o4(S))F.push(tt.i/K),F.push(S.i/K),F.push(ct.i/K),Wh(S),S=ct.next,kt=ct.next;else if((S=ct)===kt){Ge?Ge===1?qh(S=l4(vc(S),F,K),F,K,pe,Oe,Fe,2):Ge===2&&u4(S,F,K,pe,Oe,Fe):qh(vc(S),F,K,pe,Oe,Fe,1);break}}}function o4(S){var F=S.prev,K=S,pe=S.next;if(wa(F,K,pe)>=0)return!1;for(var Oe=S.next.next;Oe!==S.prev;){if(Rf(F.x,F.y,K.x,K.y,pe.x,pe.y,Oe.x,Oe.y)&&wa(Oe.prev,Oe,Oe.next)>=0)return!1;Oe=Oe.next}return!0}function s4(S,F,K,pe){var Oe=S.prev,Fe=S,Ge=S.next;if(wa(Oe,Fe,Ge)>=0)return!1;for(var tt=Oe.x<Fe.x?Oe.x<Ge.x?Oe.x:Ge.x:Fe.x<Ge.x?Fe.x:Ge.x,ct=Oe.y<Fe.y?Oe.y<Ge.y?Oe.y:Ge.y:Fe.y<Ge.y?Fe.y:Ge.y,kt=Oe.x>Fe.x?Oe.x>Ge.x?Oe.x:Ge.x:Fe.x>Ge.x?Fe.x:Ge.x,Mt=Oe.y>Fe.y?Oe.y>Ge.y?Oe.y:Ge.y:Fe.y>Ge.y?Fe.y:Ge.y,Dt=q1(tt,ct,F,K,pe),qt=q1(kt,Mt,F,K,pe),Nt=S.prevZ,an=S.nextZ;Nt&&Nt.z>=Dt&&an&&an.z<=qt;){if(Nt!==S.prev&&Nt!==S.next&&Rf(Oe.x,Oe.y,Fe.x,Fe.y,Ge.x,Ge.y,Nt.x,Nt.y)&&wa(Nt.prev,Nt,Nt.next)>=0||(Nt=Nt.prevZ,an!==S.prev&&an!==S.next&&Rf(Oe.x,Oe.y,Fe.x,Fe.y,Ge.x,Ge.y,an.x,an.y)&&wa(an.prev,an,an.next)>=0))return!1;an=an.nextZ}for(;Nt&&Nt.z>=Dt;){if(Nt!==S.prev&&Nt!==S.next&&Rf(Oe.x,Oe.y,Fe.x,Fe.y,Ge.x,Ge.y,Nt.x,Nt.y)&&wa(Nt.prev,Nt,Nt.next)>=0)return!1;Nt=Nt.prevZ}for(;an&&an.z<=qt;){if(an!==S.prev&&an!==S.next&&Rf(Oe.x,Oe.y,Fe.x,Fe.y,Ge.x,Ge.y,an.x,an.y)&&wa(an.prev,an,an.next)>=0)return!1;an=an.nextZ}return!0}function l4(S,F,K){var pe=S;do{var Oe=pe.prev,Fe=pe.next.next;!kd(Oe,Fe)&&Wy(Oe,pe,pe.next,Fe)&&Gh(Oe,Fe)&&Gh(Fe,Oe)&&(F.push(Oe.i/K),F.push(pe.i/K),F.push(Fe.i/K),Wh(pe),Wh(pe.next),pe=S=Fe),pe=pe.next}while(pe!==S);return vc(pe)}function u4(S,F,K,pe,Oe,Fe){var Ge=S;do{for(var tt=Ge.next.next;tt!==Ge.prev;){if(Ge.i!==tt.i&&d4(Ge,tt)){var ct=Zy(Ge,tt);return Ge=vc(Ge,Ge.next),ct=vc(ct,ct.next),qh(Ge,F,K,pe,Oe,Fe),void qh(ct,F,K,pe,Oe,Fe)}tt=tt.next}Ge=Ge.next}while(Ge!==S)}function c4(S,F){return S.x-F.x}function f4(S,F){if(F=function(pe,Oe){var Fe,Ge=Oe,tt=pe.x,ct=pe.y,kt=-1/0;do{if(ct<=Ge.y&&ct>=Ge.next.y&&Ge.next.y!==Ge.y){var Mt=Ge.x+(ct-Ge.y)*(Ge.next.x-Ge.x)/(Ge.next.y-Ge.y);if(Mt<=tt&&Mt>kt){if(kt=Mt,Mt===tt){if(ct===Ge.y)return Ge;if(ct===Ge.next.y)return Ge.next}Fe=Ge.x<Ge.next.x?Ge:Ge.next}}Ge=Ge.next}while(Ge!==Oe);if(!Fe)return null;if(tt===kt)return Fe;var Dt,qt=Fe,Nt=Fe.x,an=Fe.y,un=1/0;Ge=Fe;do tt>=Ge.x&&Ge.x>=Nt&&tt!==Ge.x&&Rf(ct<an?tt:kt,ct,Nt,an,ct<an?kt:tt,ct,Ge.x,Ge.y)&&(Dt=Math.abs(ct-Ge.y)/(tt-Ge.x),Gh(Ge,pe)&&(Dt<un||Dt===un&&(Ge.x>Fe.x||Ge.x===Fe.x&&h4(Fe,Ge)))&&(Fe=Ge,un=Dt)),Ge=Ge.next;while(Ge!==qt);return Fe}(S,F)){var K=Zy(F,S);vc(F,F.next),vc(K,K.next)}}function h4(S,F){return wa(S.prev,S,F.prev)<0&&wa(F.next,S,S.next)<0}function q1(S,F,K,pe,Oe){return(S=1431655765&((S=858993459&((S=252645135&((S=16711935&((S=32767*(S-K)*Oe)|S<<8))|S<<4))|S<<2))|S<<1))|(F=1431655765&((F=858993459&((F=252645135&((F=16711935&((F=32767*(F-pe)*Oe)|F<<8))|F<<4))|F<<2))|F<<1))<<1}function p4(S){var F=S,K=S;do(F.x<K.x||F.x===K.x&&F.y<K.y)&&(K=F),F=F.next;while(F!==S);return K}function Rf(S,F,K,pe,Oe,Fe,Ge,tt){return(Oe-Ge)*(F-tt)-(S-Ge)*(Fe-tt)>=0&&(S-Ge)*(pe-tt)-(K-Ge)*(F-tt)>=0&&(K-Ge)*(Fe-tt)-(Oe-Ge)*(pe-tt)>=0}function d4(S,F){return S.next.i!==F.i&&S.prev.i!==F.i&&!function(K,pe){var Oe=K;do{if(Oe.i!==K.i&&Oe.next.i!==K.i&&Oe.i!==pe.i&&Oe.next.i!==pe.i&&Wy(Oe,Oe.next,K,pe))return!0;Oe=Oe.next}while(Oe!==K);return!1}(S,F)&&(Gh(S,F)&&Gh(F,S)&&function(K,pe){var Oe=K,Fe=!1,Ge=(K.x+pe.x)/2,tt=(K.y+pe.y)/2;do Oe.y>tt!=Oe.next.y>tt&&Oe.next.y!==Oe.y&&Ge<(Oe.next.x-Oe.x)*(tt-Oe.y)/(Oe.next.y-Oe.y)+Oe.x&&(Fe=!Fe),Oe=Oe.next;while(Oe!==K);return Fe}(S,F)&&(wa(S.prev,S,F.prev)||wa(S,F.prev,F))||kd(S,F)&&wa(S.prev,S,S.next)>0&&wa(F.prev,F,F.next)>0)}function wa(S,F,K){return(F.y-S.y)*(K.x-F.x)-(F.x-S.x)*(K.y-F.y)}function kd(S,F){return S.x===F.x&&S.y===F.y}function Wy(S,F,K,pe){var Oe=Ad(wa(S,F,K)),Fe=Ad(wa(S,F,pe)),Ge=Ad(wa(K,pe,S)),tt=Ad(wa(K,pe,F));return Oe!==Fe&&Ge!==tt||!(Oe!==0||!Td(S,K,F))||!(Fe!==0||!Td(S,pe,F))||!(Ge!==0||!Td(K,S,pe))||!(tt!==0||!Td(K,F,pe))}function Td(S,F,K){return F.x<=Math.max(S.x,K.x)&&F.x>=Math.min(S.x,K.x)&&F.y<=Math.max(S.y,K.y)&&F.y>=Math.min(S.y,K.y)}function Ad(S){return S>0?1:S<0?-1:0}function Gh(S,F){return wa(S.prev,S,S.next)<0?wa(S,F,S.next)>=0&&wa(S,S.prev,F)>=0:wa(S,F,S.prev)<0||wa(S,S.next,F)<0}function Zy(S,F){var K=new G1(S.i,S.x,S.y),pe=new G1(F.i,F.x,F.y),Oe=S.next,Fe=F.prev;return S.next=F,F.prev=S,K.next=Oe,Oe.prev=K,pe.next=K,K.prev=pe,Fe.next=pe,pe.prev=Fe,pe}function Yy(S,F,K,pe){var Oe=new G1(S,F,K);return pe?(Oe.next=pe.next,Oe.prev=pe,pe.next.prev=Oe,pe.next=Oe):(Oe.prev=Oe,Oe.next=Oe),Oe}function Wh(S){S.next.prev=S.prev,S.prev.next=S.next,S.prevZ&&(S.prevZ.nextZ=S.nextZ),S.nextZ&&(S.nextZ.prevZ=S.prevZ)}function G1(S,F,K){this.i=S,this.x=F,this.y=K,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function W1(S,F,K,pe){for(var Oe=0,Fe=F,Ge=K-pe;Fe<K;Fe+=pe)Oe+=(S[Ge]-S[Fe])*(S[Fe+1]+S[Ge+1]),Ge=Fe;return Oe}function g4(S,F,K,pe,Oe){Xy(S,F,K||0,pe||S.length-1,Oe||v4)}function Xy(S,F,K,pe,Oe){for(;pe>K;){if(pe-K>600){var Fe=pe-K+1,Ge=F-K+1,tt=Math.log(Fe),ct=.5*Math.exp(2*tt/3),kt=.5*Math.sqrt(tt*ct*(Fe-ct)/Fe)*(Ge-Fe/2<0?-1:1);Xy(S,F,Math.max(K,Math.floor(F-Ge*ct/Fe+kt)),Math.min(pe,Math.floor(F+(Fe-Ge)*ct/Fe+kt)),Oe)}var Mt=S[F],Dt=K,qt=pe;for(Zh(S,K,F),Oe(S[pe],Mt)>0&&Zh(S,K,pe);Dt<qt;){for(Zh(S,Dt,qt),Dt++,qt--;Oe(S[Dt],Mt)<0;)Dt++;for(;Oe(S[qt],Mt)>0;)qt--}Oe(S[K],Mt)===0?Zh(S,K,qt):Zh(S,++qt,pe),qt<=F&&(K=qt+1),F<=qt&&(pe=qt-1)}}function Zh(S,F,K){var pe=S[F];S[F]=S[K],S[K]=pe}function v4(S,F){return S<F?-1:S>F?1:0}function Z1(S,F){var K=S.length;if(K<=1)return[S];for(var pe,Oe,Fe=[],Ge=0;Ge<K;Ge++){var tt=C(S[Ge]);tt!==0&&(S[Ge].area=Math.abs(tt),Oe===void 0&&(Oe=tt<0),Oe===tt<0?(pe&&Fe.push(pe),pe=[S[Ge]]):pe.push(S[Ge]))}if(pe&&Fe.push(pe),F>1)for(var ct=0;ct<Fe.length;ct++)Fe[ct].length<=F||(g4(Fe[ct],F,1,Fe[ct].length-1,m4),Fe[ct]=Fe[ct].slice(0,F));return Fe}function m4(S,F){return F.area-S.area}function Y1(S,F,K){for(var pe=K.patternDependencies,Oe=!1,Fe=0,Ge=F;Fe<Ge.length;Fe+=1){var tt=Ge[Fe].paint.get(S+"-pattern");tt.isConstant()||(Oe=!0);var ct=tt.constantOr(null);ct&&(Oe=!0,pe[ct.to]=!0,pe[ct.from]=!0)}return Oe}function X1(S,F,K,pe,Oe){for(var Fe=Oe.patternDependencies,Ge=0,tt=F;Ge<tt.length;Ge+=1){var ct=tt[Ge],kt=ct.paint.get(S+"-pattern").value;if(kt.kind!=="constant"){var Mt=kt.evaluate({zoom:pe-1},K,{},Oe.availableImages),Dt=kt.evaluate({zoom:pe},K,{},Oe.availableImages),qt=kt.evaluate({zoom:pe+1},K,{},Oe.availableImages);Mt=Mt&&Mt.name?Mt.name:Mt,Dt=Dt&&Dt.name?Dt.name:Dt,qt=qt&&qt.name?qt.name:qt,Fe[Mt]=!0,Fe[Dt]=!0,Fe[qt]=!0,K.patterns[ct.id]={min:Mt,mid:Dt,max:qt}}}return K}wd.deviation=function(S,F,K,pe){var Oe=F&&F.length,Fe=Oe?F[0]*K:S.length,Ge=Math.abs(W1(S,0,Fe,K));if(Oe)for(var tt=0,ct=F.length;tt<ct;tt++){var kt=F[tt]*K,Mt=tt<ct-1?F[tt+1]*K:S.length;Ge-=Math.abs(W1(S,kt,Mt,K))}var Dt=0;for(tt=0;tt<pe.length;tt+=3){var qt=pe[tt]*K,Nt=pe[tt+1]*K,an=pe[tt+2]*K;Dt+=Math.abs((S[qt]-S[an])*(S[Nt+1]-S[qt+1])-(S[qt]-S[Nt])*(S[an+1]-S[qt+1]))}return Ge===0&&Dt===0?0:Math.abs((Dt-Ge)/Ge)},wd.flatten=function(S){for(var F=S[0][0].length,K={vertices:[],holes:[],dimensions:F},pe=0,Oe=0;Oe<S.length;Oe++){for(var Fe=0;Fe<S[Oe].length;Fe++)for(var Ge=0;Ge<F;Ge++)K.vertices.push(S[Oe][Fe][Ge]);Oe>0&&(pe+=S[Oe-1].length,K.holes.push(pe))}return K},H1.default=a4;var Wl=function(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(function(F){return F.id}),this.index=S.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Ga,this.indexArray=new ne,this.indexArray2=new We,this.programConfigurations=new Mi(qy,S.layers,S.zoom),this.segments=new _n,this.segments2=new _n,this.stateDependentLayerIds=this.layers.filter(function(F){return F.isStateDependent()}).map(function(F){return F.id})};Wl.prototype.populate=function(S,F,K){this.hasPattern=Y1("fill",this.layers,F);for(var pe=this.layers[0].layout.get("fill-sort-key"),Oe=[],Fe=0,Ge=S;Fe<Ge.length;Fe+=1){var tt=Ge[Fe],ct=tt.feature,kt=tt.id,Mt=tt.index,Dt=tt.sourceLayerIndex,qt=this.layers[0]._featureFilter.needGeometry,Nt={type:ct.type,id:kt,properties:ct.properties,geometry:qt?ho(ct):[]};if(this.layers[0]._featureFilter.filter(new li(this.zoom),Nt,K)){qt||(Nt.geometry=ho(ct));var an=pe?pe.evaluate(Nt,{},K,F.availableImages):void 0,un={id:kt,properties:ct.properties,type:ct.type,sourceLayerIndex:Dt,index:Mt,geometry:Nt.geometry,patterns:{},sortKey:an};Oe.push(un)}}pe&&Oe.sort(function(kr,Cr){return kr.sortKey-Cr.sortKey});for(var Sn=0,Mn=Oe;Sn<Mn.length;Sn+=1){var zn=Mn[Sn],Bn=zn,Gn=Bn.geometry,$n=Bn.index,nr=Bn.sourceLayerIndex;if(this.hasPattern){var xr=X1("fill",this.layers,zn,this.zoom,F);this.patternFeatures.push(xr)}else this.addFeature(zn,Gn,$n,K,{});var dr=S[$n].feature;F.featureIndex.insert(dr,Gn,$n,nr,this.index)}},Wl.prototype.update=function(S,F,K){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,F,this.stateDependentLayers,K)},Wl.prototype.addFeatures=function(S,F,K){for(var pe=0,Oe=this.patternFeatures;pe<Oe.length;pe+=1){var Fe=Oe[pe];this.addFeature(Fe,Fe.geometry,Fe.index,F,K)}},Wl.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},Wl.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},Wl.prototype.upload=function(S){this.uploaded||(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,qy),this.indexBuffer=S.createIndexBuffer(this.indexArray),this.indexBuffer2=S.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(S),this.uploaded=!0},Wl.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())},Wl.prototype.addFeature=function(S,F,K,pe,Oe){for(var Fe=0,Ge=Z1(F,500);Fe<Ge.length;Fe+=1){for(var tt=Ge[Fe],ct=0,kt=0,Mt=tt;kt<Mt.length;kt+=1)ct+=Mt[kt].length;for(var Dt=this.segments.prepareSegment(ct,this.layoutVertexArray,this.indexArray),qt=Dt.vertexLength,Nt=[],an=[],un=0,Sn=tt;un<Sn.length;un+=1){var Mn=Sn[un];if(Mn.length!==0){Mn!==tt[0]&&an.push(Nt.length/2);var zn=this.segments2.prepareSegment(Mn.length,this.layoutVertexArray,this.indexArray2),Bn=zn.vertexLength;this.layoutVertexArray.emplaceBack(Mn[0].x,Mn[0].y),this.indexArray2.emplaceBack(Bn+Mn.length-1,Bn),Nt.push(Mn[0].x),Nt.push(Mn[0].y);for(var Gn=1;Gn<Mn.length;Gn++)this.layoutVertexArray.emplaceBack(Mn[Gn].x,Mn[Gn].y),this.indexArray2.emplaceBack(Bn+Gn-1,Bn+Gn),Nt.push(Mn[Gn].x),Nt.push(Mn[Gn].y);zn.vertexLength+=Mn.length,zn.primitiveLength+=Mn.length}}for(var $n=H1(Nt,an),nr=0;nr<$n.length;nr+=3)this.indexArray.emplaceBack(qt+$n[nr],qt+$n[nr+1],qt+$n[nr+2]);Dt.vertexLength+=ct,Dt.primitiveLength+=$n.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,K,Oe,pe)},Sr("FillBucket",Wl,{omit:["layers","patternFeatures"]});var y4=new va({"fill-sort-key":new Ir(Be.layout_fill["fill-sort-key"])}),x4={paint:new va({"fill-antialias":new Pr(Be.paint_fill["fill-antialias"]),"fill-opacity":new Ir(Be.paint_fill["fill-opacity"]),"fill-color":new Ir(Be.paint_fill["fill-color"]),"fill-outline-color":new Ir(Be.paint_fill["fill-outline-color"]),"fill-translate":new Pr(Be.paint_fill["fill-translate"]),"fill-translate-anchor":new Pr(Be.paint_fill["fill-translate-anchor"]),"fill-pattern":new kl(Be.paint_fill["fill-pattern"])}),layout:y4},b4=function(S){function F(K){S.call(this,K,x4)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.recalculate=function(K,pe){S.prototype.recalculate.call(this,K,pe);var Oe=this.paint._values["fill-outline-color"];Oe.value.kind==="constant"&&Oe.value.value===void 0&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])},F.prototype.createBucket=function(K){return new Wl(K)},F.prototype.queryRadius=function(){return yd(this.paint.get("fill-translate"))},F.prototype.queryIntersectsFeature=function(K,pe,Oe,Fe,Ge,tt,ct){return vd(xd(K,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),tt.angle,ct),Fe)},F.prototype.isTileClipped=function(){return!0},F}(ma),$y=Qi([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal_ed",components:4,type:"Int16"}],4).members,Ky=zf;function zf(S,F,K,pe,Oe){this.properties={},this.extent=K,this.type=0,this._pbf=S,this._geometry=-1,this._keys=pe,this._values=Oe,S.readFields(_4,this,F)}function _4(S,F,K){S==1?F.id=K.readVarint():S==2?function(pe,Oe){for(var Fe=pe.readVarint()+pe.pos;pe.pos<Fe;){var Ge=Oe._keys[pe.readVarint()],tt=Oe._values[pe.readVarint()];Oe.properties[Ge]=tt}}(K,F):S==3?F.type=K.readVarint():S==4&&(F._geometry=K.pos)}function w4(S){for(var F,K,pe=0,Oe=0,Fe=S.length,Ge=Fe-1;Oe<Fe;Ge=Oe++)F=S[Oe],pe+=((K=S[Ge]).x-F.x)*(F.y+K.y);return pe}zf.types=["Unknown","Point","LineString","Polygon"],zf.prototype.loadGeometry=function(){var S=this._pbf;S.pos=this._geometry;for(var F,K=S.readVarint()+S.pos,pe=1,Oe=0,Fe=0,Ge=0,tt=[];S.pos<K;){if(Oe<=0){var ct=S.readVarint();pe=7&ct,Oe=ct>>3}if(Oe--,pe===1||pe===2)Fe+=S.readSVarint(),Ge+=S.readSVarint(),pe===1&&(F&&tt.push(F),F=[]),F.push(new t(Fe,Ge));else{if(pe!==7)throw new Error("unknown command "+pe);F&&F.push(F[0].clone())}}return F&&tt.push(F),tt},zf.prototype.bbox=function(){var S=this._pbf;S.pos=this._geometry;for(var F=S.readVarint()+S.pos,K=1,pe=0,Oe=0,Fe=0,Ge=1/0,tt=-1/0,ct=1/0,kt=-1/0;S.pos<F;){if(pe<=0){var Mt=S.readVarint();K=7&Mt,pe=Mt>>3}if(pe--,K===1||K===2)(Oe+=S.readSVarint())<Ge&&(Ge=Oe),Oe>tt&&(tt=Oe),(Fe+=S.readSVarint())<ct&&(ct=Fe),Fe>kt&&(kt=Fe);else if(K!==7)throw new Error("unknown command "+K)}return[Ge,ct,tt,kt]},zf.prototype.toGeoJSON=function(S,F,K){var pe,Oe,Fe=this.extent*Math.pow(2,K),Ge=this.extent*S,tt=this.extent*F,ct=this.loadGeometry(),kt=zf.types[this.type];function Mt(Nt){for(var an=0;an<Nt.length;an++){var un=Nt[an],Sn=180-360*(un.y+tt)/Fe;Nt[an]=[360*(un.x+Ge)/Fe-180,360/Math.PI*Math.atan(Math.exp(Sn*Math.PI/180))-90]}}switch(this.type){case 1:var Dt=[];for(pe=0;pe<ct.length;pe++)Dt[pe]=ct[pe][0];Mt(ct=Dt);break;case 2:for(pe=0;pe<ct.length;pe++)Mt(ct[pe]);break;case 3:for(ct=function(Nt){var an=Nt.length;if(an<=1)return[Nt];for(var un,Sn,Mn=[],zn=0;zn<an;zn++){var Bn=w4(Nt[zn]);Bn!==0&&(Sn===void 0&&(Sn=Bn<0),Sn===Bn<0?(un&&Mn.push(un),un=[Nt[zn]]):un.push(Nt[zn]))}return un&&Mn.push(un),Mn}(ct),pe=0;pe<ct.length;pe++)for(Oe=0;Oe<ct[pe].length;Oe++)Mt(ct[pe][Oe])}ct.length===1?ct=ct[0]:kt="Multi"+kt;var qt={type:"Feature",geometry:{type:kt,coordinates:ct},properties:this.properties};return"id"in this&&(qt.id=this.id),qt};var Jy=Qy;function Qy(S,F){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=S,this._keys=[],this._values=[],this._features=[],S.readFields(k4,this,F),this.length=this._features.length}function k4(S,F,K){S===15?F.version=K.readVarint():S===1?F.name=K.readString():S===5?F.extent=K.readVarint():S===2?F._features.push(K.pos):S===3?F._keys.push(K.readString()):S===4&&F._values.push(function(pe){for(var Oe=null,Fe=pe.readVarint()+pe.pos;pe.pos<Fe;){var Ge=pe.readVarint()>>3;Oe=Ge===1?pe.readString():Ge===2?pe.readFloat():Ge===3?pe.readDouble():Ge===4?pe.readVarint64():Ge===5?pe.readVarint():Ge===6?pe.readSVarint():Ge===7?pe.readBoolean():null}return Oe}(K))}function T4(S,F,K){if(S===3){var pe=new Jy(K,K.readVarint()+K.pos);pe.length&&(F[pe.name]=pe)}}Qy.prototype.feature=function(S){if(S<0||S>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[S];var F=this._pbf.readVarint()+this._pbf.pos;return new Ky(this._pbf,F,this.extent,this._keys,this._values)};var Df={VectorTile:function(S,F){this.layers=S.readFields(T4,{},F)},VectorTileFeature:Ky,VectorTileLayer:Jy},A4=Df.VectorTileFeature.types,$1=Math.pow(2,13);function Yh(S,F,K,pe,Oe,Fe,Ge,tt){S.emplaceBack(F,K,2*Math.floor(pe*$1)+Ge,Oe*$1*2,Fe*$1*2,Math.round(tt))}var Zl=function(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(function(F){return F.id}),this.index=S.index,this.hasPattern=!1,this.layoutVertexArray=new Al,this.indexArray=new ne,this.programConfigurations=new Mi($y,S.layers,S.zoom),this.segments=new _n,this.stateDependentLayerIds=this.layers.filter(function(F){return F.isStateDependent()}).map(function(F){return F.id})};function M4(S,F){return S.x===F.x&&(S.x<0||S.x>si)||S.y===F.y&&(S.y<0||S.y>si)}Zl.prototype.populate=function(S,F,K){this.features=[],this.hasPattern=Y1("fill-extrusion",this.layers,F);for(var pe=0,Oe=S;pe<Oe.length;pe+=1){var Fe=Oe[pe],Ge=Fe.feature,tt=Fe.id,ct=Fe.index,kt=Fe.sourceLayerIndex,Mt=this.layers[0]._featureFilter.needGeometry,Dt={type:Ge.type,id:tt,properties:Ge.properties,geometry:Mt?ho(Ge):[]};if(this.layers[0]._featureFilter.filter(new li(this.zoom),Dt,K)){var qt={id:tt,sourceLayerIndex:kt,index:ct,geometry:Mt?Dt.geometry:ho(Ge),properties:Ge.properties,type:Ge.type,patterns:{}};Ge.id!==void 0&&(qt.id=Ge.id),this.hasPattern?this.features.push(X1("fill-extrusion",this.layers,qt,this.zoom,F)):this.addFeature(qt,qt.geometry,ct,K,{}),F.featureIndex.insert(Ge,qt.geometry,ct,kt,this.index,!0)}}},Zl.prototype.addFeatures=function(S,F,K){for(var pe=0,Oe=this.features;pe<Oe.length;pe+=1){var Fe=Oe[pe],Ge=Fe.geometry;this.addFeature(Fe,Ge,Fe.index,F,K)}},Zl.prototype.update=function(S,F,K){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,F,this.stateDependentLayers,K)},Zl.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},Zl.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},Zl.prototype.upload=function(S){this.uploaded||(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,$y),this.indexBuffer=S.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(S),this.uploaded=!0},Zl.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},Zl.prototype.addFeature=function(S,F,K,pe,Oe){for(var Fe=0,Ge=Z1(F,500);Fe<Ge.length;Fe+=1){for(var tt=Ge[Fe],ct=0,kt=0,Mt=tt;kt<Mt.length;kt+=1)ct+=Mt[kt].length;for(var Dt=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray),qt=0,Nt=tt;qt<Nt.length;qt+=1){var an=Nt[qt];if(an.length!==0&&!((Qr=an).every(function(Gr){return Gr.x<0})||Qr.every(function(Gr){return Gr.x>si})||Qr.every(function(Gr){return Gr.y<0})||Qr.every(function(Gr){return Gr.y>si})))for(var un=0,Sn=0;Sn<an.length;Sn++){var Mn=an[Sn];if(Sn>=1){var zn=an[Sn-1];if(!M4(Mn,zn)){Dt.vertexLength+4>_n.MAX_VERTEX_ARRAY_LENGTH&&(Dt=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var Bn=Mn.sub(zn)._perp()._unit(),Gn=zn.dist(Mn);un+Gn>32768&&(un=0),Yh(this.layoutVertexArray,Mn.x,Mn.y,Bn.x,Bn.y,0,0,un),Yh(this.layoutVertexArray,Mn.x,Mn.y,Bn.x,Bn.y,0,1,un),un+=Gn,Yh(this.layoutVertexArray,zn.x,zn.y,Bn.x,Bn.y,0,0,un),Yh(this.layoutVertexArray,zn.x,zn.y,Bn.x,Bn.y,0,1,un);var $n=Dt.vertexLength;this.indexArray.emplaceBack($n,$n+2,$n+1),this.indexArray.emplaceBack($n+1,$n+2,$n+3),Dt.vertexLength+=4,Dt.primitiveLength+=2}}}}if(Dt.vertexLength+ct>_n.MAX_VERTEX_ARRAY_LENGTH&&(Dt=this.segments.prepareSegment(ct,this.layoutVertexArray,this.indexArray)),A4[S.type]==="Polygon"){for(var nr=[],xr=[],dr=Dt.vertexLength,kr=0,Cr=tt;kr<Cr.length;kr+=1){var Hr=Cr[kr];if(Hr.length!==0){Hr!==tt[0]&&xr.push(nr.length/2);for(var Or=0;Or<Hr.length;Or++){var Ur=Hr[Or];Yh(this.layoutVertexArray,Ur.x,Ur.y,0,0,1,1,0),nr.push(Ur.x),nr.push(Ur.y)}}}for(var Dr=H1(nr,xr),Lr=0;Lr<Dr.length;Lr+=3)this.indexArray.emplaceBack(dr+Dr[Lr],dr+Dr[Lr+2],dr+Dr[Lr+1]);Dt.primitiveLength+=Dr.length/3,Dt.vertexLength+=ct}}var Qr;this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,K,Oe,pe)},Sr("FillExtrusionBucket",Zl,{omit:["layers","features"]});var S4={paint:new va({"fill-extrusion-opacity":new Pr(Be["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new Ir(Be["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Pr(Be["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Pr(Be["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new kl(Be["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new Ir(Be["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new Ir(Be["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Pr(Be["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})},E4=function(S){function F(K){S.call(this,K,S4)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.createBucket=function(K){return new Zl(K)},F.prototype.queryRadius=function(){return yd(this.paint.get("fill-extrusion-translate"))},F.prototype.is3D=function(){return!0},F.prototype.queryIntersectsFeature=function(K,pe,Oe,Fe,Ge,tt,ct,kt){var Mt=xd(K,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),tt.angle,ct),Dt=this.paint.get("fill-extrusion-height").evaluate(pe,Oe),qt=this.paint.get("fill-extrusion-base").evaluate(pe,Oe),Nt=function(un,Sn,Mn,zn){for(var Bn=[],Gn=0,$n=un;Gn<$n.length;Gn+=1){var nr=$n[Gn],xr=[nr.x,nr.y,zn,1];_d(xr,xr,Sn),Bn.push(new t(xr[0]/xr[3],xr[1]/xr[3]))}return Bn}(Mt,kt,0,0),an=function(un,Sn,Mn,zn){for(var Bn=[],Gn=[],$n=zn[8]*Sn,nr=zn[9]*Sn,xr=zn[10]*Sn,dr=zn[11]*Sn,kr=zn[8]*Mn,Cr=zn[9]*Mn,Hr=zn[10]*Mn,Or=zn[11]*Mn,Ur=0,Dr=un;Ur<Dr.length;Ur+=1){for(var Lr=[],Qr=[],Gr=0,Si=Dr[Ur];Gr<Si.length;Gr+=1){var jr=Si[Gr],yi=jr.x,Pi=jr.y,Ii=zn[0]*yi+zn[4]*Pi+zn[12],Ri=zn[1]*yi+zn[5]*Pi+zn[13],Ei=zn[2]*yi+zn[6]*Pi+zn[14],Aa=zn[3]*yi+zn[7]*Pi+zn[15],Hi=Ei+xr,Fa=Aa+dr,ro=Ii+kr,Ya=Ri+Cr,So=Ei+Hr,Xa=Aa+Or,Oa=new t((Ii+$n)/Fa,(Ri+nr)/Fa);Oa.z=Hi/Fa,Lr.push(Oa);var $a=new t(ro/Xa,Ya/Xa);$a.z=So/Xa,Qr.push($a)}Bn.push(Lr),Gn.push(Qr)}return[Bn,Gn]}(Fe,qt,Dt,kt);return function(un,Sn,Mn){var zn=1/0;vd(Mn,Sn)&&(zn=ex(Mn,Sn[0]));for(var Bn=0;Bn<Sn.length;Bn++)for(var Gn=Sn[Bn],$n=un[Bn],nr=0;nr<Gn.length-1;nr++){var xr=Gn[nr],dr=Gn[nr+1],kr=$n[nr],Cr=[xr,dr,$n[nr+1],kr,xr];Mo(Mn,Cr)&&(zn=Math.min(zn,ex(Mn,Cr)))}return zn!==1/0&&zn}(an[0],an[1],Nt)},F}(ma);function Xh(S,F){return S.x*F.x+S.y*F.y}function ex(S,F){if(S.length===1){for(var K,pe=0,Oe=F[pe++];!K||Oe.equals(K);)if(!(K=F[pe++]))return 1/0;for(;pe<F.length;pe++){var Fe=F[pe],Ge=S[0],tt=K.sub(Oe),ct=Fe.sub(Oe),kt=Ge.sub(Oe),Mt=Xh(tt,tt),Dt=Xh(tt,ct),qt=Xh(ct,ct),Nt=Xh(kt,tt),an=Xh(kt,ct),un=Mt*qt-Dt*Dt,Sn=(qt*Nt-Dt*an)/un,Mn=(Mt*an-Dt*Nt)/un,zn=1-Sn-Mn,Bn=Oe.z*zn+K.z*Sn+Fe.z*Mn;if(isFinite(Bn))return Bn}return 1/0}for(var Gn=1/0,$n=0,nr=F;$n<nr.length;$n+=1){var xr=nr[$n];Gn=Math.min(Gn,xr.z)}return Gn}var tx=Qi([{name:"a_pos_normal",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],4).members,C4=Df.VectorTileFeature.types,L4=Math.cos(Math.PI/180*37.5),nx=Math.pow(2,14)/.5,Wo=function(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(function(F){return F.id}),this.index=S.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new ol,this.indexArray=new ne,this.programConfigurations=new Mi(tx,S.layers,S.zoom),this.segments=new _n,this.stateDependentLayerIds=this.layers.filter(function(F){return F.isStateDependent()}).map(function(F){return F.id})};Wo.prototype.populate=function(S,F,K){this.hasPattern=Y1("line",this.layers,F);for(var pe=this.layers[0].layout.get("line-sort-key"),Oe=[],Fe=0,Ge=S;Fe<Ge.length;Fe+=1){var tt=Ge[Fe],ct=tt.feature,kt=tt.id,Mt=tt.index,Dt=tt.sourceLayerIndex,qt=this.layers[0]._featureFilter.needGeometry,Nt={type:ct.type,id:kt,properties:ct.properties,geometry:qt?ho(ct):[]};if(this.layers[0]._featureFilter.filter(new li(this.zoom),Nt,K)){qt||(Nt.geometry=ho(ct));var an=pe?pe.evaluate(Nt,{},K):void 0,un={id:kt,properties:ct.properties,type:ct.type,sourceLayerIndex:Dt,index:Mt,geometry:Nt.geometry,patterns:{},sortKey:an};Oe.push(un)}}pe&&Oe.sort(function(kr,Cr){return kr.sortKey-Cr.sortKey});for(var Sn=0,Mn=Oe;Sn<Mn.length;Sn+=1){var zn=Mn[Sn],Bn=zn,Gn=Bn.geometry,$n=Bn.index,nr=Bn.sourceLayerIndex;if(this.hasPattern){var xr=X1("line",this.layers,zn,this.zoom,F);this.patternFeatures.push(xr)}else this.addFeature(zn,Gn,$n,K,{});var dr=S[$n].feature;F.featureIndex.insert(dr,Gn,$n,nr,this.index)}},Wo.prototype.update=function(S,F,K){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,F,this.stateDependentLayers,K)},Wo.prototype.addFeatures=function(S,F,K){for(var pe=0,Oe=this.patternFeatures;pe<Oe.length;pe+=1){var Fe=Oe[pe];this.addFeature(Fe,Fe.geometry,Fe.index,F,K)}},Wo.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},Wo.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},Wo.prototype.upload=function(S){this.uploaded||(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,tx),this.indexBuffer=S.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(S),this.uploaded=!0},Wo.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},Wo.prototype.addFeature=function(S,F,K,pe,Oe){for(var Fe=this.layers[0].layout,Ge=Fe.get("line-join").evaluate(S,{}),tt=Fe.get("line-cap"),ct=Fe.get("line-miter-limit"),kt=Fe.get("line-round-limit"),Mt=0,Dt=F;Mt<Dt.length;Mt+=1){var qt=Dt[Mt];this.addLine(qt,S,Ge,tt,ct,kt)}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,K,Oe,pe)},Wo.prototype.addLine=function(S,F,K,pe,Oe,Fe){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,F.properties&&F.properties.hasOwnProperty("mapbox_clip_start")&&F.properties.hasOwnProperty("mapbox_clip_end")){this.clipStart=+F.properties.mapbox_clip_start,this.clipEnd=+F.properties.mapbox_clip_end;for(var Ge=0;Ge<S.length-1;Ge++)this.totalDistance+=S[Ge].dist(S[Ge+1]);this.updateScaledDistance()}for(var tt=C4[F.type]==="Polygon",ct=S.length;ct>=2&&S[ct-1].equals(S[ct-2]);)ct--;for(var kt=0;kt<ct-1&&S[kt].equals(S[kt+1]);)kt++;if(!(ct<(tt?3:2))){K==="bevel"&&(Oe=1.05);var Mt,Dt=this.overscaling<=16?15*si/(512*this.overscaling):0,qt=this.segments.prepareSegment(10*ct,this.layoutVertexArray,this.indexArray),Nt=void 0,an=void 0,un=void 0,Sn=void 0;this.e1=this.e2=-1,tt&&(Mt=S[ct-2],Sn=S[kt].sub(Mt)._unit()._perp());for(var Mn=kt;Mn<ct;Mn++)if(!(an=Mn===ct-1?tt?S[kt+1]:void 0:S[Mn+1])||!S[Mn].equals(an)){Sn&&(un=Sn),Mt&&(Nt=Mt),Mt=S[Mn],Sn=an?an.sub(Mt)._unit()._perp():un;var zn=(un=un||Sn).add(Sn);zn.x===0&&zn.y===0||zn._unit();var Bn=un.x*Sn.x+un.y*Sn.y,Gn=zn.x*Sn.x+zn.y*Sn.y,$n=Gn!==0?1/Gn:1/0,nr=2*Math.sqrt(2-2*Gn),xr=Gn<L4&&Nt&&an,dr=un.x*Sn.y-un.y*Sn.x>0;if(xr&&Mn>kt){var kr=Mt.dist(Nt);if(kr>2*Dt){var Cr=Mt.sub(Mt.sub(Nt)._mult(Dt/kr)._round());this.updateDistance(Nt,Cr),this.addCurrentVertex(Cr,un,0,0,qt),Nt=Cr}}var Hr=Nt&&an,Or=Hr?K:tt?"butt":pe;if(Hr&&Or==="round"&&($n<Fe?Or="miter":$n<=2&&(Or="fakeround")),Or==="miter"&&$n>Oe&&(Or="bevel"),Or==="bevel"&&($n>2&&(Or="flipbevel"),$n<Oe&&(Or="miter")),Nt&&this.updateDistance(Nt,Mt),Or==="miter")zn._mult($n),this.addCurrentVertex(Mt,zn,0,0,qt);else if(Or==="flipbevel"){if($n>100)zn=Sn.mult(-1);else{var Ur=$n*un.add(Sn).mag()/un.sub(Sn).mag();zn._perp()._mult(Ur*(dr?-1:1))}this.addCurrentVertex(Mt,zn,0,0,qt),this.addCurrentVertex(Mt,zn.mult(-1),0,0,qt)}else if(Or==="bevel"||Or==="fakeround"){var Dr=-Math.sqrt($n*$n-1),Lr=dr?Dr:0,Qr=dr?0:Dr;if(Nt&&this.addCurrentVertex(Mt,un,Lr,Qr,qt),Or==="fakeround")for(var Gr=Math.round(180*nr/Math.PI/20),Si=1;Si<Gr;Si++){var jr=Si/Gr;if(jr!==.5){var yi=jr-.5;jr+=jr*yi*(jr-1)*((1.0904+Bn*(Bn*(3.55645-1.43519*Bn)-3.2452))*yi*yi+(.848013+Bn*(.215638*Bn-1.06021)))}var Pi=Sn.sub(un)._mult(jr)._add(un)._unit()._mult(dr?-1:1);this.addHalfVertex(Mt,Pi.x,Pi.y,!1,dr,0,qt)}an&&this.addCurrentVertex(Mt,Sn,-Lr,-Qr,qt)}else if(Or==="butt")this.addCurrentVertex(Mt,zn,0,0,qt);else if(Or==="square"){var Ii=Nt?1:-1;this.addCurrentVertex(Mt,zn,Ii,Ii,qt)}else Or==="round"&&(Nt&&(this.addCurrentVertex(Mt,un,0,0,qt),this.addCurrentVertex(Mt,un,1,1,qt,!0)),an&&(this.addCurrentVertex(Mt,Sn,-1,-1,qt,!0),this.addCurrentVertex(Mt,Sn,0,0,qt)));if(xr&&Mn<ct-1){var Ri=Mt.dist(an);if(Ri>2*Dt){var Ei=Mt.add(an.sub(Mt)._mult(Dt/Ri)._round());this.updateDistance(Mt,Ei),this.addCurrentVertex(Ei,Sn,0,0,qt),Mt=Ei}}}}},Wo.prototype.addCurrentVertex=function(S,F,K,pe,Oe,Fe){Fe===void 0&&(Fe=!1);var Ge=F.x+F.y*K,tt=F.y-F.x*K,ct=-F.x+F.y*pe,kt=-F.y-F.x*pe;this.addHalfVertex(S,Ge,tt,Fe,!1,K,Oe),this.addHalfVertex(S,ct,kt,Fe,!0,-pe,Oe),this.distance>nx/2&&this.totalDistance===0&&(this.distance=0,this.addCurrentVertex(S,F,K,pe,Oe,Fe))},Wo.prototype.addHalfVertex=function(S,F,K,pe,Oe,Fe,Ge){var tt=S.x,ct=S.y,kt=.5*this.scaledDistance;this.layoutVertexArray.emplaceBack((tt<<1)+(pe?1:0),(ct<<1)+(Oe?1:0),Math.round(63*F)+128,Math.round(63*K)+128,1+(Fe===0?0:Fe<0?-1:1)|(63&kt)<<2,kt>>6);var Mt=Ge.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,Mt),Ge.primitiveLength++),Oe?this.e2=Mt:this.e1=Mt},Wo.prototype.updateScaledDistance=function(){this.scaledDistance=this.totalDistance>0?(this.clipStart+(this.clipEnd-this.clipStart)*this.distance/this.totalDistance)*(nx-1):this.distance},Wo.prototype.updateDistance=function(S,F){this.distance+=S.dist(F),this.updateScaledDistance()},Sr("LineBucket",Wo,{omit:["layers","patternFeatures"]});var P4=new va({"line-cap":new Pr(Be.layout_line["line-cap"]),"line-join":new Ir(Be.layout_line["line-join"]),"line-miter-limit":new Pr(Be.layout_line["line-miter-limit"]),"line-round-limit":new Pr(Be.layout_line["line-round-limit"]),"line-sort-key":new Ir(Be.layout_line["line-sort-key"])}),rx={paint:new va({"line-opacity":new Ir(Be.paint_line["line-opacity"]),"line-color":new Ir(Be.paint_line["line-color"]),"line-translate":new Pr(Be.paint_line["line-translate"]),"line-translate-anchor":new Pr(Be.paint_line["line-translate-anchor"]),"line-width":new Ir(Be.paint_line["line-width"]),"line-gap-width":new Ir(Be.paint_line["line-gap-width"]),"line-offset":new Ir(Be.paint_line["line-offset"]),"line-blur":new Ir(Be.paint_line["line-blur"]),"line-dasharray":new Pa(Be.paint_line["line-dasharray"]),"line-pattern":new kl(Be.paint_line["line-pattern"]),"line-gradient":new Os(Be.paint_line["line-gradient"])}),layout:P4},O4=function(S){function F(){S.apply(this,arguments)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.possiblyEvaluate=function(K,pe){return pe=new li(Math.floor(pe.zoom),{now:pe.now,fadeDuration:pe.fadeDuration,zoomHistory:pe.zoomHistory,transition:pe.transition}),S.prototype.possiblyEvaluate.call(this,K,pe)},F.prototype.evaluate=function(K,pe,Oe,Fe){return pe=u({},pe,{zoom:Math.floor(pe.zoom)}),S.prototype.evaluate.call(this,K,pe,Oe,Fe)},F}(Ir),ix=new O4(rx.paint.properties["line-width"].specification);ix.useIntegerZoom=!0;var I4=function(S){function F(K){S.call(this,K,rx)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype._handleSpecialPaintPropertyUpdate=function(K){K==="line-gradient"&&this._updateGradient()},F.prototype._updateGradient=function(){var K=this._transitionablePaint._values["line-gradient"].value.expression;this.gradient=Hy(K,"lineProgress"),this.gradientTexture=null},F.prototype.recalculate=function(K,pe){S.prototype.recalculate.call(this,K,pe),this.paint._values["line-floorwidth"]=ix.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,K)},F.prototype.createBucket=function(K){return new Wo(K)},F.prototype.queryRadius=function(K){var pe=K,Oe=ax(Hh("line-width",this,pe),Hh("line-gap-width",this,pe)),Fe=Hh("line-offset",this,pe);return Oe/2+Math.abs(Fe)+yd(this.paint.get("line-translate"))},F.prototype.queryIntersectsFeature=function(K,pe,Oe,Fe,Ge,tt,ct){var kt=xd(K,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),tt.angle,ct),Mt=ct/2*ax(this.paint.get("line-width").evaluate(pe,Oe),this.paint.get("line-gap-width").evaluate(pe,Oe)),Dt=this.paint.get("line-offset").evaluate(pe,Oe);return Dt&&(Fe=function(qt,Nt){for(var an=[],un=new t(0,0),Sn=0;Sn<qt.length;Sn++){for(var Mn=qt[Sn],zn=[],Bn=0;Bn<Mn.length;Bn++){var Gn=Mn[Bn-1],$n=Mn[Bn],nr=Mn[Bn+1],xr=Bn===0?un:$n.sub(Gn)._unit()._perp(),dr=Bn===Mn.length-1?un:nr.sub($n)._unit()._perp(),kr=xr._add(dr)._unit(),Cr=kr.x*dr.x+kr.y*dr.y;kr._mult(1/Cr),zn.push(kr._mult(Nt)._add($n))}an.push(zn)}return an}(Fe,Dt*ct)),function(qt,Nt,an){for(var un=0;un<Nt.length;un++){var Sn=Nt[un];if(qt.length>=3){for(var Mn=0;Mn<Sn.length;Mn++)if(gc(qt,Sn[Mn]))return!0}if(N1(qt,Sn,an))return!0}return!1}(kt,Fe,Mt)},F.prototype.isTileClipped=function(){return!0},F}(ma);function ax(S,F){return F>0?F+2*S:S}var K1=Qi([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),R4=Qi([{name:"a_projected_pos",components:3,type:"Float32"}],4),z4=(Qi([{name:"a_fade_opacity",components:1,type:"Uint32"}],4),Qi([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"}])),ox=(Qi([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]),Qi([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4)),D4=Qi([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function F4(S,F,K){return S.sections.forEach(function(pe){pe.text=function(Oe,Fe,Ge){var tt=Fe.layout.get("text-transform").evaluate(Ge,{});return tt==="uppercase"?Oe=Oe.toLocaleUpperCase():tt==="lowercase"&&(Oe=Oe.toLocaleLowerCase()),Di.applyArabicShaping&&(Oe=Di.applyArabicShaping(Oe)),Oe}(pe.text,F,K)}),S}Qi([{name:"triangle",components:3,type:"Uint16"}]),Qi([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),Qi([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",components:2,name:"textOffset"},{type:"Float32",name:"collisionCircleDiameter"}]),Qi([{type:"Float32",name:"offsetX"}]),Qi([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]);var $h={"!":"︕","#":"#",$:"$","%":"%","&":"&","(":"︵",")":"︶","*":"*","+":"+",",":"︐","-":"︲",".":"・","/":"/",":":"︓",";":"︔","<":"︿","=":"=",">":"﹀","?":"︖","@":"@","[":"﹇","\\":"\","]":"﹈","^":"^",_:"︳","`":"`","{":"︷","|":"―","}":"︸","~":"~","¢":"¢","£":"£","¥":"¥","¦":"¦","¬":"¬","¯":" ̄","–":"︲","—":"︱","‘":"﹃","’":"﹄","“":"﹁","”":"﹂","…":"︙","‧":"・","₩":"₩","、":"︑","。":"︒","〈":"︿","〉":"﹀","《":"︽","》":"︾","「":"﹁","」":"﹂","『":"﹃","』":"﹄","【":"︻","】":"︼","〔":"︹","〕":"︺","〖":"︗","〗":"︘","!":"︕","(":"︵",")":"︶",",":"︐","-":"︲",".":"・",":":"︓",";":"︔","<":"︿",">":"﹀","?":"︖","[":"﹇","]":"﹈","_":"︳","{":"︷","|":"―","}":"︸","⦅":"︵","⦆":"︶","。":"︒","「":"﹁","」":"﹂"},Za=24,sx=function(S,F,K,pe,Oe){var Fe,Ge,tt=8*Oe-pe-1,ct=(1<<tt)-1,kt=ct>>1,Mt=-7,Dt=K?Oe-1:0,qt=K?-1:1,Nt=S[F+Dt];for(Dt+=qt,Fe=Nt&(1<<-Mt)-1,Nt>>=-Mt,Mt+=tt;Mt>0;Fe=256*Fe+S[F+Dt],Dt+=qt,Mt-=8);for(Ge=Fe&(1<<-Mt)-1,Fe>>=-Mt,Mt+=pe;Mt>0;Ge=256*Ge+S[F+Dt],Dt+=qt,Mt-=8);if(Fe===0)Fe=1-kt;else{if(Fe===ct)return Ge?NaN:1/0*(Nt?-1:1);Ge+=Math.pow(2,pe),Fe-=kt}return(Nt?-1:1)*Ge*Math.pow(2,Fe-pe)},lx=function(S,F,K,pe,Oe,Fe){var Ge,tt,ct,kt=8*Fe-Oe-1,Mt=(1<<kt)-1,Dt=Mt>>1,qt=Oe===23?Math.pow(2,-24)-Math.pow(2,-77):0,Nt=pe?0:Fe-1,an=pe?1:-1,un=F<0||F===0&&1/F<0?1:0;for(F=Math.abs(F),isNaN(F)||F===1/0?(tt=isNaN(F)?1:0,Ge=Mt):(Ge=Math.floor(Math.log(F)/Math.LN2),F*(ct=Math.pow(2,-Ge))<1&&(Ge--,ct*=2),(F+=Ge+Dt>=1?qt/ct:qt*Math.pow(2,1-Dt))*ct>=2&&(Ge++,ct/=2),Ge+Dt>=Mt?(tt=0,Ge=Mt):Ge+Dt>=1?(tt=(F*ct-1)*Math.pow(2,Oe),Ge+=Dt):(tt=F*Math.pow(2,Dt-1)*Math.pow(2,Oe),Ge=0));Oe>=8;S[K+Nt]=255&tt,Nt+=an,tt/=256,Oe-=8);for(Ge=Ge<<Oe|tt,kt+=Oe;kt>0;S[K+Nt]=255&Ge,Nt+=an,Ge/=256,kt-=8);S[K+Nt-an]|=128*un},Md=Li;function Li(S){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(S)?S:new Uint8Array(S||0),this.pos=0,this.type=0,this.length=this.buf.length}Li.Varint=0,Li.Fixed64=1,Li.Bytes=2,Li.Fixed32=5;var J1=4294967296,ux=1/J1,cx=typeof TextDecoder>"u"?null:new TextDecoder("utf8");function Fu(S){return S.type===Li.Bytes?S.readVarint()+S.pos:S.pos+1}function Ff(S,F,K){return K?4294967296*F+(S>>>0):4294967296*(F>>>0)+(S>>>0)}function fx(S,F,K){var pe=F<=16383?1:F<=2097151?2:F<=268435455?3:Math.floor(Math.log(F)/(7*Math.LN2));K.realloc(pe);for(var Oe=K.pos-1;Oe>=S;Oe--)K.buf[Oe+pe]=K.buf[Oe]}function B4(S,F){for(var K=0;K<S.length;K++)F.writeVarint(S[K])}function N4(S,F){for(var K=0;K<S.length;K++)F.writeSVarint(S[K])}function j4(S,F){for(var K=0;K<S.length;K++)F.writeFloat(S[K])}function U4(S,F){for(var K=0;K<S.length;K++)F.writeDouble(S[K])}function V4(S,F){for(var K=0;K<S.length;K++)F.writeBoolean(S[K])}function H4(S,F){for(var K=0;K<S.length;K++)F.writeFixed32(S[K])}function q4(S,F){for(var K=0;K<S.length;K++)F.writeSFixed32(S[K])}function G4(S,F){for(var K=0;K<S.length;K++)F.writeFixed64(S[K])}function W4(S,F){for(var K=0;K<S.length;K++)F.writeSFixed64(S[K])}function Sd(S,F){return(S[F]|S[F+1]<<8|S[F+2]<<16)+16777216*S[F+3]}function Bf(S,F,K){S[K]=F,S[K+1]=F>>>8,S[K+2]=F>>>16,S[K+3]=F>>>24}function hx(S,F){return(S[F]|S[F+1]<<8|S[F+2]<<16)+(S[F+3]<<24)}Li.prototype={destroy:function(){this.buf=null},readFields:function(S,F,K){for(K=K||this.length;this.pos<K;){var pe=this.readVarint(),Oe=pe>>3,Fe=this.pos;this.type=7&pe,S(Oe,F,this),this.pos===Fe&&this.skip(pe)}return F},readMessage:function(S,F){return this.readFields(S,F,this.readVarint()+this.pos)},readFixed32:function(){var S=Sd(this.buf,this.pos);return this.pos+=4,S},readSFixed32:function(){var S=hx(this.buf,this.pos);return this.pos+=4,S},readFixed64:function(){var S=Sd(this.buf,this.pos)+Sd(this.buf,this.pos+4)*J1;return this.pos+=8,S},readSFixed64:function(){var S=Sd(this.buf,this.pos)+hx(this.buf,this.pos+4)*J1;return this.pos+=8,S},readFloat:function(){var S=sx(this.buf,this.pos,!0,23,4);return this.pos+=4,S},readDouble:function(){var S=sx(this.buf,this.pos,!0,52,8);return this.pos+=8,S},readVarint:function(S){var F,K,pe=this.buf;return F=127&(K=pe[this.pos++]),K<128?F:(F|=(127&(K=pe[this.pos++]))<<7,K<128?F:(F|=(127&(K=pe[this.pos++]))<<14,K<128?F:(F|=(127&(K=pe[this.pos++]))<<21,K<128?F:function(Oe,Fe,Ge){var tt,ct,kt=Ge.buf;if(tt=(112&(ct=kt[Ge.pos++]))>>4,ct<128||(tt|=(127&(ct=kt[Ge.pos++]))<<3,ct<128)||(tt|=(127&(ct=kt[Ge.pos++]))<<10,ct<128)||(tt|=(127&(ct=kt[Ge.pos++]))<<17,ct<128)||(tt|=(127&(ct=kt[Ge.pos++]))<<24,ct<128)||(tt|=(1&(ct=kt[Ge.pos++]))<<31,ct<128))return Ff(Oe,tt,Fe);throw new Error("Expected varint not more than 10 bytes")}(F|=(15&(K=pe[this.pos]))<<28,S,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var S=this.readVarint();return S%2==1?(S+1)/-2:S/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var S=this.readVarint()+this.pos,F=this.pos;return this.pos=S,S-F>=12&&cx?function(K,pe,Oe){return cx.decode(K.subarray(pe,Oe))}(this.buf,F,S):function(K,pe,Oe){for(var Fe="",Ge=pe;Ge<Oe;){var tt,ct,kt,Mt=K[Ge],Dt=null,qt=Mt>239?4:Mt>223?3:Mt>191?2:1;if(Ge+qt>Oe)break;qt===1?Mt<128&&(Dt=Mt):qt===2?(192&(tt=K[Ge+1]))==128&&(Dt=(31&Mt)<<6|63&tt)<=127&&(Dt=null):qt===3?(tt=K[Ge+1],ct=K[Ge+2],(192&tt)==128&&(192&ct)==128&&((Dt=(15&Mt)<<12|(63&tt)<<6|63&ct)<=2047||Dt>=55296&&Dt<=57343)&&(Dt=null)):qt===4&&(tt=K[Ge+1],ct=K[Ge+2],kt=K[Ge+3],(192&tt)==128&&(192&ct)==128&&(192&kt)==128&&((Dt=(15&Mt)<<18|(63&tt)<<12|(63&ct)<<6|63&kt)<=65535||Dt>=1114112)&&(Dt=null)),Dt===null?(Dt=65533,qt=1):Dt>65535&&(Dt-=65536,Fe+=String.fromCharCode(Dt>>>10&1023|55296),Dt=56320|1023&Dt),Fe+=String.fromCharCode(Dt),Ge+=qt}return Fe}(this.buf,F,S)},readBytes:function(){var S=this.readVarint()+this.pos,F=this.buf.subarray(this.pos,S);return this.pos=S,F},readPackedVarint:function(S,F){if(this.type!==Li.Bytes)return S.push(this.readVarint(F));var K=Fu(this);for(S=S||[];this.pos<K;)S.push(this.readVarint(F));return S},readPackedSVarint:function(S){if(this.type!==Li.Bytes)return S.push(this.readSVarint());var F=Fu(this);for(S=S||[];this.pos<F;)S.push(this.readSVarint());return S},readPackedBoolean:function(S){if(this.type!==Li.Bytes)return S.push(this.readBoolean());var F=Fu(this);for(S=S||[];this.pos<F;)S.push(this.readBoolean());return S},readPackedFloat:function(S){if(this.type!==Li.Bytes)return S.push(this.readFloat());var F=Fu(this);for(S=S||[];this.pos<F;)S.push(this.readFloat());return S},readPackedDouble:function(S){if(this.type!==Li.Bytes)return S.push(this.readDouble());var F=Fu(this);for(S=S||[];this.pos<F;)S.push(this.readDouble());return S},readPackedFixed32:function(S){if(this.type!==Li.Bytes)return S.push(this.readFixed32());var F=Fu(this);for(S=S||[];this.pos<F;)S.push(this.readFixed32());return S},readPackedSFixed32:function(S){if(this.type!==Li.Bytes)return S.push(this.readSFixed32());var F=Fu(this);for(S=S||[];this.pos<F;)S.push(this.readSFixed32());return S},readPackedFixed64:function(S){if(this.type!==Li.Bytes)return S.push(this.readFixed64());var F=Fu(this);for(S=S||[];this.pos<F;)S.push(this.readFixed64());return S},readPackedSFixed64:function(S){if(this.type!==Li.Bytes)return S.push(this.readSFixed64());var F=Fu(this);for(S=S||[];this.pos<F;)S.push(this.readSFixed64());return S},skip:function(S){var F=7&S;if(F===Li.Varint)for(;this.buf[this.pos++]>127;);else if(F===Li.Bytes)this.pos=this.readVarint()+this.pos;else if(F===Li.Fixed32)this.pos+=4;else{if(F!==Li.Fixed64)throw new Error("Unimplemented type: "+F);this.pos+=8}},writeTag:function(S,F){this.writeVarint(S<<3|F)},realloc:function(S){for(var F=this.length||16;F<this.pos+S;)F*=2;if(F!==this.length){var K=new Uint8Array(F);K.set(this.buf),this.buf=K,this.length=F}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(S){this.realloc(4),Bf(this.buf,S,this.pos),this.pos+=4},writeSFixed32:function(S){this.realloc(4),Bf(this.buf,S,this.pos),this.pos+=4},writeFixed64:function(S){this.realloc(8),Bf(this.buf,-1&S,this.pos),Bf(this.buf,Math.floor(S*ux),this.pos+4),this.pos+=8},writeSFixed64:function(S){this.realloc(8),Bf(this.buf,-1&S,this.pos),Bf(this.buf,Math.floor(S*ux),this.pos+4),this.pos+=8},writeVarint:function(S){(S=+S||0)>268435455||S<0?function(F,K){var pe,Oe;if(F>=0?(pe=F%4294967296|0,Oe=F/4294967296|0):(Oe=~(-F/4294967296),4294967295^(pe=~(-F%4294967296))?pe=pe+1|0:(pe=0,Oe=Oe+1|0)),F>=18446744073709552e3||F<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");K.realloc(10),function(Fe,Ge,tt){tt.buf[tt.pos++]=127&Fe|128,Fe>>>=7,tt.buf[tt.pos++]=127&Fe|128,Fe>>>=7,tt.buf[tt.pos++]=127&Fe|128,Fe>>>=7,tt.buf[tt.pos++]=127&Fe|128,Fe>>>=7,tt.buf[tt.pos]=127&Fe}(pe,0,K),function(Fe,Ge){var tt=(7&Fe)<<4;Ge.buf[Ge.pos++]|=tt|((Fe>>>=3)?128:0),Fe&&(Ge.buf[Ge.pos++]=127&Fe|((Fe>>>=7)?128:0),Fe&&(Ge.buf[Ge.pos++]=127&Fe|((Fe>>>=7)?128:0),Fe&&(Ge.buf[Ge.pos++]=127&Fe|((Fe>>>=7)?128:0),Fe&&(Ge.buf[Ge.pos++]=127&Fe|((Fe>>>=7)?128:0),Fe&&(Ge.buf[Ge.pos++]=127&Fe)))))}(Oe,K)}(S,this):(this.realloc(4),this.buf[this.pos++]=127&S|(S>127?128:0),S<=127||(this.buf[this.pos++]=127&(S>>>=7)|(S>127?128:0),S<=127||(this.buf[this.pos++]=127&(S>>>=7)|(S>127?128:0),S<=127||(this.buf[this.pos++]=S>>>7&127))))},writeSVarint:function(S){this.writeVarint(S<0?2*-S-1:2*S)},writeBoolean:function(S){this.writeVarint(!!S)},writeString:function(S){S=String(S),this.realloc(4*S.length),this.pos++;var F=this.pos;this.pos=function(pe,Oe,Fe){for(var Ge,tt,ct=0;ct<Oe.length;ct++){if((Ge=Oe.charCodeAt(ct))>55295&&Ge<57344){if(!tt){Ge>56319||ct+1===Oe.length?(pe[Fe++]=239,pe[Fe++]=191,pe[Fe++]=189):tt=Ge;continue}if(Ge<56320){pe[Fe++]=239,pe[Fe++]=191,pe[Fe++]=189,tt=Ge;continue}Ge=tt-55296<<10|Ge-56320|65536,tt=null}else tt&&(pe[Fe++]=239,pe[Fe++]=191,pe[Fe++]=189,tt=null);Ge<128?pe[Fe++]=Ge:(Ge<2048?pe[Fe++]=Ge>>6|192:(Ge<65536?pe[Fe++]=Ge>>12|224:(pe[Fe++]=Ge>>18|240,pe[Fe++]=Ge>>12&63|128),pe[Fe++]=Ge>>6&63|128),pe[Fe++]=63&Ge|128)}return Fe}(this.buf,S,this.pos);var K=this.pos-F;K>=128&&fx(F,K,this),this.pos=F-1,this.writeVarint(K),this.pos+=K},writeFloat:function(S){this.realloc(4),lx(this.buf,S,this.pos,!0,23,4),this.pos+=4},writeDouble:function(S){this.realloc(8),lx(this.buf,S,this.pos,!0,52,8),this.pos+=8},writeBytes:function(S){var F=S.length;this.writeVarint(F),this.realloc(F);for(var K=0;K<F;K++)this.buf[this.pos++]=S[K]},writeRawMessage:function(S,F){this.pos++;var K=this.pos;S(F,this);var pe=this.pos-K;pe>=128&&fx(K,pe,this),this.pos=K-1,this.writeVarint(pe),this.pos+=pe},writeMessage:function(S,F,K){this.writeTag(S,Li.Bytes),this.writeRawMessage(F,K)},writePackedVarint:function(S,F){F.length&&this.writeMessage(S,B4,F)},writePackedSVarint:function(S,F){F.length&&this.writeMessage(S,N4,F)},writePackedBoolean:function(S,F){F.length&&this.writeMessage(S,V4,F)},writePackedFloat:function(S,F){F.length&&this.writeMessage(S,j4,F)},writePackedDouble:function(S,F){F.length&&this.writeMessage(S,U4,F)},writePackedFixed32:function(S,F){F.length&&this.writeMessage(S,H4,F)},writePackedSFixed32:function(S,F){F.length&&this.writeMessage(S,q4,F)},writePackedFixed64:function(S,F){F.length&&this.writeMessage(S,G4,F)},writePackedSFixed64:function(S,F){F.length&&this.writeMessage(S,W4,F)},writeBytesField:function(S,F){this.writeTag(S,Li.Bytes),this.writeBytes(F)},writeFixed32Field:function(S,F){this.writeTag(S,Li.Fixed32),this.writeFixed32(F)},writeSFixed32Field:function(S,F){this.writeTag(S,Li.Fixed32),this.writeSFixed32(F)},writeFixed64Field:function(S,F){this.writeTag(S,Li.Fixed64),this.writeFixed64(F)},writeSFixed64Field:function(S,F){this.writeTag(S,Li.Fixed64),this.writeSFixed64(F)},writeVarintField:function(S,F){this.writeTag(S,Li.Varint),this.writeVarint(F)},writeSVarintField:function(S,F){this.writeTag(S,Li.Varint),this.writeSVarint(F)},writeStringField:function(S,F){this.writeTag(S,Li.Bytes),this.writeString(F)},writeFloatField:function(S,F){this.writeTag(S,Li.Fixed32),this.writeFloat(F)},writeDoubleField:function(S,F){this.writeTag(S,Li.Fixed64),this.writeDouble(F)},writeBooleanField:function(S,F){this.writeVarintField(S,!!F)}};var Q1=3;function Z4(S,F,K){S===1&&K.readMessage(Y4,F)}function Y4(S,F,K){if(S===3){var pe=K.readMessage(X4,{}),Oe=pe.id,Fe=pe.bitmap,Ge=pe.width,tt=pe.height,ct=pe.left,kt=pe.top,Mt=pe.advance;F.push({id:Oe,bitmap:new Jc({width:Ge+2*Q1,height:tt+2*Q1},Fe),metrics:{width:Ge,height:tt,left:ct,top:kt,advance:Mt}})}}function X4(S,F,K){S===1?F.id=K.readVarint():S===2?F.bitmap=K.readBytes():S===3?F.width=K.readVarint():S===4?F.height=K.readVarint():S===5?F.left=K.readSVarint():S===6?F.top=K.readSVarint():S===7&&(F.advance=K.readVarint())}var px=Q1;function dx(S){for(var F=0,K=0,pe=0,Oe=S;pe<Oe.length;pe+=1){var Fe=Oe[pe];F+=Fe.w*Fe.h,K=Math.max(K,Fe.w)}S.sort(function(un,Sn){return Sn.h-un.h});for(var Ge=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(F/.95)),K),h:1/0}],tt=0,ct=0,kt=0,Mt=S;kt<Mt.length;kt+=1)for(var Dt=Mt[kt],qt=Ge.length-1;qt>=0;qt--){var Nt=Ge[qt];if(!(Dt.w>Nt.w||Dt.h>Nt.h)){if(Dt.x=Nt.x,Dt.y=Nt.y,ct=Math.max(ct,Dt.y+Dt.h),tt=Math.max(tt,Dt.x+Dt.w),Dt.w===Nt.w&&Dt.h===Nt.h){var an=Ge.pop();qt<Ge.length&&(Ge[qt]=an)}else Dt.h===Nt.h?(Nt.x+=Dt.w,Nt.w-=Dt.w):Dt.w===Nt.w?(Nt.y+=Dt.h,Nt.h-=Dt.h):(Ge.push({x:Nt.x+Dt.w,y:Nt.y,w:Nt.w-Dt.w,h:Dt.h}),Nt.y+=Dt.h,Nt.h-=Dt.h);break}}return{w:tt,h:ct,fill:F/(tt*ct)||0}}var cs=1,Ed=function(S,F){var K=F.pixelRatio,pe=F.version,Oe=F.stretchX,Fe=F.stretchY,Ge=F.content;this.paddedRect=S,this.pixelRatio=K,this.stretchX=Oe,this.stretchY=Fe,this.content=Ge,this.version=pe},Kh={tl:{configurable:!0},br:{configurable:!0},tlbr:{configurable:!0},displaySize:{configurable:!0}};Kh.tl.get=function(){return[this.paddedRect.x+cs,this.paddedRect.y+cs]},Kh.br.get=function(){return[this.paddedRect.x+this.paddedRect.w-cs,this.paddedRect.y+this.paddedRect.h-cs]},Kh.tlbr.get=function(){return this.tl.concat(this.br)},Kh.displaySize.get=function(){return[(this.paddedRect.w-2*cs)/this.pixelRatio,(this.paddedRect.h-2*cs)/this.pixelRatio]},Object.defineProperties(Ed.prototype,Kh);var Jh=function(S,F){var K={},pe={};this.haveRenderCallbacks=[];var Oe=[];this.addImages(S,K,Oe),this.addImages(F,pe,Oe);var Fe=dx(Oe),Ge=Fe.w,tt=Fe.h,ct=new Go({width:Ge||1,height:tt||1});for(var kt in S){var Mt=S[kt],Dt=K[kt].paddedRect;Go.copy(Mt.data,ct,{x:0,y:0},{x:Dt.x+cs,y:Dt.y+cs},Mt.data)}for(var qt in F){var Nt=F[qt],an=pe[qt].paddedRect,un=an.x+cs,Sn=an.y+cs,Mn=Nt.data.width,zn=Nt.data.height;Go.copy(Nt.data,ct,{x:0,y:0},{x:un,y:Sn},Nt.data),Go.copy(Nt.data,ct,{x:0,y:zn-1},{x:un,y:Sn-1},{width:Mn,height:1}),Go.copy(Nt.data,ct,{x:0,y:0},{x:un,y:Sn+zn},{width:Mn,height:1}),Go.copy(Nt.data,ct,{x:Mn-1,y:0},{x:un-1,y:Sn},{width:1,height:zn}),Go.copy(Nt.data,ct,{x:0,y:0},{x:un+Mn,y:Sn},{width:1,height:zn})}this.image=ct,this.iconPositions=K,this.patternPositions=pe};Jh.prototype.addImages=function(S,F,K){for(var pe in S){var Oe=S[pe],Fe={x:0,y:0,w:Oe.data.width+2*cs,h:Oe.data.height+2*cs};K.push(Fe),F[pe]=new Ed(Fe,Oe),Oe.hasRenderCallback&&this.haveRenderCallbacks.push(pe)}},Jh.prototype.patchUpdatedImages=function(S,F){for(var K in S.dispatchRenderCallbacks(this.haveRenderCallbacks),S.updatedImages)this.patchUpdatedImage(this.iconPositions[K],S.getImage(K),F),this.patchUpdatedImage(this.patternPositions[K],S.getImage(K),F)},Jh.prototype.patchUpdatedImage=function(S,F,K){if(S&&F&&S.version!==F.version){S.version=F.version;var pe=S.tl,Oe=pe[0],Fe=pe[1];K.update(F.data,void 0,{x:Oe,y:Fe})}},Sr("ImagePosition",Ed),Sr("ImageAtlas",Jh);var Ds={horizontal:1,vertical:2,horizontalOnly:3},Qh=-17,Nf=function(){this.scale=1,this.fontStack="",this.imageName=null};Nf.forText=function(S,F){var K=new Nf;return K.scale=S||1,K.fontStack=F,K},Nf.forImage=function(S){var F=new Nf;return F.imageName=S,F};var po=function(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null};function Cd(S,F,K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt,qt,Nt,an,un){var Sn,Mn=po.fromFeature(S,Oe);Dt===Ds.vertical&&Mn.verticalizePunctuation();var zn=Di.processBidirectionalText,Bn=Di.processStyledBidirectionalText;if(zn&&Mn.sections.length===1){Sn=[];for(var Gn=0,$n=zn(Mn.toString(),eg(Mn,kt,Fe,F,pe,Nt,an));Gn<$n.length;Gn+=1){var nr=$n[Gn],xr=new po;xr.text=nr,xr.sections=Mn.sections;for(var dr=0;dr<nr.length;dr++)xr.sectionIndex.push(0);Sn.push(xr)}}else if(Bn){Sn=[];for(var kr=0,Cr=Bn(Mn.text,Mn.sectionIndex,eg(Mn,kt,Fe,F,pe,Nt,an));kr<Cr.length;kr+=1){var Hr=Cr[kr],Or=new po;Or.text=Hr[0],Or.sectionIndex=Hr[1],Or.sections=Mn.sections,Sn.push(Or)}}else Sn=function(Lr,Qr){for(var Gr=[],Si=Lr.text,jr=0,yi=0,Pi=Qr;yi<Pi.length;yi+=1){var Ii=Pi[yi];Gr.push(Lr.substring(jr,Ii)),jr=Ii}return jr<Si.length&&Gr.push(Lr.substring(jr,Si.length)),Gr}(Mn,eg(Mn,kt,Fe,F,pe,Nt,an));var Ur=[],Dr={positionedLines:Ur,text:Mn.toString(),top:Mt[1],bottom:Mt[1],left:Mt[0],right:Mt[0],writingMode:Dt,iconsInText:!1,verticalizable:!1};return function(Lr,Qr,Gr,Si,jr,yi,Pi,Ii,Ri,Ei,Aa,Hi){for(var Fa=0,ro=Qh,Ya=0,So=0,Xa=Ii==="right"?1:Ii==="left"?0:.5,Oa=0,$a=0,Ba=jr;$a<Ba.length;$a+=1){var Ia=Ba[$a];Ia.trim();var Wr=Ia.getMaxScale(),ri=(Wr-1)*Za,ta={positionedGlyphs:[],lineOffset:0};Lr.positionedLines[Oa]=ta;var ki=ta.positionedGlyphs,Zi=0;if(Ia.length()){for(var Ni=0;Ni<Ia.length();Ni++){var ui=Ia.getSection(Ni),na=Ia.getSectionIndex(Ni),Eo=Ia.getCharCode(Ni),hs=0,go=null,Xl=null,ju=null,Na=Za,$l=!(Ri===Ds.horizontal||!Aa&&!_l(Eo)||Aa&&(Ld[Eo]||_a(Eo)));if(ui.imageName){var Ml=Si[ui.imageName];if(!Ml)continue;ju=ui.imageName,Lr.iconsInText=Lr.iconsInText||!0,Xl=Ml.paddedRect;var Sl=Ml.displaySize;ui.scale=ui.scale*Za/Hi,go={width:Sl[0],height:Sl[1],left:cs,top:-px,advance:$l?Sl[1]:Sl[0]},hs=ri+(Za-Sl[1]*ui.scale),Na=go.advance;var nf=$l?Sl[0]*ui.scale-Za*Wr:Sl[1]*ui.scale-Za*Wr;nf>0&&nf>Zi&&(Zi=nf)}else{var Nd=Gr[ui.fontStack],rf=Nd&&Nd[Eo];if(rf&&rf.rect)Xl=rf.rect,go=rf.metrics;else{var jd=Qr[ui.fontStack],rp=jd&&jd[Eo];if(!rp)continue;go=rp.metrics}hs=(Wr-ui.scale)*Za}$l?(Lr.verticalizable=!0,ki.push({glyph:Eo,imageName:ju,x:Fa,y:ro+hs,vertical:$l,scale:ui.scale,fontStack:ui.fontStack,sectionIndex:na,metrics:go,rect:Xl}),Fa+=Na*ui.scale+Ei):(ki.push({glyph:Eo,imageName:ju,x:Fa,y:ro+hs,vertical:$l,scale:ui.scale,fontStack:ui.fontStack,sectionIndex:na,metrics:go,rect:Xl}),Fa+=go.advance*ui.scale+Ei)}if(ki.length!==0){var cg=Fa-Ei;Ya=Math.max(cg,Ya),K4(ki,0,ki.length-1,Xa,Zi)}Fa=0;var Ud=yi*Wr+Zi;ta.lineOffset=Math.max(Zi,ri),ro+=Ud,So=Math.max(Ud,So),++Oa}else ro+=yi,++Oa}var Xf=ro-Qh,Vd=tg(Pi),Hd=Vd.horizontalAlign,ip=Vd.verticalAlign;(function(fg,ap,af,$f,qd,Gd,Kf,Wd,Zd){var op=(ap-af)*qd,sp=0;sp=Gd!==Kf?-Wd*$f-Qh:(-$f*Zd+.5)*Kf;for(var of=0,lp=fg;of<lp.length;of+=1)for(var sf=0,up=lp[of].positionedGlyphs;sf<up.length;sf+=1){var cp=up[sf];cp.x+=op,cp.y+=sp}})(Lr.positionedLines,Xa,Hd,ip,Ya,So,yi,Xf,jr.length),Lr.top+=-ip*Xf,Lr.bottom=Lr.top+Xf,Lr.left+=-Hd*Ya,Lr.right=Lr.left+Ya}(Dr,F,K,pe,Sn,Ge,tt,ct,Dt,kt,qt,un),!function(Lr){for(var Qr=0,Gr=Lr;Qr<Gr.length;Qr+=1)if(Gr[Qr].positionedGlyphs.length!==0)return!1;return!0}(Ur)&&Dr}po.fromFeature=function(S,F){for(var K=new po,pe=0;pe<S.sections.length;pe++){var Oe=S.sections[pe];Oe.image?K.addImageSection(Oe):K.addTextSection(Oe,F)}return K},po.prototype.length=function(){return this.text.length},po.prototype.getSection=function(S){return this.sections[this.sectionIndex[S]]},po.prototype.getSectionIndex=function(S){return this.sectionIndex[S]},po.prototype.getCharCode=function(S){return this.text.charCodeAt(S)},po.prototype.verticalizePunctuation=function(){this.text=function(S){for(var F="",K=0;K<S.length;K++){var pe=S.charCodeAt(K+1)||null,Oe=S.charCodeAt(K-1)||null;pe&&ql(pe)&&!$h[S[K+1]]||Oe&&ql(Oe)&&!$h[S[K-1]]||!$h[S[K]]?F+=S[K]:F+=$h[S[K]]}return F}(this.text)},po.prototype.trim=function(){for(var S=0,F=0;F<this.text.length&&Ld[this.text.charCodeAt(F)];F++)S++;for(var K=this.text.length,pe=this.text.length-1;pe>=0&&pe>=S&&Ld[this.text.charCodeAt(pe)];pe--)K--;this.text=this.text.substring(S,K),this.sectionIndex=this.sectionIndex.slice(S,K)},po.prototype.substring=function(S,F){var K=new po;return K.text=this.text.substring(S,F),K.sectionIndex=this.sectionIndex.slice(S,F),K.sections=this.sections,K},po.prototype.toString=function(){return this.text},po.prototype.getMaxScale=function(){var S=this;return this.sectionIndex.reduce(function(F,K){return Math.max(F,S.sections[K].scale)},0)},po.prototype.addTextSection=function(S,F){this.text+=S.text,this.sections.push(Nf.forText(S.scale,S.fontStack||F));for(var K=this.sections.length-1,pe=0;pe<S.text.length;++pe)this.sectionIndex.push(K)},po.prototype.addImageSection=function(S){var F=S.image?S.image.name:"";if(F.length!==0){var K=this.getNextImageSectionCharCode();K?(this.text+=String.fromCharCode(K),this.sections.push(Nf.forImage(F)),this.sectionIndex.push(this.sections.length-1)):M("Reached maximum number of images 6401")}else M("Can't add FormattedSection with an empty image.")},po.prototype.getNextImageSectionCharCode=function(){return this.imageSectionID?this.imageSectionID>=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)};var Ld={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},fs={};function gx(S,F,K,pe,Oe,Fe){if(F.imageName){var Ge=pe[F.imageName];return Ge?Ge.displaySize[0]*F.scale*Za/Fe+Oe:0}var tt=K[F.fontStack],ct=tt&&tt[S];return ct?ct.metrics.advance*F.scale+Oe:0}function vx(S,F,K,pe){var Oe=Math.pow(S-F,2);return pe?S<F?Oe/2:2*Oe:Oe+Math.abs(K)*K}function $4(S,F,K){var pe=0;return S===10&&(pe-=1e4),K&&(pe+=150),S!==40&&S!==65288||(pe+=50),F!==41&&F!==65289||(pe+=50),pe}function mx(S,F,K,pe,Oe,Fe){for(var Ge=null,tt=vx(F,K,Oe,Fe),ct=0,kt=pe;ct<kt.length;ct+=1){var Mt=kt[ct],Dt=vx(F-Mt.x,K,Oe,Fe)+Mt.badness;Dt<=tt&&(Ge=Mt,tt=Dt)}return{index:S,x:F,priorBreak:Ge,badness:tt}}function yx(S){return S?yx(S.priorBreak).concat(S.index):[]}function eg(S,F,K,pe,Oe,Fe,Ge){if(Fe!=="point")return[];if(!S)return[];for(var tt=[],ct=function(Sn,Mn,zn,Bn,Gn,$n){for(var nr=0,xr=0;xr<Sn.length();xr++){var dr=Sn.getSection(xr);nr+=gx(Sn.getCharCode(xr),dr,Bn,Gn,Mn,$n)}return nr/Math.max(1,Math.ceil(nr/zn))}(S,F,K,pe,Oe,Ge),kt=S.text.indexOf("")>=0,Mt=0,Dt=0;Dt<S.length();Dt++){var qt=S.getSection(Dt),Nt=S.getCharCode(Dt);if(Ld[Nt]||(Mt+=gx(Nt,qt,pe,Oe,F,Ge)),Dt<S.length()-1){var an=!((un=Nt)<11904||!(Tr["Bopomofo Extended"](un)||Tr.Bopomofo(un)||Tr["CJK Compatibility Forms"](un)||Tr["CJK Compatibility Ideographs"](un)||Tr["CJK Compatibility"](un)||Tr["CJK Radicals Supplement"](un)||Tr["CJK Strokes"](un)||Tr["CJK Symbols and Punctuation"](un)||Tr["CJK Unified Ideographs Extension A"](un)||Tr["CJK Unified Ideographs"](un)||Tr["Enclosed CJK Letters and Months"](un)||Tr["Halfwidth and Fullwidth Forms"](un)||Tr.Hiragana(un)||Tr["Ideographic Description Characters"](un)||Tr["Kangxi Radicals"](un)||Tr["Katakana Phonetic Extensions"](un)||Tr.Katakana(un)||Tr["Vertical Forms"](un)||Tr["Yi Radicals"](un)||Tr["Yi Syllables"](un)));(fs[Nt]||an||qt.imageName)&&tt.push(mx(Dt+1,Mt,ct,tt,$4(Nt,S.getCharCode(Dt+1),an&&kt),!1))}}var un;return yx(mx(S.length(),Mt,ct,tt,0,!0))}function tg(S){var F=.5,K=.5;switch(S){case"right":case"top-right":case"bottom-right":F=1;break;case"left":case"top-left":case"bottom-left":F=0}switch(S){case"bottom":case"bottom-right":case"bottom-left":K=1;break;case"top":case"top-right":case"top-left":K=0}return{horizontalAlign:F,verticalAlign:K}}function K4(S,F,K,pe,Oe){if(pe||Oe)for(var Fe=S[K],Ge=Fe.metrics.advance*Fe.scale,tt=(S[K].x+Ge)*pe,ct=F;ct<=K;ct++)S[ct].x-=tt,S[ct].y+=Oe}function xx(S,F,K,pe,Oe,Fe){var Ge,tt=S.image;if(tt.content){var ct=tt.content,kt=tt.pixelRatio||1;Ge=[ct[0]/kt,ct[1]/kt,tt.displaySize[0]-ct[2]/kt,tt.displaySize[1]-ct[3]/kt]}var Mt,Dt,qt,Nt,an=F.left*Fe,un=F.right*Fe;K==="width"||K==="both"?(Nt=Oe[0]+an-pe[3],Dt=Oe[0]+un+pe[1]):Dt=(Nt=Oe[0]+(an+un-tt.displaySize[0])/2)+tt.displaySize[0];var Sn=F.top*Fe,Mn=F.bottom*Fe;return K==="height"||K==="both"?(Mt=Oe[1]+Sn-pe[0],qt=Oe[1]+Mn+pe[2]):qt=(Mt=Oe[1]+(Sn+Mn-tt.displaySize[1])/2)+tt.displaySize[1],{image:tt,top:Mt,right:Dt,bottom:qt,left:Nt,collisionPadding:Ge}}fs[10]=!0,fs[32]=!0,fs[38]=!0,fs[40]=!0,fs[41]=!0,fs[43]=!0,fs[45]=!0,fs[47]=!0,fs[173]=!0,fs[183]=!0,fs[8203]=!0,fs[8208]=!0,fs[8211]=!0,fs[8231]=!0;var jf=function(S){function F(K,pe,Oe,Fe){S.call(this,K,pe),this.angle=Oe,Fe!==void 0&&(this.segment=Fe)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.clone=function(){return new F(this.x,this.y,this.angle,this.segment)},F}(t);Sr("Anchor",jf);var Yl=128;function ng(S,F){var K=F.expression;if(K.kind==="constant")return{kind:"constant",layoutSize:K.evaluate(new li(S+1))};if(K.kind==="source")return{kind:"source"};for(var pe=K.zoomStops,Oe=K.interpolationType,Fe=0;Fe<pe.length&&pe[Fe]<=S;)Fe++;for(var Ge=Fe=Math.max(0,Fe-1);Ge<pe.length&&pe[Ge]<S+1;)Ge++;Ge=Math.min(pe.length-1,Ge);var tt=pe[Fe],ct=pe[Ge];return K.kind==="composite"?{kind:"composite",minZoom:tt,maxZoom:ct,interpolationType:Oe}:{kind:"camera",minZoom:tt,maxZoom:ct,minSize:K.evaluate(new li(tt)),maxSize:K.evaluate(new li(ct)),interpolationType:Oe}}function bx(S,F,K){var pe=F.uSize,Oe=F.uSizeT,Fe=K.lowerSize,Ge=K.upperSize;return S.kind==="source"?Fe/Yl:S.kind==="composite"?Jn(Fe/Yl,Ge/Yl,Oe):pe}function _x(S,F){var K=0,pe=0;if(S.kind==="constant")pe=S.layoutSize;else if(S.kind!=="source"){var Oe=S.interpolationType,Fe=S.minZoom,Ge=S.maxZoom,tt=Oe?a(qi.interpolationFactor(Oe,F,Fe,Ge),0,1):0;S.kind==="camera"?pe=Jn(S.minSize,S.maxSize,tt):K=tt}return{uSizeT:K,uSize:pe}}var J4=Object.freeze({__proto__:null,getSizeData:ng,evaluateSizeForFeature:bx,evaluateSizeForZoom:_x,SIZE_PACK_FACTOR:Yl});function wx(S,F,K,pe,Oe){if(F.segment===void 0)return!0;for(var Fe=F,Ge=F.segment+1,tt=0;tt>-K/2;){if(--Ge<0)return!1;tt-=S[Ge].dist(Fe),Fe=S[Ge]}tt+=S[Ge].dist(S[Ge+1]),Ge++;for(var ct=[],kt=0;tt<K/2;){var Mt=S[Ge-1],Dt=S[Ge],qt=S[Ge+1];if(!qt)return!1;var Nt=Mt.angleTo(Dt)-Dt.angleTo(qt);for(Nt=Math.abs((Nt+3*Math.PI)%(2*Math.PI)-Math.PI),ct.push({distance:tt,angleDelta:Nt}),kt+=Nt;tt-ct[0].distance>pe;)kt-=ct.shift().angleDelta;if(kt>Oe)return!1;Ge++,tt+=Dt.dist(qt)}return!0}function kx(S){for(var F=0,K=0;K<S.length-1;K++)F+=S[K].dist(S[K+1]);return F}function Tx(S,F,K){return S?.6*F*K:0}function Ax(S,F){return Math.max(S?S.right-S.left:0,F?F.right-F.left:0)}function Q4(S,F,K,pe,Oe,Fe){for(var Ge=Tx(K,Oe,Fe),tt=Ax(K,pe)*Fe,ct=0,kt=kx(S)/2,Mt=0;Mt<S.length-1;Mt++){var Dt=S[Mt],qt=S[Mt+1],Nt=Dt.dist(qt);if(ct+Nt>kt){var an=(kt-ct)/Nt,un=Jn(Dt.x,qt.x,an),Sn=Jn(Dt.y,qt.y,an),Mn=new jf(un,Sn,qt.angleTo(Dt),Mt);return Mn._round(),!Ge||wx(S,Mn,tt,Ge,F)?Mn:void 0}ct+=Nt}}function e6(S,F,K,pe,Oe,Fe,Ge,tt,ct){var kt=Tx(pe,Fe,Ge),Mt=Ax(pe,Oe),Dt=Mt*Ge,qt=S[0].x===0||S[0].x===ct||S[0].y===0||S[0].y===ct;return F-Dt<F/4&&(F=Dt+F/4),Mx(S,qt?F/2*tt%F:(Mt/2+2*Fe)*Ge*tt%F,F,kt,K,Dt,qt,!1,ct)}function Mx(S,F,K,pe,Oe,Fe,Ge,tt,ct){for(var kt=Fe/2,Mt=kx(S),Dt=0,qt=F-K,Nt=[],an=0;an<S.length-1;an++){for(var un=S[an],Sn=S[an+1],Mn=un.dist(Sn),zn=Sn.angleTo(un);qt+K<Dt+Mn;){var Bn=((qt+=K)-Dt)/Mn,Gn=Jn(un.x,Sn.x,Bn),$n=Jn(un.y,Sn.y,Bn);if(Gn>=0&&Gn<ct&&$n>=0&&$n<ct&&qt-kt>=0&&qt+kt<=Mt){var nr=new jf(Gn,$n,zn,an);nr._round(),pe&&!wx(S,nr,Fe,pe,Oe)||Nt.push(nr)}}Dt+=Mn}return tt||Nt.length||Ge||(Nt=Mx(S,Dt/2,K,pe,Oe,Fe,Ge,!0,ct)),Nt}function Sx(S,F,K,pe,Oe){for(var Fe=[],Ge=0;Ge<S.length;Ge++)for(var tt=S[Ge],ct=void 0,kt=0;kt<tt.length-1;kt++){var Mt=tt[kt],Dt=tt[kt+1];Mt.x<F&&Dt.x<F||(Mt.x<F?Mt=new t(F,Mt.y+(Dt.y-Mt.y)*((F-Mt.x)/(Dt.x-Mt.x)))._round():Dt.x<F&&(Dt=new t(F,Mt.y+(Dt.y-Mt.y)*((F-Mt.x)/(Dt.x-Mt.x)))._round()),Mt.y<K&&Dt.y<K||(Mt.y<K?Mt=new t(Mt.x+(Dt.x-Mt.x)*((K-Mt.y)/(Dt.y-Mt.y)),K)._round():Dt.y<K&&(Dt=new t(Mt.x+(Dt.x-Mt.x)*((K-Mt.y)/(Dt.y-Mt.y)),K)._round()),Mt.x>=pe&&Dt.x>=pe||(Mt.x>=pe?Mt=new t(pe,Mt.y+(Dt.y-Mt.y)*((pe-Mt.x)/(Dt.x-Mt.x)))._round():Dt.x>=pe&&(Dt=new t(pe,Mt.y+(Dt.y-Mt.y)*((pe-Mt.x)/(Dt.x-Mt.x)))._round()),Mt.y>=Oe&&Dt.y>=Oe||(Mt.y>=Oe?Mt=new t(Mt.x+(Dt.x-Mt.x)*((Oe-Mt.y)/(Dt.y-Mt.y)),Oe)._round():Dt.y>=Oe&&(Dt=new t(Mt.x+(Dt.x-Mt.x)*((Oe-Mt.y)/(Dt.y-Mt.y)),Oe)._round()),ct&&Mt.equals(ct[ct.length-1])||(ct=[Mt],Fe.push(ct)),ct.push(Dt)))))}return Fe}var Uf=cs;function Ex(S,F,K,pe){var Oe=[],Fe=S.image,Ge=Fe.pixelRatio,tt=Fe.paddedRect.w-2*Uf,ct=Fe.paddedRect.h-2*Uf,kt=S.right-S.left,Mt=S.bottom-S.top,Dt=Fe.stretchX||[[0,tt]],qt=Fe.stretchY||[[0,ct]],Nt=function(yi,Pi){return yi+Pi[1]-Pi[0]},an=Dt.reduce(Nt,0),un=qt.reduce(Nt,0),Sn=tt-an,Mn=ct-un,zn=0,Bn=an,Gn=0,$n=un,nr=0,xr=Sn,dr=0,kr=Mn;if(Fe.content&&pe){var Cr=Fe.content;zn=Pd(Dt,0,Cr[0]),Gn=Pd(qt,0,Cr[1]),Bn=Pd(Dt,Cr[0],Cr[2]),$n=Pd(qt,Cr[1],Cr[3]),nr=Cr[0]-zn,dr=Cr[1]-Gn,xr=Cr[2]-Cr[0]-Bn,kr=Cr[3]-Cr[1]-$n}var Hr=function(yi,Pi,Ii,Ri){var Ei=Od(yi.stretch-zn,Bn,kt,S.left),Aa=Id(yi.fixed-nr,xr,yi.stretch,an),Hi=Od(Pi.stretch-Gn,$n,Mt,S.top),Fa=Id(Pi.fixed-dr,kr,Pi.stretch,un),ro=Od(Ii.stretch-zn,Bn,kt,S.left),Ya=Id(Ii.fixed-nr,xr,Ii.stretch,an),So=Od(Ri.stretch-Gn,$n,Mt,S.top),Xa=Id(Ri.fixed-dr,kr,Ri.stretch,un),Oa=new t(Ei,Hi),$a=new t(ro,Hi),Ba=new t(ro,So),Ia=new t(Ei,So),Wr=new t(Aa/Ge,Fa/Ge),ri=new t(Ya/Ge,Xa/Ge),ta=F*Math.PI/180;if(ta){var ki=Math.sin(ta),Zi=Math.cos(ta),Ni=[Zi,-ki,ki,Zi];Oa._matMult(Ni),$a._matMult(Ni),Ia._matMult(Ni),Ba._matMult(Ni)}var ui=yi.stretch+yi.fixed,na=Ii.stretch+Ii.fixed,Eo=Pi.stretch+Pi.fixed,hs=Ri.stretch+Ri.fixed;return{tl:Oa,tr:$a,bl:Ia,br:Ba,tex:{x:Fe.paddedRect.x+Uf+ui,y:Fe.paddedRect.y+Uf+Eo,w:na-ui,h:hs-Eo},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:Wr,pixelOffsetBR:ri,minFontScaleX:xr/Ge/kt,minFontScaleY:kr/Ge/Mt,isSDF:K}};if(pe&&(Fe.stretchX||Fe.stretchY))for(var Or=Cx(Dt,Sn,an),Ur=Cx(qt,Mn,un),Dr=0;Dr<Or.length-1;Dr++)for(var Lr=Or[Dr],Qr=Or[Dr+1],Gr=0;Gr<Ur.length-1;Gr++){var Si=Ur[Gr],jr=Ur[Gr+1];Oe.push(Hr(Lr,Si,Qr,jr))}else Oe.push(Hr({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:tt+1},{fixed:0,stretch:ct+1}));return Oe}function Pd(S,F,K){for(var pe=0,Oe=0,Fe=S;Oe<Fe.length;Oe+=1){var Ge=Fe[Oe];pe+=Math.max(F,Math.min(K,Ge[1]))-Math.max(F,Math.min(K,Ge[0]))}return pe}function Cx(S,F,K){for(var pe=[{fixed:-Uf,stretch:0}],Oe=0,Fe=S;Oe<Fe.length;Oe+=1){var Ge=Fe[Oe],tt=Ge[0],ct=Ge[1],kt=pe[pe.length-1];pe.push({fixed:tt-kt.stretch,stretch:kt.stretch}),pe.push({fixed:tt-kt.stretch,stretch:kt.stretch+(ct-tt)})}return pe.push({fixed:F+Uf,stretch:K}),pe}function Od(S,F,K,pe){return S/F*K+pe}function Id(S,F,K,pe){return S-F*K/pe}var Rd=function(S,F,K,pe,Oe,Fe,Ge,tt,ct,kt){if(this.boxStartIndex=S.length,ct){var Mt=Fe.top,Dt=Fe.bottom,qt=Fe.collisionPadding;qt&&(Mt-=qt[1],Dt+=qt[3]);var Nt=Dt-Mt;Nt>0&&(Nt=Math.max(10,Nt),this.circleDiameter=Nt)}else{var an=Fe.top*Ge-tt,un=Fe.bottom*Ge+tt,Sn=Fe.left*Ge-tt,Mn=Fe.right*Ge+tt,zn=Fe.collisionPadding;if(zn&&(Sn-=zn[0]*Ge,an-=zn[1]*Ge,Mn+=zn[2]*Ge,un+=zn[3]*Ge),kt){var Bn=new t(Sn,an),Gn=new t(Mn,an),$n=new t(Sn,un),nr=new t(Mn,un),xr=kt*Math.PI/180;Bn._rotate(xr),Gn._rotate(xr),$n._rotate(xr),nr._rotate(xr),Sn=Math.min(Bn.x,Gn.x,$n.x,nr.x),Mn=Math.max(Bn.x,Gn.x,$n.x,nr.x),an=Math.min(Bn.y,Gn.y,$n.y,nr.y),un=Math.max(Bn.y,Gn.y,$n.y,nr.y)}S.emplaceBack(F.x,F.y,Sn,an,Mn,un,K,pe,Oe)}this.boxEndIndex=S.length},Vf=function(S,F){if(S===void 0&&(S=[]),F===void 0&&(F=t6),this.data=S,this.length=this.data.length,this.compare=F,this.length>0)for(var K=(this.length>>1)-1;K>=0;K--)this._down(K)};function t6(S,F){return S<F?-1:S>F?1:0}function n6(S,F,K){F===void 0&&(F=1),K===void 0&&(K=!1);for(var pe=1/0,Oe=1/0,Fe=-1/0,Ge=-1/0,tt=S[0],ct=0;ct<tt.length;ct++){var kt=tt[ct];(!ct||kt.x<pe)&&(pe=kt.x),(!ct||kt.y<Oe)&&(Oe=kt.y),(!ct||kt.x>Fe)&&(Fe=kt.x),(!ct||kt.y>Ge)&&(Ge=kt.y)}var Mt=Fe-pe,Dt=Ge-Oe,qt=Math.min(Mt,Dt),Nt=qt/2,an=new Vf([],r6);if(qt===0)return new t(pe,Oe);for(var un=pe;un<Fe;un+=qt)for(var Sn=Oe;Sn<Ge;Sn+=qt)an.push(new Hf(un+Nt,Sn+Nt,Nt,S));for(var Mn=function(Gn){for(var $n=0,nr=0,xr=0,dr=Gn[0],kr=0,Cr=dr.length,Hr=Cr-1;kr<Cr;Hr=kr++){var Or=dr[kr],Ur=dr[Hr],Dr=Or.x*Ur.y-Ur.x*Or.y;nr+=(Or.x+Ur.x)*Dr,xr+=(Or.y+Ur.y)*Dr,$n+=3*Dr}return new Hf(nr/$n,xr/$n,0,Gn)}(S),zn=an.length;an.length;){var Bn=an.pop();(Bn.d>Mn.d||!Mn.d)&&(Mn=Bn,K&&console.log("found best %d after %d probes",Math.round(1e4*Bn.d)/1e4,zn)),Bn.max-Mn.d<=F||(Nt=Bn.h/2,an.push(new Hf(Bn.p.x-Nt,Bn.p.y-Nt,Nt,S)),an.push(new Hf(Bn.p.x+Nt,Bn.p.y-Nt,Nt,S)),an.push(new Hf(Bn.p.x-Nt,Bn.p.y+Nt,Nt,S)),an.push(new Hf(Bn.p.x+Nt,Bn.p.y+Nt,Nt,S)),zn+=4)}return K&&(console.log("num probes: "+zn),console.log("best distance: "+Mn.d)),Mn.p}function r6(S,F){return F.max-S.max}function Hf(S,F,K,pe){this.p=new t(S,F),this.h=K,this.d=function(Oe,Fe){for(var Ge=!1,tt=1/0,ct=0;ct<Fe.length;ct++)for(var kt=Fe[ct],Mt=0,Dt=kt.length,qt=Dt-1;Mt<Dt;qt=Mt++){var Nt=kt[Mt],an=kt[qt];Nt.y>Oe.y!=an.y>Oe.y&&Oe.x<(an.x-Nt.x)*(Oe.y-Nt.y)/(an.y-Nt.y)+Nt.x&&(Ge=!Ge),tt=Math.min(tt,Kc(Oe,Nt,an))}return(Ge?1:-1)*Math.sqrt(tt)}(this.p,pe),this.max=this.d+this.h*Math.SQRT2}Vf.prototype.push=function(S){this.data.push(S),this.length++,this._up(this.length-1)},Vf.prototype.pop=function(){if(this.length!==0){var S=this.data[0],F=this.data.pop();return this.length--,this.length>0&&(this.data[0]=F,this._down(0)),S}},Vf.prototype.peek=function(){return this.data[0]},Vf.prototype._up=function(S){for(var F=this.data,K=this.compare,pe=F[S];S>0;){var Oe=S-1>>1,Fe=F[Oe];if(K(pe,Fe)>=0)break;F[S]=Fe,S=Oe}F[S]=pe},Vf.prototype._down=function(S){for(var F=this.data,K=this.compare,pe=this.length>>1,Oe=F[S];S<pe;){var Fe=1+(S<<1),Ge=F[Fe],tt=Fe+1;if(tt<this.length&&K(F[tt],Ge)<0&&(Fe=tt,Ge=F[tt]),K(Ge,Oe)>=0)break;F[S]=Ge,S=Fe}F[S]=Oe};var qf=7,rg=Number.POSITIVE_INFINITY;function Lx(S,F){return F[1]!==rg?function(K,pe,Oe){var Fe=0,Ge=0;switch(pe=Math.abs(pe),Oe=Math.abs(Oe),K){case"top-right":case"top-left":case"top":Ge=Oe-qf;break;case"bottom-right":case"bottom-left":case"bottom":Ge=-Oe+qf}switch(K){case"top-right":case"bottom-right":case"right":Fe=-pe;break;case"top-left":case"bottom-left":case"left":Fe=pe}return[Fe,Ge]}(S,F[0],F[1]):function(K,pe){var Oe=0,Fe=0;pe<0&&(pe=0);var Ge=pe/Math.sqrt(2);switch(K){case"top-right":case"top-left":Fe=Ge-qf;break;case"bottom-right":case"bottom-left":Fe=-Ge+qf;break;case"bottom":Fe=-pe+qf;break;case"top":Fe=pe-qf}switch(K){case"top-right":case"bottom-right":Oe=-Ge;break;case"top-left":case"bottom-left":Oe=Ge;break;case"left":Oe=pe;break;case"right":Oe=-pe}return[Oe,Fe]}(S,F[0])}function ig(S){switch(S){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}var ep=255,mc=ep*Yl;function Px(S,F,K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt,qt,Nt,an){var un=function(Gn,$n,nr,xr,dr,kr,Cr,Hr){for(var Or=xr.layout.get("text-rotate").evaluate(kr,{})*Math.PI/180,Ur=[],Dr=0,Lr=$n.positionedLines;Dr<Lr.length;Dr+=1)for(var Qr=Lr[Dr],Gr=0,Si=Qr.positionedGlyphs;Gr<Si.length;Gr+=1){var jr=Si[Gr];if(jr.rect){var yi=jr.rect||{},Pi=px+1,Ii=!0,Ri=1,Ei=0,Aa=(dr||Hr)&&jr.vertical,Hi=jr.metrics.advance*jr.scale/2;if(Hr&&$n.verticalizable){var Fa=(jr.scale-1)*Za,ro=(Za-jr.metrics.width*jr.scale)/2;Ei=Qr.lineOffset/2-(jr.imageName?-ro:Fa)}if(jr.imageName){var Ya=Cr[jr.imageName];Ii=Ya.sdf,Ri=Ya.pixelRatio,Pi=cs/Ri}var So=dr?[jr.x+Hi,jr.y]:[0,0],Xa=dr?[0,0]:[jr.x+Hi+nr[0],jr.y+nr[1]-Ei],Oa=[0,0];Aa&&(Oa=Xa,Xa=[0,0]);var $a=(jr.metrics.left-Pi)*jr.scale-Hi+Xa[0],Ba=(-jr.metrics.top-Pi)*jr.scale+Xa[1],Ia=$a+yi.w*jr.scale/Ri,Wr=Ba+yi.h*jr.scale/Ri,ri=new t($a,Ba),ta=new t(Ia,Ba),ki=new t($a,Wr),Zi=new t(Ia,Wr);if(Aa){var Ni=new t(-Hi,Hi-Qh),ui=-Math.PI/2,na=Za/2-Hi,Eo=jr.imageName?na:0,hs=new t(5-Qh-na,-Eo),go=new(Function.prototype.bind.apply(t,[null].concat(Oa)));ri._rotateAround(ui,Ni)._add(hs)._add(go),ta._rotateAround(ui,Ni)._add(hs)._add(go),ki._rotateAround(ui,Ni)._add(hs)._add(go),Zi._rotateAround(ui,Ni)._add(hs)._add(go)}if(Or){var Xl=Math.sin(Or),ju=Math.cos(Or),Na=[ju,-Xl,Xl,ju];ri._matMult(Na),ta._matMult(Na),ki._matMult(Na),Zi._matMult(Na)}var $l=new t(0,0),Ml=new t(0,0);Ur.push({tl:ri,tr:ta,bl:ki,br:Zi,tex:yi,writingMode:$n.writingMode,glyphOffset:So,sectionIndex:jr.sectionIndex,isSDF:Ii,pixelOffsetTL:$l,pixelOffsetBR:Ml,minFontScaleX:0,minFontScaleY:0})}}return Ur}(0,K,tt,Oe,Fe,Ge,pe,S.allowVerticalPlacement),Sn=S.textSizeData,Mn=null;Sn.kind==="source"?(Mn=[Yl*Oe.layout.get("text-size").evaluate(Ge,{})])[0]>mc&&M(S.layerIds[0]+': Value for "text-size" is >= '+ep+'. Reduce your "text-size".'):Sn.kind==="composite"&&((Mn=[Yl*Nt.compositeTextSizes[0].evaluate(Ge,{},an),Yl*Nt.compositeTextSizes[1].evaluate(Ge,{},an)])[0]>mc||Mn[1]>mc)&&M(S.layerIds[0]+': Value for "text-size" is >= '+ep+'. Reduce your "text-size".'),S.addSymbols(S.text,un,Mn,tt,Fe,Ge,kt,F,ct.lineStartIndex,ct.lineLength,qt,an);for(var zn=0,Bn=Mt;zn<Bn.length;zn+=1)Dt[Bn[zn]]=S.text.placedSymbolArray.length-1;return 4*un.length}function Ox(S){for(var F in S)return S[F];return null}function i6(S,F,K,pe){var Oe=S.compareText;if(F in Oe){for(var Fe=Oe[F],Ge=Fe.length-1;Ge>=0;Ge--)if(pe.dist(Fe[Ge])<K)return!0}else Oe[F]=[];return Oe[F].push(pe),!1}var a6=Df.VectorTileFeature.types,o6=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function zd(S,F,K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt,qt){var Nt=tt?Math.min(mc,Math.round(tt[0])):0,an=tt?Math.min(mc,Math.round(tt[1])):0;S.emplaceBack(F,K,Math.round(32*pe),Math.round(32*Oe),Fe,Ge,(Nt<<1)+(ct?1:0),an,16*kt,16*Mt,256*Dt,256*qt)}function ag(S,F,K){S.emplaceBack(F.x,F.y,K),S.emplaceBack(F.x,F.y,K),S.emplaceBack(F.x,F.y,K),S.emplaceBack(F.x,F.y,K)}function s6(S){for(var F=0,K=S.sections;F<K.length;F+=1)if(to(K[F].text))return!0;return!1}var Gf=function(S){this.layoutVertexArray=new N,this.indexArray=new ne,this.programConfigurations=S,this.segments=new _n,this.dynamicLayoutVertexArray=new q,this.opacityVertexArray=new H,this.placedSymbolArray=new Rt};Gf.prototype.isEmpty=function(){return this.layoutVertexArray.length===0&&this.indexArray.length===0&&this.dynamicLayoutVertexArray.length===0&&this.opacityVertexArray.length===0},Gf.prototype.upload=function(S,F,K,pe){this.isEmpty()||(K&&(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,K1.members),this.indexBuffer=S.createIndexBuffer(this.indexArray,F),this.dynamicLayoutVertexBuffer=S.createVertexBuffer(this.dynamicLayoutVertexArray,R4.members,!0),this.opacityVertexBuffer=S.createVertexBuffer(this.opacityVertexArray,o6,!0),this.opacityVertexBuffer.itemSize=1),(K||pe)&&this.programConfigurations.upload(S))},Gf.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())},Sr("SymbolBuffers",Gf);var tp=function(S,F,K){this.layoutVertexArray=new S,this.layoutAttributes=F,this.indexArray=new K,this.segments=new _n,this.collisionVertexArray=new U};tp.prototype.upload=function(S){this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=S.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=S.createVertexBuffer(this.collisionVertexArray,z4.members,!0)},tp.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())},Sr("CollisionBuffers",tp);var mi=function(S){this.collisionBoxArray=S.collisionBoxArray,this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(function(Ge){return Ge.id}),this.index=S.index,this.pixelRatio=S.pixelRatio,this.sourceLayerIndex=S.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=j1([]),this.placementViewportMatrix=j1([]);var F=this.layers[0]._unevaluatedLayout._values;this.textSizeData=ng(this.zoom,F["text-size"]),this.iconSizeData=ng(this.zoom,F["icon-size"]);var K=this.layers[0].layout,pe=K.get("symbol-sort-key"),Oe=K.get("symbol-z-order");this.sortFeaturesByKey=Oe!=="viewport-y"&&pe.constantOr(1)!==void 0;var Fe=Oe==="viewport-y"||Oe==="auto"&&!this.sortFeaturesByKey;this.sortFeaturesByY=Fe&&(K.get("text-allow-overlap")||K.get("icon-allow-overlap")||K.get("text-ignore-placement")||K.get("icon-ignore-placement")),K.get("symbol-placement")==="point"&&(this.writingModes=K.get("text-writing-mode").map(function(Ge){return Ds[Ge]})),this.stateDependentLayerIds=this.layers.filter(function(Ge){return Ge.isStateDependent()}).map(function(Ge){return Ge.id}),this.sourceID=S.sourceID};mi.prototype.createArrays=function(){this.text=new Gf(new Mi(K1.members,this.layers,this.zoom,function(S){return/^text/.test(S)})),this.icon=new Gf(new Mi(K1.members,this.layers,this.zoom,function(S){return/^icon/.test(S)})),this.glyphOffsetArray=new It,this.lineVertexArray=new on,this.symbolInstances=new Vt},mi.prototype.calculateGlyphDependencies=function(S,F,K,pe,Oe){for(var Fe=0;Fe<S.length;Fe++)if(F[S.charCodeAt(Fe)]=!0,(K||pe)&&Oe){var Ge=$h[S.charAt(Fe)];Ge&&(F[Ge.charCodeAt(0)]=!0)}},mi.prototype.populate=function(S,F,K){var pe=this.layers[0],Oe=pe.layout,Fe=Oe.get("text-font"),Ge=Oe.get("text-field"),tt=Oe.get("icon-image"),ct=(Ge.value.kind!=="constant"||Ge.value.value instanceof Dn&&!Ge.value.value.isEmpty()||Ge.value.value.toString().length>0)&&(Fe.value.kind!=="constant"||Fe.value.value.length>0),kt=tt.value.kind!=="constant"||!!tt.value.value||Object.keys(tt.parameters).length>0,Mt=Oe.get("symbol-sort-key");if(this.features=[],ct||kt){for(var Dt=F.iconDependencies,qt=F.glyphDependencies,Nt=F.availableImages,an=new li(this.zoom),un=0,Sn=S;un<Sn.length;un+=1){var Mn=Sn[un],zn=Mn.feature,Bn=Mn.id,Gn=Mn.index,$n=Mn.sourceLayerIndex,nr=pe._featureFilter.needGeometry,xr={type:zn.type,id:Bn,properties:zn.properties,geometry:nr?ho(zn):[]};if(pe._featureFilter.filter(an,xr,K)){nr||(xr.geometry=ho(zn));var dr=void 0;if(ct){var kr=pe.getValueAndResolveTokens("text-field",xr,K,Nt),Cr=Dn.factory(kr);s6(Cr)&&(this.hasRTLText=!0),(!this.hasRTLText||Vo()==="unavailable"||this.hasRTLText&&Di.isParsed())&&(dr=F4(Cr,pe,xr))}var Hr=void 0;if(kt){var Or=pe.getValueAndResolveTokens("icon-image",xr,K,Nt);Hr=Or instanceof En?Or:En.fromString(Or)}if(dr||Hr){var Ur=this.sortFeaturesByKey?Mt.evaluate(xr,{},K):void 0,Dr={id:Bn,text:dr,icon:Hr,index:Gn,sourceLayerIndex:$n,geometry:ho(zn),properties:zn.properties,type:a6[zn.type],sortKey:Ur};if(this.features.push(Dr),Hr&&(Dt[Hr.name]=!0),dr){var Lr=Fe.evaluate(xr,{},K).join(","),Qr=Oe.get("text-rotation-alignment")==="map"&&Oe.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(Ds.vertical)>=0;for(var Gr=0,Si=dr.sections;Gr<Si.length;Gr+=1){var jr=Si[Gr];if(jr.image)Dt[jr.image.name]=!0;else{var yi=ko(dr.toString()),Pi=jr.fontStack||Lr,Ii=qt[Pi]=qt[Pi]||{};this.calculateGlyphDependencies(jr.text,Ii,Qr,this.allowVerticalPlacement,yi)}}}}}}Oe.get("symbol-placement")==="line"&&(this.features=function(Ri){var Ei={},Aa={},Hi=[],Fa=0;function ro(Zi){Hi.push(Ri[Zi]),Fa++}function Ya(Zi,Ni,ui){var na=Aa[Zi];return delete Aa[Zi],Aa[Ni]=na,Hi[na].geometry[0].pop(),Hi[na].geometry[0]=Hi[na].geometry[0].concat(ui[0]),na}function So(Zi,Ni,ui){var na=Ei[Ni];return delete Ei[Ni],Ei[Zi]=na,Hi[na].geometry[0].shift(),Hi[na].geometry[0]=ui[0].concat(Hi[na].geometry[0]),na}function Xa(Zi,Ni,ui){var na=ui?Ni[0][Ni[0].length-1]:Ni[0][0];return Zi+":"+na.x+":"+na.y}for(var Oa=0;Oa<Ri.length;Oa++){var $a=Ri[Oa],Ba=$a.geometry,Ia=$a.text?$a.text.toString():null;if(Ia){var Wr=Xa(Ia,Ba),ri=Xa(Ia,Ba,!0);if(Wr in Aa&&ri in Ei&&Aa[Wr]!==Ei[ri]){var ta=So(Wr,ri,Ba),ki=Ya(Wr,ri,Hi[ta].geometry);delete Ei[Wr],delete Aa[ri],Aa[Xa(Ia,Hi[ki].geometry,!0)]=ki,Hi[ta].geometry=null}else Wr in Aa?Ya(Wr,ri,Ba):ri in Ei?So(Wr,ri,Ba):(ro(Oa),Ei[Wr]=Fa-1,Aa[ri]=Fa-1)}else ro(Oa)}return Hi.filter(function(Zi){return Zi.geometry})}(this.features)),this.sortFeaturesByKey&&this.features.sort(function(Ri,Ei){return Ri.sortKey-Ei.sortKey})}},mi.prototype.update=function(S,F,K){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(S,F,this.layers,K),this.icon.programConfigurations.updatePaintArrays(S,F,this.layers,K))},mi.prototype.isEmpty=function(){return this.symbolInstances.length===0&&!this.hasRTLText},mi.prototype.uploadPending=function(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload},mi.prototype.upload=function(S){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(S),this.iconCollisionBox.upload(S)),this.text.upload(S,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(S,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0},mi.prototype.destroyDebugData=function(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()},mi.prototype.destroy=function(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()},mi.prototype.addToLineVertexArray=function(S,F){var K=this.lineVertexArray.length;if(S.segment!==void 0){for(var pe=S.dist(F[S.segment+1]),Oe=S.dist(F[S.segment]),Fe={},Ge=S.segment+1;Ge<F.length;Ge++)Fe[Ge]={x:F[Ge].x,y:F[Ge].y,tileUnitDistanceFromAnchor:pe},Ge<F.length-1&&(pe+=F[Ge+1].dist(F[Ge]));for(var tt=S.segment||0;tt>=0;tt--)Fe[tt]={x:F[tt].x,y:F[tt].y,tileUnitDistanceFromAnchor:Oe},tt>0&&(Oe+=F[tt-1].dist(F[tt]));for(var ct=0;ct<F.length;ct++){var kt=Fe[ct];this.lineVertexArray.emplaceBack(kt.x,kt.y,kt.tileUnitDistanceFromAnchor)}}return{lineStartIndex:K,lineLength:this.lineVertexArray.length-K}},mi.prototype.addSymbols=function(S,F,K,pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt){for(var qt=S.indexArray,Nt=S.layoutVertexArray,an=S.segments.prepareSegment(4*F.length,Nt,qt,Fe.sortKey),un=this.glyphOffsetArray.length,Sn=an.vertexLength,Mn=this.allowVerticalPlacement&&Ge===Ds.vertical?Math.PI/2:0,zn=Fe.text&&Fe.text.sections,Bn=0;Bn<F.length;Bn++){var Gn=F[Bn],$n=Gn.tl,nr=Gn.tr,xr=Gn.bl,dr=Gn.br,kr=Gn.tex,Cr=Gn.pixelOffsetTL,Hr=Gn.pixelOffsetBR,Or=Gn.minFontScaleX,Ur=Gn.minFontScaleY,Dr=Gn.glyphOffset,Lr=Gn.isSDF,Qr=Gn.sectionIndex,Gr=an.vertexLength,Si=Dr[1];zd(Nt,tt.x,tt.y,$n.x,Si+$n.y,kr.x,kr.y,K,Lr,Cr.x,Cr.y,Or,Ur),zd(Nt,tt.x,tt.y,nr.x,Si+nr.y,kr.x+kr.w,kr.y,K,Lr,Hr.x,Cr.y,Or,Ur),zd(Nt,tt.x,tt.y,xr.x,Si+xr.y,kr.x,kr.y+kr.h,K,Lr,Cr.x,Hr.y,Or,Ur),zd(Nt,tt.x,tt.y,dr.x,Si+dr.y,kr.x+kr.w,kr.y+kr.h,K,Lr,Hr.x,Hr.y,Or,Ur),ag(S.dynamicLayoutVertexArray,tt,Mn),qt.emplaceBack(Gr,Gr+1,Gr+2),qt.emplaceBack(Gr+1,Gr+2,Gr+3),an.vertexLength+=4,an.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(Dr[0]),Bn!==F.length-1&&Qr===F[Bn+1].sectionIndex||S.programConfigurations.populatePaintArrays(Nt.length,Fe,Fe.index,{},Dt,zn&&zn[Qr])}S.placedSymbolArray.emplaceBack(tt.x,tt.y,un,this.glyphOffsetArray.length-un,Sn,ct,kt,tt.segment,K?K[0]:0,K?K[1]:0,pe[0],pe[1],Ge,0,!1,0,Mt)},mi.prototype._addCollisionDebugVertex=function(S,F,K,pe,Oe,Fe){return F.emplaceBack(0,0),S.emplaceBack(K.x,K.y,pe,Oe,Math.round(Fe.x),Math.round(Fe.y))},mi.prototype.addCollisionDebugVertices=function(S,F,K,pe,Oe,Fe,Ge){var tt=Oe.segments.prepareSegment(4,Oe.layoutVertexArray,Oe.indexArray),ct=tt.vertexLength,kt=Oe.layoutVertexArray,Mt=Oe.collisionVertexArray,Dt=Ge.anchorX,qt=Ge.anchorY;this._addCollisionDebugVertex(kt,Mt,Fe,Dt,qt,new t(S,F)),this._addCollisionDebugVertex(kt,Mt,Fe,Dt,qt,new t(K,F)),this._addCollisionDebugVertex(kt,Mt,Fe,Dt,qt,new t(K,pe)),this._addCollisionDebugVertex(kt,Mt,Fe,Dt,qt,new t(S,pe)),tt.vertexLength+=4;var Nt=Oe.indexArray;Nt.emplaceBack(ct,ct+1),Nt.emplaceBack(ct+1,ct+2),Nt.emplaceBack(ct+2,ct+3),Nt.emplaceBack(ct+3,ct),tt.primitiveLength+=4},mi.prototype.addDebugCollisionBoxes=function(S,F,K,pe){for(var Oe=S;Oe<F;Oe++){var Fe=this.collisionBoxArray.get(Oe),Ge=Fe.x1,tt=Fe.y1,ct=Fe.x2,kt=Fe.y2;this.addCollisionDebugVertices(Ge,tt,ct,kt,pe?this.textCollisionBox:this.iconCollisionBox,Fe.anchorPoint,K)}},mi.prototype.generateCollisionDebugBuffers=function(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new tp(ge,ox.members,We),this.iconCollisionBox=new tp(ge,ox.members,We);for(var S=0;S<this.symbolInstances.length;S++){var F=this.symbolInstances.get(S);this.addDebugCollisionBoxes(F.textBoxStartIndex,F.textBoxEndIndex,F,!0),this.addDebugCollisionBoxes(F.verticalTextBoxStartIndex,F.verticalTextBoxEndIndex,F,!0),this.addDebugCollisionBoxes(F.iconBoxStartIndex,F.iconBoxEndIndex,F,!1),this.addDebugCollisionBoxes(F.verticalIconBoxStartIndex,F.verticalIconBoxEndIndex,F,!1)}},mi.prototype._deserializeCollisionBoxesForSymbol=function(S,F,K,pe,Oe,Fe,Ge,tt,ct){for(var kt={},Mt=F;Mt<K;Mt++){var Dt=S.get(Mt);kt.textBox={x1:Dt.x1,y1:Dt.y1,x2:Dt.x2,y2:Dt.y2,anchorPointX:Dt.anchorPointX,anchorPointY:Dt.anchorPointY},kt.textFeatureIndex=Dt.featureIndex;break}for(var qt=pe;qt<Oe;qt++){var Nt=S.get(qt);kt.verticalTextBox={x1:Nt.x1,y1:Nt.y1,x2:Nt.x2,y2:Nt.y2,anchorPointX:Nt.anchorPointX,anchorPointY:Nt.anchorPointY},kt.verticalTextFeatureIndex=Nt.featureIndex;break}for(var an=Fe;an<Ge;an++){var un=S.get(an);kt.iconBox={x1:un.x1,y1:un.y1,x2:un.x2,y2:un.y2,anchorPointX:un.anchorPointX,anchorPointY:un.anchorPointY},kt.iconFeatureIndex=un.featureIndex;break}for(var Sn=tt;Sn<ct;Sn++){var Mn=S.get(Sn);kt.verticalIconBox={x1:Mn.x1,y1:Mn.y1,x2:Mn.x2,y2:Mn.y2,anchorPointX:Mn.anchorPointX,anchorPointY:Mn.anchorPointY},kt.verticalIconFeatureIndex=Mn.featureIndex;break}return kt},mi.prototype.deserializeCollisionBoxes=function(S){this.collisionArrays=[];for(var F=0;F<this.symbolInstances.length;F++){var K=this.symbolInstances.get(F);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(S,K.textBoxStartIndex,K.textBoxEndIndex,K.verticalTextBoxStartIndex,K.verticalTextBoxEndIndex,K.iconBoxStartIndex,K.iconBoxEndIndex,K.verticalIconBoxStartIndex,K.verticalIconBoxEndIndex))}},mi.prototype.hasTextData=function(){return this.text.segments.get().length>0},mi.prototype.hasIconData=function(){return this.icon.segments.get().length>0},mi.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},mi.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},mi.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},mi.prototype.addIndicesForPlacedSymbol=function(S,F){for(var K=S.placedSymbolArray.get(F),pe=K.vertexStartIndex+4*K.numGlyphs,Oe=K.vertexStartIndex;Oe<pe;Oe+=4)S.indexArray.emplaceBack(Oe,Oe+1,Oe+2),S.indexArray.emplaceBack(Oe+1,Oe+2,Oe+3)},mi.prototype.getSortedSymbolIndexes=function(S){if(this.sortedAngle===S&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;for(var F=Math.sin(S),K=Math.cos(S),pe=[],Oe=[],Fe=[],Ge=0;Ge<this.symbolInstances.length;++Ge){Fe.push(Ge);var tt=this.symbolInstances.get(Ge);pe.push(0|Math.round(F*tt.anchorX+K*tt.anchorY)),Oe.push(tt.featureIndex)}return Fe.sort(function(ct,kt){return pe[ct]-pe[kt]||Oe[kt]-Oe[ct]}),Fe},mi.prototype.addToSortKeyRanges=function(S,F){var K=this.sortKeyRanges[this.sortKeyRanges.length-1];K&&K.sortKey===F?K.symbolInstanceEnd=S+1:this.sortKeyRanges.push({sortKey:F,symbolInstanceStart:S,symbolInstanceEnd:S+1})},mi.prototype.sortFeatures=function(S){var F=this;if(this.sortFeaturesByY&&this.sortedAngle!==S&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(S),this.sortedAngle=S,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var K=0,pe=this.symbolInstanceIndexes;K<pe.length;K+=1){var Oe=pe[K],Fe=this.symbolInstances.get(Oe);this.featureSortOrder.push(Fe.featureIndex),[Fe.rightJustifiedTextSymbolIndex,Fe.centerJustifiedTextSymbolIndex,Fe.leftJustifiedTextSymbolIndex].forEach(function(Ge,tt,ct){Ge>=0&&ct.indexOf(Ge)===tt&&F.addIndicesForPlacedSymbol(F.text,Ge)}),Fe.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,Fe.verticalPlacedTextSymbolIndex),Fe.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,Fe.placedIconSymbolIndex),Fe.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,Fe.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},Sr("SymbolBucket",mi,{omit:["layers","collisionBoxArray","features","compareText"]}),mi.MAX_GLYPHS=65535,mi.addDynamicAttributes=ag;var l6=new va({"symbol-placement":new Pr(Be.layout_symbol["symbol-placement"]),"symbol-spacing":new Pr(Be.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Pr(Be.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new Ir(Be.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Pr(Be.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Pr(Be.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new Pr(Be.layout_symbol["icon-ignore-placement"]),"icon-optional":new Pr(Be.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Pr(Be.layout_symbol["icon-rotation-alignment"]),"icon-size":new Ir(Be.layout_symbol["icon-size"]),"icon-text-fit":new Pr(Be.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Pr(Be.layout_symbol["icon-text-fit-padding"]),"icon-image":new Ir(Be.layout_symbol["icon-image"]),"icon-rotate":new Ir(Be.layout_symbol["icon-rotate"]),"icon-padding":new Pr(Be.layout_symbol["icon-padding"]),"icon-keep-upright":new Pr(Be.layout_symbol["icon-keep-upright"]),"icon-offset":new Ir(Be.layout_symbol["icon-offset"]),"icon-anchor":new Ir(Be.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Pr(Be.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Pr(Be.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Pr(Be.layout_symbol["text-rotation-alignment"]),"text-field":new Ir(Be.layout_symbol["text-field"]),"text-font":new Ir(Be.layout_symbol["text-font"]),"text-size":new Ir(Be.layout_symbol["text-size"]),"text-max-width":new Ir(Be.layout_symbol["text-max-width"]),"text-line-height":new Pr(Be.layout_symbol["text-line-height"]),"text-letter-spacing":new Ir(Be.layout_symbol["text-letter-spacing"]),"text-justify":new Ir(Be.layout_symbol["text-justify"]),"text-radial-offset":new Ir(Be.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Pr(Be.layout_symbol["text-variable-anchor"]),"text-anchor":new Ir(Be.layout_symbol["text-anchor"]),"text-max-angle":new Pr(Be.layout_symbol["text-max-angle"]),"text-writing-mode":new Pr(Be.layout_symbol["text-writing-mode"]),"text-rotate":new Ir(Be.layout_symbol["text-rotate"]),"text-padding":new Pr(Be.layout_symbol["text-padding"]),"text-keep-upright":new Pr(Be.layout_symbol["text-keep-upright"]),"text-transform":new Ir(Be.layout_symbol["text-transform"]),"text-offset":new Ir(Be.layout_symbol["text-offset"]),"text-allow-overlap":new Pr(Be.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new Pr(Be.layout_symbol["text-ignore-placement"]),"text-optional":new Pr(Be.layout_symbol["text-optional"])}),og={paint:new va({"icon-opacity":new Ir(Be.paint_symbol["icon-opacity"]),"icon-color":new Ir(Be.paint_symbol["icon-color"]),"icon-halo-color":new Ir(Be.paint_symbol["icon-halo-color"]),"icon-halo-width":new Ir(Be.paint_symbol["icon-halo-width"]),"icon-halo-blur":new Ir(Be.paint_symbol["icon-halo-blur"]),"icon-translate":new Pr(Be.paint_symbol["icon-translate"]),"icon-translate-anchor":new Pr(Be.paint_symbol["icon-translate-anchor"]),"text-opacity":new Ir(Be.paint_symbol["text-opacity"]),"text-color":new Ir(Be.paint_symbol["text-color"],{runtimeType:Bt,getOverride:function(S){return S.textColor},hasOverride:function(S){return!!S.textColor}}),"text-halo-color":new Ir(Be.paint_symbol["text-halo-color"]),"text-halo-width":new Ir(Be.paint_symbol["text-halo-width"]),"text-halo-blur":new Ir(Be.paint_symbol["text-halo-blur"]),"text-translate":new Pr(Be.paint_symbol["text-translate"]),"text-translate-anchor":new Pr(Be.paint_symbol["text-translate-anchor"])}),layout:l6},Wf=function(S){this.type=S.property.overrides?S.property.overrides.runtimeType:Ct,this.defaultValue=S};Wf.prototype.evaluate=function(S){if(S.formattedSection){var F=this.defaultValue.property.overrides;if(F&&F.hasOverride(S.formattedSection))return F.getOverride(S.formattedSection)}return S.feature&&S.featureState?this.defaultValue.evaluate(S.feature,S.featureState):this.defaultValue.property.specification.default},Wf.prototype.eachChild=function(S){this.defaultValue.isConstant()||S(this.defaultValue.value._styleExpression.expression)},Wf.prototype.outputDefined=function(){return!1},Wf.prototype.serialize=function(){return null},Sr("FormatSectionOverride",Wf,{omit:["defaultValue"]});var u6=function(S){function F(K){S.call(this,K,og)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.recalculate=function(K,pe){if(S.prototype.recalculate.call(this,K,pe),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){var Oe=this.layout.get("text-writing-mode");if(Oe){for(var Fe=[],Ge=0,tt=Oe;Ge<tt.length;Ge+=1){var ct=tt[Ge];Fe.indexOf(ct)<0&&Fe.push(ct)}this.layout._values["text-writing-mode"]=Fe}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()},F.prototype.getValueAndResolveTokens=function(K,pe,Oe,Fe){var Ge=this.layout.get(K).evaluate(pe,{},Oe,Fe),tt=this._unevaluatedLayout._values[K];return tt.isDataDriven()||yl(tt.value)||!Ge?Ge:function(ct,kt){return kt.replace(/{([^{}]+)}/g,function(Mt,Dt){return Dt in ct?String(ct[Dt]):""})}(pe.properties,Ge)},F.prototype.createBucket=function(K){return new mi(K)},F.prototype.queryRadius=function(){return 0},F.prototype.queryIntersectsFeature=function(){return!1},F.prototype._setPaintOverrides=function(){for(var K=0,pe=og.paint.overridableProperties;K<pe.length;K+=1){var Oe=pe[K];if(F.hasPaintOverride(this.layout,Oe)){var Fe,Ge=this.paint.get(Oe),tt=new Wf(Ge),ct=new Bl(tt,Ge.property.specification);Fe=Ge.value.kind==="constant"||Ge.value.kind==="source"?new ks("source",ct):new ns("composite",ct,Ge.value.zoomStops,Ge.value._interpolationType),this.paint._values[Oe]=new Gi(Ge.property,Fe,Ge.parameters)}}},F.prototype._handleOverridablePaintPropertyUpdate=function(K,pe,Oe){return!(!this.layout||pe.isDataDriven()||Oe.isDataDriven())&&F.hasPaintOverride(this.layout,K)},F.hasPaintOverride=function(K,pe){var Oe=K.get("text-field"),Fe=og.paint.properties[pe],Ge=!1,tt=function(Mt){for(var Dt=0,qt=Mt;Dt<qt.length;Dt+=1){var Nt=qt[Dt];if(Fe.overrides&&Fe.overrides.hasOverride(Nt))return void(Ge=!0)}};if(Oe.value.kind==="constant"&&Oe.value.value instanceof Dn)tt(Oe.value.value.sections);else if(Oe.value.kind==="source"){var ct=function(Mt){if(!Ge)if(Mt instanceof ar&&ir(Mt.value)===Xt){var Dt=Mt.value;tt(Dt.sections)}else Mt instanceof sn?tt(Mt.sections):Mt.eachChild(ct)},kt=Oe.value;kt._styleExpression&&ct(kt._styleExpression.expression)}return Ge},F}(ma),c6={paint:new va({"background-color":new Pr(Be.paint_background["background-color"]),"background-pattern":new Pa(Be.paint_background["background-pattern"]),"background-opacity":new Pr(Be.paint_background["background-opacity"])})},f6=function(S){function F(K){S.call(this,K,c6)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F}(ma),h6={paint:new va({"raster-opacity":new Pr(Be.paint_raster["raster-opacity"]),"raster-hue-rotate":new Pr(Be.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new Pr(Be.paint_raster["raster-brightness-min"]),"raster-brightness-max":new Pr(Be.paint_raster["raster-brightness-max"]),"raster-saturation":new Pr(Be.paint_raster["raster-saturation"]),"raster-contrast":new Pr(Be.paint_raster["raster-contrast"]),"raster-resampling":new Pr(Be.paint_raster["raster-resampling"]),"raster-fade-duration":new Pr(Be.paint_raster["raster-fade-duration"])})},p6=function(S){function F(K){S.call(this,K,h6)}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F}(ma),d6=function(S){function F(K){S.call(this,K,{}),this.implementation=K}return S&&(F.__proto__=S),F.prototype=Object.create(S&&S.prototype),F.prototype.constructor=F,F.prototype.is3D=function(){return this.implementation.renderingMode==="3d"},F.prototype.hasOffscreenPass=function(){return this.implementation.prerender!==void 0},F.prototype.recalculate=function(){},F.prototype.updateTransitions=function(){},F.prototype.hasTransition=function(){},F.prototype.serialize=function(){},F.prototype.onAdd=function(K){this.implementation.onAdd&&this.implementation.onAdd(K,K.painter.context.gl)},F.prototype.onRemove=function(K){this.implementation.onRemove&&this.implementation.onRemove(K,K.painter.context.gl)},F}(ma),g6={circle:e4,heatmap:n4,hillshade:i4,fill:b4,"fill-extrusion":E4,line:I4,symbol:u6,background:f6,raster:p6},Ix=self.HTMLImageElement,Rx=self.HTMLCanvasElement,zx=self.HTMLVideoElement,Dx=self.ImageData,Dd=self.ImageBitmap,Qc=function(S,F,K,pe){this.context=S,this.format=K,this.texture=S.gl.createTexture(),this.update(F,pe)};Qc.prototype.update=function(S,F,K){var pe=S.width,Oe=S.height,Fe=!(this.size&&this.size[0]===pe&&this.size[1]===Oe||K),Ge=this.context,tt=Ge.gl;if(this.useMipmap=!!(F&&F.useMipmap),tt.bindTexture(tt.TEXTURE_2D,this.texture),Ge.pixelStoreUnpackFlipY.set(!1),Ge.pixelStoreUnpack.set(1),Ge.pixelStoreUnpackPremultiplyAlpha.set(this.format===tt.RGBA&&(!F||F.premultiply!==!1)),Fe)this.size=[pe,Oe],S instanceof Ix||S instanceof Rx||S instanceof zx||S instanceof Dx||Dd&&S instanceof Dd?tt.texImage2D(tt.TEXTURE_2D,0,this.format,this.format,tt.UNSIGNED_BYTE,S):tt.texImage2D(tt.TEXTURE_2D,0,this.format,pe,Oe,0,this.format,tt.UNSIGNED_BYTE,S.data);else{var ct=K||{x:0,y:0},kt=ct.x,Mt=ct.y;S instanceof Ix||S instanceof Rx||S instanceof zx||S instanceof Dx||Dd&&S instanceof Dd?tt.texSubImage2D(tt.TEXTURE_2D,0,kt,Mt,tt.RGBA,tt.UNSIGNED_BYTE,S):tt.texSubImage2D(tt.TEXTURE_2D,0,kt,Mt,pe,Oe,tt.RGBA,tt.UNSIGNED_BYTE,S.data)}this.useMipmap&&this.isSizePowerOfTwo()&&tt.generateMipmap(tt.TEXTURE_2D)},Qc.prototype.bind=function(S,F,K){var pe=this.context.gl;pe.bindTexture(pe.TEXTURE_2D,this.texture),K!==pe.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(K=pe.LINEAR),S!==this.filter&&(pe.texParameteri(pe.TEXTURE_2D,pe.TEXTURE_MAG_FILTER,S),pe.texParameteri(pe.TEXTURE_2D,pe.TEXTURE_MIN_FILTER,K||S),this.filter=S),F!==this.wrap&&(pe.texParameteri(pe.TEXTURE_2D,pe.TEXTURE_WRAP_S,F),pe.texParameteri(pe.TEXTURE_2D,pe.TEXTURE_WRAP_T,F),this.wrap=F)},Qc.prototype.isSizePowerOfTwo=function(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0},Qc.prototype.destroy=function(){this.context.gl.deleteTexture(this.texture),this.texture=null};var sg=function(S){var F=this;this._callback=S,this._triggered=!1,typeof MessageChannel<"u"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=function(){F._triggered=!1,F._callback()})};sg.prototype.trigger=function(){var S=this;this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(function(){S._triggered=!1,S._callback()},0))},sg.prototype.remove=function(){delete this._channel,this._callback=function(){}};var Zf=function(S,F,K){this.target=S,this.parent=F,this.mapId=K,this.callbacks={},this.tasks={},this.taskQueue=[],this.cancelCallbacks={},f(["receive","process"],this),this.invoker=new sg(this.process),this.target.addEventListener("message",this.receive,!1),this.globalScope=P()?S:self};function Fx(S,F,K){var pe=2*Math.PI*6378137/256/Math.pow(2,K);return[S*pe-2*Math.PI*6378137/2,F*pe-2*Math.PI*6378137/2]}Zf.prototype.send=function(S,F,K,pe,Oe){var Fe=this;Oe===void 0&&(Oe=!1);var Ge=Math.round(1e18*Math.random()).toString(36).substring(0,10);K&&(this.callbacks[Ge]=K);var tt=B(this.globalScope)?void 0:[];return this.target.postMessage({id:Ge,type:S,hasCallback:!!K,targetMapId:pe,mustQueue:Oe,sourceMapId:this.mapId,data:tl(F,tt)},tt),{cancel:function(){K&&delete Fe.callbacks[Ge],Fe.target.postMessage({id:Ge,type:"<cancel>",targetMapId:pe,sourceMapId:Fe.mapId})}}},Zf.prototype.receive=function(S){var F=S.data,K=F.id;if(K&&(!F.targetMapId||this.mapId===F.targetMapId))if(F.type==="<cancel>"){delete this.tasks[K];var pe=this.cancelCallbacks[K];delete this.cancelCallbacks[K],pe&&pe()}else P()||F.mustQueue?(this.tasks[K]=F,this.taskQueue.push(K),this.invoker.trigger()):this.processTask(K,F)},Zf.prototype.process=function(){if(this.taskQueue.length){var S=this.taskQueue.shift(),F=this.tasks[S];delete this.tasks[S],this.taskQueue.length&&this.invoker.trigger(),F&&this.processTask(S,F)}},Zf.prototype.processTask=function(S,F){var K=this;if(F.type==="<response>"){var pe=this.callbacks[S];delete this.callbacks[S],pe&&(F.error?pe(nl(F.error)):pe(null,nl(F.data)))}else{var Oe=!1,Fe=B(this.globalScope)?void 0:[],Ge=F.hasCallback?function(Mt,Dt){Oe=!0,delete K.cancelCallbacks[S],K.target.postMessage({id:S,type:"<response>",sourceMapId:K.mapId,error:Mt?tl(Mt):null,data:tl(Dt,Fe)},Fe)}:function(Mt){Oe=!0},tt=null,ct=nl(F.data);if(this.parent[F.type])tt=this.parent[F.type](F.sourceMapId,ct,Ge);else if(this.parent.getWorkerSource){var kt=F.type.split(".");tt=this.parent.getWorkerSource(F.sourceMapId,kt[0],ct.source)[kt[1]](ct,Ge)}else Ge(new Error("Could not find function "+F.type));!Oe&&tt&&tt.cancel&&(this.cancelCallbacks[S]=tt.cancel)}},Zf.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};var ka=function(S,F){S&&(F?this.setSouthWest(S).setNorthEast(F):S.length===4?this.setSouthWest([S[0],S[1]]).setNorthEast([S[2],S[3]]):this.setSouthWest(S[0]).setNorthEast(S[1]))};ka.prototype.setNorthEast=function(S){return this._ne=S instanceof Bi?new Bi(S.lng,S.lat):Bi.convert(S),this},ka.prototype.setSouthWest=function(S){return this._sw=S instanceof Bi?new Bi(S.lng,S.lat):Bi.convert(S),this},ka.prototype.extend=function(S){var F,K,pe=this._sw,Oe=this._ne;if(S instanceof Bi)F=S,K=S;else{if(!(S instanceof ka)){if(Array.isArray(S)){if(S.length===4||S.every(Array.isArray)){var Fe=S;return this.extend(ka.convert(Fe))}var Ge=S;return this.extend(Bi.convert(Ge))}return this}if(F=S._sw,K=S._ne,!F||!K)return this}return pe||Oe?(pe.lng=Math.min(F.lng,pe.lng),pe.lat=Math.min(F.lat,pe.lat),Oe.lng=Math.max(K.lng,Oe.lng),Oe.lat=Math.max(K.lat,Oe.lat)):(this._sw=new Bi(F.lng,F.lat),this._ne=new Bi(K.lng,K.lat)),this},ka.prototype.getCenter=function(){return new Bi((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},ka.prototype.getSouthWest=function(){return this._sw},ka.prototype.getNorthEast=function(){return this._ne},ka.prototype.getNorthWest=function(){return new Bi(this.getWest(),this.getNorth())},ka.prototype.getSouthEast=function(){return new Bi(this.getEast(),this.getSouth())},ka.prototype.getWest=function(){return this._sw.lng},ka.prototype.getSouth=function(){return this._sw.lat},ka.prototype.getEast=function(){return this._ne.lng},ka.prototype.getNorth=function(){return this._ne.lat},ka.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},ka.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},ka.prototype.isEmpty=function(){return!(this._sw&&this._ne)},ka.prototype.contains=function(S){var F=Bi.convert(S),K=F.lng,pe=F.lat,Oe=this._sw.lat<=pe&&pe<=this._ne.lat,Fe=this._sw.lng<=K&&K<=this._ne.lng;return this._sw.lng>this._ne.lng&&(Fe=this._sw.lng>=K&&K>=this._ne.lng),Oe&&Fe},ka.convert=function(S){return!S||S instanceof ka?S:new ka(S)};var Bx=63710088e-1,Bi=function(S,F){if(isNaN(S)||isNaN(F))throw new Error("Invalid LngLat object: ("+S+", "+F+")");if(this.lng=+S,this.lat=+F,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};Bi.prototype.wrap=function(){return new Bi(s(this.lng,-180,180),this.lat)},Bi.prototype.toArray=function(){return[this.lng,this.lat]},Bi.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},Bi.prototype.distanceTo=function(S){var F=Math.PI/180,K=this.lat*F,pe=S.lat*F,Oe=Math.sin(K)*Math.sin(pe)+Math.cos(K)*Math.cos(pe)*Math.cos((S.lng-this.lng)*F);return Bx*Math.acos(Math.min(Oe,1))},Bi.prototype.toBounds=function(S){S===void 0&&(S=0);var F=360*S/40075017,K=F/Math.cos(Math.PI/180*this.lat);return new ka(new Bi(this.lng-K,this.lat-F),new Bi(this.lng+K,this.lat+F))},Bi.convert=function(S){if(S instanceof Bi)return S;if(Array.isArray(S)&&(S.length===2||S.length===3))return new Bi(Number(S[0]),Number(S[1]));if(!Array.isArray(S)&&typeof S=="object"&&S!==null)return new Bi(Number("lng"in S?S.lng:S.lon),Number(S.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, an object {lon: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]")};var Nx=2*Math.PI*Bx;function jx(S){return Nx*Math.cos(S*Math.PI/180)}function Ux(S){return(180+S)/360}function Vx(S){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+S*Math.PI/360)))/360}function Hx(S,F){return S/jx(F)}function lg(S){var F=180-360*S;return 360/Math.PI*Math.atan(Math.exp(F*Math.PI/180))-90}var ef=function(S,F,K){K===void 0&&(K=0),this.x=+S,this.y=+F,this.z=+K};ef.fromLngLat=function(S,F){F===void 0&&(F=0);var K=Bi.convert(S);return new ef(Ux(K.lng),Vx(K.lat),Hx(F,K.lat))},ef.prototype.toLngLat=function(){return new Bi(360*this.x-180,lg(this.y))},ef.prototype.toAltitude=function(){return S=this.z,F=this.y,S*jx(lg(F));var S,F},ef.prototype.meterInMercatorCoordinateUnits=function(){return 1/Nx*(S=lg(this.y),1/Math.cos(S*Math.PI/180));var S};var tf=function(S,F,K){this.z=S,this.x=F,this.y=K,this.key=np(0,S,S,F,K)};tf.prototype.equals=function(S){return this.z===S.z&&this.x===S.x&&this.y===S.y},tf.prototype.url=function(S,F){var K,pe,Oe,Fe,Ge,tt=(K=this.x,pe=this.y,Oe=this.z,Fe=Fx(256*K,256*(pe=Math.pow(2,Oe)-pe-1),Oe),Ge=Fx(256*(K+1),256*(pe+1),Oe),Fe[0]+","+Fe[1]+","+Ge[0]+","+Ge[1]),ct=function(kt,Mt,Dt){for(var qt,Nt="",an=kt;an>0;an--)Nt+=(Mt&(qt=1<<an-1)?1:0)+(Dt&qt?2:0);return Nt}(this.z,this.x,this.y);return S[(this.x+this.y)%S.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(this.z)).replace("{x}",String(this.x)).replace("{y}",String(F==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",ct).replace("{bbox-epsg-3857}",tt)},tf.prototype.getTilePoint=function(S){var F=Math.pow(2,this.z);return new t((S.x*F-this.x)*si,(S.y*F-this.y)*si)},tf.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var qx=function(S,F){this.wrap=S,this.canonical=F,this.key=np(S,F.z,F.z,F.x,F.y)},Ta=function(S,F,K,pe,Oe){this.overscaledZ=S,this.wrap=F,this.canonical=new tf(K,+pe,+Oe),this.key=np(F,S,K,pe,Oe)};function np(S,F,K,pe,Oe){(S*=2)<0&&(S=-1*S-1);var Fe=1<<K;return(Fe*Fe*S+Fe*Oe+pe).toString(36)+K.toString(36)+F.toString(36)}Ta.prototype.equals=function(S){return this.overscaledZ===S.overscaledZ&&this.wrap===S.wrap&&this.canonical.equals(S.canonical)},Ta.prototype.scaledTo=function(S){var F=this.canonical.z-S;return S>this.canonical.z?new Ta(S,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Ta(S,this.wrap,S,this.canonical.x>>F,this.canonical.y>>F)},Ta.prototype.calculateScaledKey=function(S,F){var K=this.canonical.z-S;return S>this.canonical.z?np(this.wrap*+F,S,this.canonical.z,this.canonical.x,this.canonical.y):np(this.wrap*+F,S,S,this.canonical.x>>K,this.canonical.y>>K)},Ta.prototype.isChildOf=function(S){if(S.wrap!==this.wrap)return!1;var F=this.canonical.z-S.canonical.z;return S.overscaledZ===0||S.overscaledZ<this.overscaledZ&&S.canonical.x===this.canonical.x>>F&&S.canonical.y===this.canonical.y>>F},Ta.prototype.children=function(S){if(this.overscaledZ>=S)return[new Ta(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var F=this.canonical.z+1,K=2*this.canonical.x,pe=2*this.canonical.y;return[new Ta(F,this.wrap,F,K,pe),new Ta(F,this.wrap,F,K+1,pe),new Ta(F,this.wrap,F,K,pe+1),new Ta(F,this.wrap,F,K+1,pe+1)]},Ta.prototype.isLessThan=function(S){return this.wrap<S.wrap||!(this.wrap>S.wrap)&&(this.overscaledZ<S.overscaledZ||!(this.overscaledZ>S.overscaledZ)&&(this.canonical.x<S.canonical.x||!(this.canonical.x>S.canonical.x)&&this.canonical.y<S.canonical.y))},Ta.prototype.wrapped=function(){return new Ta(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)},Ta.prototype.unwrapTo=function(S){return new Ta(this.overscaledZ,S,this.canonical.z,this.canonical.x,this.canonical.y)},Ta.prototype.overscaleFactor=function(){return Math.pow(2,this.overscaledZ-this.canonical.z)},Ta.prototype.toUnwrapped=function(){return new qx(this.wrap,this.canonical)},Ta.prototype.toString=function(){return this.overscaledZ+"/"+this.canonical.x+"/"+this.canonical.y},Ta.prototype.getTilePoint=function(S){return this.canonical.getTilePoint(new ef(S.x-this.wrap,S.y))},Sr("CanonicalTileID",tf),Sr("OverscaledTileID",Ta,{omit:["posMatrix"]});var Bu=function(S,F,K){if(this.uid=S,F.height!==F.width)throw new RangeError("DEM tiles must be square");if(K&&K!=="mapbox"&&K!=="terrarium")return M('"'+K+'" is not a valid encoding type. Valid types include "mapbox" and "terrarium".');this.stride=F.height;var pe=this.dim=F.height-2;this.data=new Uint32Array(F.data.buffer),this.encoding=K||"mapbox";for(var Oe=0;Oe<pe;Oe++)this.data[this._idx(-1,Oe)]=this.data[this._idx(0,Oe)],this.data[this._idx(pe,Oe)]=this.data[this._idx(pe-1,Oe)],this.data[this._idx(Oe,-1)]=this.data[this._idx(Oe,0)],this.data[this._idx(Oe,pe)]=this.data[this._idx(Oe,pe-1)];this.data[this._idx(-1,-1)]=this.data[this._idx(0,0)],this.data[this._idx(pe,-1)]=this.data[this._idx(pe-1,0)],this.data[this._idx(-1,pe)]=this.data[this._idx(0,pe-1)],this.data[this._idx(pe,pe)]=this.data[this._idx(pe-1,pe-1)]};Bu.prototype.get=function(S,F){var K=new Uint8Array(this.data.buffer),pe=4*this._idx(S,F);return(this.encoding==="terrarium"?this._unpackTerrarium:this._unpackMapbox)(K[pe],K[pe+1],K[pe+2])},Bu.prototype.getUnpackVector=function(){return this.encoding==="terrarium"?[256,1,.00390625,32768]:[6553.6,25.6,.1,1e4]},Bu.prototype._idx=function(S,F){if(S<-1||S>=this.dim+1||F<-1||F>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(F+1)*this.stride+(S+1)},Bu.prototype._unpackMapbox=function(S,F,K){return(256*S*256+256*F+K)/10-1e4},Bu.prototype._unpackTerrarium=function(S,F,K){return 256*S+F+K/256-32768},Bu.prototype.getPixels=function(){return new Go({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},Bu.prototype.backfillBorder=function(S,F,K){if(this.dim!==S.dim)throw new Error("dem dimension mismatch");var pe=F*this.dim,Oe=F*this.dim+this.dim,Fe=K*this.dim,Ge=K*this.dim+this.dim;switch(F){case-1:pe=Oe-1;break;case 1:Oe=pe+1}switch(K){case-1:Fe=Ge-1;break;case 1:Ge=Fe+1}for(var tt=-F*this.dim,ct=-K*this.dim,kt=Fe;kt<Ge;kt++)for(var Mt=pe;Mt<Oe;Mt++)this.data[this._idx(Mt,kt)]=S.data[this._idx(Mt+tt,kt+ct)]},Sr("DEMData",Bu);var Fd=function(S){this._stringToNumber={},this._numberToString=[];for(var F=0;F<S.length;F++){var K=S[F];this._stringToNumber[K]=F,this._numberToString[F]=K}};Fd.prototype.encode=function(S){return this._stringToNumber[S]},Fd.prototype.decode=function(S){return this._numberToString[S]};var Bd=function(S,F,K,pe,Oe){this.type="Feature",this._vectorTileFeature=S,S._z=F,S._x=K,S._y=pe,this.properties=S.properties,this.id=Oe},ug={geometry:{configurable:!0}};ug.geometry.get=function(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},ug.geometry.set=function(S){this._geometry=S},Bd.prototype.toJSON=function(){var S={geometry:this.geometry};for(var F in this)F!=="_geometry"&&F!=="_vectorTileFeature"&&(S[F]=this[F]);return S},Object.defineProperties(Bd.prototype,ug);var Yf=function(){this.state={},this.stateChanges={},this.deletedStates={}};Yf.prototype.updateState=function(S,F,K){var pe=String(F);if(this.stateChanges[S]=this.stateChanges[S]||{},this.stateChanges[S][pe]=this.stateChanges[S][pe]||{},u(this.stateChanges[S][pe],K),this.deletedStates[S]===null)for(var Oe in this.deletedStates[S]={},this.state[S])Oe!==pe&&(this.deletedStates[S][Oe]=null);else if(this.deletedStates[S]&&this.deletedStates[S][pe]===null)for(var Fe in this.deletedStates[S][pe]={},this.state[S][pe])K[Fe]||(this.deletedStates[S][pe][Fe]=null);else for(var Ge in K)this.deletedStates[S]&&this.deletedStates[S][pe]&&this.deletedStates[S][pe][Ge]===null&&delete this.deletedStates[S][pe][Ge]},Yf.prototype.removeFeatureState=function(S,F,K){if(this.deletedStates[S]!==null){var pe=String(F);if(this.deletedStates[S]=this.deletedStates[S]||{},K&&F!==void 0)this.deletedStates[S][pe]!==null&&(this.deletedStates[S][pe]=this.deletedStates[S][pe]||{},this.deletedStates[S][pe][K]=null);else if(F!==void 0)if(this.stateChanges[S]&&this.stateChanges[S][pe])for(K in this.deletedStates[S][pe]={},this.stateChanges[S][pe])this.deletedStates[S][pe][K]=null;else this.deletedStates[S][pe]=null;else this.deletedStates[S]=null}},Yf.prototype.getState=function(S,F){var K=String(F),pe=this.state[S]||{},Oe=this.stateChanges[S]||{},Fe=u({},pe[K],Oe[K]);if(this.deletedStates[S]===null)return{};if(this.deletedStates[S]){var Ge=this.deletedStates[S][F];if(Ge===null)return{};for(var tt in Ge)delete Fe[tt]}return Fe},Yf.prototype.initializeTileState=function(S,F){S.setFeatureState(this.state,F)},Yf.prototype.coalesceChanges=function(S,F){var K={};for(var pe in this.stateChanges){this.state[pe]=this.state[pe]||{};var Oe={};for(var Fe in this.stateChanges[pe])this.state[pe][Fe]||(this.state[pe][Fe]={}),u(this.state[pe][Fe],this.stateChanges[pe][Fe]),Oe[Fe]=this.state[pe][Fe];K[pe]=Oe}for(var Ge in this.deletedStates){this.state[Ge]=this.state[Ge]||{};var tt={};if(this.deletedStates[Ge]===null)for(var ct in this.state[Ge])tt[ct]={},this.state[Ge][ct]={};else for(var kt in this.deletedStates[Ge]){if(this.deletedStates[Ge][kt]===null)this.state[Ge][kt]={};else for(var Mt=0,Dt=Object.keys(this.deletedStates[Ge][kt]);Mt<Dt.length;Mt+=1){var qt=Dt[Mt];delete this.state[Ge][kt][qt]}tt[kt]=this.state[Ge][kt]}K[Ge]=K[Ge]||{},u(K[Ge],tt)}if(this.stateChanges={},this.deletedStates={},Object.keys(K).length!==0)for(var Nt in S)S[Nt].setFeatureState(K,F)};var Nu=function(S,F){this.tileID=S,this.x=S.canonical.x,this.y=S.canonical.y,this.z=S.canonical.z,this.grid=new aa(si,16,0),this.grid3D=new aa(si,16,0),this.featureIndexArray=new Zt,this.promoteId=F};function Gx(S,F,K,pe,Oe){return m(S,function(Fe,Ge){var tt=F instanceof ga?F.get(Ge):null;return tt&&tt.evaluate?tt.evaluate(K,pe,Oe):tt})}function Wx(S){for(var F=1/0,K=1/0,pe=-1/0,Oe=-1/0,Fe=0,Ge=S;Fe<Ge.length;Fe+=1){var tt=Ge[Fe];F=Math.min(F,tt.x),K=Math.min(K,tt.y),pe=Math.max(pe,tt.x),Oe=Math.max(Oe,tt.y)}return{minX:F,minY:K,maxX:pe,maxY:Oe}}function v6(S,F){return F-S}Nu.prototype.insert=function(S,F,K,pe,Oe,Fe){var Ge=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(K,pe,Oe);for(var tt=Fe?this.grid3D:this.grid,ct=0;ct<F.length;ct++){for(var kt=F[ct],Mt=[1/0,1/0,-1/0,-1/0],Dt=0;Dt<kt.length;Dt++){var qt=kt[Dt];Mt[0]=Math.min(Mt[0],qt.x),Mt[1]=Math.min(Mt[1],qt.y),Mt[2]=Math.max(Mt[2],qt.x),Mt[3]=Math.max(Mt[3],qt.y)}Mt[0]<si&&Mt[1]<si&&Mt[2]>=0&&Mt[3]>=0&&tt.insert(Ge,Mt[0],Mt[1],Mt[2],Mt[3])}},Nu.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new Df.VectorTile(new Md(this.rawTileData)).layers,this.sourceLayerCoder=new Fd(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},Nu.prototype.query=function(S,F,K,pe){var Oe=this;this.loadVTLayers();for(var Fe=S.params||{},Ge=si/S.tileSize/S.scale,tt=xl(Fe.filter),ct=S.queryGeometry,kt=S.queryPadding*Ge,Mt=Wx(ct),Dt=this.grid.query(Mt.minX-kt,Mt.minY-kt,Mt.maxX+kt,Mt.maxY+kt),qt=Wx(S.cameraQueryGeometry),Nt=0,an=this.grid3D.query(qt.minX-kt,qt.minY-kt,qt.maxX+kt,qt.maxY+kt,function(Gn,$n,nr,xr){return function(dr,kr,Cr,Hr,Or){for(var Ur=0,Dr=dr;Ur<Dr.length;Ur+=1){var Lr=Dr[Ur];if(kr<=Lr.x&&Cr<=Lr.y&&Hr>=Lr.x&&Or>=Lr.y)return!0}var Qr=[new t(kr,Cr),new t(kr,Or),new t(Hr,Or),new t(Hr,Cr)];if(dr.length>2){for(var Gr=0,Si=Qr;Gr<Si.length;Gr+=1)if(gc(dr,Si[Gr]))return!0}for(var jr=0;jr<dr.length-1;jr++)if(Vh(dr[jr],dr[jr+1],Qr))return!0;return!1}(S.cameraQueryGeometry,Gn-kt,$n-kt,nr+kt,xr+kt)});Nt<an.length;Nt+=1){var un=an[Nt];Dt.push(un)}Dt.sort(v6);for(var Sn,Mn={},zn=function(Gn){var $n=Dt[Gn];if($n!==Sn){Sn=$n;var nr=Oe.featureIndexArray.get($n),xr=null;Oe.loadMatchingFeature(Mn,nr.bucketIndex,nr.sourceLayerIndex,nr.featureIndex,tt,Fe.layers,Fe.availableImages,F,K,pe,function(dr,kr,Cr){return xr||(xr=ho(dr)),kr.queryIntersectsFeature(ct,dr,Cr,xr,Oe.z,S.transform,Ge,S.pixelPosMatrix)})}},Bn=0;Bn<Dt.length;Bn++)zn(Bn);return Mn},Nu.prototype.loadMatchingFeature=function(S,F,K,pe,Oe,Fe,Ge,tt,ct,kt,Mt){var Dt=this.bucketLayerIDs[F];if(!Fe||function(xr,dr){for(var kr=0;kr<xr.length;kr++)if(dr.indexOf(xr[kr])>=0)return!0;return!1}(Fe,Dt)){var qt=this.sourceLayerCoder.decode(K),Nt=this.vtLayers[qt].feature(pe);if(Oe.filter(new li(this.tileID.overscaledZ),Nt))for(var an=this.getId(Nt,qt),un=0;un<Dt.length;un++){var Sn=Dt[un];if(!(Fe&&Fe.indexOf(Sn)<0)){var Mn=tt[Sn];if(Mn){var zn={};an!==void 0&&kt&&(zn=kt.getState(Mn.sourceLayer||"_geojsonTileLayer",an));var Bn=ct[Sn];Bn.paint=Gx(Bn.paint,Mn.paint,Nt,zn,Ge),Bn.layout=Gx(Bn.layout,Mn.layout,Nt,zn,Ge);var Gn=!Mt||Mt(Nt,Mn,zn);if(Gn){var $n=new Bd(Nt,this.z,this.x,this.y,an);$n.layer=Bn;var nr=S[Sn];nr===void 0&&(nr=S[Sn]=[]),nr.push({featureIndex:pe,feature:$n,intersectionZ:Gn})}}}}}},Nu.prototype.lookupSymbolFeatures=function(S,F,K,pe,Oe,Fe,Ge,tt){var ct={};this.loadVTLayers();for(var kt=xl(Oe),Mt=0,Dt=S;Mt<Dt.length;Mt+=1){var qt=Dt[Mt];this.loadMatchingFeature(ct,K,pe,qt,kt,Fe,Ge,tt,F)}return ct},Nu.prototype.hasLayer=function(S){for(var F=0,K=this.bucketLayerIDs;F<K.length;F+=1)for(var pe=0,Oe=K[F];pe<Oe.length;pe+=1)if(S===Oe[pe])return!0;return!1},Nu.prototype.getId=function(S,F){var K=S.id;if(this.promoteId){var pe=typeof this.promoteId=="string"?this.promoteId:this.promoteId[F];typeof(K=S.properties[pe])=="boolean"&&(K=Number(K))}return K},Sr("FeatureIndex",Nu,{omit:["rawTileData","sourceLayerCoder"]});var Da=function(S,F){this.tileID=S,this.uid=c(),this.uses=0,this.tileSize=F,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.expiredRequestCount=0,this.state="loading"};Da.prototype.registerFadeDuration=function(S){var F=S+this.timeAdded;F<te.now()||this.fadeEndTime&&F<this.fadeEndTime||(this.fadeEndTime=F)},Da.prototype.wasRequested=function(){return this.state==="errored"||this.state==="loaded"||this.state==="reloading"},Da.prototype.loadVectorData=function(S,F,K){if(this.hasData()&&this.unloadVectorData(),this.state="loaded",S){for(var pe in S.featureIndex&&(this.latestFeatureIndex=S.featureIndex,S.rawTileData?(this.latestRawTileData=S.rawTileData,this.latestFeatureIndex.rawTileData=S.rawTileData):this.latestRawTileData&&(this.latestFeatureIndex.rawTileData=this.latestRawTileData)),this.collisionBoxArray=S.collisionBoxArray,this.buckets=function(kt,Mt){var Dt={};if(!Mt)return Dt;for(var qt=function(){var un=an[Nt],Sn=un.layerIds.map(function(Gn){return Mt.getLayer(Gn)}).filter(Boolean);if(Sn.length!==0){un.layers=Sn,un.stateDependentLayerIds&&(un.stateDependentLayers=un.stateDependentLayerIds.map(function(Gn){return Sn.filter(function($n){return $n.id===Gn})[0]}));for(var Mn=0,zn=Sn;Mn<zn.length;Mn+=1){var Bn=zn[Mn];Dt[Bn.id]=un}}},Nt=0,an=kt;Nt<an.length;Nt+=1)qt();return Dt}(S.buckets,F.style),this.hasSymbolBuckets=!1,this.buckets){var Oe=this.buckets[pe];if(Oe instanceof mi){if(this.hasSymbolBuckets=!0,!K)break;Oe.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(var Fe in this.buckets){var Ge=this.buckets[Fe];if(Ge instanceof mi&&Ge.hasRTLText){this.hasRTLText=!0,Di.isLoading()||Di.isLoaded()||Vo()!=="deferred"||Du();break}}for(var tt in this.queryPadding=0,this.buckets){var ct=this.buckets[tt];this.queryPadding=Math.max(this.queryPadding,F.style.getLayer(tt).queryRadius(ct))}S.imageAtlas&&(this.imageAtlas=S.imageAtlas),S.glyphAtlasImage&&(this.glyphAtlasImage=S.glyphAtlasImage)}else this.collisionBoxArray=new mt},Da.prototype.unloadVectorData=function(){for(var S in this.buckets)this.buckets[S].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"},Da.prototype.getBucket=function(S){return this.buckets[S.id]},Da.prototype.upload=function(S){for(var F in this.buckets){var K=this.buckets[F];K.uploadPending()&&K.upload(S)}var pe=S.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new Qc(S,this.imageAtlas.image,pe.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new Qc(S,this.glyphAtlasImage,pe.ALPHA),this.glyphAtlasImage=null)},Da.prototype.prepare=function(S){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(S,this.imageAtlasTexture)},Da.prototype.queryRenderedFeatures=function(S,F,K,pe,Oe,Fe,Ge,tt,ct,kt){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:pe,cameraQueryGeometry:Oe,scale:Fe,tileSize:this.tileSize,pixelPosMatrix:kt,transform:tt,params:Ge,queryPadding:this.queryPadding*ct},S,F,K):{}},Da.prototype.querySourceFeatures=function(S,F){var K=this.latestFeatureIndex;if(K&&K.rawTileData){var pe=K.loadVTLayers(),Oe=F?F.sourceLayer:"",Fe=pe._geojsonTileLayer||pe[Oe];if(Fe)for(var Ge=xl(F&&F.filter),tt=this.tileID.canonical,ct=tt.z,kt=tt.x,Mt=tt.y,Dt={z:ct,x:kt,y:Mt},qt=0;qt<Fe.length;qt++){var Nt=Fe.feature(qt);if(Ge.filter(new li(this.tileID.overscaledZ),Nt)){var an=K.getId(Nt,Oe),un=new Bd(Nt,ct,kt,Mt,an);un.tile=Dt,S.push(un)}}}},Da.prototype.hasData=function(){return this.state==="loaded"||this.state==="reloading"||this.state==="expired"},Da.prototype.patternsLoaded=function(){return this.imageAtlas&&!!Object.keys(this.imageAtlas.patternPositions).length},Da.prototype.setExpiryData=function(S){var F=this.expirationTime;if(S.cacheControl){var K=O(S.cacheControl);K["max-age"]&&(this.expirationTime=Date.now()+1e3*K["max-age"])}else S.expires&&(this.expirationTime=new Date(S.expires).getTime());if(this.expirationTime){var pe=Date.now(),Oe=!1;if(this.expirationTime>pe)Oe=!1;else if(F)if(this.expirationTime<F)Oe=!0;else{var Fe=this.expirationTime-F;Fe?this.expirationTime=pe+Math.max(Fe,3e4):Oe=!0}else Oe=!0;Oe?(this.expiredRequestCount++,this.state="expired"):this.expiredRequestCount=0}},Da.prototype.getExpiryTimeout=function(){if(this.expirationTime)return this.expiredRequestCount?1e3*(1<<Math.min(this.expiredRequestCount-1,31)):Math.min(this.expirationTime-new Date().getTime(),Math.pow(2,31)-1)},Da.prototype.setFeatureState=function(S,F){if(this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData&&Object.keys(S).length!==0){var K=this.latestFeatureIndex.loadVTLayers();for(var pe in this.buckets)if(F.style.hasLayer(pe)){var Oe=this.buckets[pe],Fe=Oe.layers[0].sourceLayer||"_geojsonTileLayer",Ge=K[Fe],tt=S[Fe];if(Ge&&tt&&Object.keys(tt).length!==0){Oe.update(tt,Ge,this.imageAtlas&&this.imageAtlas.patternPositions||{});var ct=F&&F.style&&F.style.getLayer(pe);ct&&(this.queryPadding=Math.max(this.queryPadding,ct.queryRadius(Oe)))}}}},Da.prototype.holdingForFade=function(){return this.symbolFadeHoldUntil!==void 0},Da.prototype.symbolFadeFinished=function(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<te.now()},Da.prototype.clearFadeHold=function(){this.symbolFadeHoldUntil=void 0},Da.prototype.setHoldDuration=function(S){this.symbolFadeHoldUntil=te.now()+S},Da.prototype.setDependencies=function(S,F){for(var K={},pe=0,Oe=F;pe<Oe.length;pe+=1)K[Oe[pe]]=!0;this.dependencies[S]=K},Da.prototype.hasDependency=function(S,F){for(var K=0,pe=S;K<pe.length;K+=1){var Oe=pe[K],Fe=this.dependencies[Oe];if(Fe){for(var Ge=0,tt=F;Ge<tt.length;Ge+=1)if(Fe[tt[Ge]])return!0}}return!1};var yc=self.performance,Zx=function(S){this._marks={start:[S.url,"start"].join("#"),end:[S.url,"end"].join("#"),measure:S.url.toString()},yc.mark(this._marks.start)};Zx.prototype.finish=function(){yc.mark(this._marks.end);var S=yc.getEntriesByName(this._marks.measure);return S.length===0&&(yc.measure(this._marks.measure,this._marks.start,this._marks.end),S=yc.getEntriesByName(this._marks.measure),yc.clearMarks(this._marks.start),yc.clearMarks(this._marks.end),yc.clearMeasures(this._marks.measure)),S},i.Actor=Zf,i.AlphaImage=Jc,i.CanonicalTileID=tf,i.CollisionBoxArray=mt,i.Color=mn,i.DEMData=Bu,i.DataConstantProperty=Pr,i.DictionaryCoder=Fd,i.EXTENT=si,i.ErrorEvent=st,i.EvaluationParameters=li,i.Event=Qe,i.Evented=ft,i.FeatureIndex=Nu,i.FillBucket=Wl,i.FillExtrusionBucket=Zl,i.ImageAtlas=Jh,i.ImagePosition=Ed,i.LineBucket=Wo,i.LngLat=Bi,i.LngLatBounds=ka,i.MercatorCoordinate=ef,i.ONE_EM=Za,i.OverscaledTileID=Ta,i.Point=t,i.Point$1=t,i.Properties=va,i.Protobuf=Md,i.RGBAImage=Go,i.RequestManager=ce,i.RequestPerformance=Zx,i.ResourceType=bt,i.SegmentVector=_n,i.SourceFeatureState=Yf,i.StructArrayLayout1ui2=Xe,i.StructArrayLayout2f1f2i16=Le,i.StructArrayLayout2i4=Ga,i.StructArrayLayout3ui6=ne,i.StructArrayLayout4i8=al,i.SymbolBucket=mi,i.Texture=Qc,i.Tile=Da,i.Transitionable=Ao,i.Uniform1f=Vr,i.Uniform1i=Rr,i.Uniform2f=$r,i.Uniform3f=ai,i.Uniform4f=bi,i.UniformColor=_i,i.UniformMatrix4f=Fi,i.UnwrappedTileID=qx,i.ValidationError=je,i.WritingMode=Ds,i.ZoomHistory=ss,i.add=function(S,F,K){return S[0]=F[0]+K[0],S[1]=F[1]+K[1],S[2]=F[2]+K[2],S},i.addDynamicAttributes=ag,i.asyncAll=function(S,F,K){if(!S.length)return K(null,[]);var pe=S.length,Oe=new Array(S.length),Fe=null;S.forEach(function(Ge,tt){F(Ge,function(ct,kt){ct&&(Fe=ct),Oe[tt]=kt,--pe==0&&K(Fe,Oe)})})},i.bezier=r,i.bindAll=f,i.browser=te,i.cacheEntryPossiblyAdded=function(S){++ht>Ae&&(S.getActor().send("enforceCacheSizeLimit",Ce),ht=0)},i.clamp=a,i.clearTileCache=function(S){var F=self.caches.delete(ve);S&&F.catch(S).then(function(){return S()})},i.clipLine=Sx,i.clone=function(S){var F=new zs(16);return F[0]=S[0],F[1]=S[1],F[2]=S[2],F[3]=S[3],F[4]=S[4],F[5]=S[5],F[6]=S[6],F[7]=S[7],F[8]=S[8],F[9]=S[9],F[10]=S[10],F[11]=S[11],F[12]=S[12],F[13]=S[13],F[14]=S[14],F[15]=S[15],F},i.clone$1=T,i.clone$2=function(S){var F=new zs(3);return F[0]=S[0],F[1]=S[1],F[2]=S[2],F},i.collisionCircleLayout=D4,i.config=J,i.create=function(){var S=new zs(16);return zs!=Float32Array&&(S[1]=0,S[2]=0,S[3]=0,S[4]=0,S[6]=0,S[7]=0,S[8]=0,S[9]=0,S[11]=0,S[12]=0,S[13]=0,S[14]=0),S[0]=1,S[5]=1,S[10]=1,S[15]=1,S},i.create$1=function(){var S=new zs(9);return zs!=Float32Array&&(S[1]=0,S[2]=0,S[3]=0,S[5]=0,S[6]=0,S[7]=0),S[0]=1,S[4]=1,S[8]=1,S},i.create$2=function(){var S=new zs(4);return zs!=Float32Array&&(S[1]=0,S[2]=0),S[0]=1,S[3]=1,S},i.createCommonjsModule=_,i.createExpression=Nl,i.createLayout=Qi,i.createStyleLayer=function(S){return S.type==="custom"?new d6(S):new g6[S.type](S)},i.cross=function(S,F,K){var pe=F[0],Oe=F[1],Fe=F[2],Ge=K[0],tt=K[1],ct=K[2];return S[0]=Oe*ct-Fe*tt,S[1]=Fe*Ge-pe*ct,S[2]=pe*tt-Oe*Ge,S},i.deepEqual=function S(F,K){if(Array.isArray(F)){if(!Array.isArray(K)||F.length!==K.length)return!1;for(var pe=0;pe<F.length;pe++)if(!S(F[pe],K[pe]))return!1;return!0}if(typeof F=="object"&&F!==null&&K!==null){if(typeof K!="object"||Object.keys(F).length!==Object.keys(K).length)return!1;for(var Oe in F)if(!S(F[Oe],K[Oe]))return!1;return!0}return F===K},i.dot=function(S,F){return S[0]*F[0]+S[1]*F[1]+S[2]*F[2]},i.dot$1=function(S,F){return S[0]*F[0]+S[1]*F[1]+S[2]*F[2]+S[3]*F[3]},i.ease=n,i.emitValidationErrors=wo,i.endsWith=v,i.enforceCacheSizeLimit=function(S){Ue(),he&&he.then(function(F){F.keys().then(function(K){for(var pe=0;pe<K.length-S;pe++)F.delete(K[pe])})})},i.evaluateSizeForFeature=bx,i.evaluateSizeForZoom=_x,i.evaluateVariableOffset=Lx,i.evented=Ji,i.extend=u,i.featureFilter=xl,i.filterObject=x,i.fromRotation=function(S,F){var K=Math.sin(F),pe=Math.cos(F);return S[0]=pe,S[1]=K,S[2]=0,S[3]=-K,S[4]=pe,S[5]=0,S[6]=0,S[7]=0,S[8]=1,S},i.getAnchorAlignment=tg,i.getAnchorJustification=ig,i.getArrayBuffer=Et,i.getImage=Je,i.getJSON=function(S,F){return Tt(u(S,{type:"json"}),F)},i.getRTLTextPluginStatus=Vo,i.getReferrer=ut,i.getVideo=function(S,F){var K,pe,Oe=self.document.createElement("video");Oe.muted=!0,Oe.onloadstart=function(){F(null,Oe)};for(var Fe=0;Fe<S.length;Fe++){var Ge=self.document.createElement("source");K=S[Fe],pe=void 0,(pe=self.document.createElement("a")).href=K,pe.protocol===self.document.location.protocol&&pe.host===self.document.location.host||(Oe.crossOrigin="Anonymous"),Ge.src=S[Fe],Oe.appendChild(Ge)}return{cancel:function(){}}},i.identity=j1,i.invert=function(S,F){var K=F[0],pe=F[1],Oe=F[2],Fe=F[3],Ge=F[4],tt=F[5],ct=F[6],kt=F[7],Mt=F[8],Dt=F[9],qt=F[10],Nt=F[11],an=F[12],un=F[13],Sn=F[14],Mn=F[15],zn=K*tt-pe*Ge,Bn=K*ct-Oe*Ge,Gn=K*kt-Fe*Ge,$n=pe*ct-Oe*tt,nr=pe*kt-Fe*tt,xr=Oe*kt-Fe*ct,dr=Mt*un-Dt*an,kr=Mt*Sn-qt*an,Cr=Mt*Mn-Nt*an,Hr=Dt*Sn-qt*un,Or=Dt*Mn-Nt*un,Ur=qt*Mn-Nt*Sn,Dr=zn*Ur-Bn*Or+Gn*Hr+$n*Cr-nr*kr+xr*dr;return Dr?(Dr=1/Dr,S[0]=(tt*Ur-ct*Or+kt*Hr)*Dr,S[1]=(Oe*Or-pe*Ur-Fe*Hr)*Dr,S[2]=(un*xr-Sn*nr+Mn*$n)*Dr,S[3]=(qt*nr-Dt*xr-Nt*$n)*Dr,S[4]=(ct*Cr-Ge*Ur-kt*kr)*Dr,S[5]=(K*Ur-Oe*Cr+Fe*kr)*Dr,S[6]=(Sn*Gn-an*xr-Mn*Bn)*Dr,S[7]=(Mt*xr-qt*Gn+Nt*Bn)*Dr,S[8]=(Ge*Or-tt*Cr+kt*dr)*Dr,S[9]=(pe*Cr-K*Or-Fe*dr)*Dr,S[10]=(an*nr-un*Gn+Mn*zn)*Dr,S[11]=(Dt*Gn-Mt*nr-Nt*zn)*Dr,S[12]=(tt*kr-Ge*Hr-ct*dr)*Dr,S[13]=(K*Hr-pe*kr+Oe*dr)*Dr,S[14]=(un*Bn-an*$n-Sn*zn)*Dr,S[15]=(Mt*$n-Dt*Bn+qt*zn)*Dr,S):null},i.isChar=Tr,i.isMapboxURL=de,i.keysDifference=function(S,F){var K=[];for(var pe in S)pe in F||K.push(pe);return K},i.makeRequest=Tt,i.mapObject=m,i.mercatorXfromLng=Ux,i.mercatorYfromLat=Vx,i.mercatorZfromAltitude=Hx,i.mul=K5,i.multiply=Ny,i.mvt=Df,i.normalize=function(S,F){var K=F[0],pe=F[1],Oe=F[2],Fe=K*K+pe*pe+Oe*Oe;return Fe>0&&(Fe=1/Math.sqrt(Fe)),S[0]=F[0]*Fe,S[1]=F[1]*Fe,S[2]=F[2]*Fe,S},i.number=Jn,i.offscreenCanvasSupported=nt,i.ortho=function(S,F,K,pe,Oe,Fe,Ge){var tt=1/(F-K),ct=1/(pe-Oe),kt=1/(Fe-Ge);return S[0]=-2*tt,S[1]=0,S[2]=0,S[3]=0,S[4]=0,S[5]=-2*ct,S[6]=0,S[7]=0,S[8]=0,S[9]=0,S[10]=2*kt,S[11]=0,S[12]=(F+K)*tt,S[13]=(Oe+pe)*ct,S[14]=(Ge+Fe)*kt,S[15]=1,S},i.parseGlyphPBF=function(S){return new Md(S).readFields(Z4,[])},i.pbf=Md,i.performSymbolLayout=function(S,F,K,pe,Oe,Fe,Ge){S.createArrays();var tt=512*S.overscaling;S.tilePixelRatio=si/tt,S.compareText={},S.iconsNeedLinear=!1;var ct=S.layers[0].layout,kt=S.layers[0]._unevaluatedLayout._values,Mt={};if(S.textSizeData.kind==="composite"){var Dt=S.textSizeData,qt=Dt.minZoom,Nt=Dt.maxZoom;Mt.compositeTextSizes=[kt["text-size"].possiblyEvaluate(new li(qt),Ge),kt["text-size"].possiblyEvaluate(new li(Nt),Ge)]}if(S.iconSizeData.kind==="composite"){var an=S.iconSizeData,un=an.minZoom,Sn=an.maxZoom;Mt.compositeIconSizes=[kt["icon-size"].possiblyEvaluate(new li(un),Ge),kt["icon-size"].possiblyEvaluate(new li(Sn),Ge)]}Mt.layoutTextSize=kt["text-size"].possiblyEvaluate(new li(S.zoom+1),Ge),Mt.layoutIconSize=kt["icon-size"].possiblyEvaluate(new li(S.zoom+1),Ge),Mt.textMaxSize=kt["text-size"].possiblyEvaluate(new li(18));for(var Mn=ct.get("text-line-height")*Za,zn=ct.get("text-rotation-alignment")==="map"&&ct.get("symbol-placement")!=="point",Bn=ct.get("text-keep-upright"),Gn=ct.get("text-size"),$n=function(){var dr=xr[nr],kr=ct.get("text-font").evaluate(dr,{},Ge).join(","),Cr=Gn.evaluate(dr,{},Ge),Hr=Mt.layoutTextSize.evaluate(dr,{},Ge),Or=Mt.layoutIconSize.evaluate(dr,{},Ge),Ur={horizontal:{},vertical:void 0},Dr=dr.text,Lr=[0,0];if(Dr){var Qr=Dr.toString(),Gr=ct.get("text-letter-spacing").evaluate(dr,{},Ge)*Za,Si=function(Wr){for(var ri=0,ta=Wr;ri<ta.length;ri+=1)if(ki=ta[ri].charCodeAt(0),Tr.Arabic(ki)||Tr["Arabic Supplement"](ki)||Tr["Arabic Extended-A"](ki)||Tr["Arabic Presentation Forms-A"](ki)||Tr["Arabic Presentation Forms-B"](ki))return!1;var ki;return!0}(Qr)?Gr:0,jr=ct.get("text-anchor").evaluate(dr,{},Ge),yi=ct.get("text-variable-anchor");if(!yi){var Pi=ct.get("text-radial-offset").evaluate(dr,{},Ge);Lr=Pi?Lx(jr,[Pi*Za,rg]):ct.get("text-offset").evaluate(dr,{},Ge).map(function(Wr){return Wr*Za})}var Ii=zn?"center":ct.get("text-justify").evaluate(dr,{},Ge),Ri=ct.get("symbol-placement"),Ei=Ri==="point"?ct.get("text-max-width").evaluate(dr,{},Ge)*Za:0,Aa=function(){S.allowVerticalPlacement&&ko(Qr)&&(Ur.vertical=Cd(Dr,F,K,Oe,kr,Ei,Mn,jr,"left",Si,Lr,Ds.vertical,!0,Ri,Hr,Cr))};if(!zn&&yi){for(var Hi=Ii==="auto"?yi.map(function(Wr){return ig(Wr)}):[Ii],Fa=!1,ro=0;ro<Hi.length;ro++){var Ya=Hi[ro];if(!Ur.horizontal[Ya])if(Fa)Ur.horizontal[Ya]=Ur.horizontal[0];else{var So=Cd(Dr,F,K,Oe,kr,Ei,Mn,"center",Ya,Si,Lr,Ds.horizontal,!1,Ri,Hr,Cr);So&&(Ur.horizontal[Ya]=So,Fa=So.positionedLines.length===1)}}Aa()}else{Ii==="auto"&&(Ii=ig(jr));var Xa=Cd(Dr,F,K,Oe,kr,Ei,Mn,jr,Ii,Si,Lr,Ds.horizontal,!1,Ri,Hr,Cr);Xa&&(Ur.horizontal[Ii]=Xa),Aa(),ko(Qr)&&zn&&Bn&&(Ur.vertical=Cd(Dr,F,K,Oe,kr,Ei,Mn,jr,Ii,Si,Lr,Ds.vertical,!1,Ri,Hr,Cr))}}var Oa=void 0,$a=!1;if(dr.icon&&dr.icon.name){var Ba=pe[dr.icon.name];Ba&&(Oa=function(Wr,ri,ta){var ki=tg(ta),Zi=ki.horizontalAlign,Ni=ki.verticalAlign,ui=ri[0],na=ri[1],Eo=ui-Wr.displaySize[0]*Zi,hs=Eo+Wr.displaySize[0],go=na-Wr.displaySize[1]*Ni;return{image:Wr,top:go,bottom:go+Wr.displaySize[1],left:Eo,right:hs}}(Oe[dr.icon.name],ct.get("icon-offset").evaluate(dr,{},Ge),ct.get("icon-anchor").evaluate(dr,{},Ge)),$a=Ba.sdf,S.sdfIcons===void 0?S.sdfIcons=Ba.sdf:S.sdfIcons!==Ba.sdf&&M("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),(Ba.pixelRatio!==S.pixelRatio||ct.get("icon-rotate").constantOr(1)!==0)&&(S.iconsNeedLinear=!0))}var Ia=Ox(Ur.horizontal)||Ur.vertical;S.iconsInText=!!Ia&&Ia.iconsInText,(Ia||Oa)&&function(Wr,ri,ta,ki,Zi,Ni,ui,na,Eo,hs,go){var Xl=Ni.textMaxSize.evaluate(ri,{});Xl===void 0&&(Xl=ui);var ju,Na=Wr.layers[0].layout,$l=Na.get("icon-offset").evaluate(ri,{},go),Ml=Ox(ta.horizontal),Sl=24,nf=ui/Sl,Nd=Wr.tilePixelRatio*nf,rf=Wr.tilePixelRatio*Xl/Sl,jd=Wr.tilePixelRatio*na,rp=Wr.tilePixelRatio*Na.get("symbol-spacing"),cg=Na.get("text-padding")*Wr.tilePixelRatio,Ud=Na.get("icon-padding")*Wr.tilePixelRatio,Xf=Na.get("text-max-angle")/180*Math.PI,Vd=Na.get("text-rotation-alignment")==="map"&&Na.get("symbol-placement")!=="point",Hd=Na.get("icon-rotation-alignment")==="map"&&Na.get("symbol-placement")!=="point",ip=Na.get("symbol-placement"),fg=rp/2,ap=Na.get("icon-text-fit");ki&&ap!=="none"&&(Wr.allowVerticalPlacement&&ta.vertical&&(ju=xx(ki,ta.vertical,ap,Na.get("icon-text-fit-padding"),$l,nf)),Ml&&(ki=xx(ki,Ml,ap,Na.get("icon-text-fit-padding"),$l,nf)));var af=function(m6,fp){fp.x<0||fp.x>=si||fp.y<0||fp.y>=si||function(ca,Kl,y6,xc,mg,Jx,Yd,gu,Xd,hp,$d,Kd,yg,Qx,pp,e2,t2,n2,r2,i2,Fs,Jd,a2,vu,x6){var o2,lf,Jf,Qf,eh,th=ca.addToLineVertexArray(Kl,y6),s2=0,l2=0,u2=0,c2=0,xg=-1,bg=-1,Uu={},f2=pr(""),_g=0,wg=0;if(gu._unevaluatedLayout.getValue("text-radial-offset")===void 0?(_g=(o2=gu.layout.get("text-offset").evaluate(Fs,{},vu).map(function(gp){return gp*Za}))[0],wg=o2[1]):(_g=gu.layout.get("text-radial-offset").evaluate(Fs,{},vu)*Za,wg=rg),ca.allowVerticalPlacement&&xc.vertical){var h2=gu.layout.get("text-rotate").evaluate(Fs,{},vu)+90,b6=xc.vertical;Qf=new Rd(Xd,Kl,hp,$d,Kd,b6,yg,Qx,pp,h2),Yd&&(eh=new Rd(Xd,Kl,hp,$d,Kd,Yd,t2,n2,pp,h2))}if(mg){var kg=gu.layout.get("icon-rotate").evaluate(Fs,{}),p2=gu.layout.get("icon-text-fit")!=="none",d2=Ex(mg,kg,a2,p2),Tg=Yd?Ex(Yd,kg,a2,p2):void 0;Jf=new Rd(Xd,Kl,hp,$d,Kd,mg,t2,n2,!1,kg),s2=4*d2.length;var g2=ca.iconSizeData,dp=null;g2.kind==="source"?(dp=[Yl*gu.layout.get("icon-size").evaluate(Fs,{})])[0]>mc&&M(ca.layerIds[0]+': Value for "icon-size" is >= '+ep+'. Reduce your "icon-size".'):g2.kind==="composite"&&((dp=[Yl*Jd.compositeIconSizes[0].evaluate(Fs,{},vu),Yl*Jd.compositeIconSizes[1].evaluate(Fs,{},vu)])[0]>mc||dp[1]>mc)&&M(ca.layerIds[0]+': Value for "icon-size" is >= '+ep+'. Reduce your "icon-size".'),ca.addSymbols(ca.icon,d2,dp,i2,r2,Fs,!1,Kl,th.lineStartIndex,th.lineLength,-1,vu),xg=ca.icon.placedSymbolArray.length-1,Tg&&(l2=4*Tg.length,ca.addSymbols(ca.icon,Tg,dp,i2,r2,Fs,Ds.vertical,Kl,th.lineStartIndex,th.lineLength,-1,vu),bg=ca.icon.placedSymbolArray.length-1)}for(var v2 in xc.horizontal){var Qd=xc.horizontal[v2];if(!lf){f2=pr(Qd.text);var _6=gu.layout.get("text-rotate").evaluate(Fs,{},vu);lf=new Rd(Xd,Kl,hp,$d,Kd,Qd,yg,Qx,pp,_6)}var m2=Qd.positionedLines.length===1;if(u2+=Px(ca,Kl,Qd,Jx,gu,pp,Fs,e2,th,xc.vertical?Ds.horizontal:Ds.horizontalOnly,m2?Object.keys(xc.horizontal):[v2],Uu,xg,Jd,vu),m2)break}xc.vertical&&(c2+=Px(ca,Kl,xc.vertical,Jx,gu,pp,Fs,e2,th,Ds.vertical,["vertical"],Uu,bg,Jd,vu));var w6=lf?lf.boxStartIndex:ca.collisionBoxArray.length,k6=lf?lf.boxEndIndex:ca.collisionBoxArray.length,T6=Qf?Qf.boxStartIndex:ca.collisionBoxArray.length,A6=Qf?Qf.boxEndIndex:ca.collisionBoxArray.length,M6=Jf?Jf.boxStartIndex:ca.collisionBoxArray.length,S6=Jf?Jf.boxEndIndex:ca.collisionBoxArray.length,E6=eh?eh.boxStartIndex:ca.collisionBoxArray.length,C6=eh?eh.boxEndIndex:ca.collisionBoxArray.length,mu=-1,e0=function(gp,x2){return gp&&gp.circleDiameter?Math.max(gp.circleDiameter,x2):x2};mu=e0(lf,mu),mu=e0(Qf,mu),mu=e0(Jf,mu);var y2=(mu=e0(eh,mu))>-1?1:0;y2&&(mu*=x6/Za),ca.glyphOffsetArray.length>=mi.MAX_GLYPHS&&M("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),Fs.sortKey!==void 0&&ca.addToSortKeyRanges(ca.symbolInstances.length,Fs.sortKey),ca.symbolInstances.emplaceBack(Kl.x,Kl.y,Uu.right>=0?Uu.right:-1,Uu.center>=0?Uu.center:-1,Uu.left>=0?Uu.left:-1,Uu.vertical||-1,xg,bg,f2,w6,k6,T6,A6,M6,S6,E6,C6,hp,u2,c2,s2,l2,y2,0,yg,_g,wg,mu)}(Wr,fp,m6,ta,ki,Zi,ju,Wr.layers[0],Wr.collisionBoxArray,ri.index,ri.sourceLayerIndex,Wr.index,Nd,cg,Vd,Eo,jd,Ud,Hd,$l,ri,Ni,hs,go,ui)};if(ip==="line")for(var $f=0,qd=Sx(ri.geometry,0,0,si,si);$f<qd.length;$f+=1)for(var Gd=qd[$f],Kf=0,Wd=e6(Gd,rp,Xf,ta.vertical||Ml,ki,Sl,rf,Wr.overscaling,si);Kf<Wd.length;Kf+=1){var Zd=Wd[Kf];Ml&&i6(Wr,Ml.text,fg,Zd)||af(Gd,Zd)}else if(ip==="line-center")for(var op=0,sp=ri.geometry;op<sp.length;op+=1){var of=sp[op];if(of.length>1){var lp=Q4(of,Xf,ta.vertical||Ml,ki,Sl,rf);lp&&af(of,lp)}}else if(ri.type==="Polygon")for(var sf=0,up=Z1(ri.geometry,0);sf<up.length;sf+=1){var cp=up[sf],Yx=n6(cp,16);af(cp[0],new jf(Yx.x,Yx.y,0))}else if(ri.type==="LineString")for(var hg=0,Xx=ri.geometry;hg<Xx.length;hg+=1){var pg=Xx[hg];af(pg,new jf(pg[0].x,pg[0].y,0))}else if(ri.type==="Point")for(var dg=0,$x=ri.geometry;dg<$x.length;dg+=1)for(var gg=0,Kx=$x[dg];gg<Kx.length;gg+=1){var vg=Kx[gg];af([vg],new jf(vg.x,vg.y,0))}}(S,dr,Ur,Oa,pe,Mt,Hr,Or,Lr,$a,Ge)},nr=0,xr=S.features;nr<xr.length;nr+=1)$n();Fe&&S.generateCollisionDebugBuffers()},i.perspective=function(S,F,K,pe,Oe){var Fe,Ge=1/Math.tan(F/2);return S[0]=Ge/K,S[1]=0,S[2]=0,S[3]=0,S[4]=0,S[5]=Ge,S[6]=0,S[7]=0,S[8]=0,S[9]=0,S[11]=-1,S[12]=0,S[13]=0,S[15]=0,Oe!=null&&Oe!==1/0?(Fe=1/(pe-Oe),S[10]=(Oe+pe)*Fe,S[14]=2*Oe*pe*Fe):(S[10]=-1,S[14]=-2*pe),S},i.pick=function(S,F){for(var K={},pe=0;pe<F.length;pe++){var Oe=F[pe];Oe in S&&(K[Oe]=S[Oe])}return K},i.plugin=Di,i.polygonIntersectsPolygon=Mo,i.postMapLoadEvent=qe,i.postTurnstileEvent=Te,i.potpack=dx,i.refProperties=["type","source","source-layer","minzoom","maxzoom","filter","layout"],i.register=Sr,i.registerForPluginStateChange=function(S){return S({pluginStatus:sa,pluginURL:pi}),Ji.on("pluginStateChange",S),S},i.rotate=function(S,F,K){var pe=F[0],Oe=F[1],Fe=F[2],Ge=F[3],tt=Math.sin(K),ct=Math.cos(K);return S[0]=pe*ct+Fe*tt,S[1]=Oe*ct+Ge*tt,S[2]=pe*-tt+Fe*ct,S[3]=Oe*-tt+Ge*ct,S},i.rotateX=function(S,F,K){var pe=Math.sin(K),Oe=Math.cos(K),Fe=F[4],Ge=F[5],tt=F[6],ct=F[7],kt=F[8],Mt=F[9],Dt=F[10],qt=F[11];return F!==S&&(S[0]=F[0],S[1]=F[1],S[2]=F[2],S[3]=F[3],S[12]=F[12],S[13]=F[13],S[14]=F[14],S[15]=F[15]),S[4]=Fe*Oe+kt*pe,S[5]=Ge*Oe+Mt*pe,S[6]=tt*Oe+Dt*pe,S[7]=ct*Oe+qt*pe,S[8]=kt*Oe-Fe*pe,S[9]=Mt*Oe-Ge*pe,S[10]=Dt*Oe-tt*pe,S[11]=qt*Oe-ct*pe,S},i.rotateZ=function(S,F,K){var pe=Math.sin(K),Oe=Math.cos(K),Fe=F[0],Ge=F[1],tt=F[2],ct=F[3],kt=F[4],Mt=F[5],Dt=F[6],qt=F[7];return F!==S&&(S[8]=F[8],S[9]=F[9],S[10]=F[10],S[11]=F[11],S[12]=F[12],S[13]=F[13],S[14]=F[14],S[15]=F[15]),S[0]=Fe*Oe+kt*pe,S[1]=Ge*Oe+Mt*pe,S[2]=tt*Oe+Dt*pe,S[3]=ct*Oe+qt*pe,S[4]=kt*Oe-Fe*pe,S[5]=Mt*Oe-Ge*pe,S[6]=Dt*Oe-tt*pe,S[7]=qt*Oe-ct*pe,S},i.scale=function(S,F,K){var pe=K[0],Oe=K[1],Fe=K[2];return S[0]=F[0]*pe,S[1]=F[1]*pe,S[2]=F[2]*pe,S[3]=F[3]*pe,S[4]=F[4]*Oe,S[5]=F[5]*Oe,S[6]=F[6]*Oe,S[7]=F[7]*Oe,S[8]=F[8]*Fe,S[9]=F[9]*Fe,S[10]=F[10]*Fe,S[11]=F[11]*Fe,S[12]=F[12],S[13]=F[13],S[14]=F[14],S[15]=F[15],S},i.scale$1=function(S,F,K){return S[0]=F[0]*K,S[1]=F[1]*K,S[2]=F[2]*K,S[3]=F[3]*K,S},i.scale$2=function(S,F,K){return S[0]=F[0]*K,S[1]=F[1]*K,S[2]=F[2]*K,S},i.setCacheLimits=function(S,F){Ce=S,Ae=F},i.setRTLTextPlugin=function(S,F,K){if(K===void 0&&(K=!1),sa===Uo||sa===ls||sa===Ki)throw new Error("setRTLTextPlugin cannot be called multiple times.");pi=te.resolveURL(S),sa=Uo,wl=F,qa(),K||Du()},i.sphericalToCartesian=function(S){var F=S[0],K=S[1],pe=S[2];return K+=90,K*=Math.PI/180,pe*=Math.PI/180,{x:F*Math.cos(K)*Math.sin(pe),y:F*Math.sin(K)*Math.sin(pe),z:F*Math.cos(pe)}},i.sqrLen=Q5,i.styleSpec=Be,i.sub=J5,i.symbolSize=J4,i.transformMat3=function(S,F,K){var pe=F[0],Oe=F[1],Fe=F[2];return S[0]=pe*K[0]+Oe*K[3]+Fe*K[6],S[1]=pe*K[1]+Oe*K[4]+Fe*K[7],S[2]=pe*K[2]+Oe*K[5]+Fe*K[8],S},i.transformMat4=_d,i.translate=function(S,F,K){var pe,Oe,Fe,Ge,tt,ct,kt,Mt,Dt,qt,Nt,an,un=K[0],Sn=K[1],Mn=K[2];return F===S?(S[12]=F[0]*un+F[4]*Sn+F[8]*Mn+F[12],S[13]=F[1]*un+F[5]*Sn+F[9]*Mn+F[13],S[14]=F[2]*un+F[6]*Sn+F[10]*Mn+F[14],S[15]=F[3]*un+F[7]*Sn+F[11]*Mn+F[15]):(pe=F[0],Oe=F[1],Fe=F[2],Ge=F[3],tt=F[4],ct=F[5],kt=F[6],Mt=F[7],Dt=F[8],qt=F[9],Nt=F[10],an=F[11],S[0]=pe,S[1]=Oe,S[2]=Fe,S[3]=Ge,S[4]=tt,S[5]=ct,S[6]=kt,S[7]=Mt,S[8]=Dt,S[9]=qt,S[10]=Nt,S[11]=an,S[12]=pe*un+tt*Sn+Dt*Mn+F[12],S[13]=Oe*un+ct*Sn+qt*Mn+F[13],S[14]=Fe*un+kt*Sn+Nt*Mn+F[14],S[15]=Ge*un+Mt*Sn+an*Mn+F[15]),S},i.triggerPluginCompletionEvent=Gl,i.uniqueId=c,i.validateCustomStyleLayer=function(S){var F=[],K=S.id;return K===void 0&&F.push({message:"layers."+K+': missing required property "id"'}),S.render===void 0&&F.push({message:"layers."+K+': missing required method "render"'}),S.renderingMode&&S.renderingMode!=="2d"&&S.renderingMode!=="3d"&&F.push({message:"layers."+K+': property "renderingMode" must be either "2d" or "3d"'}),F},i.validateLight=$i,i.validateStyle=da,i.values=function(S){var F=[];for(var K in S)F.push(S[K]);return F},i.vectorTile=Df,i.version=y,i.warnOnce=M,i.webpSupported=X,i.window=self,i.wrap=s}),k(0,function(i){function _(Je){var et=typeof Je;if(et==="number"||et==="boolean"||et==="string"||Je==null)return JSON.stringify(Je);if(Array.isArray(Je)){for(var Ze="[",Qe=0,st=Je;Qe<st.length;Qe+=1)Ze+=_(st[Qe])+",";return Ze+"]"}for(var ft=Object.keys(Je).sort(),Be="{",je=0;je<ft.length;je++)Be+=JSON.stringify(ft[je])+":"+_(Je[ft[je]])+",";return Be+"}"}function y(Je){for(var et="",Ze=0,Qe=i.refProperties;Ze<Qe.length;Ze+=1)et+="/"+_(Je[Qe[Ze]]);return et}var h=function(Je){this.keyCache={},Je&&this.replace(Je)};h.prototype.replace=function(Je){this._layerConfigs={},this._layers={},this.update(Je,[])},h.prototype.update=function(Je,et){for(var Ze=this,Qe=0,st=Je;Qe<st.length;Qe+=1){var ft=st[Qe];this._layerConfigs[ft.id]=ft;var Be=this._layers[ft.id]=i.createStyleLayer(ft);Be._featureFilter=i.featureFilter(Be.filter),this.keyCache[ft.id]&&delete this.keyCache[ft.id]}for(var je=0,at=et;je<at.length;je+=1){var ot=at[je];delete this.keyCache[ot],delete this._layerConfigs[ot],delete this._layers[ot]}this.familiesBySource={};for(var xt=0,yt=function(Bt,jt){for(var Ut={},tn=0;tn<Bt.length;tn++){var Xt=jt&&jt[Bt[tn].id]||y(Bt[tn]);jt&&(jt[Bt[tn].id]=Xt);var Qt=Ut[Xt];Qt||(Qt=Ut[Xt]=[]),Qt.push(Bt[tn])}var Gt=[];for(var vn in Ut)Gt.push(Ut[vn]);return Gt}(i.values(this._layerConfigs),this.keyCache);xt<yt.length;xt+=1){var _t=yt[xt].map(function(Bt){return Ze._layers[Bt.id]}),gt=_t[0];if(gt.visibility!=="none"){var Ct=gt.source||"",dt=this.familiesBySource[Ct];dt||(dt=this.familiesBySource[Ct]={});var vt=gt.sourceLayer||"_geojsonTileLayer",At=dt[vt];At||(At=dt[vt]=[]),At.push(_t)}}};var l=function(Je){var et={},Ze=[];for(var Qe in Je){var st=Je[Qe],ft=et[Qe]={};for(var Be in st){var je=st[+Be];if(je&&je.bitmap.width!==0&&je.bitmap.height!==0){var at={x:0,y:0,w:je.bitmap.width+2,h:je.bitmap.height+2};Ze.push(at),ft[Be]={rect:at,metrics:je.metrics}}}}var ot=i.potpack(Ze),xt=ot.w,yt=ot.h,_t=new i.AlphaImage({width:xt||1,height:yt||1});for(var gt in Je){var Ct=Je[gt];for(var dt in Ct){var vt=Ct[+dt];if(vt&&vt.bitmap.width!==0&&vt.bitmap.height!==0){var At=et[gt][dt].rect;i.AlphaImage.copy(vt.bitmap,_t,{x:0,y:0},{x:At.x+1,y:At.y+1},vt.bitmap)}}}this.image=_t,this.positions=et};i.register("GlyphAtlas",l);var t=function(Je){this.tileID=new i.OverscaledTileID(Je.tileID.overscaledZ,Je.tileID.wrap,Je.tileID.canonical.z,Je.tileID.canonical.x,Je.tileID.canonical.y),this.uid=Je.uid,this.zoom=Je.zoom,this.pixelRatio=Je.pixelRatio,this.tileSize=Je.tileSize,this.source=Je.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=Je.showCollisionBoxes,this.collectResourceTiming=!!Je.collectResourceTiming,this.returnDependencies=!!Je.returnDependencies,this.promoteId=Je.promoteId};function o(Je,et,Ze){for(var Qe=new i.EvaluationParameters(et),st=0,ft=Je;st<ft.length;st+=1)ft[st].recalculate(Qe,Ze)}function r(Je,et){var Ze=i.getArrayBuffer(Je.request,function(Qe,st,ft,Be){Qe?et(Qe):st&&et(null,{vectorTile:new i.vectorTile.VectorTile(new i.pbf(st)),rawData:st,cacheControl:ft,expires:Be})});return function(){Ze.cancel(),et()}}t.prototype.parse=function(Je,et,Ze,Qe,st){var ft=this;this.status="parsing",this.data=Je,this.collisionBoxArray=new i.CollisionBoxArray;var Be=new i.DictionaryCoder(Object.keys(Je.layers).sort()),je=new i.FeatureIndex(this.tileID,this.promoteId);je.bucketLayerIDs=[];var at,ot,xt,yt,_t={},gt={featureIndex:je,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:Ze},Ct=et.familiesBySource[this.source];for(var dt in Ct){var vt=Je.layers[dt];if(vt){vt.version===1&&i.warnOnce('Vector tile source "'+this.source+'" layer "'+dt+'" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var At=Be.encode(dt),Bt=[],jt=0;jt<vt.length;jt++){var Ut=vt.feature(jt),tn=je.getId(Ut,dt);Bt.push({feature:Ut,id:tn,index:jt,sourceLayerIndex:At})}for(var Xt=0,Qt=Ct[dt];Xt<Qt.length;Xt+=1){var Gt=Qt[Xt],vn=Gt[0];vn.minzoom&&this.zoom<Math.floor(vn.minzoom)||vn.maxzoom&&this.zoom>=vn.maxzoom||vn.visibility!=="none"&&(o(Gt,this.zoom,Ze),(_t[vn.id]=vn.createBucket({index:je.bucketLayerIDs.length,layers:Gt,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:At,sourceID:this.source})).populate(Bt,gt,this.tileID.canonical),je.bucketLayerIDs.push(Gt.map(function(nn){return nn.id})))}}}var Tn=i.mapObject(gt.glyphDependencies,function(nn){return Object.keys(nn).map(Number)});Object.keys(Tn).length?Qe.send("getGlyphs",{uid:this.uid,stacks:Tn},function(nn,fn){at||(at=nn,ot=fn,ln.call(ft))}):ot={};var dn=Object.keys(gt.iconDependencies);dn.length?Qe.send("getImages",{icons:dn,source:this.source,tileID:this.tileID,type:"icons"},function(nn,fn){at||(at=nn,xt=fn,ln.call(ft))}):xt={};var Yt=Object.keys(gt.patternDependencies);function ln(){if(at)return st(at);if(ot&&xt&&yt){var nn=new l(ot),fn=new i.ImageAtlas(xt,yt);for(var mn in _t){var xn=_t[mn];xn instanceof i.SymbolBucket?(o(xn.layers,this.zoom,Ze),i.performSymbolLayout(xn,ot,nn.positions,xt,fn.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):xn.hasPattern&&(xn instanceof i.LineBucket||xn instanceof i.FillBucket||xn instanceof i.FillExtrusionBucket)&&(o(xn.layers,this.zoom,Ze),xn.addFeatures(gt,this.tileID.canonical,fn.patternPositions))}this.status="done",st(null,{buckets:i.values(_t).filter(function(Pn){return!Pn.isEmpty()}),featureIndex:je,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:nn.image,imageAtlas:fn,glyphMap:this.returnDependencies?ot:null,iconMap:this.returnDependencies?xt:null,glyphPositions:this.returnDependencies?nn.positions:null})}}Yt.length?Qe.send("getImages",{icons:Yt,source:this.source,tileID:this.tileID,type:"patterns"},function(nn,fn){at||(at=nn,yt=fn,ln.call(ft))}):yt={},ln.call(this)};var n=function(Je,et,Ze,Qe){this.actor=Je,this.layerIndex=et,this.availableImages=Ze,this.loadVectorData=Qe||r,this.loading={},this.loaded={}};n.prototype.loadTile=function(Je,et){var Ze=this,Qe=Je.uid;this.loading||(this.loading={});var st=!!(Je&&Je.request&&Je.request.collectResourceTiming)&&new i.RequestPerformance(Je.request),ft=this.loading[Qe]=new t(Je);ft.abort=this.loadVectorData(Je,function(Be,je){if(delete Ze.loading[Qe],Be||!je)return ft.status="done",Ze.loaded[Qe]=ft,et(Be);var at=je.rawData,ot={};je.expires&&(ot.expires=je.expires),je.cacheControl&&(ot.cacheControl=je.cacheControl);var xt={};if(st){var yt=st.finish();yt&&(xt.resourceTiming=JSON.parse(JSON.stringify(yt)))}ft.vectorTile=je.vectorTile,ft.parse(je.vectorTile,Ze.layerIndex,Ze.availableImages,Ze.actor,function(_t,gt){if(_t||!gt)return et(_t);et(null,i.extend({rawTileData:at.slice(0)},gt,ot,xt))}),Ze.loaded=Ze.loaded||{},Ze.loaded[Qe]=ft})},n.prototype.reloadTile=function(Je,et){var Ze=this,Qe=this.loaded,st=Je.uid,ft=this;if(Qe&&Qe[st]){var Be=Qe[st];Be.showCollisionBoxes=Je.showCollisionBoxes;var je=function(at,ot){var xt=Be.reloadCallback;xt&&(delete Be.reloadCallback,Be.parse(Be.vectorTile,ft.layerIndex,Ze.availableImages,ft.actor,xt)),et(at,ot)};Be.status==="parsing"?Be.reloadCallback=je:Be.status==="done"&&(Be.vectorTile?Be.parse(Be.vectorTile,this.layerIndex,this.availableImages,this.actor,je):je())}},n.prototype.abortTile=function(Je,et){var Ze=this.loading,Qe=Je.uid;Ze&&Ze[Qe]&&Ze[Qe].abort&&(Ze[Qe].abort(),delete Ze[Qe]),et()},n.prototype.removeTile=function(Je,et){var Ze=this.loaded,Qe=Je.uid;Ze&&Ze[Qe]&&delete Ze[Qe],et()};var a=i.window.ImageBitmap,s=function(){this.loaded={}};s.prototype.loadTile=function(Je,et){var Ze=Je.uid,Qe=Je.encoding,st=Je.rawImageData,ft=a&&st instanceof a?this.getImageData(st):st,Be=new i.DEMData(Ze,ft,Qe);this.loaded=this.loaded||{},this.loaded[Ze]=Be,et(null,Be)},s.prototype.getImageData=function(Je){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(Je.width,Je.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d")),this.offscreenCanvas.width=Je.width,this.offscreenCanvas.height=Je.height,this.offscreenCanvasContext.drawImage(Je,0,0,Je.width,Je.height);var et=this.offscreenCanvasContext.getImageData(-1,-1,Je.width+2,Je.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new i.RGBAImage({width:et.width,height:et.height},et.data)},s.prototype.removeTile=function(Je){var et=this.loaded,Ze=Je.uid;et&&et[Ze]&&delete et[Ze]};var u=function Je(et,Ze){var Qe,st=et&&et.type;if(st==="FeatureCollection")for(Qe=0;Qe<et.features.length;Qe++)Je(et.features[Qe],Ze);else if(st==="GeometryCollection")for(Qe=0;Qe<et.geometries.length;Qe++)Je(et.geometries[Qe],Ze);else if(st==="Feature")Je(et.geometry,Ze);else if(st==="Polygon")p(et.coordinates,Ze);else if(st==="MultiPolygon")for(Qe=0;Qe<et.coordinates.length;Qe++)p(et.coordinates[Qe],Ze);return et};function p(Je,et){if(Je.length!==0){c(Je[0],et);for(var Ze=1;Ze<Je.length;Ze++)c(Je[Ze],!et)}}function c(Je,et){for(var Ze=0,Qe=0,st=Je.length,ft=st-1;Qe<st;ft=Qe++)Ze+=(Je[Qe][0]-Je[ft][0])*(Je[ft][1]+Je[Qe][1]);Ze>=0!=!!et&&Je.reverse()}var b=i.vectorTile.VectorTileFeature.prototype.toGeoJSON,g=function(Je){this._feature=Je,this.extent=i.EXTENT,this.type=Je.type,this.properties=Je.tags,"id"in Je&&!isNaN(Je.id)&&(this.id=parseInt(Je.id,10))};g.prototype.loadGeometry=function(){if(this._feature.type===1){for(var Je=[],et=0,Ze=this._feature.geometry;et<Ze.length;et+=1){var Qe=Ze[et];Je.push([new i.Point$1(Qe[0],Qe[1])])}return Je}for(var st=[],ft=0,Be=this._feature.geometry;ft<Be.length;ft+=1){for(var je=[],at=0,ot=Be[ft];at<ot.length;at+=1){var xt=ot[at];je.push(new i.Point$1(xt[0],xt[1]))}st.push(je)}return st},g.prototype.toGeoJSON=function(Je,et,Ze){return b.call(this,Je,et,Ze)};var f=function(Je){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=i.EXTENT,this.length=Je.length,this._features=Je};f.prototype.feature=function(Je){return new g(this._features[Je])};var v=i.vectorTile.VectorTileFeature,m=x;function x(Je,et){this.options=et||{},this.features=Je,this.length=Je.length}function T(Je,et){this.id=typeof Je.id=="number"?Je.id:void 0,this.type=Je.type,this.rawGeometry=Je.type===1?[Je.geometry]:Je.geometry,this.properties=Je.tags,this.extent=et||4096}x.prototype.feature=function(Je){return new T(this.features[Je],this.options.extent)},T.prototype.loadGeometry=function(){var Je=this.rawGeometry;this.geometry=[];for(var et=0;et<Je.length;et++){for(var Ze=Je[et],Qe=[],st=0;st<Ze.length;st++)Qe.push(new i.Point$1(Ze[st][0],Ze[st][1]));this.geometry.push(Qe)}return this.geometry},T.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var Je=this.geometry,et=1/0,Ze=-1/0,Qe=1/0,st=-1/0,ft=0;ft<Je.length;ft++)for(var Be=Je[ft],je=0;je<Be.length;je++){var at=Be[je];et=Math.min(et,at.x),Ze=Math.max(Ze,at.x),Qe=Math.min(Qe,at.y),st=Math.max(st,at.y)}return[et,Qe,Ze,st]},T.prototype.toGeoJSON=v.prototype.toGeoJSON;var d=P,M=P,A=function(Je,et){et=et||{};var Ze={};for(var Qe in Je)Ze[Qe]=new m(Je[Qe].features,et),Ze[Qe].name=Qe,Ze[Qe].version=et.version,Ze[Qe].extent=et.extent;return P({layers:Ze})},C=m;function P(Je){var et=new i.pbf;return function(Ze,Qe){for(var st in Ze.layers)Qe.writeMessage(3,O,Ze.layers[st])}(Je,et),et.finish()}function O(Je,et){var Ze;et.writeVarintField(15,Je.version||1),et.writeStringField(1,Je.name||""),et.writeVarintField(5,Je.extent||4096);var Qe={keys:[],values:[],keycache:{},valuecache:{}};for(Ze=0;Ze<Je.length;Ze++)Qe.feature=Je.feature(Ze),et.writeMessage(2,z,Qe);var st=Qe.keys;for(Ze=0;Ze<st.length;Ze++)et.writeStringField(3,st[Ze]);var ft=Qe.values;for(Ze=0;Ze<ft.length;Ze++)et.writeMessage(4,V,ft[Ze])}function z(Je,et){var Ze=Je.feature;Ze.id!==void 0&&et.writeVarintField(1,Ze.id),et.writeMessage(2,B,Je),et.writeVarintField(3,Ze.type),et.writeMessage(4,G,Ze)}function B(Je,et){var Ze=Je.feature,Qe=Je.keys,st=Je.values,ft=Je.keycache,Be=Je.valuecache;for(var je in Ze.properties){var at=ft[je];at===void 0&&(Qe.push(je),at=Qe.length-1,ft[je]=at),et.writeVarint(at);var ot=Ze.properties[je],xt=typeof ot;xt!=="string"&&xt!=="boolean"&&xt!=="number"&&(ot=JSON.stringify(ot));var yt=xt+":"+ot,_t=Be[yt];_t===void 0&&(st.push(ot),_t=st.length-1,Be[yt]=_t),et.writeVarint(_t)}}function Y(Je,et){return(et<<3)+(7&Je)}function D(Je){return Je<<1^Je>>31}function G(Je,et){for(var Ze=Je.loadGeometry(),Qe=Je.type,st=0,ft=0,Be=Ze.length,je=0;je<Be;je++){var at=Ze[je],ot=1;Qe===1&&(ot=at.length),et.writeVarint(Y(1,ot));for(var xt=Qe===3?at.length-1:at.length,yt=0;yt<xt;yt++){yt===1&&Qe!==1&&et.writeVarint(Y(2,xt-1));var _t=at[yt].x-st,gt=at[yt].y-ft;et.writeVarint(D(_t)),et.writeVarint(D(gt)),st+=_t,ft+=gt}Qe===3&&et.writeVarint(Y(7,1))}}function V(Je,et){var Ze=typeof Je;Ze==="string"?et.writeStringField(1,Je):Ze==="boolean"?et.writeBooleanField(7,Je):Ze==="number"&&(Je%1!=0?et.writeDoubleField(3,Je):Je<0?et.writeSVarintField(6,Je):et.writeVarintField(5,Je))}function j(Je,et,Ze,Qe,st,ft){if(!(st-Qe<=Ze)){var Be=Qe+st>>1;W(Je,et,Be,Qe,st,ft%2),j(Je,et,Ze,Qe,Be-1,ft+1),j(Je,et,Ze,Be+1,st,ft+1)}}function W(Je,et,Ze,Qe,st,ft){for(;st>Qe;){if(st-Qe>600){var Be=st-Qe+1,je=Ze-Qe+1,at=Math.log(Be),ot=.5*Math.exp(2*at/3),xt=.5*Math.sqrt(at*ot*(Be-ot)/Be)*(je-Be/2<0?-1:1);W(Je,et,Ze,Math.max(Qe,Math.floor(Ze-je*ot/Be+xt)),Math.min(st,Math.floor(Ze+(Be-je)*ot/Be+xt)),ft)}var yt=et[2*Ze+ft],_t=Qe,gt=st;for(Z(Je,et,Qe,Ze),et[2*st+ft]>yt&&Z(Je,et,Qe,st);_t<gt;){for(Z(Je,et,_t,gt),_t++,gt--;et[2*_t+ft]<yt;)_t++;for(;et[2*gt+ft]>yt;)gt--}et[2*Qe+ft]===yt?Z(Je,et,Qe,gt):Z(Je,et,++gt,st),gt<=Ze&&(Qe=gt+1),Ze<=gt&&(st=gt-1)}}function Z(Je,et,Ze,Qe){ie(Je,Ze,Qe),ie(et,2*Ze,2*Qe),ie(et,2*Ze+1,2*Qe+1)}function ie(Je,et,Ze){var Qe=Je[et];Je[et]=Je[Ze],Je[Ze]=Qe}function te(Je,et,Ze,Qe){var st=Je-Ze,ft=et-Qe;return st*st+ft*ft}d.fromVectorTileJs=M,d.fromGeojsonVt=A,d.GeoJSONWrapper=C;var J=function(Je){return Je[0]},X=function(Je){return Je[1]},ee=function(Je,et,Ze,Qe,st){et===void 0&&(et=J),Ze===void 0&&(Ze=X),Qe===void 0&&(Qe=64),st===void 0&&(st=Float64Array),this.nodeSize=Qe,this.points=Je;for(var ft=Je.length<65536?Uint16Array:Uint32Array,Be=this.ids=new ft(Je.length),je=this.coords=new st(2*Je.length),at=0;at<Je.length;at++)Be[at]=at,je[2*at]=et(Je[at]),je[2*at+1]=Ze(Je[at]);j(Be,je,Qe,0,Be.length-1,0)};ee.prototype.range=function(Je,et,Ze,Qe){return function(st,ft,Be,je,at,ot,xt){for(var yt,_t,gt=[0,st.length-1,0],Ct=[];gt.length;){var dt=gt.pop(),vt=gt.pop(),At=gt.pop();if(vt-At<=xt)for(var Bt=At;Bt<=vt;Bt++)yt=ft[2*Bt],_t=ft[2*Bt+1],yt>=Be&&yt<=at&&_t>=je&&_t<=ot&&Ct.push(st[Bt]);else{var jt=Math.floor((At+vt)/2);yt=ft[2*jt],_t=ft[2*jt+1],yt>=Be&&yt<=at&&_t>=je&&_t<=ot&&Ct.push(st[jt]);var Ut=(dt+1)%2;(dt===0?Be<=yt:je<=_t)&&(gt.push(At),gt.push(jt-1),gt.push(Ut)),(dt===0?at>=yt:ot>=_t)&&(gt.push(jt+1),gt.push(vt),gt.push(Ut))}}return Ct}(this.ids,this.coords,Je,et,Ze,Qe,this.nodeSize)},ee.prototype.within=function(Je,et,Ze){return function(Qe,st,ft,Be,je,at){for(var ot=[0,Qe.length-1,0],xt=[],yt=je*je;ot.length;){var _t=ot.pop(),gt=ot.pop(),Ct=ot.pop();if(gt-Ct<=at)for(var dt=Ct;dt<=gt;dt++)te(st[2*dt],st[2*dt+1],ft,Be)<=yt&&xt.push(Qe[dt]);else{var vt=Math.floor((Ct+gt)/2),At=st[2*vt],Bt=st[2*vt+1];te(At,Bt,ft,Be)<=yt&&xt.push(Qe[vt]);var jt=(_t+1)%2;(_t===0?ft-je<=At:Be-je<=Bt)&&(ot.push(Ct),ot.push(vt-1),ot.push(jt)),(_t===0?ft+je>=At:Be+je>=Bt)&&(ot.push(vt+1),ot.push(gt),ot.push(jt))}}return xt}(this.ids,this.coords,Je,et,Ze,this.nodeSize)};var re={minZoom:0,maxZoom:16,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(Je){return Je}},oe=function(Je){this.options=we(Object.create(re),Je),this.trees=new Array(this.options.maxZoom+1)};function ue(Je,et,Ze,Qe,st){return{x:Je,y:et,zoom:1/0,id:Ze,parentId:-1,numPoints:Qe,properties:st}}function ce(Je,et){var Ze=Je.geometry.coordinates,Qe=Ze[0],st=Ze[1];return{x:_e(Qe),y:Se(st),zoom:1/0,index:et,parentId:-1}}function de(Je){return{type:"Feature",id:Je.id,properties:me(Je),geometry:{type:"Point",coordinates:[(Qe=Je.x,360*(Qe-.5)),(et=Je.y,Ze=(180-360*et)*Math.PI/180,360*Math.atan(Math.exp(Ze))/Math.PI-90)]}};var et,Ze,Qe}function me(Je){var et=Je.numPoints,Ze=et>=1e4?Math.round(et/1e3)+"k":et>=1e3?Math.round(et/100)/10+"k":et;return we(we({},Je.properties),{cluster:!0,cluster_id:Je.id,point_count:et,point_count_abbreviated:Ze})}function _e(Je){return Je/360+.5}function Se(Je){var et=Math.sin(Je*Math.PI/180),Ze=.5-.25*Math.log((1+et)/(1-et))/Math.PI;return Ze<0?0:Ze>1?1:Ze}function we(Je,et){for(var Ze in et)Je[Ze]=et[Ze];return Je}function xe(Je){return Je.x}function De(Je){return Je.y}function Ee(Je,et,Ze,Qe){for(var st,ft=Qe,Be=Ze-et>>1,je=Ze-et,at=Je[et],ot=Je[et+1],xt=Je[Ze],yt=Je[Ze+1],_t=et+3;_t<Ze;_t+=3){var gt=Me(Je[_t],Je[_t+1],at,ot,xt,yt);if(gt>ft)st=_t,ft=gt;else if(gt===ft){var Ct=Math.abs(_t-Be);Ct<je&&(st=_t,je=Ct)}}ft>Qe&&(st-et>3&&Ee(Je,et,st,Qe),Je[st+2]=ft,Ze-st>3&&Ee(Je,st,Ze,Qe))}function Me(Je,et,Ze,Qe,st,ft){var Be=st-Ze,je=ft-Qe;if(Be!==0||je!==0){var at=((Je-Ze)*Be+(et-Qe)*je)/(Be*Be+je*je);at>1?(Ze=st,Qe=ft):at>0&&(Ze+=Be*at,Qe+=je*at)}return(Be=Je-Ze)*Be+(je=et-Qe)*je}function he(Je,et,Ze,Qe){var st={id:Je===void 0?null:Je,type:et,geometry:Ze,tags:Qe,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return function(ft){var Be=ft.geometry,je=ft.type;if(je==="Point"||je==="MultiPoint"||je==="LineString")fe(ft,Be);else if(je==="Polygon"||je==="MultiLineString")for(var at=0;at<Be.length;at++)fe(ft,Be[at]);else if(je==="MultiPolygon")for(at=0;at<Be.length;at++)for(var ot=0;ot<Be[at].length;ot++)fe(ft,Be[at][ot])}(st),st}function fe(Je,et){for(var Ze=0;Ze<et.length;Ze+=3)Je.minX=Math.min(Je.minX,et[Ze]),Je.minY=Math.min(Je.minY,et[Ze+1]),Je.maxX=Math.max(Je.maxX,et[Ze]),Je.maxY=Math.max(Je.maxY,et[Ze+1])}function ae(Je,et,Ze,Qe){if(et.geometry){var st=et.geometry.coordinates,ft=et.geometry.type,Be=Math.pow(Ze.tolerance/((1<<Ze.maxZoom)*Ze.extent),2),je=[],at=et.id;if(Ze.promoteId?at=et.properties[Ze.promoteId]:Ze.generateId&&(at=Qe||0),ft==="Point")be(st,je);else if(ft==="MultiPoint")for(var ot=0;ot<st.length;ot++)be(st[ot],je);else if(ft==="LineString")Ie(st,je,Be,!1);else if(ft==="MultiLineString"){if(Ze.lineMetrics){for(ot=0;ot<st.length;ot++)je=[],Ie(st[ot],je,Be,!1),Je.push(he(at,"LineString",je,et.properties));return}Te(st,je,Be,!1)}else if(ft==="Polygon")Te(st,je,Be,!0);else{if(ft!=="MultiPolygon"){if(ft==="GeometryCollection"){for(ot=0;ot<et.geometry.geometries.length;ot++)ae(Je,{id:at,geometry:et.geometry.geometries[ot],properties:et.properties},Ze,Qe);return}throw new Error("Input data is not a valid GeoJSON object.")}for(ot=0;ot<st.length;ot++){var xt=[];Te(st[ot],xt,Be,!0),je.push(xt)}}Je.push(he(at,ft,je,et.properties))}}function be(Je,et){et.push(Ne(Je[0])),et.push(qe(Je[1])),et.push(0)}function Ie(Je,et,Ze,Qe){for(var st,ft,Be=0,je=0;je<Je.length;je++){var at=Ne(Je[je][0]),ot=qe(Je[je][1]);et.push(at),et.push(ot),et.push(0),je>0&&(Be+=Qe?(st*ot-at*ft)/2:Math.sqrt(Math.pow(at-st,2)+Math.pow(ot-ft,2))),st=at,ft=ot}var xt=et.length-3;et[2]=1,Ee(et,0,xt,Ze),et[xt+2]=1,et.size=Math.abs(Be),et.start=0,et.end=et.size}function Te(Je,et,Ze,Qe){for(var st=0;st<Je.length;st++){var ft=[];Ie(Je[st],ft,Ze,Qe),et.push(ft)}}function Ne(Je){return Je/360+.5}function qe(Je){var et=Math.sin(Je*Math.PI/180),Ze=.5-.25*Math.log((1+et)/(1-et))/Math.PI;return Ze<0?0:Ze>1?1:Ze}function ve(Je,et,Ze,Qe,st,ft,Be,je){if(Qe/=et,ft>=(Ze/=et)&&Be<Qe)return Je;if(Be<Ze||ft>=Qe)return null;for(var at=[],ot=0;ot<Je.length;ot++){var xt=Je[ot],yt=xt.geometry,_t=xt.type,gt=st===0?xt.minX:xt.minY,Ct=st===0?xt.maxX:xt.maxY;if(gt>=Ze&&Ct<Qe)at.push(xt);else if(!(Ct<Ze||gt>=Qe)){var dt=[];if(_t==="Point"||_t==="MultiPoint")Ce(yt,dt,Ze,Qe,st);else if(_t==="LineString")Ae(yt,dt,Ze,Qe,st,!1,je.lineMetrics);else if(_t==="MultiLineString")Ue(yt,dt,Ze,Qe,st,!1);else if(_t==="Polygon")Ue(yt,dt,Ze,Qe,st,!0);else if(_t==="MultiPolygon")for(var vt=0;vt<yt.length;vt++){var At=[];Ue(yt[vt],At,Ze,Qe,st,!0),At.length&&dt.push(At)}if(dt.length){if(je.lineMetrics&&_t==="LineString"){for(vt=0;vt<dt.length;vt++)at.push(he(xt.id,_t,dt[vt],xt.tags));continue}_t!=="LineString"&&_t!=="MultiLineString"||(dt.length===1?(_t="LineString",dt=dt[0]):_t="MultiLineString"),_t!=="Point"&&_t!=="MultiPoint"||(_t=dt.length===3?"Point":"MultiPoint"),at.push(he(xt.id,_t,dt,xt.tags))}}}return at.length?at:null}function Ce(Je,et,Ze,Qe,st){for(var ft=0;ft<Je.length;ft+=3){var Be=Je[ft+st];Be>=Ze&&Be<=Qe&&(et.push(Je[ft]),et.push(Je[ft+1]),et.push(Je[ft+2]))}}function Ae(Je,et,Ze,Qe,st,ft,Be){for(var je,at,ot=ze(Je),xt=st===0?Ye:$e,yt=Je.start,_t=0;_t<Je.length-3;_t+=3){var gt=Je[_t],Ct=Je[_t+1],dt=Je[_t+2],vt=Je[_t+3],At=Je[_t+4],Bt=st===0?gt:Ct,jt=st===0?vt:At,Ut=!1;Be&&(je=Math.sqrt(Math.pow(gt-vt,2)+Math.pow(Ct-At,2))),Bt<Ze?jt>Ze&&(at=xt(ot,gt,Ct,vt,At,Ze),Be&&(ot.start=yt+je*at)):Bt>Qe?jt<Qe&&(at=xt(ot,gt,Ct,vt,At,Qe),Be&&(ot.start=yt+je*at)):Ve(ot,gt,Ct,dt),jt<Ze&&Bt>=Ze&&(at=xt(ot,gt,Ct,vt,At,Ze),Ut=!0),jt>Qe&&Bt<=Qe&&(at=xt(ot,gt,Ct,vt,At,Qe),Ut=!0),!ft&&Ut&&(Be&&(ot.end=yt+je*at),et.push(ot),ot=ze(Je)),Be&&(yt+=je)}var tn=Je.length-3;gt=Je[tn],Ct=Je[tn+1],dt=Je[tn+2],(Bt=st===0?gt:Ct)>=Ze&&Bt<=Qe&&Ve(ot,gt,Ct,dt),tn=ot.length-3,ft&&tn>=3&&(ot[tn]!==ot[0]||ot[tn+1]!==ot[1])&&Ve(ot,ot[0],ot[1],ot[2]),ot.length&&et.push(ot)}function ze(Je){var et=[];return et.size=Je.size,et.start=Je.start,et.end=Je.end,et}function Ue(Je,et,Ze,Qe,st,ft){for(var Be=0;Be<Je.length;Be++)Ae(Je[Be],et,Ze,Qe,st,ft,!1)}function Ve(Je,et,Ze,Qe){Je.push(et),Je.push(Ze),Je.push(Qe)}function Ye(Je,et,Ze,Qe,st,ft){var Be=(ft-et)/(Qe-et);return Je.push(ft),Je.push(Ze+(st-Ze)*Be),Je.push(1),Be}function $e(Je,et,Ze,Qe,st,ft){var Be=(ft-Ze)/(st-Ze);return Je.push(et+(Qe-et)*Be),Je.push(ft),Je.push(1),Be}function rt(Je,et){for(var Ze=[],Qe=0;Qe<Je.length;Qe++){var st,ft=Je[Qe],Be=ft.type;if(Be==="Point"||Be==="MultiPoint"||Be==="LineString")st=ht(ft.geometry,et);else if(Be==="MultiLineString"||Be==="Polygon"){st=[];for(var je=0;je<ft.geometry.length;je++)st.push(ht(ft.geometry[je],et))}else if(Be==="MultiPolygon")for(st=[],je=0;je<ft.geometry.length;je++){for(var at=[],ot=0;ot<ft.geometry[je].length;ot++)at.push(ht(ft.geometry[je][ot],et));st.push(at)}Ze.push(he(ft.id,Be,st,ft.tags))}return Ze}function ht(Je,et){var Ze=[];Ze.size=Je.size,Je.start!==void 0&&(Ze.start=Je.start,Ze.end=Je.end);for(var Qe=0;Qe<Je.length;Qe+=3)Ze.push(Je[Qe]+et,Je[Qe+1],Je[Qe+2]);return Ze}function nt(Je,et){if(Je.transformed)return Je;var Ze,Qe,st,ft=1<<Je.z,Be=Je.x,je=Je.y;for(Ze=0;Ze<Je.features.length;Ze++){var at=Je.features[Ze],ot=at.geometry,xt=at.type;if(at.geometry=[],xt===1)for(Qe=0;Qe<ot.length;Qe+=2)at.geometry.push(bt(ot[Qe],ot[Qe+1],et,ft,Be,je));else for(Qe=0;Qe<ot.length;Qe++){var yt=[];for(st=0;st<ot[Qe].length;st+=2)yt.push(bt(ot[Qe][st],ot[Qe][st+1],et,ft,Be,je));at.geometry.push(yt)}}return Je.transformed=!0,Je}function bt(Je,et,Ze,Qe,st,ft){return[Math.round(Ze*(Je*Qe-st)),Math.round(Ze*(et*Qe-ft))]}function wt(Je,et,Ze,Qe,st){for(var ft=et===st.maxZoom?0:st.tolerance/((1<<et)*st.extent),Be={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:Ze,y:Qe,z:et,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0},je=0;je<Je.length;je++){Be.numFeatures++,ut(Be,Je[je],ft,st);var at=Je[je].minX,ot=Je[je].minY,xt=Je[je].maxX,yt=Je[je].maxY;at<Be.minX&&(Be.minX=at),ot<Be.minY&&(Be.minY=ot),xt>Be.maxX&&(Be.maxX=xt),yt>Be.maxY&&(Be.maxY=yt)}return Be}function ut(Je,et,Ze,Qe){var st=et.geometry,ft=et.type,Be=[];if(ft==="Point"||ft==="MultiPoint")for(var je=0;je<st.length;je+=3)Be.push(st[je]),Be.push(st[je+1]),Je.numPoints++,Je.numSimplified++;else if(ft==="LineString")lt(Be,st,Je,Ze,!1,!1);else if(ft==="MultiLineString"||ft==="Polygon")for(je=0;je<st.length;je++)lt(Be,st[je],Je,Ze,ft==="Polygon",je===0);else if(ft==="MultiPolygon")for(var at=0;at<st.length;at++){var ot=st[at];for(je=0;je<ot.length;je++)lt(Be,ot[je],Je,Ze,!0,je===0)}if(Be.length){var xt=et.tags||null;if(ft==="LineString"&&Qe.lineMetrics){for(var yt in xt={},et.tags)xt[yt]=et.tags[yt];xt.mapbox_clip_start=st.start/st.size,xt.mapbox_clip_end=st.end/st.size}var _t={geometry:Be,type:ft==="Polygon"||ft==="MultiPolygon"?3:ft==="LineString"||ft==="MultiLineString"?2:1,tags:xt};et.id!==null&&(_t.id=et.id),Je.features.push(_t)}}function lt(Je,et,Ze,Qe,st,ft){var Be=Qe*Qe;if(Qe>0&&et.size<(st?Be:Qe))Ze.numPoints+=et.length/3;else{for(var je=[],at=0;at<et.length;at+=3)(Qe===0||et[at+2]>Be)&&(Ze.numSimplified++,je.push(et[at]),je.push(et[at+1])),Ze.numPoints++;st&&function(ot,xt){for(var yt=0,_t=0,gt=ot.length,Ct=gt-2;_t<gt;Ct=_t,_t+=2)yt+=(ot[_t]-ot[Ct])*(ot[_t+1]+ot[Ct+1]);if(yt>0===xt)for(_t=0,gt=ot.length;_t<gt/2;_t+=2){var dt=ot[_t],vt=ot[_t+1];ot[_t]=ot[gt-2-_t],ot[_t+1]=ot[gt-1-_t],ot[gt-2-_t]=dt,ot[gt-1-_t]=vt}}(je,ft),Je.push(je)}}function Tt(Je,et){var Ze=(et=this.options=function(st,ft){for(var Be in ft)st[Be]=ft[Be];return st}(Object.create(this.options),et)).debug;if(Ze&&console.time("preprocess data"),et.maxZoom<0||et.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(et.promoteId&&et.generateId)throw new Error("promoteId and generateId cannot be used together.");var Qe=function(st,ft){var Be=[];if(st.type==="FeatureCollection")for(var je=0;je<st.features.length;je++)ae(Be,st.features[je],ft,je);else st.type==="Feature"?ae(Be,st,ft):ae(Be,{geometry:st},ft);return Be}(Je,et);this.tiles={},this.tileCoords=[],Ze&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",et.indexMaxZoom,et.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),(Qe=function(st,ft){var Be=ft.buffer/ft.extent,je=st,at=ve(st,1,-1-Be,Be,0,-1,2,ft),ot=ve(st,1,1-Be,2+Be,0,-1,2,ft);return(at||ot)&&(je=ve(st,1,-Be,1+Be,0,-1,2,ft)||[],at&&(je=rt(at,1).concat(je)),ot&&(je=je.concat(rt(ot,-1)))),je}(Qe,et)).length&&this.splitTile(Qe,0,0,0),Ze&&(Qe.length&&console.log("features: %d, points: %d",this.tiles[0].numFeatures,this.tiles[0].numPoints),console.timeEnd("generate tiles"),console.log("tiles generated:",this.total,JSON.stringify(this.stats)))}function Et(Je,et,Ze){return 32*((1<<Je)*Ze+et)+Je}function St(Je,et){var Ze=Je.tileID.canonical;if(!this._geoJSONIndex)return et(null,null);var Qe=this._geoJSONIndex.getTile(Ze.z,Ze.x,Ze.y);if(!Qe)return et(null,null);var st=new f(Qe.features),ft=d(st);ft.byteOffset===0&&ft.byteLength===ft.buffer.byteLength||(ft=new Uint8Array(ft)),et(null,{vectorTile:st,rawData:ft.buffer})}oe.prototype.load=function(Je){var et=this.options,Ze=et.log,Qe=et.minZoom,st=et.maxZoom,ft=et.nodeSize;Ze&&console.time("total time");var Be="prepare "+Je.length+" points";Ze&&console.time(Be),this.points=Je;for(var je=[],at=0;at<Je.length;at++)Je[at].geometry&&je.push(ce(Je[at],at));this.trees[st+1]=new ee(je,xe,De,ft,Float32Array),Ze&&console.timeEnd(Be);for(var ot=st;ot>=Qe;ot--){var xt=+Date.now();je=this._cluster(je,ot),this.trees[ot]=new ee(je,xe,De,ft,Float32Array),Ze&&console.log("z%d: %d clusters in %dms",ot,je.length,+Date.now()-xt)}return Ze&&console.timeEnd("total time"),this},oe.prototype.getClusters=function(Je,et){var Ze=((Je[0]+180)%360+360)%360-180,Qe=Math.max(-90,Math.min(90,Je[1])),st=Je[2]===180?180:((Je[2]+180)%360+360)%360-180,ft=Math.max(-90,Math.min(90,Je[3]));if(Je[2]-Je[0]>=360)Ze=-180,st=180;else if(Ze>st){var Be=this.getClusters([Ze,Qe,180,ft],et),je=this.getClusters([-180,Qe,st,ft],et);return Be.concat(je)}for(var at=this.trees[this._limitZoom(et)],ot=[],xt=0,yt=at.range(_e(Ze),Se(ft),_e(st),Se(Qe));xt<yt.length;xt+=1){var _t=yt[xt],gt=at.points[_t];ot.push(gt.numPoints?de(gt):this.points[gt.index])}return ot},oe.prototype.getChildren=function(Je){var et=this._getOriginId(Je),Ze=this._getOriginZoom(Je),Qe="No cluster with the specified id.",st=this.trees[Ze];if(!st)throw new Error(Qe);var ft=st.points[et];if(!ft)throw new Error(Qe);for(var Be=this.options.radius/(this.options.extent*Math.pow(2,Ze-1)),je=[],at=0,ot=st.within(ft.x,ft.y,Be);at<ot.length;at+=1){var xt=ot[at],yt=st.points[xt];yt.parentId===Je&&je.push(yt.numPoints?de(yt):this.points[yt.index])}if(je.length===0)throw new Error(Qe);return je},oe.prototype.getLeaves=function(Je,et,Ze){et=et||10,Ze=Ze||0;var Qe=[];return this._appendLeaves(Qe,Je,et,Ze,0),Qe},oe.prototype.getTile=function(Je,et,Ze){var Qe=this.trees[this._limitZoom(Je)],st=Math.pow(2,Je),ft=this.options,Be=ft.extent,je=ft.radius/Be,at=(Ze-je)/st,ot=(Ze+1+je)/st,xt={features:[]};return this._addTileFeatures(Qe.range((et-je)/st,at,(et+1+je)/st,ot),Qe.points,et,Ze,st,xt),et===0&&this._addTileFeatures(Qe.range(1-je/st,at,1,ot),Qe.points,st,Ze,st,xt),et===st-1&&this._addTileFeatures(Qe.range(0,at,je/st,ot),Qe.points,-1,Ze,st,xt),xt.features.length?xt:null},oe.prototype.getClusterExpansionZoom=function(Je){for(var et=this._getOriginZoom(Je)-1;et<=this.options.maxZoom;){var Ze=this.getChildren(Je);if(et++,Ze.length!==1)break;Je=Ze[0].properties.cluster_id}return et},oe.prototype._appendLeaves=function(Je,et,Ze,Qe,st){for(var ft=0,Be=this.getChildren(et);ft<Be.length;ft+=1){var je=Be[ft],at=je.properties;if(at&&at.cluster?st+at.point_count<=Qe?st+=at.point_count:st=this._appendLeaves(Je,at.cluster_id,Ze,Qe,st):st<Qe?st++:Je.push(je),Je.length===Ze)break}return st},oe.prototype._addTileFeatures=function(Je,et,Ze,Qe,st,ft){for(var Be=0,je=Je;Be<je.length;Be+=1){var at=et[je[Be]],ot=at.numPoints,xt={type:1,geometry:[[Math.round(this.options.extent*(at.x*st-Ze)),Math.round(this.options.extent*(at.y*st-Qe))]],tags:ot?me(at):this.points[at.index].properties},yt=void 0;ot?yt=at.id:this.options.generateId?yt=at.index:this.points[at.index].id&&(yt=this.points[at.index].id),yt!==void 0&&(xt.id=yt),ft.features.push(xt)}},oe.prototype._limitZoom=function(Je){return Math.max(this.options.minZoom,Math.min(Je,this.options.maxZoom+1))},oe.prototype._cluster=function(Je,et){for(var Ze=[],Qe=this.options,st=Qe.radius,ft=Qe.extent,Be=Qe.reduce,je=st/(ft*Math.pow(2,et)),at=0;at<Je.length;at++){var ot=Je[at];if(!(ot.zoom<=et)){ot.zoom=et;for(var xt=this.trees[et+1],yt=xt.within(ot.x,ot.y,je),_t=ot.numPoints||1,gt=ot.x*_t,Ct=ot.y*_t,dt=Be&&_t>1?this._map(ot,!0):null,vt=(at<<5)+(et+1)+this.points.length,At=0,Bt=yt;At<Bt.length;At+=1){var jt=Bt[At],Ut=xt.points[jt];if(!(Ut.zoom<=et)){Ut.zoom=et;var tn=Ut.numPoints||1;gt+=Ut.x*tn,Ct+=Ut.y*tn,_t+=tn,Ut.parentId=vt,Be&&(dt||(dt=this._map(ot,!0)),Be(dt,this._map(Ut)))}}_t===1?Ze.push(ot):(ot.parentId=vt,Ze.push(ue(gt/_t,Ct/_t,vt,_t,dt)))}}return Ze},oe.prototype._getOriginId=function(Je){return Je-this.points.length>>5},oe.prototype._getOriginZoom=function(Je){return(Je-this.points.length)%32},oe.prototype._map=function(Je,et){if(Je.numPoints)return et?we({},Je.properties):Je.properties;var Ze=this.points[Je.index].properties,Qe=this.options.map(Ze);return et&&Qe===Ze?we({},Qe):Qe},Tt.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Tt.prototype.splitTile=function(Je,et,Ze,Qe,st,ft,Be){for(var je=[Je,et,Ze,Qe],at=this.options,ot=at.debug;je.length;){Qe=je.pop(),Ze=je.pop(),et=je.pop(),Je=je.pop();var xt=1<<et,yt=Et(et,Ze,Qe),_t=this.tiles[yt];if(!_t&&(ot>1&&console.time("creation"),_t=this.tiles[yt]=wt(Je,et,Ze,Qe,at),this.tileCoords.push({z:et,x:Ze,y:Qe}),ot)){ot>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",et,Ze,Qe,_t.numFeatures,_t.numPoints,_t.numSimplified),console.timeEnd("creation"));var gt="z"+et;this.stats[gt]=(this.stats[gt]||0)+1,this.total++}if(_t.source=Je,st){if(et===at.maxZoom||et===st)continue;var Ct=1<<st-et;if(Ze!==Math.floor(ft/Ct)||Qe!==Math.floor(Be/Ct))continue}else if(et===at.indexMaxZoom||_t.numPoints<=at.indexMaxPoints)continue;if(_t.source=null,Je.length!==0){ot>1&&console.time("clipping");var dt,vt,At,Bt,jt,Ut,tn=.5*at.buffer/at.extent,Xt=.5-tn,Qt=.5+tn,Gt=1+tn;dt=vt=At=Bt=null,jt=ve(Je,xt,Ze-tn,Ze+Qt,0,_t.minX,_t.maxX,at),Ut=ve(Je,xt,Ze+Xt,Ze+Gt,0,_t.minX,_t.maxX,at),Je=null,jt&&(dt=ve(jt,xt,Qe-tn,Qe+Qt,1,_t.minY,_t.maxY,at),vt=ve(jt,xt,Qe+Xt,Qe+Gt,1,_t.minY,_t.maxY,at),jt=null),Ut&&(At=ve(Ut,xt,Qe-tn,Qe+Qt,1,_t.minY,_t.maxY,at),Bt=ve(Ut,xt,Qe+Xt,Qe+Gt,1,_t.minY,_t.maxY,at),Ut=null),ot>1&&console.timeEnd("clipping"),je.push(dt||[],et+1,2*Ze,2*Qe),je.push(vt||[],et+1,2*Ze,2*Qe+1),je.push(At||[],et+1,2*Ze+1,2*Qe),je.push(Bt||[],et+1,2*Ze+1,2*Qe+1)}}},Tt.prototype.getTile=function(Je,et,Ze){var Qe=this.options,st=Qe.extent,ft=Qe.debug;if(Je<0||Je>24)return null;var Be=1<<Je,je=Et(Je,et=(et%Be+Be)%Be,Ze);if(this.tiles[je])return nt(this.tiles[je],st);ft>1&&console.log("drilling down to z%d-%d-%d",Je,et,Ze);for(var at,ot=Je,xt=et,yt=Ze;!at&&ot>0;)ot--,xt=Math.floor(xt/2),yt=Math.floor(yt/2),at=this.tiles[Et(ot,xt,yt)];return at&&at.source?(ft>1&&console.log("found parent tile z%d-%d-%d",ot,xt,yt),ft>1&&console.time("drilling down"),this.splitTile(at.source,ot,xt,yt,Je,et,Ze),ft>1&&console.timeEnd("drilling down"),this.tiles[je]?nt(this.tiles[je],st):null):null};var Ft=function(Je){function et(Ze,Qe,st,ft){Je.call(this,Ze,Qe,st,St),ft&&(this.loadGeoJSON=ft)}return Je&&(et.__proto__=Je),et.prototype=Object.create(Je&&Je.prototype),et.prototype.constructor=et,et.prototype.loadData=function(Ze,Qe){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),this._pendingCallback=Qe,this._pendingLoadDataParams=Ze,this._state&&this._state!=="Idle"?this._state="NeedsLoadData":(this._state="Coalescing",this._loadData())},et.prototype._loadData=function(){var Ze=this;if(this._pendingCallback&&this._pendingLoadDataParams){var Qe=this._pendingCallback,st=this._pendingLoadDataParams;delete this._pendingCallback,delete this._pendingLoadDataParams;var ft=!!(st&&st.request&&st.request.collectResourceTiming)&&new i.RequestPerformance(st.request);this.loadGeoJSON(st,function(Be,je){if(Be||!je)return Qe(Be);if(typeof je!="object")return Qe(new Error("Input data given to '"+st.source+"' is not a valid GeoJSON object."));u(je,!0);try{Ze._geoJSONIndex=st.cluster?new oe(function(xt){var yt=xt.superclusterOptions,_t=xt.clusterProperties;if(!_t||!yt)return yt;for(var gt={},Ct={},dt={accumulated:null,zoom:0},vt={properties:null},At=Object.keys(_t),Bt=0,jt=At;Bt<jt.length;Bt+=1){var Ut=jt[Bt],tn=_t[Ut],Xt=tn[0],Qt=tn[1],Gt=i.createExpression(Qt),vn=i.createExpression(typeof Xt=="string"?[Xt,["accumulated"],["get",Ut]]:Xt);gt[Ut]=Gt.value,Ct[Ut]=vn.value}return yt.map=function(Tn){vt.properties=Tn;for(var dn={},Yt=0,ln=At;Yt<ln.length;Yt+=1){var nn=ln[Yt];dn[nn]=gt[nn].evaluate(dt,vt)}return dn},yt.reduce=function(Tn,dn){vt.properties=dn;for(var Yt=0,ln=At;Yt<ln.length;Yt+=1){var nn=ln[Yt];dt.accumulated=Tn[nn],Tn[nn]=Ct[nn].evaluate(dt,vt)}},yt}(st)).load(je.features):function(xt,yt){return new Tt(xt,yt)}(je,st.geojsonVtOptions)}catch(xt){return Qe(xt)}Ze.loaded={};var at={};if(ft){var ot=ft.finish();ot&&(at.resourceTiming={},at.resourceTiming[st.source]=JSON.parse(JSON.stringify(ot)))}Qe(null,at)})}},et.prototype.coalesce=function(){this._state==="Coalescing"?this._state="Idle":this._state==="NeedsLoadData"&&(this._state="Coalescing",this._loadData())},et.prototype.reloadTile=function(Ze,Qe){var st=this.loaded,ft=Ze.uid;return st&&st[ft]?Je.prototype.reloadTile.call(this,Ze,Qe):this.loadTile(Ze,Qe)},et.prototype.loadGeoJSON=function(Ze,Qe){if(Ze.request)i.getJSON(Ze.request,Qe);else{if(typeof Ze.data!="string")return Qe(new Error("Input data given to '"+Ze.source+"' is not a valid GeoJSON object."));try{return Qe(null,JSON.parse(Ze.data))}catch{return Qe(new Error("Input data given to '"+Ze.source+"' is not a valid GeoJSON object."))}}},et.prototype.removeSource=function(Ze,Qe){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),Qe()},et.prototype.getClusterExpansionZoom=function(Ze,Qe){try{Qe(null,this._geoJSONIndex.getClusterExpansionZoom(Ze.clusterId))}catch(st){Qe(st)}},et.prototype.getClusterChildren=function(Ze,Qe){try{Qe(null,this._geoJSONIndex.getChildren(Ze.clusterId))}catch(st){Qe(st)}},et.prototype.getClusterLeaves=function(Ze,Qe){try{Qe(null,this._geoJSONIndex.getLeaves(Ze.clusterId,Ze.limit,Ze.offset))}catch(st){Qe(st)}},et}(n),zt=function(Je){var et=this;this.self=Je,this.actor=new i.Actor(Je,this),this.layerIndexes={},this.availableImages={},this.workerSourceTypes={vector:n,geojson:Ft},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=function(Ze,Qe){if(et.workerSourceTypes[Ze])throw new Error('Worker source with name "'+Ze+'" already registered.');et.workerSourceTypes[Ze]=Qe},this.self.registerRTLTextPlugin=function(Ze){if(i.plugin.isParsed())throw new Error("RTL text plugin already registered.");i.plugin.applyArabicShaping=Ze.applyArabicShaping,i.plugin.processBidirectionalText=Ze.processBidirectionalText,i.plugin.processStyledBidirectionalText=Ze.processStyledBidirectionalText}};return zt.prototype.setReferrer=function(Je,et){this.referrer=et},zt.prototype.setImages=function(Je,et,Ze){for(var Qe in this.availableImages[Je]=et,this.workerSources[Je]){var st=this.workerSources[Je][Qe];for(var ft in st)st[ft].availableImages=et}Ze()},zt.prototype.setLayers=function(Je,et,Ze){this.getLayerIndex(Je).replace(et),Ze()},zt.prototype.updateLayers=function(Je,et,Ze){this.getLayerIndex(Je).update(et.layers,et.removedIds),Ze()},zt.prototype.loadTile=function(Je,et,Ze){this.getWorkerSource(Je,et.type,et.source).loadTile(et,Ze)},zt.prototype.loadDEMTile=function(Je,et,Ze){this.getDEMWorkerSource(Je,et.source).loadTile(et,Ze)},zt.prototype.reloadTile=function(Je,et,Ze){this.getWorkerSource(Je,et.type,et.source).reloadTile(et,Ze)},zt.prototype.abortTile=function(Je,et,Ze){this.getWorkerSource(Je,et.type,et.source).abortTile(et,Ze)},zt.prototype.removeTile=function(Je,et,Ze){this.getWorkerSource(Je,et.type,et.source).removeTile(et,Ze)},zt.prototype.removeDEMTile=function(Je,et){this.getDEMWorkerSource(Je,et.source).removeTile(et)},zt.prototype.removeSource=function(Je,et,Ze){if(this.workerSources[Je]&&this.workerSources[Je][et.type]&&this.workerSources[Je][et.type][et.source]){var Qe=this.workerSources[Je][et.type][et.source];delete this.workerSources[Je][et.type][et.source],Qe.removeSource!==void 0?Qe.removeSource(et,Ze):Ze()}},zt.prototype.loadWorkerSource=function(Je,et,Ze){try{this.self.importScripts(et.url),Ze()}catch(Qe){Ze(Qe.toString())}},zt.prototype.syncRTLPluginState=function(Je,et,Ze){try{i.plugin.setState(et);var Qe=i.plugin.getPluginURL();if(i.plugin.isLoaded()&&!i.plugin.isParsed()&&Qe!=null){this.self.importScripts(Qe);var st=i.plugin.isParsed();Ze(st?void 0:new Error("RTL Text Plugin failed to import scripts from "+Qe),st)}}catch(ft){Ze(ft.toString())}},zt.prototype.getAvailableImages=function(Je){var et=this.availableImages[Je];return et||(et=[]),et},zt.prototype.getLayerIndex=function(Je){var et=this.layerIndexes[Je];return et||(et=this.layerIndexes[Je]=new h),et},zt.prototype.getWorkerSource=function(Je,et,Ze){var Qe=this;if(this.workerSources[Je]||(this.workerSources[Je]={}),this.workerSources[Je][et]||(this.workerSources[Je][et]={}),!this.workerSources[Je][et][Ze]){var st={send:function(ft,Be,je){Qe.actor.send(ft,Be,je,Je)}};this.workerSources[Je][et][Ze]=new this.workerSourceTypes[et](st,this.getLayerIndex(Je),this.getAvailableImages(Je))}return this.workerSources[Je][et][Ze]},zt.prototype.getDEMWorkerSource=function(Je,et){return this.demWorkerSources[Je]||(this.demWorkerSources[Je]={}),this.demWorkerSources[Je][et]||(this.demWorkerSources[Je][et]=new s),this.demWorkerSources[Je][et]},zt.prototype.enforceCacheSizeLimit=function(Je,et){i.enforceCacheSizeLimit(et)},typeof WorkerGlobalScope<"u"&&i.window!==void 0&&i.window instanceof WorkerGlobalScope&&(i.window.worker=new zt(i.window)),zt}),k(0,function(i){var _=i.createCommonjsModule(function(N){function q(ge){return!H(ge)}function H(ge){return typeof window<"u"&&typeof document<"u"?Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray?Function.prototype&&Function.prototype.bind?Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions?"JSON"in window&&"parse"in JSON&&"stringify"in JSON?function(){if(!("Worker"in window&&"Blob"in window&&"URL"in window))return!1;var U,ne,le=new Blob([""],{type:"text/javascript"}),ye=URL.createObjectURL(le);try{ne=new Worker(ye),U=!0}catch{U=!1}return ne&&ne.terminate(),URL.revokeObjectURL(ye),U}()?"Uint8ClampedArray"in window?ArrayBuffer.isView?function(){var U=document.createElement("canvas");U.width=U.height=1;var ne=U.getContext("2d");if(!ne)return!1;var le=ne.getImageData(0,0,1,1);return le&&le.width===U.width}()?(Le=ge&&ge.failIfMajorPerformanceCaveat,Q[Le]===void 0&&(Q[Le]=function(U){var ne=function(ye){var ke=document.createElement("canvas"),Re=Object.create(q.webGLContextAttributes);return Re.failIfMajorPerformanceCaveat=ye,ke.probablySupportsContext?ke.probablySupportsContext("webgl",Re)||ke.probablySupportsContext("experimental-webgl",Re):ke.supportsContext?ke.supportsContext("webgl",Re)||ke.supportsContext("experimental-webgl",Re):ke.getContext("webgl",Re)||ke.getContext("experimental-webgl",Re)}(U);if(!ne)return!1;var le=ne.createShader(ne.VERTEX_SHADER);return!(!le||ne.isContextLost())&&(ne.shaderSource(le,"void main() {}"),ne.compileShader(le),ne.getShaderParameter(le,ne.COMPILE_STATUS)===!0)}(Le)),Q[Le]?void 0:"insufficient WebGL support"):"insufficient Canvas/getImageData support":"insufficient ArrayBuffer support":"insufficient Uint8ClampedArray support":"insufficient worker support":"insufficient JSON support":"insufficient Object support":"insufficient Function support":"insufficent Array support":"not a browser";var Le}N.exports?N.exports=q:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=q,window.mapboxgl.notSupportedReason=H);var Q={};q.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0}}),y={create:function(N,q,H){var Q=i.window.document.createElement(N);return q!==void 0&&(Q.className=q),H&&H.appendChild(Q),Q},createNS:function(N,q){return i.window.document.createElementNS(N,q)}},h=i.window.document.documentElement.style;function l(N){if(!h)return N[0];for(var q=0;q<N.length;q++)if(N[q]in h)return N[q];return N[0]}var t,o=l(["userSelect","MozUserSelect","WebkitUserSelect","msUserSelect"]);y.disableDrag=function(){h&&o&&(t=h[o],h[o]="none")},y.enableDrag=function(){h&&o&&(h[o]=t)};var r=l(["transform","WebkitTransform"]);y.setTransform=function(N,q){N.style[r]=q};var n=!1;try{var a=Object.defineProperty({},"passive",{get:function(){n=!0}});i.window.addEventListener("test",a,a),i.window.removeEventListener("test",a,a)}catch{n=!1}y.addEventListener=function(N,q,H,Q){Q===void 0&&(Q={}),"passive"in Q&&n?N.addEventListener(q,H,Q):N.addEventListener(q,H,Q.capture)},y.removeEventListener=function(N,q,H,Q){Q===void 0&&(Q={}),"passive"in Q&&n?N.removeEventListener(q,H,Q):N.removeEventListener(q,H,Q.capture)};var s=function(N){N.preventDefault(),N.stopPropagation(),i.window.removeEventListener("click",s,!0)};function u(N){var q=N.userImage;return!!(q&&q.render&&q.render())&&(N.data.replace(new Uint8Array(q.data.buffer)),!0)}y.suppressClick=function(){i.window.addEventListener("click",s,!0),i.window.setTimeout(function(){i.window.removeEventListener("click",s,!0)},0)},y.mousePos=function(N,q){var H=N.getBoundingClientRect();return new i.Point(q.clientX-H.left-N.clientLeft,q.clientY-H.top-N.clientTop)},y.touchPos=function(N,q){for(var H=N.getBoundingClientRect(),Q=[],ge=0;ge<q.length;ge++)Q.push(new i.Point(q[ge].clientX-H.left-N.clientLeft,q[ge].clientY-H.top-N.clientTop));return Q},y.mouseButton=function(N){return i.window.InstallTrigger!==void 0&&N.button===2&&N.ctrlKey&&i.window.navigator.platform.toUpperCase().indexOf("MAC")>=0?0:N.button},y.remove=function(N){N.parentNode&&N.parentNode.removeChild(N)};var p=function(N){function q(){N.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new i.RGBAImage({width:1,height:1}),this.dirty=!0}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.isLoaded=function(){return this.loaded},q.prototype.setLoaded=function(H){if(this.loaded!==H&&(this.loaded=H,H)){for(var Q=0,ge=this.requestors;Q<ge.length;Q+=1){var Le=ge[Q],U=Le.ids,ne=Le.callback;this._notify(U,ne)}this.requestors=[]}},q.prototype.getImage=function(H){return this.images[H]},q.prototype.addImage=function(H,Q){this._validate(H,Q)&&(this.images[H]=Q)},q.prototype._validate=function(H,Q){var ge=!0;return this._validateStretch(Q.stretchX,Q.data&&Q.data.width)||(this.fire(new i.ErrorEvent(new Error('Image "'+H+'" has invalid "stretchX" value'))),ge=!1),this._validateStretch(Q.stretchY,Q.data&&Q.data.height)||(this.fire(new i.ErrorEvent(new Error('Image "'+H+'" has invalid "stretchY" value'))),ge=!1),this._validateContent(Q.content,Q)||(this.fire(new i.ErrorEvent(new Error('Image "'+H+'" has invalid "content" value'))),ge=!1),ge},q.prototype._validateStretch=function(H,Q){if(!H)return!0;for(var ge=0,Le=0,U=H;Le<U.length;Le+=1){var ne=U[Le];if(ne[0]<ge||ne[1]<ne[0]||Q<ne[1])return!1;ge=ne[1]}return!0},q.prototype._validateContent=function(H,Q){return!(H&&(H.length!==4||H[0]<0||Q.data.width<H[0]||H[1]<0||Q.data.height<H[1]||H[2]<0||Q.data.width<H[2]||H[3]<0||Q.data.height<H[3]||H[2]<H[0]||H[3]<H[1]))},q.prototype.updateImage=function(H,Q){var ge=this.images[H];Q.version=ge.version+1,this.images[H]=Q,this.updatedImages[H]=!0},q.prototype.removeImage=function(H){var Q=this.images[H];delete this.images[H],delete this.patterns[H],Q.userImage&&Q.userImage.onRemove&&Q.userImage.onRemove()},q.prototype.listImages=function(){return Object.keys(this.images)},q.prototype.getImages=function(H,Q){var ge=!0;if(!this.isLoaded())for(var Le=0,U=H;Le<U.length;Le+=1){var ne=U[Le];this.images[ne]||(ge=!1)}this.isLoaded()||ge?this._notify(H,Q):this.requestors.push({ids:H,callback:Q})},q.prototype._notify=function(H,Q){for(var ge={},Le=0,U=H;Le<U.length;Le+=1){var ne=U[Le];this.images[ne]||this.fire(new i.Event("styleimagemissing",{id:ne}));var le=this.images[ne];le?ge[ne]={data:le.data.clone(),pixelRatio:le.pixelRatio,sdf:le.sdf,version:le.version,stretchX:le.stretchX,stretchY:le.stretchY,content:le.content,hasRenderCallback:!!(le.userImage&&le.userImage.render)}:i.warnOnce('Image "'+ne+'" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.')}Q(null,ge)},q.prototype.getPixelSize=function(){var H=this.atlasImage;return{width:H.width,height:H.height}},q.prototype.getPattern=function(H){var Q=this.patterns[H],ge=this.getImage(H);if(!ge)return null;if(Q&&Q.position.version===ge.version)return Q.position;if(Q)Q.position.version=ge.version;else{var Le={w:ge.data.width+2,h:ge.data.height+2,x:0,y:0},U=new i.ImagePosition(Le,ge);this.patterns[H]={bin:Le,position:U}}return this._updatePatternAtlas(),this.patterns[H].position},q.prototype.bind=function(H){var Q=H.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new i.Texture(H,this.atlasImage,Q.RGBA),this.atlasTexture.bind(Q.LINEAR,Q.CLAMP_TO_EDGE)},q.prototype._updatePatternAtlas=function(){var H=[];for(var Q in this.patterns)H.push(this.patterns[Q].bin);var ge=i.potpack(H),Le=ge.w,U=ge.h,ne=this.atlasImage;for(var le in ne.resize({width:Le||1,height:U||1}),this.patterns){var ye=this.patterns[le].bin,ke=ye.x+1,Re=ye.y+1,He=this.images[le].data,We=He.width,Xe=He.height;i.RGBAImage.copy(He,ne,{x:0,y:0},{x:ke,y:Re},{width:We,height:Xe}),i.RGBAImage.copy(He,ne,{x:0,y:Xe-1},{x:ke,y:Re-1},{width:We,height:1}),i.RGBAImage.copy(He,ne,{x:0,y:0},{x:ke,y:Re+Xe},{width:We,height:1}),i.RGBAImage.copy(He,ne,{x:We-1,y:0},{x:ke-1,y:Re},{width:1,height:Xe}),i.RGBAImage.copy(He,ne,{x:0,y:0},{x:ke+We,y:Re},{width:1,height:Xe})}this.dirty=!0},q.prototype.beginFrame=function(){this.callbackDispatchedThisFrame={}},q.prototype.dispatchRenderCallbacks=function(H){for(var Q=0,ge=H;Q<ge.length;Q+=1){var Le=ge[Q];if(!this.callbackDispatchedThisFrame[Le]){this.callbackDispatchedThisFrame[Le]=!0;var U=this.images[Le];u(U)&&this.updateImage(Le,U)}}},q}(i.Evented),c=f,b=f,g=1e20;function f(N,q,H,Q,ge,Le){this.fontSize=N||24,this.buffer=q===void 0?3:q,this.cutoff=Q||.25,this.fontFamily=ge||"sans-serif",this.fontWeight=Le||"normal",this.radius=H||8;var U=this.size=this.fontSize+2*this.buffer;this.canvas=document.createElement("canvas"),this.canvas.width=this.canvas.height=U,this.ctx=this.canvas.getContext("2d"),this.ctx.font=this.fontWeight+" "+this.fontSize+"px "+this.fontFamily,this.ctx.textBaseline="middle",this.ctx.fillStyle="black",this.gridOuter=new Float64Array(U*U),this.gridInner=new Float64Array(U*U),this.f=new Float64Array(U),this.d=new Float64Array(U),this.z=new Float64Array(U+1),this.v=new Int16Array(U),this.middle=Math.round(U/2*(navigator.userAgent.indexOf("Gecko/")>=0?1.2:1))}function v(N,q,H,Q,ge,Le,U){for(var ne=0;ne<q;ne++){for(var le=0;le<H;le++)Q[le]=N[le*q+ne];for(m(Q,ge,Le,U,H),le=0;le<H;le++)N[le*q+ne]=ge[le]}for(le=0;le<H;le++){for(ne=0;ne<q;ne++)Q[ne]=N[le*q+ne];for(m(Q,ge,Le,U,q),ne=0;ne<q;ne++)N[le*q+ne]=Math.sqrt(ge[ne])}}function m(N,q,H,Q,ge){H[0]=0,Q[0]=-g,Q[1]=+g;for(var Le=1,U=0;Le<ge;Le++){for(var ne=(N[Le]+Le*Le-(N[H[U]]+H[U]*H[U]))/(2*Le-2*H[U]);ne<=Q[U];)U--,ne=(N[Le]+Le*Le-(N[H[U]]+H[U]*H[U]))/(2*Le-2*H[U]);H[++U]=Le,Q[U]=ne,Q[U+1]=+g}for(Le=0,U=0;Le<ge;Le++){for(;Q[U+1]<Le;)U++;q[Le]=(Le-H[U])*(Le-H[U])+N[H[U]]}}f.prototype.draw=function(N){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(N,this.buffer,this.middle);for(var q=this.ctx.getImageData(0,0,this.size,this.size),H=new Uint8ClampedArray(this.size*this.size),Q=0;Q<this.size*this.size;Q++){var ge=q.data[4*Q+3]/255;this.gridOuter[Q]=ge===1?0:ge===0?g:Math.pow(Math.max(0,.5-ge),2),this.gridInner[Q]=ge===1?g:ge===0?0:Math.pow(Math.max(0,ge-.5),2)}for(v(this.gridOuter,this.size,this.size,this.f,this.d,this.v,this.z),v(this.gridInner,this.size,this.size,this.f,this.d,this.v,this.z),Q=0;Q<this.size*this.size;Q++){var Le=this.gridOuter[Q]-this.gridInner[Q];H[Q]=Math.max(0,Math.min(255,Math.round(255-255*(Le/this.radius+this.cutoff))))}return H},c.default=b;var x=function(N,q){this.requestManager=N,this.localIdeographFontFamily=q,this.entries={}};x.prototype.setURL=function(N){this.url=N},x.prototype.getGlyphs=function(N,q){var H=this,Q=[];for(var ge in N)for(var Le=0,U=N[ge];Le<U.length;Le+=1){var ne=U[Le];Q.push({stack:ge,id:ne})}i.asyncAll(Q,function(le,ye){var ke=le.stack,Re=le.id,He=H.entries[ke];He||(He=H.entries[ke]={glyphs:{},requests:{},ranges:{}});var We=He.glyphs[Re];if(We===void 0){if(We=H._tinySDF(He,ke,Re))return He.glyphs[Re]=We,void ye(null,{stack:ke,id:Re,glyph:We});var Xe=Math.floor(Re/256);if(256*Xe>65535)ye(new Error("glyphs > 65535 not supported"));else if(He.ranges[Xe])ye(null,{stack:ke,id:Re,glyph:We});else{var Ke=He.requests[Xe];Ke||(Ke=He.requests[Xe]=[],x.loadGlyphRange(ke,Xe,H.url,H.requestManager,function(it,pt){if(pt){for(var mt in pt)H._doesCharSupportLocalGlyph(+mt)||(He.glyphs[+mt]=pt[+mt]);He.ranges[Xe]=!0}for(var Ot=0,Rt=Ke;Ot<Rt.length;Ot+=1)(0,Rt[Ot])(it,pt);delete He.requests[Xe]})),Ke.push(function(it,pt){it?ye(it):pt&&ye(null,{stack:ke,id:Re,glyph:pt[Re]||null})})}}else ye(null,{stack:ke,id:Re,glyph:We})},function(le,ye){if(le)q(le);else if(ye){for(var ke={},Re=0,He=ye;Re<He.length;Re+=1){var We=He[Re],Xe=We.stack,Ke=We.id,it=We.glyph;(ke[Xe]||(ke[Xe]={}))[Ke]=it&&{id:it.id,bitmap:it.bitmap.clone(),metrics:it.metrics}}q(null,ke)}})},x.prototype._doesCharSupportLocalGlyph=function(N){return!!this.localIdeographFontFamily&&(i.isChar["CJK Unified Ideographs"](N)||i.isChar["Hangul Syllables"](N)||i.isChar.Hiragana(N)||i.isChar.Katakana(N))},x.prototype._tinySDF=function(N,q,H){var Q=this.localIdeographFontFamily;if(Q&&this._doesCharSupportLocalGlyph(H)){var ge=N.tinySDF;if(!ge){var Le="400";/bold/i.test(q)?Le="900":/medium/i.test(q)?Le="500":/light/i.test(q)&&(Le="200"),ge=N.tinySDF=new x.TinySDF(24,3,8,.25,Q,Le)}return{id:H,bitmap:new i.AlphaImage({width:30,height:30},ge.draw(String.fromCharCode(H))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}}},x.loadGlyphRange=function(N,q,H,Q,ge){var Le=256*q,U=Le+255,ne=Q.transformRequest(Q.normalizeGlyphsURL(H).replace("{fontstack}",N).replace("{range}",Le+"-"+U),i.ResourceType.Glyphs);i.getArrayBuffer(ne,function(le,ye){if(le)ge(le);else if(ye){for(var ke={},Re=0,He=i.parseGlyphPBF(ye);Re<He.length;Re+=1){var We=He[Re];ke[We.id]=We}ge(null,ke)}})},x.TinySDF=c;var T=function(){this.specification=i.styleSpec.light.position};T.prototype.possiblyEvaluate=function(N,q){return i.sphericalToCartesian(N.expression.evaluate(q))},T.prototype.interpolate=function(N,q,H){return{x:i.number(N.x,q.x,H),y:i.number(N.y,q.y,H),z:i.number(N.z,q.z,H)}};var d=new i.Properties({anchor:new i.DataConstantProperty(i.styleSpec.light.anchor),position:new T,color:new i.DataConstantProperty(i.styleSpec.light.color),intensity:new i.DataConstantProperty(i.styleSpec.light.intensity)}),M="-transition",A=function(N){function q(H){N.call(this),this._transitionable=new i.Transitionable(d),this.setLight(H),this._transitioning=this._transitionable.untransitioned()}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getLight=function(){return this._transitionable.serialize()},q.prototype.setLight=function(H,Q){if(Q===void 0&&(Q={}),!this._validate(i.validateLight,H,Q))for(var ge in H){var Le=H[ge];i.endsWith(ge,M)?this._transitionable.setTransition(ge.slice(0,-11),Le):this._transitionable.setValue(ge,Le)}},q.prototype.updateTransitions=function(H){this._transitioning=this._transitionable.transitioned(H,this._transitioning)},q.prototype.hasTransition=function(){return this._transitioning.hasTransition()},q.prototype.recalculate=function(H){this.properties=this._transitioning.possiblyEvaluate(H)},q.prototype._validate=function(H,Q,ge){return(!ge||ge.validate!==!1)&&i.emitValidationErrors(this,H.call(i.validateStyle,i.extend({value:Q,style:{glyphs:!0,sprite:!0},styleSpec:i.styleSpec})))},q}(i.Evented),C=function(N,q){this.width=N,this.height=q,this.nextRow=0,this.data=new Uint8Array(this.width*this.height),this.dashEntry={}};C.prototype.getDash=function(N,q){var H=N.join(",")+String(q);return this.dashEntry[H]||(this.dashEntry[H]=this.addDash(N,q)),this.dashEntry[H]},C.prototype.getDashRanges=function(N,q,H){var Q=[],ge=N.length%2==1?-N[N.length-1]*H:0,Le=N[0]*H,U=!0;Q.push({left:ge,right:Le,isDash:U,zeroLength:N[0]===0});for(var ne=N[0],le=1;le<N.length;le++){U=!U;var ye=N[le];ge=ne*H,Le=(ne+=ye)*H,Q.push({left:ge,right:Le,isDash:U,zeroLength:ye===0})}return Q},C.prototype.addRoundDash=function(N,q,H){for(var Q=q/2,ge=-H;ge<=H;ge++)for(var Le=this.nextRow+H+ge,U=this.width*Le,ne=0,le=N[ne],ye=0;ye<this.width;ye++){ye/le.right>1&&(le=N[++ne]);var ke=Math.abs(ye-le.left),Re=Math.abs(ye-le.right),He=Math.min(ke,Re),We=void 0,Xe=ge/H*(Q+1);if(le.isDash){var Ke=Q-Math.abs(Xe);We=Math.sqrt(He*He+Ke*Ke)}else We=Q-Math.sqrt(He*He+Xe*Xe);this.data[U+ye]=Math.max(0,Math.min(255,We+128))}},C.prototype.addRegularDash=function(N){for(var q=N.length-1;q>=0;--q){var H=N[q],Q=N[q+1];H.zeroLength?N.splice(q,1):Q&&Q.isDash===H.isDash&&(Q.left=H.left,N.splice(q,1))}var ge=N[0],Le=N[N.length-1];ge.isDash===Le.isDash&&(ge.left=Le.left-this.width,Le.right=ge.right+this.width);for(var U=this.width*this.nextRow,ne=0,le=N[ne],ye=0;ye<this.width;ye++){ye/le.right>1&&(le=N[++ne]);var ke=Math.abs(ye-le.left),Re=Math.abs(ye-le.right),He=Math.min(ke,Re),We=le.isDash?He:-He;this.data[U+ye]=Math.max(0,Math.min(255,We+128))}},C.prototype.addDash=function(N,q){var H=q?7:0,Q=2*H+1;if(this.nextRow+Q>this.height)return i.warnOnce("LineAtlas out of space"),null;for(var ge=0,Le=0;Le<N.length;Le++)ge+=N[Le];if(ge!==0){var U=this.width/ge,ne=this.getDashRanges(N,this.width,U);q?this.addRoundDash(ne,U,H):this.addRegularDash(ne)}var le={y:(this.nextRow+H+.5)/this.height,height:2*H/this.height,width:ge};return this.nextRow+=Q,this.dirty=!0,le},C.prototype.bind=function(N){var q=N.gl;this.texture?(q.bindTexture(q.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,q.texSubImage2D(q.TEXTURE_2D,0,0,0,this.width,this.height,q.ALPHA,q.UNSIGNED_BYTE,this.data))):(this.texture=q.createTexture(),q.bindTexture(q.TEXTURE_2D,this.texture),q.texParameteri(q.TEXTURE_2D,q.TEXTURE_WRAP_S,q.REPEAT),q.texParameteri(q.TEXTURE_2D,q.TEXTURE_WRAP_T,q.REPEAT),q.texParameteri(q.TEXTURE_2D,q.TEXTURE_MIN_FILTER,q.LINEAR),q.texParameteri(q.TEXTURE_2D,q.TEXTURE_MAG_FILTER,q.LINEAR),q.texImage2D(q.TEXTURE_2D,0,q.ALPHA,this.width,this.height,0,q.ALPHA,q.UNSIGNED_BYTE,this.data))};var P=function N(q,H){this.workerPool=q,this.actors=[],this.currentActor=0,this.id=i.uniqueId();for(var Q=this.workerPool.acquire(this.id),ge=0;ge<Q.length;ge++){var Le=Q[ge],U=new N.Actor(Le,H,this.id);U.name="Worker "+ge,this.actors.push(U)}};function O(N,q,H){var Q=function(ge,Le){if(ge)return H(ge);if(Le){var U=i.pick(i.extend(Le,N),["tiles","minzoom","maxzoom","attribution","mapbox_logo","bounds","scheme","tileSize","encoding"]);Le.vector_layers&&(U.vectorLayers=Le.vector_layers,U.vectorLayerIds=U.vectorLayers.map(function(ne){return ne.id})),U.tiles=q.canonicalizeTileset(U,N.url),H(null,U)}};return N.url?i.getJSON(q.transformRequest(q.normalizeSourceURL(N.url),i.ResourceType.Source),Q):i.browser.frame(function(){return Q(null,N)})}P.prototype.broadcast=function(N,q,H){H=H||function(){},i.asyncAll(this.actors,function(Q,ge){Q.send(N,q,ge)},H)},P.prototype.getActor=function(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]},P.prototype.remove=function(){this.actors.forEach(function(N){N.remove()}),this.actors=[],this.workerPool.release(this.id)},P.Actor=i.Actor;var z=function(N,q,H){this.bounds=i.LngLatBounds.convert(this.validateBounds(N)),this.minzoom=q||0,this.maxzoom=H||24};z.prototype.validateBounds=function(N){return Array.isArray(N)&&N.length===4?[Math.max(-180,N[0]),Math.max(-90,N[1]),Math.min(180,N[2]),Math.min(90,N[3])]:[-180,-90,180,90]},z.prototype.contains=function(N){var q=Math.pow(2,N.z),H=Math.floor(i.mercatorXfromLng(this.bounds.getWest())*q),Q=Math.floor(i.mercatorYfromLat(this.bounds.getNorth())*q),ge=Math.ceil(i.mercatorXfromLng(this.bounds.getEast())*q),Le=Math.ceil(i.mercatorYfromLat(this.bounds.getSouth())*q);return N.x>=H&&N.x<ge&&N.y>=Q&&N.y<Le};var B=function(N){function q(H,Q,ge,Le){if(N.call(this),this.id=H,this.dispatcher=ge,this.type="vector",this.minzoom=0,this.maxzoom=22,this.scheme="xyz",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,i.extend(this,i.pick(Q,["url","scheme","tileSize","promoteId"])),this._options=i.extend({type:"vector"},Q),this._collectResourceTiming=Q.collectResourceTiming,this.tileSize!==512)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(Le)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.load=function(){var H=this;this._loaded=!1,this.fire(new i.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=O(this._options,this.map._requestManager,function(Q,ge){H._tileJSONRequest=null,H._loaded=!0,Q?H.fire(new i.ErrorEvent(Q)):ge&&(i.extend(H,ge),ge.bounds&&(H.tileBounds=new z(ge.bounds,H.minzoom,H.maxzoom)),i.postTurnstileEvent(ge.tiles,H.map._requestManager._customAccessToken),i.postMapLoadEvent(ge.tiles,H.map._getMapId(),H.map._requestManager._skuToken,H.map._requestManager._customAccessToken),H.fire(new i.Event("data",{dataType:"source",sourceDataType:"metadata"})),H.fire(new i.Event("data",{dataType:"source",sourceDataType:"content"})))})},q.prototype.loaded=function(){return this._loaded},q.prototype.hasTile=function(H){return!this.tileBounds||this.tileBounds.contains(H.canonical)},q.prototype.onAdd=function(H){this.map=H,this.load()},q.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},q.prototype.serialize=function(){return i.extend({},this._options)},q.prototype.loadTile=function(H,Q){var ge=this.map._requestManager.normalizeTileURL(H.tileID.canonical.url(this.tiles,this.scheme)),Le={request:this.map._requestManager.transformRequest(ge,i.ResourceType.Tile),uid:H.uid,tileID:H.tileID,zoom:H.tileID.overscaledZ,tileSize:this.tileSize*H.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:i.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};function U(ne,le){return delete H.request,H.aborted?Q(null):ne&&ne.status!==404?Q(ne):(le&&le.resourceTiming&&(H.resourceTiming=le.resourceTiming),this.map._refreshExpiredTiles&&le&&H.setExpiryData(le),H.loadVectorData(le,this.map.painter),i.cacheEntryPossiblyAdded(this.dispatcher),Q(null),void(H.reloadCallback&&(this.loadTile(H,H.reloadCallback),H.reloadCallback=null)))}Le.request.collectResourceTiming=this._collectResourceTiming,H.actor&&H.state!=="expired"?H.state==="loading"?H.reloadCallback=Q:H.request=H.actor.send("reloadTile",Le,U.bind(this)):(H.actor=this.dispatcher.getActor(),H.request=H.actor.send("loadTile",Le,U.bind(this)))},q.prototype.abortTile=function(H){H.request&&(H.request.cancel(),delete H.request),H.actor&&H.actor.send("abortTile",{uid:H.uid,type:this.type,source:this.id},void 0)},q.prototype.unloadTile=function(H){H.unloadVectorData(),H.actor&&H.actor.send("removeTile",{uid:H.uid,type:this.type,source:this.id},void 0)},q.prototype.hasTransition=function(){return!1},q}(i.Evented),Y=function(N){function q(H,Q,ge,Le){N.call(this),this.id=H,this.dispatcher=ge,this.setEventedParent(Le),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=i.extend({type:"raster"},Q),i.extend(this,i.pick(Q,["url","scheme","tileSize"]))}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.load=function(){var H=this;this._loaded=!1,this.fire(new i.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=O(this._options,this.map._requestManager,function(Q,ge){H._tileJSONRequest=null,H._loaded=!0,Q?H.fire(new i.ErrorEvent(Q)):ge&&(i.extend(H,ge),ge.bounds&&(H.tileBounds=new z(ge.bounds,H.minzoom,H.maxzoom)),i.postTurnstileEvent(ge.tiles),i.postMapLoadEvent(ge.tiles,H.map._getMapId(),H.map._requestManager._skuToken),H.fire(new i.Event("data",{dataType:"source",sourceDataType:"metadata"})),H.fire(new i.Event("data",{dataType:"source",sourceDataType:"content"})))})},q.prototype.loaded=function(){return this._loaded},q.prototype.onAdd=function(H){this.map=H,this.load()},q.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},q.prototype.serialize=function(){return i.extend({},this._options)},q.prototype.hasTile=function(H){return!this.tileBounds||this.tileBounds.contains(H.canonical)},q.prototype.loadTile=function(H,Q){var ge=this,Le=this.map._requestManager.normalizeTileURL(H.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);H.request=i.getImage(this.map._requestManager.transformRequest(Le,i.ResourceType.Tile),function(U,ne){if(delete H.request,H.aborted)H.state="unloaded",Q(null);else if(U)H.state="errored",Q(U);else if(ne){ge.map._refreshExpiredTiles&&H.setExpiryData(ne),delete ne.cacheControl,delete ne.expires;var le=ge.map.painter.context,ye=le.gl;H.texture=ge.map.painter.getTileTexture(ne.width),H.texture?H.texture.update(ne,{useMipmap:!0}):(H.texture=new i.Texture(le,ne,ye.RGBA,{useMipmap:!0}),H.texture.bind(ye.LINEAR,ye.CLAMP_TO_EDGE,ye.LINEAR_MIPMAP_NEAREST),le.extTextureFilterAnisotropic&&ye.texParameterf(ye.TEXTURE_2D,le.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,le.extTextureFilterAnisotropicMax)),H.state="loaded",i.cacheEntryPossiblyAdded(ge.dispatcher),Q(null)}})},q.prototype.abortTile=function(H,Q){H.request&&(H.request.cancel(),delete H.request),Q()},q.prototype.unloadTile=function(H,Q){H.texture&&this.map.painter.saveTileTexture(H.texture),Q()},q.prototype.hasTransition=function(){return!1},q}(i.Evented),D=function(N){function q(H,Q,ge,Le){N.call(this,H,Q,ge,Le),this.type="raster-dem",this.maxzoom=22,this._options=i.extend({type:"raster-dem"},Q),this.encoding=Q.encoding||"mapbox"}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.serialize=function(){return{type:"raster-dem",url:this.url,tileSize:this.tileSize,tiles:this.tiles,bounds:this.bounds,encoding:this.encoding}},q.prototype.loadTile=function(H,Q){var ge=this.map._requestManager.normalizeTileURL(H.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);function Le(U,ne){U&&(H.state="errored",Q(U)),ne&&(H.dem=ne,H.needsHillshadePrepare=!0,H.state="loaded",Q(null))}H.request=i.getImage(this.map._requestManager.transformRequest(ge,i.ResourceType.Tile),function(U,ne){if(delete H.request,H.aborted)H.state="unloaded",Q(null);else if(U)H.state="errored",Q(U);else if(ne){this.map._refreshExpiredTiles&&H.setExpiryData(ne),delete ne.cacheControl,delete ne.expires;var le=i.window.ImageBitmap&&ne instanceof i.window.ImageBitmap&&i.offscreenCanvasSupported()?ne:i.browser.getImageData(ne,1),ye={uid:H.uid,coord:H.tileID,source:this.id,rawImageData:le,encoding:this.encoding};H.actor&&H.state!=="expired"||(H.actor=this.dispatcher.getActor(),H.actor.send("loadDEMTile",ye,Le.bind(this)))}}.bind(this)),H.neighboringTiles=this._getNeighboringTiles(H.tileID)},q.prototype._getNeighboringTiles=function(H){var Q=H.canonical,ge=Math.pow(2,Q.z),Le=(Q.x-1+ge)%ge,U=Q.x===0?H.wrap-1:H.wrap,ne=(Q.x+1+ge)%ge,le=Q.x+1===ge?H.wrap+1:H.wrap,ye={};return ye[new i.OverscaledTileID(H.overscaledZ,U,Q.z,Le,Q.y).key]={backfilled:!1},ye[new i.OverscaledTileID(H.overscaledZ,le,Q.z,ne,Q.y).key]={backfilled:!1},Q.y>0&&(ye[new i.OverscaledTileID(H.overscaledZ,U,Q.z,Le,Q.y-1).key]={backfilled:!1},ye[new i.OverscaledTileID(H.overscaledZ,H.wrap,Q.z,Q.x,Q.y-1).key]={backfilled:!1},ye[new i.OverscaledTileID(H.overscaledZ,le,Q.z,ne,Q.y-1).key]={backfilled:!1}),Q.y+1<ge&&(ye[new i.OverscaledTileID(H.overscaledZ,U,Q.z,Le,Q.y+1).key]={backfilled:!1},ye[new i.OverscaledTileID(H.overscaledZ,H.wrap,Q.z,Q.x,Q.y+1).key]={backfilled:!1},ye[new i.OverscaledTileID(H.overscaledZ,le,Q.z,ne,Q.y+1).key]={backfilled:!1}),ye},q.prototype.unloadTile=function(H){H.demTexture&&this.map.painter.saveTileTexture(H.demTexture),H.fbo&&(H.fbo.destroy(),delete H.fbo),H.dem&&delete H.dem,delete H.neighboringTiles,H.state="unloaded",H.actor&&H.actor.send("removeDEMTile",{uid:H.uid,source:this.id})},q}(Y),G=function(N){function q(H,Q,ge,Le){N.call(this),this.id=H,this.type="geojson",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this._removed=!1,this._loaded=!1,this.actor=ge.getActor(),this.setEventedParent(Le),this._data=Q.data,this._options=i.extend({},Q),this._collectResourceTiming=Q.collectResourceTiming,this._resourceTiming=[],Q.maxzoom!==void 0&&(this.maxzoom=Q.maxzoom),Q.type&&(this.type=Q.type),Q.attribution&&(this.attribution=Q.attribution),this.promoteId=Q.promoteId;var U=i.EXTENT/this.tileSize;this.workerOptions=i.extend({source:this.id,cluster:Q.cluster||!1,geojsonVtOptions:{buffer:(Q.buffer!==void 0?Q.buffer:128)*U,tolerance:(Q.tolerance!==void 0?Q.tolerance:.375)*U,extent:i.EXTENT,maxZoom:this.maxzoom,lineMetrics:Q.lineMetrics||!1,generateId:Q.generateId||!1},superclusterOptions:{maxZoom:Q.clusterMaxZoom!==void 0?Math.min(Q.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,extent:i.EXTENT,radius:(Q.clusterRadius||50)*U,log:!1,generateId:Q.generateId||!1},clusterProperties:Q.clusterProperties},Q.workerOptions)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.load=function(){var H=this;this.fire(new i.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(Q){if(Q)H.fire(new i.ErrorEvent(Q));else{var ge={dataType:"source",sourceDataType:"metadata"};H._collectResourceTiming&&H._resourceTiming&&H._resourceTiming.length>0&&(ge.resourceTiming=H._resourceTiming,H._resourceTiming=[]),H.fire(new i.Event("data",ge))}})},q.prototype.onAdd=function(H){this.map=H,this.load()},q.prototype.setData=function(H){var Q=this;return this._data=H,this.fire(new i.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(ge){if(ge)Q.fire(new i.ErrorEvent(ge));else{var Le={dataType:"source",sourceDataType:"content"};Q._collectResourceTiming&&Q._resourceTiming&&Q._resourceTiming.length>0&&(Le.resourceTiming=Q._resourceTiming,Q._resourceTiming=[]),Q.fire(new i.Event("data",Le))}}),this},q.prototype.getClusterExpansionZoom=function(H,Q){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:H,source:this.id},Q),this},q.prototype.getClusterChildren=function(H,Q){return this.actor.send("geojson.getClusterChildren",{clusterId:H,source:this.id},Q),this},q.prototype.getClusterLeaves=function(H,Q,ge,Le){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:H,limit:Q,offset:ge},Le),this},q.prototype._updateWorkerData=function(H){var Q=this;this._loaded=!1;var ge=i.extend({},this.workerOptions),Le=this._data;typeof Le=="string"?(ge.request=this.map._requestManager.transformRequest(i.browser.resolveURL(Le),i.ResourceType.Source),ge.request.collectResourceTiming=this._collectResourceTiming):ge.data=JSON.stringify(Le),this.actor.send(this.type+".loadData",ge,function(U,ne){Q._removed||ne&&ne.abandoned||(Q._loaded=!0,ne&&ne.resourceTiming&&ne.resourceTiming[Q.id]&&(Q._resourceTiming=ne.resourceTiming[Q.id].slice(0)),Q.actor.send(Q.type+".coalesce",{source:ge.source},null),H(U))})},q.prototype.loaded=function(){return this._loaded},q.prototype.loadTile=function(H,Q){var ge=this,Le=H.actor?"reloadTile":"loadTile";H.actor=this.actor;var U={type:this.type,uid:H.uid,tileID:H.tileID,zoom:H.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:i.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};H.request=this.actor.send(Le,U,function(ne,le){return delete H.request,H.unloadVectorData(),H.aborted?Q(null):ne?Q(ne):(H.loadVectorData(le,ge.map.painter,Le==="reloadTile"),Q(null))})},q.prototype.abortTile=function(H){H.request&&(H.request.cancel(),delete H.request),H.aborted=!0},q.prototype.unloadTile=function(H){H.unloadVectorData(),this.actor.send("removeTile",{uid:H.uid,type:this.type,source:this.id})},q.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},q.prototype.serialize=function(){return i.extend({},this._options,{type:this.type,data:this._data})},q.prototype.hasTransition=function(){return!1},q}(i.Evented),V=i.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),j=function(N){function q(H,Q,ge,Le){N.call(this),this.id=H,this.dispatcher=ge,this.coordinates=Q.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(Le),this.options=Q}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.load=function(H,Q){var ge=this;this._loaded=!1,this.fire(new i.Event("dataloading",{dataType:"source"})),this.url=this.options.url,i.getImage(this.map._requestManager.transformRequest(this.url,i.ResourceType.Image),function(Le,U){ge._loaded=!0,Le?ge.fire(new i.ErrorEvent(Le)):U&&(ge.image=U,H&&(ge.coordinates=H),Q&&Q(),ge._finishLoading())})},q.prototype.loaded=function(){return this._loaded},q.prototype.updateImage=function(H){var Q=this;return this.image&&H.url?(this.options.url=H.url,this.load(H.coordinates,function(){Q.texture=null}),this):this},q.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"metadata"})))},q.prototype.onAdd=function(H){this.map=H,this.load()},q.prototype.setCoordinates=function(H){var Q=this;this.coordinates=H;var ge=H.map(i.MercatorCoordinate.fromLngLat);this.tileID=function(U){for(var ne=1/0,le=1/0,ye=-1/0,ke=-1/0,Re=0,He=U;Re<He.length;Re+=1){var We=He[Re];ne=Math.min(ne,We.x),le=Math.min(le,We.y),ye=Math.max(ye,We.x),ke=Math.max(ke,We.y)}var Xe=ye-ne,Ke=ke-le,it=Math.max(Xe,Ke),pt=Math.max(0,Math.floor(-Math.log(it)/Math.LN2)),mt=Math.pow(2,pt);return new i.CanonicalTileID(pt,Math.floor((ne+ye)/2*mt),Math.floor((le+ke)/2*mt))}(ge),this.minzoom=this.maxzoom=this.tileID.z;var Le=ge.map(function(U){return Q.tileID.getTilePoint(U)._round()});return this._boundsArray=new i.StructArrayLayout4i8,this._boundsArray.emplaceBack(Le[0].x,Le[0].y,0,0),this._boundsArray.emplaceBack(Le[1].x,Le[1].y,i.EXTENT,0),this._boundsArray.emplaceBack(Le[3].x,Le[3].y,0,i.EXTENT),this._boundsArray.emplaceBack(Le[2].x,Le[2].y,i.EXTENT,i.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"content"})),this},q.prototype.prepare=function(){if(Object.keys(this.tiles).length!==0&&this.image){var H=this.map.painter.context,Q=H.gl;for(var ge in this.boundsBuffer||(this.boundsBuffer=H.createVertexBuffer(this._boundsArray,V.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new i.Texture(H,this.image,Q.RGBA),this.texture.bind(Q.LINEAR,Q.CLAMP_TO_EDGE)),this.tiles){var Le=this.tiles[ge];Le.state!=="loaded"&&(Le.state="loaded",Le.texture=this.texture)}}},q.prototype.loadTile=function(H,Q){this.tileID&&this.tileID.equals(H.tileID.canonical)?(this.tiles[String(H.tileID.wrap)]=H,H.buckets={},Q(null)):(H.state="errored",Q(null))},q.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},q.prototype.hasTransition=function(){return!1},q}(i.Evented),W=function(N){function q(H,Q,ge,Le){N.call(this,H,Q,ge,Le),this.roundZoom=!0,this.type="video",this.options=Q}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.load=function(){var H=this;this._loaded=!1;var Q=this.options;this.urls=[];for(var ge=0,Le=Q.urls;ge<Le.length;ge+=1){var U=Le[ge];this.urls.push(this.map._requestManager.transformRequest(U,i.ResourceType.Source).url)}i.getVideo(this.urls,function(ne,le){H._loaded=!0,ne?H.fire(new i.ErrorEvent(ne)):le&&(H.video=le,H.video.loop=!0,H.video.addEventListener("playing",function(){H.map.triggerRepaint()}),H.map&&H.video.play(),H._finishLoading())})},q.prototype.pause=function(){this.video&&this.video.pause()},q.prototype.play=function(){this.video&&this.video.play()},q.prototype.seek=function(H){if(this.video){var Q=this.video.seekable;H<Q.start(0)||H>Q.end(0)?this.fire(new i.ErrorEvent(new i.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+Q.start(0)+" and "+Q.end(0)+"-second mark."))):this.video.currentTime=H}},q.prototype.getVideo=function(){return this.video},q.prototype.onAdd=function(H){this.map||(this.map=H,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},q.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||this.video.readyState<2)){var H=this.map.painter.context,Q=H.gl;for(var ge in this.boundsBuffer||(this.boundsBuffer=H.createVertexBuffer(this._boundsArray,V.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(Q.LINEAR,Q.CLAMP_TO_EDGE),Q.texSubImage2D(Q.TEXTURE_2D,0,0,0,Q.RGBA,Q.UNSIGNED_BYTE,this.video)):(this.texture=new i.Texture(H,this.video,Q.RGBA),this.texture.bind(Q.LINEAR,Q.CLAMP_TO_EDGE)),this.tiles){var Le=this.tiles[ge];Le.state!=="loaded"&&(Le.state="loaded",Le.texture=this.texture)}}},q.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},q.prototype.hasTransition=function(){return this.video&&!this.video.paused},q}(j),Z=function(N){function q(H,Q,ge,Le){N.call(this,H,Q,ge,Le),Q.coordinates?Array.isArray(Q.coordinates)&&Q.coordinates.length===4&&!Q.coordinates.some(function(U){return!Array.isArray(U)||U.length!==2||U.some(function(ne){return typeof ne!="number"})})||this.fire(new i.ErrorEvent(new i.ValidationError("sources."+H,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+H,null,'missing required property "coordinates"'))),Q.animate&&typeof Q.animate!="boolean"&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+H,null,'optional "animate" property must be a boolean value'))),Q.canvas?typeof Q.canvas=="string"||Q.canvas instanceof i.window.HTMLCanvasElement||this.fire(new i.ErrorEvent(new i.ValidationError("sources."+H,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+H,null,'missing required property "canvas"'))),this.options=Q,this.animate=Q.animate===void 0||Q.animate}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.load=function(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof i.window.HTMLCanvasElement?this.options.canvas:i.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new i.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())},q.prototype.getCanvas=function(){return this.canvas},q.prototype.onAdd=function(H){this.map=H,this.load(),this.canvas&&this.animate&&this.play()},q.prototype.onRemove=function(){this.pause()},q.prototype.prepare=function(){var H=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,H=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,H=!0),!this._hasInvalidDimensions()&&Object.keys(this.tiles).length!==0){var Q=this.map.painter.context,ge=Q.gl;for(var Le in this.boundsBuffer||(this.boundsBuffer=Q.createVertexBuffer(this._boundsArray,V.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(H||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new i.Texture(Q,this.canvas,ge.RGBA,{premultiply:!0}),this.tiles){var U=this.tiles[Le];U.state!=="loaded"&&(U.state="loaded",U.texture=this.texture)}}},q.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},q.prototype.hasTransition=function(){return this._playing},q.prototype._hasInvalidDimensions=function(){for(var H=0,Q=[this.canvas.width,this.canvas.height];H<Q.length;H+=1){var ge=Q[H];if(isNaN(ge)||ge<=0)return!0}return!1},q}(j),ie={vector:B,raster:Y,"raster-dem":D,geojson:G,video:W,image:j,canvas:Z};function te(N,q){var H=i.identity([]);return i.translate(H,H,[1,1,0]),i.scale(H,H,[.5*N.width,.5*N.height,1]),i.multiply(H,H,N.calculatePosMatrix(q.toUnwrapped()))}function J(N,q,H,Q,ge,Le){var U=function(Ke,it,pt){if(Ke)for(var mt=0,Ot=Ke;mt<Ot.length;mt+=1){var Rt=it[Ot[mt]];if(Rt&&Rt.source===pt&&Rt.type==="fill-extrusion")return!0}else for(var Pt in it){var Vt=it[Pt];if(Vt.source===pt&&Vt.type==="fill-extrusion")return!0}return!1}(ge&&ge.layers,q,N.id),ne=Le.maxPitchScaleFactor(),le=N.tilesIn(Q,ne,U);le.sort(X);for(var ye=[],ke=0,Re=le;ke<Re.length;ke+=1){var He=Re[ke];ye.push({wrappedTileID:He.tileID.wrapped().key,queryResults:He.tile.queryRenderedFeatures(q,H,N._state,He.queryGeometry,He.cameraQueryGeometry,He.scale,ge,Le,ne,te(N.transform,He.tileID))})}var We=function(Ke){for(var it={},pt={},mt=0,Ot=Ke;mt<Ot.length;mt+=1){var Rt=Ot[mt],Pt=Rt.queryResults,Vt=Rt.wrappedTileID,It=pt[Vt]=pt[Vt]||{};for(var on in Pt)for(var Kt=Pt[on],Zt=It[on]=It[on]||{},yn=it[on]=it[on]||[],_n=0,Un=Kt;_n<Un.length;_n+=1){var Vn=Un[_n];Zt[Vn.featureIndex]||(Zt[Vn.featureIndex]=!0,yn.push(Vn))}}return it}(ye);for(var Xe in We)We[Xe].forEach(function(Ke){var it=Ke.feature,pt=N.getFeatureState(it.layer["source-layer"],it.id);it.source=it.layer.source,it.layer["source-layer"]&&(it.sourceLayer=it.layer["source-layer"]),it.state=pt});return We}function X(N,q){var H=N.tileID,Q=q.tileID;return H.overscaledZ-Q.overscaledZ||H.canonical.y-Q.canonical.y||H.wrap-Q.wrap||H.canonical.x-Q.canonical.x}var ee=function(N,q){this.max=N,this.onRemove=q,this.reset()};ee.prototype.reset=function(){for(var N in this.data)for(var q=0,H=this.data[N];q<H.length;q+=1){var Q=H[q];Q.timeout&&clearTimeout(Q.timeout),this.onRemove(Q.value)}return this.data={},this.order=[],this},ee.prototype.add=function(N,q,H){var Q=this,ge=N.wrapped().key;this.data[ge]===void 0&&(this.data[ge]=[]);var Le={value:q,timeout:void 0};if(H!==void 0&&(Le.timeout=setTimeout(function(){Q.remove(N,Le)},H)),this.data[ge].push(Le),this.order.push(ge),this.order.length>this.max){var U=this._getAndRemoveByKey(this.order[0]);U&&this.onRemove(U)}return this},ee.prototype.has=function(N){return N.wrapped().key in this.data},ee.prototype.getAndRemove=function(N){return this.has(N)?this._getAndRemoveByKey(N.wrapped().key):null},ee.prototype._getAndRemoveByKey=function(N){var q=this.data[N].shift();return q.timeout&&clearTimeout(q.timeout),this.data[N].length===0&&delete this.data[N],this.order.splice(this.order.indexOf(N),1),q.value},ee.prototype.getByKey=function(N){var q=this.data[N];return q?q[0].value:null},ee.prototype.get=function(N){return this.has(N)?this.data[N.wrapped().key][0].value:null},ee.prototype.remove=function(N,q){if(!this.has(N))return this;var H=N.wrapped().key,Q=q===void 0?0:this.data[H].indexOf(q),ge=this.data[H][Q];return this.data[H].splice(Q,1),ge.timeout&&clearTimeout(ge.timeout),this.data[H].length===0&&delete this.data[H],this.onRemove(ge.value),this.order.splice(this.order.indexOf(H),1),this},ee.prototype.setMaxSize=function(N){for(this.max=N;this.order.length>this.max;){var q=this._getAndRemoveByKey(this.order[0]);q&&this.onRemove(q)}return this},ee.prototype.filter=function(N){var q=[];for(var H in this.data)for(var Q=0,ge=this.data[H];Q<ge.length;Q+=1){var Le=ge[Q];N(Le.value)||q.push(Le)}for(var U=0,ne=q;U<ne.length;U+=1){var le=ne[U];this.remove(le.value.tileID,le)}};var re=function(N,q,H){this.context=N;var Q=N.gl;this.buffer=Q.createBuffer(),this.dynamicDraw=!!H,this.context.unbindVAO(),N.bindElementBuffer.set(this.buffer),Q.bufferData(Q.ELEMENT_ARRAY_BUFFER,q.arrayBuffer,this.dynamicDraw?Q.DYNAMIC_DRAW:Q.STATIC_DRAW),this.dynamicDraw||delete q.arrayBuffer};re.prototype.bind=function(){this.context.bindElementBuffer.set(this.buffer)},re.prototype.updateData=function(N){var q=this.context.gl;this.context.unbindVAO(),this.bind(),q.bufferSubData(q.ELEMENT_ARRAY_BUFFER,0,N.arrayBuffer)},re.prototype.destroy=function(){var N=this.context.gl;this.buffer&&(N.deleteBuffer(this.buffer),delete this.buffer)};var oe={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"},ue=function(N,q,H,Q){this.length=q.length,this.attributes=H,this.itemSize=q.bytesPerElement,this.dynamicDraw=Q,this.context=N;var ge=N.gl;this.buffer=ge.createBuffer(),N.bindVertexBuffer.set(this.buffer),ge.bufferData(ge.ARRAY_BUFFER,q.arrayBuffer,this.dynamicDraw?ge.DYNAMIC_DRAW:ge.STATIC_DRAW),this.dynamicDraw||delete q.arrayBuffer};ue.prototype.bind=function(){this.context.bindVertexBuffer.set(this.buffer)},ue.prototype.updateData=function(N){var q=this.context.gl;this.bind(),q.bufferSubData(q.ARRAY_BUFFER,0,N.arrayBuffer)},ue.prototype.enableAttributes=function(N,q){for(var H=0;H<this.attributes.length;H++){var Q=this.attributes[H],ge=q.attributes[Q.name];ge!==void 0&&N.enableVertexAttribArray(ge)}},ue.prototype.setVertexAttribPointers=function(N,q,H){for(var Q=0;Q<this.attributes.length;Q++){var ge=this.attributes[Q],Le=q.attributes[ge.name];Le!==void 0&&N.vertexAttribPointer(Le,ge.components,N[oe[ge.type]],!1,this.itemSize,ge.offset+this.itemSize*(H||0))}},ue.prototype.destroy=function(){var N=this.context.gl;this.buffer&&(N.deleteBuffer(this.buffer),delete this.buffer)};var ce=function(N){this.gl=N.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1};ce.prototype.get=function(){return this.current},ce.prototype.set=function(N){},ce.prototype.getDefault=function(){return this.default},ce.prototype.setDefault=function(){this.set(this.default)};var de=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return i.Color.transparent},q.prototype.set=function(H){var Q=this.current;(H.r!==Q.r||H.g!==Q.g||H.b!==Q.b||H.a!==Q.a||this.dirty)&&(this.gl.clearColor(H.r,H.g,H.b,H.a),this.current=H,this.dirty=!1)},q}(ce),me=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return 1},q.prototype.set=function(H){(H!==this.current||this.dirty)&&(this.gl.clearDepth(H),this.current=H,this.dirty=!1)},q}(ce),_e=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return 0},q.prototype.set=function(H){(H!==this.current||this.dirty)&&(this.gl.clearStencil(H),this.current=H,this.dirty=!1)},q}(ce),Se=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return[!0,!0,!0,!0]},q.prototype.set=function(H){var Q=this.current;(H[0]!==Q[0]||H[1]!==Q[1]||H[2]!==Q[2]||H[3]!==Q[3]||this.dirty)&&(this.gl.colorMask(H[0],H[1],H[2],H[3]),this.current=H,this.dirty=!1)},q}(ce),we=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return!0},q.prototype.set=function(H){(H!==this.current||this.dirty)&&(this.gl.depthMask(H),this.current=H,this.dirty=!1)},q}(ce),xe=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return 255},q.prototype.set=function(H){(H!==this.current||this.dirty)&&(this.gl.stencilMask(H),this.current=H,this.dirty=!1)},q}(ce),De=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return{func:this.gl.ALWAYS,ref:0,mask:255}},q.prototype.set=function(H){var Q=this.current;(H.func!==Q.func||H.ref!==Q.ref||H.mask!==Q.mask||this.dirty)&&(this.gl.stencilFunc(H.func,H.ref,H.mask),this.current=H,this.dirty=!1)},q}(ce),Ee=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){var H=this.gl;return[H.KEEP,H.KEEP,H.KEEP]},q.prototype.set=function(H){var Q=this.current;(H[0]!==Q[0]||H[1]!==Q[1]||H[2]!==Q[2]||this.dirty)&&(this.gl.stencilOp(H[0],H[1],H[2]),this.current=H,this.dirty=!1)},q}(ce),Me=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return!1},q.prototype.set=function(H){if(H!==this.current||this.dirty){var Q=this.gl;H?Q.enable(Q.STENCIL_TEST):Q.disable(Q.STENCIL_TEST),this.current=H,this.dirty=!1}},q}(ce),he=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return[0,1]},q.prototype.set=function(H){var Q=this.current;(H[0]!==Q[0]||H[1]!==Q[1]||this.dirty)&&(this.gl.depthRange(H[0],H[1]),this.current=H,this.dirty=!1)},q}(ce),fe=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return!1},q.prototype.set=function(H){if(H!==this.current||this.dirty){var Q=this.gl;H?Q.enable(Q.DEPTH_TEST):Q.disable(Q.DEPTH_TEST),this.current=H,this.dirty=!1}},q}(ce),ae=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return this.gl.LESS},q.prototype.set=function(H){(H!==this.current||this.dirty)&&(this.gl.depthFunc(H),this.current=H,this.dirty=!1)},q}(ce),be=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return!1},q.prototype.set=function(H){if(H!==this.current||this.dirty){var Q=this.gl;H?Q.enable(Q.BLEND):Q.disable(Q.BLEND),this.current=H,this.dirty=!1}},q}(ce),Ie=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){var H=this.gl;return[H.ONE,H.ZERO]},q.prototype.set=function(H){var Q=this.current;(H[0]!==Q[0]||H[1]!==Q[1]||this.dirty)&&(this.gl.blendFunc(H[0],H[1]),this.current=H,this.dirty=!1)},q}(ce),Te=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return i.Color.transparent},q.prototype.set=function(H){var Q=this.current;(H.r!==Q.r||H.g!==Q.g||H.b!==Q.b||H.a!==Q.a||this.dirty)&&(this.gl.blendColor(H.r,H.g,H.b,H.a),this.current=H,this.dirty=!1)},q}(ce),Ne=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return this.gl.FUNC_ADD},q.prototype.set=function(H){(H!==this.current||this.dirty)&&(this.gl.blendEquation(H),this.current=H,this.dirty=!1)},q}(ce),qe=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return!1},q.prototype.set=function(H){if(H!==this.current||this.dirty){var Q=this.gl;H?Q.enable(Q.CULL_FACE):Q.disable(Q.CULL_FACE),this.current=H,this.dirty=!1}},q}(ce),ve=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return this.gl.BACK},q.prototype.set=function(H){(H!==this.current||this.dirty)&&(this.gl.cullFace(H),this.current=H,this.dirty=!1)},q}(ce),Ce=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return this.gl.CCW},q.prototype.set=function(H){(H!==this.current||this.dirty)&&(this.gl.frontFace(H),this.current=H,this.dirty=!1)},q}(ce),Ae=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return null},q.prototype.set=function(H){(H!==this.current||this.dirty)&&(this.gl.useProgram(H),this.current=H,this.dirty=!1)},q}(ce),ze=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return this.gl.TEXTURE0},q.prototype.set=function(H){(H!==this.current||this.dirty)&&(this.gl.activeTexture(H),this.current=H,this.dirty=!1)},q}(ce),Ue=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){var H=this.gl;return[0,0,H.drawingBufferWidth,H.drawingBufferHeight]},q.prototype.set=function(H){var Q=this.current;(H[0]!==Q[0]||H[1]!==Q[1]||H[2]!==Q[2]||H[3]!==Q[3]||this.dirty)&&(this.gl.viewport(H[0],H[1],H[2],H[3]),this.current=H,this.dirty=!1)},q}(ce),Ve=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return null},q.prototype.set=function(H){if(H!==this.current||this.dirty){var Q=this.gl;Q.bindFramebuffer(Q.FRAMEBUFFER,H),this.current=H,this.dirty=!1}},q}(ce),Ye=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return null},q.prototype.set=function(H){if(H!==this.current||this.dirty){var Q=this.gl;Q.bindRenderbuffer(Q.RENDERBUFFER,H),this.current=H,this.dirty=!1}},q}(ce),$e=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return null},q.prototype.set=function(H){if(H!==this.current||this.dirty){var Q=this.gl;Q.bindTexture(Q.TEXTURE_2D,H),this.current=H,this.dirty=!1}},q}(ce),rt=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return null},q.prototype.set=function(H){if(H!==this.current||this.dirty){var Q=this.gl;Q.bindBuffer(Q.ARRAY_BUFFER,H),this.current=H,this.dirty=!1}},q}(ce),ht=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return null},q.prototype.set=function(H){var Q=this.gl;Q.bindBuffer(Q.ELEMENT_ARRAY_BUFFER,H),this.current=H,this.dirty=!1},q}(ce),nt=function(N){function q(H){N.call(this,H),this.vao=H.extVertexArrayObject}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return null},q.prototype.set=function(H){this.vao&&(H!==this.current||this.dirty)&&(this.vao.bindVertexArrayOES(H),this.current=H,this.dirty=!1)},q}(ce),bt=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return 4},q.prototype.set=function(H){if(H!==this.current||this.dirty){var Q=this.gl;Q.pixelStorei(Q.UNPACK_ALIGNMENT,H),this.current=H,this.dirty=!1}},q}(ce),wt=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return!1},q.prototype.set=function(H){if(H!==this.current||this.dirty){var Q=this.gl;Q.pixelStorei(Q.UNPACK_PREMULTIPLY_ALPHA_WEBGL,H),this.current=H,this.dirty=!1}},q}(ce),ut=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return!1},q.prototype.set=function(H){if(H!==this.current||this.dirty){var Q=this.gl;Q.pixelStorei(Q.UNPACK_FLIP_Y_WEBGL,H),this.current=H,this.dirty=!1}},q}(ce),lt=function(N){function q(H,Q){N.call(this,H),this.context=H,this.parent=Q}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getDefault=function(){return null},q}(ce),Tt=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.setDirty=function(){this.dirty=!0},q.prototype.set=function(H){if(H!==this.current||this.dirty){this.context.bindFramebuffer.set(this.parent);var Q=this.gl;Q.framebufferTexture2D(Q.FRAMEBUFFER,Q.COLOR_ATTACHMENT0,Q.TEXTURE_2D,H,0),this.current=H,this.dirty=!1}},q}(lt),Et=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.set=function(H){if(H!==this.current||this.dirty){this.context.bindFramebuffer.set(this.parent);var Q=this.gl;Q.framebufferRenderbuffer(Q.FRAMEBUFFER,Q.DEPTH_ATTACHMENT,Q.RENDERBUFFER,H),this.current=H,this.dirty=!1}},q}(lt),St=function(N,q,H,Q){this.context=N,this.width=q,this.height=H;var ge=N.gl,Le=this.framebuffer=ge.createFramebuffer();this.colorAttachment=new Tt(N,Le),Q&&(this.depthAttachment=new Et(N,Le))};St.prototype.destroy=function(){var N=this.context.gl,q=this.colorAttachment.get();if(q&&N.deleteTexture(q),this.depthAttachment){var H=this.depthAttachment.get();H&&N.deleteRenderbuffer(H)}N.deleteFramebuffer(this.framebuffer)};var Ft=function(N,q,H){this.func=N,this.mask=q,this.range=H};Ft.ReadOnly=!1,Ft.ReadWrite=!0,Ft.disabled=new Ft(519,Ft.ReadOnly,[0,1]);var zt=7680,Je=function(N,q,H,Q,ge,Le){this.test=N,this.ref=q,this.mask=H,this.fail=Q,this.depthFail=ge,this.pass=Le};Je.disabled=new Je({func:519,mask:0},0,0,zt,zt,zt);var et=function(N,q,H){this.blendFunction=N,this.blendColor=q,this.mask=H};et.Replace=[1,0],et.disabled=new et(et.Replace,i.Color.transparent,[!1,!1,!1,!1]),et.unblended=new et(et.Replace,i.Color.transparent,[!0,!0,!0,!0]),et.alphaBlended=new et([1,771],i.Color.transparent,[!0,!0,!0,!0]);var Ze=function(N,q,H){this.enable=N,this.mode=q,this.frontFace=H};Ze.disabled=new Ze(!1,1029,2305),Ze.backCCW=new Ze(!0,1029,2305);var Qe=function(N){this.gl=N,this.extVertexArrayObject=this.gl.getExtension("OES_vertex_array_object"),this.clearColor=new de(this),this.clearDepth=new me(this),this.clearStencil=new _e(this),this.colorMask=new Se(this),this.depthMask=new we(this),this.stencilMask=new xe(this),this.stencilFunc=new De(this),this.stencilOp=new Ee(this),this.stencilTest=new Me(this),this.depthRange=new he(this),this.depthTest=new fe(this),this.depthFunc=new ae(this),this.blend=new be(this),this.blendFunc=new Ie(this),this.blendColor=new Te(this),this.blendEquation=new Ne(this),this.cullFace=new qe(this),this.cullFaceSide=new ve(this),this.frontFace=new Ce(this),this.program=new Ae(this),this.activeTexture=new ze(this),this.viewport=new Ue(this),this.bindFramebuffer=new Ve(this),this.bindRenderbuffer=new Ye(this),this.bindTexture=new $e(this),this.bindVertexBuffer=new rt(this),this.bindElementBuffer=new ht(this),this.bindVertexArrayOES=this.extVertexArrayObject&&new nt(this),this.pixelStoreUnpack=new bt(this),this.pixelStoreUnpackPremultiplyAlpha=new wt(this),this.pixelStoreUnpackFlipY=new ut(this),this.extTextureFilterAnisotropic=N.getExtension("EXT_texture_filter_anisotropic")||N.getExtension("MOZ_EXT_texture_filter_anisotropic")||N.getExtension("WEBKIT_EXT_texture_filter_anisotropic"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=N.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),this.extTextureHalfFloat=N.getExtension("OES_texture_half_float"),this.extTextureHalfFloat&&(N.getExtension("OES_texture_half_float_linear"),this.extRenderToTextureHalfFloat=N.getExtension("EXT_color_buffer_half_float")),this.extTimerQuery=N.getExtension("EXT_disjoint_timer_query")};Qe.prototype.setDefault=function(){this.unbindVAO(),this.clearColor.setDefault(),this.clearDepth.setDefault(),this.clearStencil.setDefault(),this.colorMask.setDefault(),this.depthMask.setDefault(),this.stencilMask.setDefault(),this.stencilFunc.setDefault(),this.stencilOp.setDefault(),this.stencilTest.setDefault(),this.depthRange.setDefault(),this.depthTest.setDefault(),this.depthFunc.setDefault(),this.blend.setDefault(),this.blendFunc.setDefault(),this.blendColor.setDefault(),this.blendEquation.setDefault(),this.cullFace.setDefault(),this.cullFaceSide.setDefault(),this.frontFace.setDefault(),this.program.setDefault(),this.activeTexture.setDefault(),this.bindFramebuffer.setDefault(),this.pixelStoreUnpack.setDefault(),this.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.pixelStoreUnpackFlipY.setDefault()},Qe.prototype.setDirty=function(){this.clearColor.dirty=!0,this.clearDepth.dirty=!0,this.clearStencil.dirty=!0,this.colorMask.dirty=!0,this.depthMask.dirty=!0,this.stencilMask.dirty=!0,this.stencilFunc.dirty=!0,this.stencilOp.dirty=!0,this.stencilTest.dirty=!0,this.depthRange.dirty=!0,this.depthTest.dirty=!0,this.depthFunc.dirty=!0,this.blend.dirty=!0,this.blendFunc.dirty=!0,this.blendColor.dirty=!0,this.blendEquation.dirty=!0,this.cullFace.dirty=!0,this.cullFaceSide.dirty=!0,this.frontFace.dirty=!0,this.program.dirty=!0,this.activeTexture.dirty=!0,this.viewport.dirty=!0,this.bindFramebuffer.dirty=!0,this.bindRenderbuffer.dirty=!0,this.bindTexture.dirty=!0,this.bindVertexBuffer.dirty=!0,this.bindElementBuffer.dirty=!0,this.extVertexArrayObject&&(this.bindVertexArrayOES.dirty=!0),this.pixelStoreUnpack.dirty=!0,this.pixelStoreUnpackPremultiplyAlpha.dirty=!0,this.pixelStoreUnpackFlipY.dirty=!0},Qe.prototype.createIndexBuffer=function(N,q){return new re(this,N,q)},Qe.prototype.createVertexBuffer=function(N,q,H){return new ue(this,N,q,H)},Qe.prototype.createRenderbuffer=function(N,q,H){var Q=this.gl,ge=Q.createRenderbuffer();return this.bindRenderbuffer.set(ge),Q.renderbufferStorage(Q.RENDERBUFFER,N,q,H),this.bindRenderbuffer.set(null),ge},Qe.prototype.createFramebuffer=function(N,q,H){return new St(this,N,q,H)},Qe.prototype.clear=function(N){var q=N.color,H=N.depth,Q=this.gl,ge=0;q&&(ge|=Q.COLOR_BUFFER_BIT,this.clearColor.set(q),this.colorMask.set([!0,!0,!0,!0])),H!==void 0&&(ge|=Q.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(H),this.depthMask.set(!0)),Q.clear(ge)},Qe.prototype.setCullFace=function(N){N.enable===!1?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(N.mode),this.frontFace.set(N.frontFace))},Qe.prototype.setDepthMode=function(N){N.func!==this.gl.ALWAYS||N.mask?(this.depthTest.set(!0),this.depthFunc.set(N.func),this.depthMask.set(N.mask),this.depthRange.set(N.range)):this.depthTest.set(!1)},Qe.prototype.setStencilMode=function(N){N.test.func!==this.gl.ALWAYS||N.mask?(this.stencilTest.set(!0),this.stencilMask.set(N.mask),this.stencilOp.set([N.fail,N.depthFail,N.pass]),this.stencilFunc.set({func:N.test.func,ref:N.ref,mask:N.test.mask})):this.stencilTest.set(!1)},Qe.prototype.setColorMode=function(N){i.deepEqual(N.blendFunction,et.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(N.blendFunction),this.blendColor.set(N.blendColor)),this.colorMask.set(N.mask)},Qe.prototype.unbindVAO=function(){this.extVertexArrayObject&&this.bindVertexArrayOES.set(null)};var st=function(N){function q(H,Q,ge){var Le=this;N.call(this),this.id=H,this.dispatcher=ge,this.on("data",function(U){U.dataType==="source"&&U.sourceDataType==="metadata"&&(Le._sourceLoaded=!0),Le._sourceLoaded&&!Le._paused&&U.dataType==="source"&&U.sourceDataType==="content"&&(Le.reload(),Le.transform&&Le.update(Le.transform))}),this.on("error",function(){Le._sourceErrored=!0}),this._source=function(U,ne,le,ye){var ke=new ie[ne.type](U,ne,le,ye);if(ke.id!==U)throw new Error("Expected Source id to be "+U+" instead of "+ke.id);return i.bindAll(["load","abort","unload","serialize","prepare"],ke),ke}(H,Q,ge,this),this._tiles={},this._cache=new ee(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new i.SourceFeatureState}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.onAdd=function(H){this.map=H,this._maxTileCacheSize=H?H._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(H)},q.prototype.onRemove=function(H){this._source&&this._source.onRemove&&this._source.onRemove(H)},q.prototype.loaded=function(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;for(var H in this._tiles){var Q=this._tiles[H];if(Q.state!=="loaded"&&Q.state!=="errored")return!1}return!0},q.prototype.getSource=function(){return this._source},q.prototype.pause=function(){this._paused=!0},q.prototype.resume=function(){if(this._paused){var H=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,H&&this.reload(),this.transform&&this.update(this.transform)}},q.prototype._loadTile=function(H,Q){return this._source.loadTile(H,Q)},q.prototype._unloadTile=function(H){if(this._source.unloadTile)return this._source.unloadTile(H,function(){})},q.prototype._abortTile=function(H){if(this._source.abortTile)return this._source.abortTile(H,function(){})},q.prototype.serialize=function(){return this._source.serialize()},q.prototype.prepare=function(H){for(var Q in this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null),this._tiles){var ge=this._tiles[Q];ge.upload(H),ge.prepare(this.map.style.imageManager)}},q.prototype.getIds=function(){return i.values(this._tiles).map(function(H){return H.tileID}).sort(ft).map(function(H){return H.key})},q.prototype.getRenderableIds=function(H){var Q=this,ge=[];for(var Le in this._tiles)this._isIdRenderable(Le,H)&&ge.push(this._tiles[Le]);return H?ge.sort(function(U,ne){var le=U.tileID,ye=ne.tileID,ke=new i.Point(le.canonical.x,le.canonical.y)._rotate(Q.transform.angle),Re=new i.Point(ye.canonical.x,ye.canonical.y)._rotate(Q.transform.angle);return le.overscaledZ-ye.overscaledZ||Re.y-ke.y||Re.x-ke.x}).map(function(U){return U.tileID.key}):ge.map(function(U){return U.tileID}).sort(ft).map(function(U){return U.key})},q.prototype.hasRenderableParent=function(H){var Q=this.findLoadedParent(H,0);return!!Q&&this._isIdRenderable(Q.tileID.key)},q.prototype._isIdRenderable=function(H,Q){return this._tiles[H]&&this._tiles[H].hasData()&&!this._coveredTiles[H]&&(Q||!this._tiles[H].holdingForFade())},q.prototype.reload=function(){if(this._paused)this._shouldReloadOnResume=!0;else for(var H in this._cache.reset(),this._tiles)this._tiles[H].state!=="errored"&&this._reloadTile(H,"reloading")},q.prototype._reloadTile=function(H,Q){var ge=this._tiles[H];ge&&(ge.state!=="loading"&&(ge.state=Q),this._loadTile(ge,this._tileLoaded.bind(this,ge,H,Q)))},q.prototype._tileLoaded=function(H,Q,ge,Le){if(Le)return H.state="errored",void(Le.status!==404?this._source.fire(new i.ErrorEvent(Le,{tile:H})):this.update(this.transform));H.timeAdded=i.browser.now(),ge==="expired"&&(H.refreshedUponExpiration=!0),this._setTileReloadTimer(Q,H),this.getSource().type==="raster-dem"&&H.dem&&this._backfillDEM(H),this._state.initializeTileState(H,this.map?this.map.painter:null),this._source.fire(new i.Event("data",{dataType:"source",tile:H,coord:H.tileID}))},q.prototype._backfillDEM=function(H){for(var Q=this.getRenderableIds(),ge=0;ge<Q.length;ge++){var Le=Q[ge];if(H.neighboringTiles&&H.neighboringTiles[Le]){var U=this.getTileByID(Le);ne(H,U),ne(U,H)}}function ne(le,ye){le.needsHillshadePrepare=!0;var ke=ye.tileID.canonical.x-le.tileID.canonical.x,Re=ye.tileID.canonical.y-le.tileID.canonical.y,He=Math.pow(2,le.tileID.canonical.z),We=ye.tileID.key;ke===0&&Re===0||Math.abs(Re)>1||(Math.abs(ke)>1&&(Math.abs(ke+He)===1?ke+=He:Math.abs(ke-He)===1&&(ke-=He)),ye.dem&&le.dem&&(le.dem.backfillBorder(ye.dem,ke,Re),le.neighboringTiles&&le.neighboringTiles[We]&&(le.neighboringTiles[We].backfilled=!0)))}},q.prototype.getTile=function(H){return this.getTileByID(H.key)},q.prototype.getTileByID=function(H){return this._tiles[H]},q.prototype._retainLoadedChildren=function(H,Q,ge,Le){for(var U in this._tiles){var ne=this._tiles[U];if(!(Le[U]||!ne.hasData()||ne.tileID.overscaledZ<=Q||ne.tileID.overscaledZ>ge)){for(var le=ne.tileID;ne&&ne.tileID.overscaledZ>Q+1;){var ye=ne.tileID.scaledTo(ne.tileID.overscaledZ-1);(ne=this._tiles[ye.key])&&ne.hasData()&&(le=ye)}for(var ke=le;ke.overscaledZ>Q;)if(H[(ke=ke.scaledTo(ke.overscaledZ-1)).key]){Le[le.key]=le;break}}}},q.prototype.findLoadedParent=function(H,Q){if(H.key in this._loadedParentTiles){var ge=this._loadedParentTiles[H.key];return ge&&ge.tileID.overscaledZ>=Q?ge:null}for(var Le=H.overscaledZ-1;Le>=Q;Le--){var U=H.scaledTo(Le),ne=this._getLoadedTile(U);if(ne)return ne}},q.prototype._getLoadedTile=function(H){var Q=this._tiles[H.key];return Q&&Q.hasData()?Q:this._cache.getByKey(H.wrapped().key)},q.prototype.updateCacheSize=function(H){var Q=(Math.ceil(H.width/this._source.tileSize)+1)*(Math.ceil(H.height/this._source.tileSize)+1),ge=Math.floor(5*Q),Le=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,ge):ge;this._cache.setMaxSize(Le)},q.prototype.handleWrapJump=function(H){var Q=(H-(this._prevLng===void 0?H:this._prevLng))/360,ge=Math.round(Q);if(this._prevLng=H,ge){var Le={};for(var U in this._tiles){var ne=this._tiles[U];ne.tileID=ne.tileID.unwrapTo(ne.tileID.wrap+ge),Le[ne.tileID.key]=ne}for(var le in this._tiles=Le,this._timers)clearTimeout(this._timers[le]),delete this._timers[le];for(var ye in this._tiles){var ke=this._tiles[ye];this._setTileReloadTimer(ye,ke)}}},q.prototype.update=function(H){var Q=this;if(this.transform=H,this._sourceLoaded&&!this._paused){var ge;this.updateCacheSize(H),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used?this._source.tileID?ge=H.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(It){return new i.OverscaledTileID(It.canonical.z,It.wrap,It.canonical.z,It.canonical.x,It.canonical.y)}):(ge=H.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(ge=ge.filter(function(It){return Q._source.hasTile(It)}))):ge=[];var Le=H.coveringZoomLevel(this._source),U=Math.max(Le-q.maxOverzooming,this._source.minzoom),ne=Math.max(Le+q.maxUnderzooming,this._source.minzoom),le=this._updateRetainedTiles(ge,Le);if(Be(this._source.type)){for(var ye={},ke={},Re=0,He=Object.keys(le);Re<He.length;Re+=1){var We=He[Re],Xe=le[We],Ke=this._tiles[We];if(Ke&&!(Ke.fadeEndTime&&Ke.fadeEndTime<=i.browser.now())){var it=this.findLoadedParent(Xe,U);it&&(this._addTile(it.tileID),ye[it.tileID.key]=it.tileID),ke[We]=Xe}}for(var pt in this._retainLoadedChildren(ke,Le,ne,le),ye)le[pt]||(this._coveredTiles[pt]=!0,le[pt]=ye[pt])}for(var mt in le)this._tiles[mt].clearFadeHold();for(var Ot=0,Rt=i.keysDifference(this._tiles,le);Ot<Rt.length;Ot+=1){var Pt=Rt[Ot],Vt=this._tiles[Pt];Vt.hasSymbolBuckets&&!Vt.holdingForFade()?Vt.setHoldDuration(this.map._fadeDuration):Vt.hasSymbolBuckets&&!Vt.symbolFadeFinished()||this._removeTile(Pt)}this._updateLoadedParentTileCache()}},q.prototype.releaseSymbolFadeTiles=function(){for(var H in this._tiles)this._tiles[H].holdingForFade()&&this._removeTile(H)},q.prototype._updateRetainedTiles=function(H,Q){for(var ge={},Le={},U=Math.max(Q-q.maxOverzooming,this._source.minzoom),ne=Math.max(Q+q.maxUnderzooming,this._source.minzoom),le={},ye=0,ke=H;ye<ke.length;ye+=1){var Re=ke[ye],He=this._addTile(Re);ge[Re.key]=Re,He.hasData()||Q<this._source.maxzoom&&(le[Re.key]=Re)}this._retainLoadedChildren(le,Q,ne,ge);for(var We=0,Xe=H;We<Xe.length;We+=1){var Ke=Xe[We],it=this._tiles[Ke.key];if(!it.hasData()){if(Q+1>this._source.maxzoom){var pt=Ke.children(this._source.maxzoom)[0],mt=this.getTile(pt);if(mt&&mt.hasData()){ge[pt.key]=pt;continue}}else{var Ot=Ke.children(this._source.maxzoom);if(ge[Ot[0].key]&&ge[Ot[1].key]&&ge[Ot[2].key]&&ge[Ot[3].key])continue}for(var Rt=it.wasRequested(),Pt=Ke.overscaledZ-1;Pt>=U;--Pt){var Vt=Ke.scaledTo(Pt);if(Le[Vt.key]||(Le[Vt.key]=!0,!(it=this.getTile(Vt))&&Rt&&(it=this._addTile(Vt)),it&&(ge[Vt.key]=Vt,Rt=it.wasRequested(),it.hasData())))break}}}return ge},q.prototype._updateLoadedParentTileCache=function(){for(var H in this._loadedParentTiles={},this._tiles){for(var Q=[],ge=void 0,Le=this._tiles[H].tileID;Le.overscaledZ>0;){if(Le.key in this._loadedParentTiles){ge=this._loadedParentTiles[Le.key];break}Q.push(Le.key);var U=Le.scaledTo(Le.overscaledZ-1);if(ge=this._getLoadedTile(U))break;Le=U}for(var ne=0,le=Q;ne<le.length;ne+=1){var ye=le[ne];this._loadedParentTiles[ye]=ge}}},q.prototype._addTile=function(H){var Q=this._tiles[H.key];if(Q)return Q;(Q=this._cache.getAndRemove(H))&&(this._setTileReloadTimer(H.key,Q),Q.tileID=H,this._state.initializeTileState(Q,this.map?this.map.painter:null),this._cacheTimers[H.key]&&(clearTimeout(this._cacheTimers[H.key]),delete this._cacheTimers[H.key],this._setTileReloadTimer(H.key,Q)));var ge=!!Q;return ge||(Q=new i.Tile(H,this._source.tileSize*H.overscaleFactor()),this._loadTile(Q,this._tileLoaded.bind(this,Q,H.key,Q.state))),Q?(Q.uses++,this._tiles[H.key]=Q,ge||this._source.fire(new i.Event("dataloading",{tile:Q,coord:Q.tileID,dataType:"source"})),Q):null},q.prototype._setTileReloadTimer=function(H,Q){var ge=this;H in this._timers&&(clearTimeout(this._timers[H]),delete this._timers[H]);var Le=Q.getExpiryTimeout();Le&&(this._timers[H]=setTimeout(function(){ge._reloadTile(H,"expired"),delete ge._timers[H]},Le))},q.prototype._removeTile=function(H){var Q=this._tiles[H];Q&&(Q.uses--,delete this._tiles[H],this._timers[H]&&(clearTimeout(this._timers[H]),delete this._timers[H]),Q.uses>0||(Q.hasData()&&Q.state!=="reloading"?this._cache.add(Q.tileID,Q,Q.getExpiryTimeout()):(Q.aborted=!0,this._abortTile(Q),this._unloadTile(Q))))},q.prototype.clearTiles=function(){for(var H in this._shouldReloadOnResume=!1,this._paused=!1,this._tiles)this._removeTile(H);this._cache.reset()},q.prototype.tilesIn=function(H,Q,ge){var Le=this,U=[],ne=this.transform;if(!ne)return U;for(var le=ge?ne.getCameraQueryGeometry(H):H,ye=H.map(function(Pt){return ne.pointCoordinate(Pt)}),ke=le.map(function(Pt){return ne.pointCoordinate(Pt)}),Re=this.getIds(),He=1/0,We=1/0,Xe=-1/0,Ke=-1/0,it=0,pt=ke;it<pt.length;it+=1){var mt=pt[it];He=Math.min(He,mt.x),We=Math.min(We,mt.y),Xe=Math.max(Xe,mt.x),Ke=Math.max(Ke,mt.y)}for(var Ot=function(Pt){var Vt=Le._tiles[Re[Pt]];if(!Vt.holdingForFade()){var It=Vt.tileID,on=Math.pow(2,ne.zoom-Vt.tileID.overscaledZ),Kt=Q*Vt.queryPadding*i.EXTENT/Vt.tileSize/on,Zt=[It.getTilePoint(new i.MercatorCoordinate(He,We)),It.getTilePoint(new i.MercatorCoordinate(Xe,Ke))];if(Zt[0].x-Kt<i.EXTENT&&Zt[0].y-Kt<i.EXTENT&&Zt[1].x+Kt>=0&&Zt[1].y+Kt>=0){var yn=ye.map(function(Un){return It.getTilePoint(Un)}),_n=ke.map(function(Un){return It.getTilePoint(Un)});U.push({tile:Vt,tileID:It,queryGeometry:yn,cameraQueryGeometry:_n,scale:on})}}},Rt=0;Rt<Re.length;Rt++)Ot(Rt);return U},q.prototype.getVisibleCoordinates=function(H){for(var Q=this,ge=this.getRenderableIds(H).map(function(le){return Q._tiles[le].tileID}),Le=0,U=ge;Le<U.length;Le+=1){var ne=U[Le];ne.posMatrix=this.transform.calculatePosMatrix(ne.toUnwrapped())}return ge},q.prototype.hasTransition=function(){if(this._source.hasTransition())return!0;if(Be(this._source.type))for(var H in this._tiles){var Q=this._tiles[H];if(Q.fadeEndTime!==void 0&&Q.fadeEndTime>=i.browser.now())return!0}return!1},q.prototype.setFeatureState=function(H,Q,ge){H=H||"_geojsonTileLayer",this._state.updateState(H,Q,ge)},q.prototype.removeFeatureState=function(H,Q,ge){H=H||"_geojsonTileLayer",this._state.removeFeatureState(H,Q,ge)},q.prototype.getFeatureState=function(H,Q){return H=H||"_geojsonTileLayer",this._state.getState(H,Q)},q.prototype.setDependencies=function(H,Q,ge){var Le=this._tiles[H];Le&&Le.setDependencies(Q,ge)},q.prototype.reloadTilesForDependencies=function(H,Q){for(var ge in this._tiles)this._tiles[ge].hasDependency(H,Q)&&this._reloadTile(ge,"reloading");this._cache.filter(function(Le){return!Le.hasDependency(H,Q)})},q}(i.Evented);function ft(N,q){var H=Math.abs(2*N.wrap)-+(N.wrap<0),Q=Math.abs(2*q.wrap)-+(q.wrap<0);return N.overscaledZ-q.overscaledZ||Q-H||q.canonical.y-N.canonical.y||q.canonical.x-N.canonical.x}function Be(N){return N==="raster"||N==="image"||N==="video"}function je(){return new i.window.Worker(us.workerUrl)}st.maxOverzooming=10,st.maxUnderzooming=3;var at="mapboxgl_preloaded_worker_pool",ot=function(){this.active={}};ot.prototype.acquire=function(N){if(!this.workers)for(this.workers=[];this.workers.length<ot.workerCount;)this.workers.push(new je);return this.active[N]=!0,this.workers.slice()},ot.prototype.release=function(N){delete this.active[N],this.numActive()===0&&(this.workers.forEach(function(q){q.terminate()}),this.workers=null)},ot.prototype.isPreloaded=function(){return!!this.active[at]},ot.prototype.numActive=function(){return Object.keys(this.active).length};var xt,yt=Math.floor(i.browser.hardwareConcurrency/2);function _t(){return xt||(xt=new ot),xt}function gt(N,q){var H={};for(var Q in N)Q!=="ref"&&(H[Q]=N[Q]);return i.refProperties.forEach(function(ge){ge in q&&(H[ge]=q[ge])}),H}function Ct(N){N=N.slice();for(var q=Object.create(null),H=0;H<N.length;H++)q[N[H].id]=N[H];for(var Q=0;Q<N.length;Q++)"ref"in N[Q]&&(N[Q]=gt(N[Q],q[N[Q].ref]));return N}ot.workerCount=Math.max(Math.min(yt,6),1);var dt={setStyle:"setStyle",addLayer:"addLayer",removeLayer:"removeLayer",setPaintProperty:"setPaintProperty",setLayoutProperty:"setLayoutProperty",setFilter:"setFilter",addSource:"addSource",removeSource:"removeSource",setGeoJSONSourceData:"setGeoJSONSourceData",setLayerZoomRange:"setLayerZoomRange",setLayerProperty:"setLayerProperty",setCenter:"setCenter",setZoom:"setZoom",setBearing:"setBearing",setPitch:"setPitch",setSprite:"setSprite",setGlyphs:"setGlyphs",setTransition:"setTransition",setLight:"setLight"};function vt(N,q,H){H.push({command:dt.addSource,args:[N,q[N]]})}function At(N,q,H){q.push({command:dt.removeSource,args:[N]}),H[N]=!0}function Bt(N,q,H,Q){At(N,H,Q),vt(N,q,H)}function jt(N,q,H){var Q;for(Q in N[H])if(N[H].hasOwnProperty(Q)&&Q!=="data"&&!i.deepEqual(N[H][Q],q[H][Q]))return!1;for(Q in q[H])if(q[H].hasOwnProperty(Q)&&Q!=="data"&&!i.deepEqual(N[H][Q],q[H][Q]))return!1;return!0}function Ut(N,q,H,Q,ge,Le){var U;for(U in q=q||{},N=N||{})N.hasOwnProperty(U)&&(i.deepEqual(N[U],q[U])||H.push({command:Le,args:[Q,U,q[U],ge]}));for(U in q)q.hasOwnProperty(U)&&!N.hasOwnProperty(U)&&(i.deepEqual(N[U],q[U])||H.push({command:Le,args:[Q,U,q[U],ge]}))}function tn(N){return N.id}function Xt(N,q){return N[q.id]=q,N}function Qt(N,q){if(!N)return[{command:dt.setStyle,args:[q]}];var H=[];try{if(!i.deepEqual(N.version,q.version))return[{command:dt.setStyle,args:[q]}];i.deepEqual(N.center,q.center)||H.push({command:dt.setCenter,args:[q.center]}),i.deepEqual(N.zoom,q.zoom)||H.push({command:dt.setZoom,args:[q.zoom]}),i.deepEqual(N.bearing,q.bearing)||H.push({command:dt.setBearing,args:[q.bearing]}),i.deepEqual(N.pitch,q.pitch)||H.push({command:dt.setPitch,args:[q.pitch]}),i.deepEqual(N.sprite,q.sprite)||H.push({command:dt.setSprite,args:[q.sprite]}),i.deepEqual(N.glyphs,q.glyphs)||H.push({command:dt.setGlyphs,args:[q.glyphs]}),i.deepEqual(N.transition,q.transition)||H.push({command:dt.setTransition,args:[q.transition]}),i.deepEqual(N.light,q.light)||H.push({command:dt.setLight,args:[q.light]});var Q={},ge=[];(function(U,ne,le,ye){var ke;for(ke in ne=ne||{},U=U||{})U.hasOwnProperty(ke)&&(ne.hasOwnProperty(ke)||At(ke,le,ye));for(ke in ne)ne.hasOwnProperty(ke)&&(U.hasOwnProperty(ke)?i.deepEqual(U[ke],ne[ke])||(U[ke].type==="geojson"&&ne[ke].type==="geojson"&&jt(U,ne,ke)?le.push({command:dt.setGeoJSONSourceData,args:[ke,ne[ke].data]}):Bt(ke,ne,le,ye)):vt(ke,ne,le))})(N.sources,q.sources,ge,Q);var Le=[];N.layers&&N.layers.forEach(function(U){Q[U.source]?H.push({command:dt.removeLayer,args:[U.id]}):Le.push(U)}),H=H.concat(ge),function(U,ne,le){ne=ne||[];var ye,ke,Re,He,We,Xe,Ke,it=(U=U||[]).map(tn),pt=ne.map(tn),mt=U.reduce(Xt,{}),Ot=ne.reduce(Xt,{}),Rt=it.slice(),Pt=Object.create(null);for(ye=0,ke=0;ye<it.length;ye++)Re=it[ye],Ot.hasOwnProperty(Re)?ke++:(le.push({command:dt.removeLayer,args:[Re]}),Rt.splice(Rt.indexOf(Re,ke),1));for(ye=0,ke=0;ye<pt.length;ye++)Re=pt[pt.length-1-ye],Rt[Rt.length-1-ye]!==Re&&(mt.hasOwnProperty(Re)?(le.push({command:dt.removeLayer,args:[Re]}),Rt.splice(Rt.lastIndexOf(Re,Rt.length-ke),1)):ke++,Xe=Rt[Rt.length-ye],le.push({command:dt.addLayer,args:[Ot[Re],Xe]}),Rt.splice(Rt.length-ye,0,Re),Pt[Re]=!0);for(ye=0;ye<pt.length;ye++)if(He=mt[Re=pt[ye]],We=Ot[Re],!Pt[Re]&&!i.deepEqual(He,We))if(i.deepEqual(He.source,We.source)&&i.deepEqual(He["source-layer"],We["source-layer"])&&i.deepEqual(He.type,We.type)){for(Ke in Ut(He.layout,We.layout,le,Re,null,dt.setLayoutProperty),Ut(He.paint,We.paint,le,Re,null,dt.setPaintProperty),i.deepEqual(He.filter,We.filter)||le.push({command:dt.setFilter,args:[Re,We.filter]}),i.deepEqual(He.minzoom,We.minzoom)&&i.deepEqual(He.maxzoom,We.maxzoom)||le.push({command:dt.setLayerZoomRange,args:[Re,We.minzoom,We.maxzoom]}),He)He.hasOwnProperty(Ke)&&Ke!=="layout"&&Ke!=="paint"&&Ke!=="filter"&&Ke!=="metadata"&&Ke!=="minzoom"&&Ke!=="maxzoom"&&(Ke.indexOf("paint.")===0?Ut(He[Ke],We[Ke],le,Re,Ke.slice(6),dt.setPaintProperty):i.deepEqual(He[Ke],We[Ke])||le.push({command:dt.setLayerProperty,args:[Re,Ke,We[Ke]]}));for(Ke in We)We.hasOwnProperty(Ke)&&!He.hasOwnProperty(Ke)&&Ke!=="layout"&&Ke!=="paint"&&Ke!=="filter"&&Ke!=="metadata"&&Ke!=="minzoom"&&Ke!=="maxzoom"&&(Ke.indexOf("paint.")===0?Ut(He[Ke],We[Ke],le,Re,Ke.slice(6),dt.setPaintProperty):i.deepEqual(He[Ke],We[Ke])||le.push({command:dt.setLayerProperty,args:[Re,Ke,We[Ke]]}))}else le.push({command:dt.removeLayer,args:[Re]}),Xe=Rt[Rt.lastIndexOf(Re)+1],le.push({command:dt.addLayer,args:[We,Xe]})}(Le,q.layers,H)}catch(U){console.warn("Unable to compute style diff:",U),H=[{command:dt.setStyle,args:[q]}]}return H}var Gt=function(N,q){this.reset(N,q)};Gt.prototype.reset=function(N,q){this.points=N||[],this._distances=[0];for(var H=1;H<this.points.length;H++)this._distances[H]=this._distances[H-1]+this.points[H].dist(this.points[H-1]);this.length=this._distances[this._distances.length-1],this.padding=Math.min(q||0,.5*this.length),this.paddedLength=this.length-2*this.padding},Gt.prototype.lerp=function(N){if(this.points.length===1)return this.points[0];N=i.clamp(N,0,1);for(var q=1,H=this._distances[q],Q=N*this.paddedLength+this.padding;H<Q&&q<this._distances.length;)H=this._distances[++q];var ge=q-1,Le=this._distances[ge],U=H-Le,ne=U>0?(Q-Le)/U:0;return this.points[ge].mult(1-ne).add(this.points[q].mult(ne))};var vn=function(N,q,H){var Q=this.boxCells=[],ge=this.circleCells=[];this.xCellCount=Math.ceil(N/H),this.yCellCount=Math.ceil(q/H);for(var Le=0;Le<this.xCellCount*this.yCellCount;Le++)Q.push([]),ge.push([]);this.circleKeys=[],this.boxKeys=[],this.bboxes=[],this.circles=[],this.width=N,this.height=q,this.xScale=this.xCellCount/N,this.yScale=this.yCellCount/q,this.boxUid=0,this.circleUid=0};function Tn(N,q,H,Q,ge){var Le=i.create();return q?(i.scale(Le,Le,[1/ge,1/ge,1]),H||i.rotateZ(Le,Le,Q.angle)):i.multiply(Le,Q.labelPlaneMatrix,N),Le}function dn(N,q,H,Q,ge){if(q){var Le=i.clone(N);return i.scale(Le,Le,[ge,ge,1]),H||i.rotateZ(Le,Le,-Q.angle),Le}return Q.glCoordMatrix}function Yt(N,q){var H=[N.x,N.y,0,1];ir(H,H,q);var Q=H[3];return{point:new i.Point(H[0]/Q,H[1]/Q),signedDistanceFromCamera:Q}}function ln(N,q){return .5+N/q*.5}function nn(N,q){var H=N[0]/N[3],Q=N[1]/N[3];return H>=-q[0]&&H<=q[0]&&Q>=-q[1]&&Q<=q[1]}function fn(N,q,H,Q,ge,Le,U,ne){var le=Q?N.textSizeData:N.iconSizeData,ye=i.evaluateSizeForZoom(le,H.transform.zoom),ke=[256/H.width*2+1,256/H.height*2+1],Re=Q?N.text.dynamicLayoutVertexArray:N.icon.dynamicLayoutVertexArray;Re.clear();for(var He=N.lineVertexArray,We=Q?N.text.placedSymbolArray:N.icon.placedSymbolArray,Xe=H.transform.width/H.transform.height,Ke=!1,it=0;it<We.length;it++){var pt=We.get(it);if(pt.hidden||pt.writingMode===i.WritingMode.vertical&&!Ke)er(pt.numGlyphs,Re);else{Ke=!1;var mt=[pt.anchorX,pt.anchorY,0,1];if(i.transformMat4(mt,mt,q),nn(mt,ke)){var Ot=mt[3],Rt=ln(H.transform.cameraToCenterDistance,Ot),Pt=i.evaluateSizeForFeature(le,ye,pt),Vt=U?Pt/Rt:Pt*Rt,It=new i.Point(pt.anchorX,pt.anchorY),on=Yt(It,ge).point,Kt={},Zt=Pn(pt,Vt,!1,ne,q,ge,Le,N.glyphOffsetArray,He,Re,on,It,Kt,Xe);Ke=Zt.useVertical,(Zt.notEnoughRoom||Ke||Zt.needsFlipping&&Pn(pt,Vt,!0,ne,q,ge,Le,N.glyphOffsetArray,He,Re,on,It,Kt,Xe).notEnoughRoom)&&er(pt.numGlyphs,Re)}else er(pt.numGlyphs,Re)}}Q?N.text.dynamicLayoutVertexBuffer.updateData(Re):N.icon.dynamicLayoutVertexBuffer.updateData(Re)}function mn(N,q,H,Q,ge,Le,U,ne,le,ye,ke){var Re=ne.glyphStartIndex+ne.numGlyphs,He=ne.lineStartIndex,We=ne.lineStartIndex+ne.lineLength,Xe=q.getoffsetX(ne.glyphStartIndex),Ke=q.getoffsetX(Re-1),it=En(N*Xe,H,Q,ge,Le,U,ne.segment,He,We,le,ye,ke);if(!it)return null;var pt=En(N*Ke,H,Q,ge,Le,U,ne.segment,He,We,le,ye,ke);return pt?{first:it,last:pt}:null}function xn(N,q,H,Q){return N===i.WritingMode.horizontal&&Math.abs(H.y-q.y)>Math.abs(H.x-q.x)*Q?{useVertical:!0}:(N===i.WritingMode.vertical?q.y<H.y:q.x>H.x)?{needsFlipping:!0}:null}function Pn(N,q,H,Q,ge,Le,U,ne,le,ye,ke,Re,He,We){var Xe,Ke=q/24,it=N.lineOffsetX*Ke,pt=N.lineOffsetY*Ke;if(N.numGlyphs>1){var mt=N.glyphStartIndex+N.numGlyphs,Ot=N.lineStartIndex,Rt=N.lineStartIndex+N.lineLength,Pt=mn(Ke,ne,it,pt,H,ke,Re,N,le,Le,He);if(!Pt)return{notEnoughRoom:!0};var Vt=Yt(Pt.first.point,U).point,It=Yt(Pt.last.point,U).point;if(Q&&!H){var on=xn(N.writingMode,Vt,It,We);if(on)return on}Xe=[Pt.first];for(var Kt=N.glyphStartIndex+1;Kt<mt-1;Kt++)Xe.push(En(Ke*ne.getoffsetX(Kt),it,pt,H,ke,Re,N.segment,Ot,Rt,le,Le,He));Xe.push(Pt.last)}else{if(Q&&!H){var Zt=Yt(Re,ge).point,yn=N.lineStartIndex+N.segment+1,_n=new i.Point(le.getx(yn),le.gety(yn)),Un=Yt(_n,ge),Vn=Un.signedDistanceFromCamera>0?Un.point:Dn(Re,_n,Zt,1,ge),Zn=xn(N.writingMode,Zt,Vn,We);if(Zn)return Zn}var Qn=En(Ke*ne.getoffsetX(N.glyphStartIndex),it,pt,H,ke,Re,N.segment,N.lineStartIndex,N.lineStartIndex+N.lineLength,le,Le,He);if(!Qn)return{notEnoughRoom:!0};Xe=[Qn]}for(var pr=0,cr=Xe;pr<cr.length;pr+=1){var mr=cr[pr];i.addDynamicAttributes(ye,mr.point,mr.angle)}return{}}function Dn(N,q,H,Q,ge){var Le=Yt(N.add(N.sub(q)._unit()),ge).point,U=H.sub(Le);return H.add(U._mult(Q/U.mag()))}function En(N,q,H,Q,ge,Le,U,ne,le,ye,ke,Re){var He=Q?N-q:N+q,We=He>0?1:-1,Xe=0;Q&&(We*=-1,Xe=Math.PI),We<0&&(Xe+=Math.PI);for(var Ke=We>0?ne+U:ne+U+1,it=ge,pt=ge,mt=0,Ot=0,Rt=Math.abs(He),Pt=[];mt+Ot<=Rt;){if((Ke+=We)<ne||Ke>=le)return null;if(pt=it,Pt.push(it),(it=Re[Ke])===void 0){var Vt=new i.Point(ye.getx(Ke),ye.gety(Ke)),It=Yt(Vt,ke);if(It.signedDistanceFromCamera>0)it=Re[Ke]=It.point;else{var on=Ke-We;it=Dn(mt===0?Le:new i.Point(ye.getx(on),ye.gety(on)),Vt,pt,Rt-mt+1,ke)}}mt+=Ot,Ot=pt.dist(it)}var Kt=(Rt-mt)/Ot,Zt=it.sub(pt),yn=Zt.mult(Kt)._add(pt);yn._add(Zt._unit()._perp()._mult(H*We));var _n=Xe+Math.atan2(it.y-pt.y,it.x-pt.x);return Pt.push(yn),{point:yn,angle:_n,path:Pt}}vn.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},vn.prototype.insert=function(N,q,H,Q,ge){this._forEachCell(q,H,Q,ge,this._insertBoxCell,this.boxUid++),this.boxKeys.push(N),this.bboxes.push(q),this.bboxes.push(H),this.bboxes.push(Q),this.bboxes.push(ge)},vn.prototype.insertCircle=function(N,q,H,Q){this._forEachCell(q-Q,H-Q,q+Q,H+Q,this._insertCircleCell,this.circleUid++),this.circleKeys.push(N),this.circles.push(q),this.circles.push(H),this.circles.push(Q)},vn.prototype._insertBoxCell=function(N,q,H,Q,ge,Le){this.boxCells[ge].push(Le)},vn.prototype._insertCircleCell=function(N,q,H,Q,ge,Le){this.circleCells[ge].push(Le)},vn.prototype._query=function(N,q,H,Q,ge,Le){if(H<0||N>this.width||Q<0||q>this.height)return!ge&&[];var U=[];if(N<=0&&q<=0&&this.width<=H&&this.height<=Q){if(ge)return!0;for(var ne=0;ne<this.boxKeys.length;ne++)U.push({key:this.boxKeys[ne],x1:this.bboxes[4*ne],y1:this.bboxes[4*ne+1],x2:this.bboxes[4*ne+2],y2:this.bboxes[4*ne+3]});for(var le=0;le<this.circleKeys.length;le++){var ye=this.circles[3*le],ke=this.circles[3*le+1],Re=this.circles[3*le+2];U.push({key:this.circleKeys[le],x1:ye-Re,y1:ke-Re,x2:ye+Re,y2:ke+Re})}return Le?U.filter(Le):U}var He={hitTest:ge,seenUids:{box:{},circle:{}}};return this._forEachCell(N,q,H,Q,this._queryCell,U,He,Le),ge?U.length>0:U},vn.prototype._queryCircle=function(N,q,H,Q,ge){var Le=N-H,U=N+H,ne=q-H,le=q+H;if(U<0||Le>this.width||le<0||ne>this.height)return!Q&&[];var ye=[],ke={hitTest:Q,circle:{x:N,y:q,radius:H},seenUids:{box:{},circle:{}}};return this._forEachCell(Le,ne,U,le,this._queryCellCircle,ye,ke,ge),Q?ye.length>0:ye},vn.prototype.query=function(N,q,H,Q,ge){return this._query(N,q,H,Q,!1,ge)},vn.prototype.hitTest=function(N,q,H,Q,ge){return this._query(N,q,H,Q,!0,ge)},vn.prototype.hitTestCircle=function(N,q,H,Q){return this._queryCircle(N,q,H,!0,Q)},vn.prototype._queryCell=function(N,q,H,Q,ge,Le,U,ne){var le=U.seenUids,ye=this.boxCells[ge];if(ye!==null)for(var ke=this.bboxes,Re=0,He=ye;Re<He.length;Re+=1){var We=He[Re];if(!le.box[We]){le.box[We]=!0;var Xe=4*We;if(N<=ke[Xe+2]&&q<=ke[Xe+3]&&H>=ke[Xe+0]&&Q>=ke[Xe+1]&&(!ne||ne(this.boxKeys[We]))){if(U.hitTest)return Le.push(!0),!0;Le.push({key:this.boxKeys[We],x1:ke[Xe],y1:ke[Xe+1],x2:ke[Xe+2],y2:ke[Xe+3]})}}}var Ke=this.circleCells[ge];if(Ke!==null)for(var it=this.circles,pt=0,mt=Ke;pt<mt.length;pt+=1){var Ot=mt[pt];if(!le.circle[Ot]){le.circle[Ot]=!0;var Rt=3*Ot;if(this._circleAndRectCollide(it[Rt],it[Rt+1],it[Rt+2],N,q,H,Q)&&(!ne||ne(this.circleKeys[Ot]))){if(U.hitTest)return Le.push(!0),!0;var Pt=it[Rt],Vt=it[Rt+1],It=it[Rt+2];Le.push({key:this.circleKeys[Ot],x1:Pt-It,y1:Vt-It,x2:Pt+It,y2:Vt+It})}}}},vn.prototype._queryCellCircle=function(N,q,H,Q,ge,Le,U,ne){var le=U.circle,ye=U.seenUids,ke=this.boxCells[ge];if(ke!==null)for(var Re=this.bboxes,He=0,We=ke;He<We.length;He+=1){var Xe=We[He];if(!ye.box[Xe]){ye.box[Xe]=!0;var Ke=4*Xe;if(this._circleAndRectCollide(le.x,le.y,le.radius,Re[Ke+0],Re[Ke+1],Re[Ke+2],Re[Ke+3])&&(!ne||ne(this.boxKeys[Xe])))return Le.push(!0),!0}}var it=this.circleCells[ge];if(it!==null)for(var pt=this.circles,mt=0,Ot=it;mt<Ot.length;mt+=1){var Rt=Ot[mt];if(!ye.circle[Rt]){ye.circle[Rt]=!0;var Pt=3*Rt;if(this._circlesCollide(pt[Pt],pt[Pt+1],pt[Pt+2],le.x,le.y,le.radius)&&(!ne||ne(this.circleKeys[Rt])))return Le.push(!0),!0}}},vn.prototype._forEachCell=function(N,q,H,Q,ge,Le,U,ne){for(var le=this._convertToXCellCoord(N),ye=this._convertToYCellCoord(q),ke=this._convertToXCellCoord(H),Re=this._convertToYCellCoord(Q),He=le;He<=ke;He++)for(var We=ye;We<=Re;We++){var Xe=this.xCellCount*We+He;if(ge.call(this,N,q,H,Q,Xe,Le,U,ne))return}},vn.prototype._convertToXCellCoord=function(N){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(N*this.xScale)))},vn.prototype._convertToYCellCoord=function(N){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(N*this.yScale)))},vn.prototype._circlesCollide=function(N,q,H,Q,ge,Le){var U=Q-N,ne=ge-q,le=H+Le;return le*le>U*U+ne*ne},vn.prototype._circleAndRectCollide=function(N,q,H,Q,ge,Le,U){var ne=(Le-Q)/2,le=Math.abs(N-(Q+ne));if(le>ne+H)return!1;var ye=(U-ge)/2,ke=Math.abs(q-(ge+ye));if(ke>ye+H)return!1;if(le<=ne||ke<=ye)return!0;var Re=le-ne,He=ke-ye;return Re*Re+He*He<=H*H};var Fn=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function er(N,q){for(var H=0;H<N;H++){var Q=q.length;q.resize(Q+4),q.float32.set(Fn,3*Q)}}function ir(N,q,H){var Q=q[0],ge=q[1];return N[0]=H[0]*Q+H[4]*ge+H[12],N[1]=H[1]*Q+H[5]*ge+H[13],N[3]=H[3]*Q+H[7]*ge+H[15],N}var fr=100,ar=function(N,q,H){q===void 0&&(q=new vn(N.width+200,N.height+200,25)),H===void 0&&(H=new vn(N.width+200,N.height+200,25)),this.transform=N,this.grid=q,this.ignoredGrid=H,this.pitchfactor=Math.cos(N._pitch)*N.cameraToCenterDistance,this.screenRightBoundary=N.width+fr,this.screenBottomBoundary=N.height+fr,this.gridRightBoundary=N.width+200,this.gridBottomBoundary=N.height+200};function Kn(N,q,H){return q*(i.EXTENT/(N.tileSize*Math.pow(2,H-N.tileID.overscaledZ)))}ar.prototype.placeCollisionBox=function(N,q,H,Q,ge){var Le=this.projectAndGetPerspectiveRatio(Q,N.anchorPointX,N.anchorPointY),U=H*Le.perspectiveRatio,ne=N.x1*U+Le.point.x,le=N.y1*U+Le.point.y,ye=N.x2*U+Le.point.x,ke=N.y2*U+Le.point.y;return!this.isInsideGrid(ne,le,ye,ke)||!q&&this.grid.hitTest(ne,le,ye,ke,ge)?{box:[],offscreen:!1}:{box:[ne,le,ye,ke],offscreen:this.isOffscreen(ne,le,ye,ke)}},ar.prototype.placeCollisionCircles=function(N,q,H,Q,ge,Le,U,ne,le,ye,ke,Re,He){var We=[],Xe=new i.Point(q.anchorX,q.anchorY),Ke=Yt(Xe,Le),it=ln(this.transform.cameraToCenterDistance,Ke.signedDistanceFromCamera),pt=(ye?ge/it:ge*it)/i.ONE_EM,mt=Yt(Xe,U).point,Ot=mn(pt,Q,q.lineOffsetX*pt,q.lineOffsetY*pt,!1,mt,Xe,q,H,U,{}),Rt=!1,Pt=!1,Vt=!0;if(Ot){for(var It=.5*Re*it+He,on=new i.Point(-100,-100),Kt=new i.Point(this.screenRightBoundary,this.screenBottomBoundary),Zt=new Gt,yn=Ot.first,_n=Ot.last,Un=[],Vn=yn.path.length-1;Vn>=1;Vn--)Un.push(yn.path[Vn]);for(var Zn=1;Zn<_n.path.length;Zn++)Un.push(_n.path[Zn]);var Qn=2.5*It;if(ne){var pr=Un.map(function(Wi){return Yt(Wi,ne)});Un=pr.some(function(Wi){return Wi.signedDistanceFromCamera<=0})?[]:pr.map(function(Wi){return Wi.point})}var cr=[];if(Un.length>0){for(var mr=Un[0].clone(),Ar=Un[0].clone(),Br=1;Br<Un.length;Br++)mr.x=Math.min(mr.x,Un[Br].x),mr.y=Math.min(mr.y,Un[Br].y),Ar.x=Math.max(Ar.x,Un[Br].x),Ar.y=Math.max(Ar.y,Un[Br].y);cr=mr.x>=on.x&&Ar.x<=Kt.x&&mr.y>=on.y&&Ar.y<=Kt.y?[Un]:Ar.x<on.x||mr.x>Kt.x||Ar.y<on.y||mr.y>Kt.y?[]:i.clipLine([Un],on.x,on.y,Kt.x,Kt.y)}for(var qn=0,ur=cr;qn<ur.length;qn+=1){var yr=ur[qn];Zt.reset(yr,.25*It);var Mr;Mr=Zt.length<=.5*It?1:Math.ceil(Zt.paddedLength/Qn)+1;for(var Rr=0;Rr<Mr;Rr++){var Vr=Rr/Math.max(Mr-1,1),$r=Zt.lerp(Vr),ai=$r.x+fr,bi=$r.y+fr;We.push(ai,bi,It,0);var _i=ai-It,oi=bi-It,Fi=ai+It,la=bi+It;if(Vt=Vt&&this.isOffscreen(_i,oi,Fi,la),Pt=Pt||this.isInsideGrid(_i,oi,Fi,la),!N&&this.grid.hitTestCircle(ai,bi,It,ke)&&(Rt=!0,!le))return{circles:[],offscreen:!1,collisionDetected:Rt}}}}return{circles:!le&&Rt||!Pt?[]:We,offscreen:Vt,collisionDetected:Rt}},ar.prototype.queryRenderedSymbols=function(N){if(N.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};for(var q=[],H=1/0,Q=1/0,ge=-1/0,Le=-1/0,U=0,ne=N;U<ne.length;U+=1){var le=ne[U],ye=new i.Point(le.x+fr,le.y+fr);H=Math.min(H,ye.x),Q=Math.min(Q,ye.y),ge=Math.max(ge,ye.x),Le=Math.max(Le,ye.y),q.push(ye)}for(var ke={},Re={},He=0,We=this.grid.query(H,Q,ge,Le).concat(this.ignoredGrid.query(H,Q,ge,Le));He<We.length;He+=1){var Xe=We[He],Ke=Xe.key;if(ke[Ke.bucketInstanceId]===void 0&&(ke[Ke.bucketInstanceId]={}),!ke[Ke.bucketInstanceId][Ke.featureIndex]){var it=[new i.Point(Xe.x1,Xe.y1),new i.Point(Xe.x2,Xe.y1),new i.Point(Xe.x2,Xe.y2),new i.Point(Xe.x1,Xe.y2)];i.polygonIntersectsPolygon(q,it)&&(ke[Ke.bucketInstanceId][Ke.featureIndex]=!0,Re[Ke.bucketInstanceId]===void 0&&(Re[Ke.bucketInstanceId]=[]),Re[Ke.bucketInstanceId].push(Ke.featureIndex))}}return Re},ar.prototype.insertCollisionBox=function(N,q,H,Q,ge){var Le={bucketInstanceId:H,featureIndex:Q,collisionGroupID:ge};(q?this.ignoredGrid:this.grid).insert(Le,N[0],N[1],N[2],N[3])},ar.prototype.insertCollisionCircles=function(N,q,H,Q,ge){for(var Le=q?this.ignoredGrid:this.grid,U={bucketInstanceId:H,featureIndex:Q,collisionGroupID:ge},ne=0;ne<N.length;ne+=4)Le.insertCircle(U,N[ne],N[ne+1],N[ne+2])},ar.prototype.projectAndGetPerspectiveRatio=function(N,q,H){var Q=[q,H,0,1];return ir(Q,Q,N),{point:new i.Point((Q[0]/Q[3]+1)/2*this.transform.width+fr,(-Q[1]/Q[3]+1)/2*this.transform.height+fr),perspectiveRatio:.5+this.transform.cameraToCenterDistance/Q[3]*.5}},ar.prototype.isOffscreen=function(N,q,H,Q){return H<fr||N>=this.screenRightBoundary||Q<fr||q>this.screenBottomBoundary},ar.prototype.isInsideGrid=function(N,q,H,Q){return H>=0&&N<this.gridRightBoundary&&Q>=0&&q<this.gridBottomBoundary},ar.prototype.getViewportMatrix=function(){var N=i.identity([]);return i.translate(N,N,[-100,-100,0]),N};var wr=function(N,q,H,Q){this.opacity=N?Math.max(0,Math.min(1,N.opacity+(N.placed?q:-q))):Q&&H?1:0,this.placed=H};wr.prototype.isHidden=function(){return this.opacity===0&&!this.placed};var Ht=function(N,q,H,Q,ge){this.text=new wr(N?N.text:null,q,H,ge),this.icon=new wr(N?N.icon:null,q,Q,ge)};Ht.prototype.isHidden=function(){return this.text.isHidden()&&this.icon.isHidden()};var sn=function(N,q,H){this.text=N,this.icon=q,this.skipFade=H},gn=function(){this.invProjMatrix=i.create(),this.viewportMatrix=i.create(),this.circles=[]},bn=function(N,q,H,Q,ge){this.bucketInstanceId=N,this.featureIndex=q,this.sourceLayerIndex=H,this.bucketIndex=Q,this.tileID=ge},Cn=function(N){this.crossSourceCollisions=N,this.maxGroupID=0,this.collisionGroups={}};function Yn(N,q,H,Q,ge){var Le=i.getAnchorAlignment(N),U=-(Le.horizontalAlign-.5)*q,ne=-(Le.verticalAlign-.5)*H,le=i.evaluateVariableOffset(N,Q);return new i.Point(U+le[0]*ge,ne+le[1]*ge)}function Nn(N,q,H,Q,ge,Le){var U=N.x1,ne=N.x2,le=N.y1,ye=N.y2,ke=N.anchorPointX,Re=N.anchorPointY,He=new i.Point(q,H);return Q&&He._rotate(ge?Le:-Le),{x1:U+He.x,y1:le+He.y,x2:ne+He.x,y2:ye+He.y,anchorPointX:ke,anchorPointY:Re}}Cn.prototype.get=function(N){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[N]){var q=++this.maxGroupID;this.collisionGroups[N]={ID:q,predicate:function(H){return H.collisionGroupID===q}}}return this.collisionGroups[N]};var jn=function(N,q,H,Q){this.transform=N.clone(),this.collisionIndex=new ar(this.transform),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=q,this.retainedQueryData={},this.collisionGroups=new Cn(H),this.collisionCircleArrays={},this.prevPlacement=Q,Q&&(Q.prevPlacement=void 0),this.placedOrientations={}};function rr(N,q,H,Q,ge){N.emplaceBack(q?1:0,H?1:0,Q||0,ge||0),N.emplaceBack(q?1:0,H?1:0,Q||0,ge||0),N.emplaceBack(q?1:0,H?1:0,Q||0,ge||0),N.emplaceBack(q?1:0,H?1:0,Q||0,ge||0)}jn.prototype.getBucketParts=function(N,q,H,Q){var ge=H.getBucket(q),Le=H.latestFeatureIndex;if(ge&&Le&&q.id===ge.layerIds[0]){var U=H.collisionBoxArray,ne=ge.layers[0].layout,le=Math.pow(2,this.transform.zoom-H.tileID.overscaledZ),ye=H.tileSize/i.EXTENT,ke=this.transform.calculatePosMatrix(H.tileID.toUnwrapped()),Re=ne.get("text-pitch-alignment")==="map",He=ne.get("text-rotation-alignment")==="map",We=Kn(H,1,this.transform.zoom),Xe=Tn(ke,Re,He,this.transform,We),Ke=null;if(Re){var it=dn(ke,Re,He,this.transform,We);Ke=i.multiply([],this.transform.labelPlaneMatrix,it)}this.retainedQueryData[ge.bucketInstanceId]=new bn(ge.bucketInstanceId,Le,ge.sourceLayerIndex,ge.index,H.tileID);var pt={bucket:ge,layout:ne,posMatrix:ke,textLabelPlaneMatrix:Xe,labelToScreenMatrix:Ke,scale:le,textPixelRatio:ye,holdingForFade:H.holdingForFade(),collisionBoxArray:U,partiallyEvaluatedTextSize:i.evaluateSizeForZoom(ge.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(ge.sourceID)};if(Q)for(var mt=0,Ot=ge.sortKeyRanges;mt<Ot.length;mt+=1){var Rt=Ot[mt],Pt=Rt.sortKey,Vt=Rt.symbolInstanceStart,It=Rt.symbolInstanceEnd;N.push({sortKey:Pt,symbolInstanceStart:Vt,symbolInstanceEnd:It,parameters:pt})}else N.push({symbolInstanceStart:0,symbolInstanceEnd:ge.symbolInstances.length,parameters:pt})}},jn.prototype.attemptAnchorPlacement=function(N,q,H,Q,ge,Le,U,ne,le,ye,ke,Re,He,We,Xe){var Ke,it=[Re.textOffset0,Re.textOffset1],pt=Yn(N,H,Q,it,ge),mt=this.collisionIndex.placeCollisionBox(Nn(q,pt.x,pt.y,Le,U,this.transform.angle),ke,ne,le,ye.predicate);if(!Xe||this.collisionIndex.placeCollisionBox(Nn(Xe,pt.x,pt.y,Le,U,this.transform.angle),ke,ne,le,ye.predicate).box.length!==0)return mt.box.length>0?(this.prevPlacement&&this.prevPlacement.variableOffsets[Re.crossTileID]&&this.prevPlacement.placements[Re.crossTileID]&&this.prevPlacement.placements[Re.crossTileID].text&&(Ke=this.prevPlacement.variableOffsets[Re.crossTileID].anchor),this.variableOffsets[Re.crossTileID]={textOffset:it,width:H,height:Q,anchor:N,textBoxScale:ge,prevAnchor:Ke},this.markUsedJustification(He,N,Re,We),He.allowVerticalPlacement&&(this.markUsedOrientation(He,We,Re),this.placedOrientations[Re.crossTileID]=We),{shift:pt,placedGlyphBoxes:mt}):void 0},jn.prototype.placeLayerBucketPart=function(N,q,H){var Q=this,ge=N.parameters,Le=ge.bucket,U=ge.layout,ne=ge.posMatrix,le=ge.textLabelPlaneMatrix,ye=ge.labelToScreenMatrix,ke=ge.textPixelRatio,Re=ge.holdingForFade,He=ge.collisionBoxArray,We=ge.partiallyEvaluatedTextSize,Xe=ge.collisionGroup,Ke=U.get("text-optional"),it=U.get("icon-optional"),pt=U.get("text-allow-overlap"),mt=U.get("icon-allow-overlap"),Ot=U.get("text-rotation-alignment")==="map",Rt=U.get("text-pitch-alignment")==="map",Pt=U.get("icon-text-fit")!=="none",Vt=U.get("symbol-z-order")==="viewport-y",It=pt&&(mt||!Le.hasIconData()||it),on=mt&&(pt||!Le.hasTextData()||Ke);!Le.collisionArrays&&He&&Le.deserializeCollisionBoxes(He);var Kt=function(Zn,Qn){if(!q[Zn.crossTileID])if(Re)Q.placements[Zn.crossTileID]=new sn(!1,!1,!1);else{var pr,cr=!1,mr=!1,Ar=!0,Br=null,qn={box:null,offscreen:null},ur={box:null,offscreen:null},yr=null,Mr=null,Rr=0,Vr=0,$r=0;Qn.textFeatureIndex?Rr=Qn.textFeatureIndex:Zn.useRuntimeCollisionCircles&&(Rr=Zn.featureIndex),Qn.verticalTextFeatureIndex&&(Vr=Qn.verticalTextFeatureIndex);var ai=Qn.textBox;if(ai){var bi=function(Vi){var ua=i.WritingMode.horizontal;if(Le.allowVerticalPlacement&&!Vi&&Q.prevPlacement){var Mo=Q.prevPlacement.placedOrientations[Zn.crossTileID];Mo&&(Q.placedOrientations[Zn.crossTileID]=Mo,ua=Mo,Q.markUsedOrientation(Le,ua,Zn))}return ua},_i=function(Vi,ua){if(Le.allowVerticalPlacement&&Zn.numVerticalGlyphVertices>0&&Qn.verticalTextBox)for(var Mo=0,Of=Le.writingModes;Mo<Of.length&&(Of[Mo]===i.WritingMode.vertical?(qn=ua(),ur=qn):qn=Vi(),!(qn&&qn.box&&qn.box.length));Mo+=1);else qn=Vi()};if(U.get("text-variable-anchor")){var oi=U.get("text-variable-anchor");if(Q.prevPlacement&&Q.prevPlacement.variableOffsets[Zn.crossTileID]){var Fi=Q.prevPlacement.variableOffsets[Zn.crossTileID];oi.indexOf(Fi.anchor)>0&&(oi=oi.filter(function(Vi){return Vi!==Fi.anchor})).unshift(Fi.anchor)}var la=function(Vi,ua,Mo){for(var Of=Vi.x2-Vi.x1,vd=Vi.y2-Vi.y1,N1=Zn.textBoxScale,jh=Pt&&!mt?ua:null,If={box:[],offscreen:!1},Uh=pt?2*oi.length:oi.length,Kc=0;Kc<Uh;++Kc){var md=oi[Kc%oi.length],gc=Kc>=oi.length,Vh=Q.attemptAnchorPlacement(md,Vi,Of,vd,N1,Ot,Rt,ke,ne,Xe,gc,Zn,Le,Mo,jh);if(Vh&&(If=Vh.placedGlyphBoxes)&&If.box&&If.box.length){cr=!0,Br=Vh.shift;break}}return If};_i(function(){return la(ai,Qn.iconBox,i.WritingMode.horizontal)},function(){var Vi=Qn.verticalTextBox,ua=qn&&qn.box&&qn.box.length;return Le.allowVerticalPlacement&&!ua&&Zn.numVerticalGlyphVertices>0&&Vi?la(Vi,Qn.verticalIconBox,i.WritingMode.vertical):{box:null,offscreen:null}}),qn&&(cr=qn.box,Ar=qn.offscreen);var Wi=bi(qn&&qn.box);if(!cr&&Q.prevPlacement){var ea=Q.prevPlacement.variableOffsets[Zn.crossTileID];ea&&(Q.variableOffsets[Zn.crossTileID]=ea,Q.markUsedJustification(Le,ea.anchor,Zn,Wi))}}else{var ei=function(Vi,ua){var Mo=Q.collisionIndex.placeCollisionBox(Vi,pt,ke,ne,Xe.predicate);return Mo&&Mo.box&&Mo.box.length&&(Q.markUsedOrientation(Le,ua,Zn),Q.placedOrientations[Zn.crossTileID]=ua),Mo};_i(function(){return ei(ai,i.WritingMode.horizontal)},function(){var Vi=Qn.verticalTextBox;return Le.allowVerticalPlacement&&Zn.numVerticalGlyphVertices>0&&Vi?ei(Vi,i.WritingMode.vertical):{box:null,offscreen:null}}),bi(qn&&qn.box&&qn.box.length)}}if(cr=(pr=qn)&&pr.box&&pr.box.length>0,Ar=pr&&pr.offscreen,Zn.useRuntimeCollisionCircles){var Yr=Le.text.placedSymbolArray.get(Zn.centerJustifiedTextSymbolIndex),wi=i.evaluateSizeForFeature(Le.textSizeData,We,Yr),gi=U.get("text-padding"),Mi=Zn.collisionCircleDiameter;yr=Q.collisionIndex.placeCollisionCircles(pt,Yr,Le.lineVertexArray,Le.glyphOffsetArray,wi,ne,le,ye,H,Rt,Xe.predicate,Mi,gi),cr=pt||yr.circles.length>0&&!yr.collisionDetected,Ar=Ar&&yr.offscreen}if(Qn.iconFeatureIndex&&($r=Qn.iconFeatureIndex),Qn.iconBox){var za=function(Vi){var ua=Pt&&Br?Nn(Vi,Br.x,Br.y,Ot,Rt,Q.transform.angle):Vi;return Q.collisionIndex.placeCollisionBox(ua,mt,ke,ne,Xe.predicate)};mr=ur&&ur.box&&ur.box.length&&Qn.verticalIconBox?(Mr=za(Qn.verticalIconBox)).box.length>0:(Mr=za(Qn.iconBox)).box.length>0,Ar=Ar&&Mr.offscreen}var Oi=Ke||Zn.numHorizontalGlyphVertices===0&&Zn.numVerticalGlyphVertices===0,si=it||Zn.numIconVertices===0;if(Oi||si?si?Oi||(mr=mr&&cr):cr=mr&&cr:mr=cr=mr&&cr,cr&&pr&&pr.box&&(ur&&ur.box&&Vr?Q.collisionIndex.insertCollisionBox(pr.box,U.get("text-ignore-placement"),Le.bucketInstanceId,Vr,Xe.ID):Q.collisionIndex.insertCollisionBox(pr.box,U.get("text-ignore-placement"),Le.bucketInstanceId,Rr,Xe.ID)),mr&&Mr&&Q.collisionIndex.insertCollisionBox(Mr.box,U.get("icon-ignore-placement"),Le.bucketInstanceId,$r,Xe.ID),yr&&(cr&&Q.collisionIndex.insertCollisionCircles(yr.circles,U.get("text-ignore-placement"),Le.bucketInstanceId,Rr,Xe.ID),H)){var sl=Le.bucketInstanceId,Wa=Q.collisionCircleArrays[sl];Wa===void 0&&(Wa=Q.collisionCircleArrays[sl]=new gn);for(var ho=0;ho<yr.circles.length;ho+=4)Wa.circles.push(yr.circles[ho+0]),Wa.circles.push(yr.circles[ho+1]),Wa.circles.push(yr.circles[ho+2]),Wa.circles.push(yr.collisionDetected?1:0)}Q.placements[Zn.crossTileID]=new sn(cr||It,mr||on,Ar||Le.justReloaded),q[Zn.crossTileID]=!0}};if(Vt)for(var Zt=Le.getSortedSymbolIndexes(this.transform.angle),yn=Zt.length-1;yn>=0;--yn){var _n=Zt[yn];Kt(Le.symbolInstances.get(_n),Le.collisionArrays[_n])}else for(var Un=N.symbolInstanceStart;Un<N.symbolInstanceEnd;Un++)Kt(Le.symbolInstances.get(Un),Le.collisionArrays[Un]);if(H&&Le.bucketInstanceId in this.collisionCircleArrays){var Vn=this.collisionCircleArrays[Le.bucketInstanceId];i.invert(Vn.invProjMatrix,ne),Vn.viewportMatrix=this.collisionIndex.getViewportMatrix()}Le.justReloaded=!1},jn.prototype.markUsedJustification=function(N,q,H,Q){var ge,Le={left:H.leftJustifiedTextSymbolIndex,center:H.centerJustifiedTextSymbolIndex,right:H.rightJustifiedTextSymbolIndex};ge=Q===i.WritingMode.vertical?H.verticalPlacedTextSymbolIndex:Le[i.getAnchorJustification(q)];for(var U=0,ne=[H.leftJustifiedTextSymbolIndex,H.centerJustifiedTextSymbolIndex,H.rightJustifiedTextSymbolIndex,H.verticalPlacedTextSymbolIndex];U<ne.length;U+=1){var le=ne[U];le>=0&&(N.text.placedSymbolArray.get(le).crossTileID=ge>=0&&le!==ge?0:H.crossTileID)}},jn.prototype.markUsedOrientation=function(N,q,H){for(var Q=q===i.WritingMode.horizontal||q===i.WritingMode.horizontalOnly?q:0,ge=q===i.WritingMode.vertical?q:0,Le=0,U=[H.leftJustifiedTextSymbolIndex,H.centerJustifiedTextSymbolIndex,H.rightJustifiedTextSymbolIndex];Le<U.length;Le+=1){var ne=U[Le];N.text.placedSymbolArray.get(ne).placedOrientation=Q}H.verticalPlacedTextSymbolIndex&&(N.text.placedSymbolArray.get(H.verticalPlacedTextSymbolIndex).placedOrientation=ge)},jn.prototype.commit=function(N){this.commitTime=N,this.zoomAtLastRecencyCheck=this.transform.zoom;var q=this.prevPlacement,H=!1;this.prevZoomAdjustment=q?q.zoomAdjustment(this.transform.zoom):0;var Q=q?q.symbolFadeChange(N):1,ge=q?q.opacities:{},Le=q?q.variableOffsets:{},U=q?q.placedOrientations:{};for(var ne in this.placements){var le=this.placements[ne],ye=ge[ne];ye?(this.opacities[ne]=new Ht(ye,Q,le.text,le.icon),H=H||le.text!==ye.text.placed||le.icon!==ye.icon.placed):(this.opacities[ne]=new Ht(null,Q,le.text,le.icon,le.skipFade),H=H||le.text||le.icon)}for(var ke in ge){var Re=ge[ke];if(!this.opacities[ke]){var He=new Ht(Re,Q,!1,!1);He.isHidden()||(this.opacities[ke]=He,H=H||Re.text.placed||Re.icon.placed)}}for(var We in Le)this.variableOffsets[We]||!this.opacities[We]||this.opacities[We].isHidden()||(this.variableOffsets[We]=Le[We]);for(var Xe in U)this.placedOrientations[Xe]||!this.opacities[Xe]||this.opacities[Xe].isHidden()||(this.placedOrientations[Xe]=U[Xe]);H?this.lastPlacementChangeTime=N:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=q?q.lastPlacementChangeTime:N)},jn.prototype.updateLayerOpacities=function(N,q){for(var H={},Q=0,ge=q;Q<ge.length;Q+=1){var Le=ge[Q],U=Le.getBucket(N);U&&Le.latestFeatureIndex&&N.id===U.layerIds[0]&&this.updateBucketOpacities(U,H,Le.collisionBoxArray)}},jn.prototype.updateBucketOpacities=function(N,q,H){var Q=this;N.hasTextData()&&N.text.opacityVertexArray.clear(),N.hasIconData()&&N.icon.opacityVertexArray.clear(),N.hasIconCollisionBoxData()&&N.iconCollisionBox.collisionVertexArray.clear(),N.hasTextCollisionBoxData()&&N.textCollisionBox.collisionVertexArray.clear();var ge=N.layers[0].layout,Le=new Ht(null,0,!1,!1,!0),U=ge.get("text-allow-overlap"),ne=ge.get("icon-allow-overlap"),le=ge.get("text-variable-anchor"),ye=ge.get("text-rotation-alignment")==="map",ke=ge.get("text-pitch-alignment")==="map",Re=ge.get("icon-text-fit")!=="none",He=new Ht(null,0,U&&(ne||!N.hasIconData()||ge.get("icon-optional")),ne&&(U||!N.hasTextData()||ge.get("text-optional")),!0);!N.collisionArrays&&H&&(N.hasIconCollisionBoxData()||N.hasTextCollisionBoxData())&&N.deserializeCollisionBoxes(H);for(var We=function(pt,mt,Ot){for(var Rt=0;Rt<mt/4;Rt++)pt.opacityVertexArray.emplaceBack(Ot)},Xe=function(pt){var mt=N.symbolInstances.get(pt),Ot=mt.numHorizontalGlyphVertices,Rt=mt.numVerticalGlyphVertices,Pt=mt.crossTileID,Vt=q[Pt],It=Q.opacities[Pt];Vt?It=Le:It||(It=He,Q.opacities[Pt]=It),q[Pt]=!0;var on=Ot>0||Rt>0,Kt=mt.numIconVertices>0,Zt=Q.placedOrientations[mt.crossTileID],yn=Zt===i.WritingMode.vertical,_n=Zt===i.WritingMode.horizontal||Zt===i.WritingMode.horizontalOnly;if(on){var Un=Ln(It.text),Vn=yn?hn:Un;We(N.text,Ot,Vn);var Zn=_n?hn:Un;We(N.text,Rt,Zn);var Qn=It.text.isHidden();[mt.rightJustifiedTextSymbolIndex,mt.centerJustifiedTextSymbolIndex,mt.leftJustifiedTextSymbolIndex].forEach(function($r){$r>=0&&(N.text.placedSymbolArray.get($r).hidden=Qn||yn?1:0)}),mt.verticalPlacedTextSymbolIndex>=0&&(N.text.placedSymbolArray.get(mt.verticalPlacedTextSymbolIndex).hidden=Qn||_n?1:0);var pr=Q.variableOffsets[mt.crossTileID];pr&&Q.markUsedJustification(N,pr.anchor,mt,Zt);var cr=Q.placedOrientations[mt.crossTileID];cr&&(Q.markUsedJustification(N,"left",mt,cr),Q.markUsedOrientation(N,cr,mt))}if(Kt){var mr=Ln(It.icon),Ar=!(Re&&mt.verticalPlacedIconSymbolIndex&&yn);if(mt.placedIconSymbolIndex>=0){var Br=Ar?mr:hn;We(N.icon,mt.numIconVertices,Br),N.icon.placedSymbolArray.get(mt.placedIconSymbolIndex).hidden=It.icon.isHidden()}if(mt.verticalPlacedIconSymbolIndex>=0){var qn=Ar?hn:mr;We(N.icon,mt.numVerticalIconVertices,qn),N.icon.placedSymbolArray.get(mt.verticalPlacedIconSymbolIndex).hidden=It.icon.isHidden()}}if(N.hasIconCollisionBoxData()||N.hasTextCollisionBoxData()){var ur=N.collisionArrays[pt];if(ur){var yr=new i.Point(0,0);if(ur.textBox||ur.verticalTextBox){var Mr=!0;if(le){var Rr=Q.variableOffsets[Pt];Rr?(yr=Yn(Rr.anchor,Rr.width,Rr.height,Rr.textOffset,Rr.textBoxScale),ye&&yr._rotate(ke?Q.transform.angle:-Q.transform.angle)):Mr=!1}ur.textBox&&rr(N.textCollisionBox.collisionVertexArray,It.text.placed,!Mr||yn,yr.x,yr.y),ur.verticalTextBox&&rr(N.textCollisionBox.collisionVertexArray,It.text.placed,!Mr||_n,yr.x,yr.y)}var Vr=!!(!_n&&ur.verticalIconBox);ur.iconBox&&rr(N.iconCollisionBox.collisionVertexArray,It.icon.placed,Vr,Re?yr.x:0,Re?yr.y:0),ur.verticalIconBox&&rr(N.iconCollisionBox.collisionVertexArray,It.icon.placed,!Vr,Re?yr.x:0,Re?yr.y:0)}}},Ke=0;Ke<N.symbolInstances.length;Ke++)Xe(Ke);if(N.sortFeatures(this.transform.angle),this.retainedQueryData[N.bucketInstanceId]&&(this.retainedQueryData[N.bucketInstanceId].featureSortOrder=N.featureSortOrder),N.hasTextData()&&N.text.opacityVertexBuffer&&N.text.opacityVertexBuffer.updateData(N.text.opacityVertexArray),N.hasIconData()&&N.icon.opacityVertexBuffer&&N.icon.opacityVertexBuffer.updateData(N.icon.opacityVertexArray),N.hasIconCollisionBoxData()&&N.iconCollisionBox.collisionVertexBuffer&&N.iconCollisionBox.collisionVertexBuffer.updateData(N.iconCollisionBox.collisionVertexArray),N.hasTextCollisionBoxData()&&N.textCollisionBox.collisionVertexBuffer&&N.textCollisionBox.collisionVertexBuffer.updateData(N.textCollisionBox.collisionVertexArray),N.bucketInstanceId in this.collisionCircleArrays){var it=this.collisionCircleArrays[N.bucketInstanceId];N.placementInvProjMatrix=it.invProjMatrix,N.placementViewportMatrix=it.viewportMatrix,N.collisionCircleArray=it.circles,delete this.collisionCircleArrays[N.bucketInstanceId]}},jn.prototype.symbolFadeChange=function(N){return this.fadeDuration===0?1:(N-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment},jn.prototype.zoomAdjustment=function(N){return Math.max(0,(this.transform.zoom-N)/1.5)},jn.prototype.hasTransitions=function(N){return this.stale||N-this.lastPlacementChangeTime<this.fadeDuration},jn.prototype.stillRecent=function(N,q){var H=this.zoomAtLastRecencyCheck===q?1-this.zoomAdjustment(q):1;return this.zoomAtLastRecencyCheck=q,this.commitTime+this.fadeDuration*H>N},jn.prototype.setStale=function(){this.stale=!0};var Wt=Math.pow(2,25),An=Math.pow(2,24),Lt=Math.pow(2,17),$t=Math.pow(2,16),rn=Math.pow(2,9),wn=Math.pow(2,8),kn=Math.pow(2,1);function Ln(N){if(N.opacity===0&&!N.placed)return 0;if(N.opacity===1&&N.placed)return 4294967295;var q=N.placed?1:0,H=Math.floor(127*N.opacity);return H*Wt+q*An+H*Lt+q*$t+H*rn+q*wn+H*kn+q}var hn=0,Jt=function(N){this._sortAcrossTiles=N.layout.get("symbol-z-order")!=="viewport-y"&&N.layout.get("symbol-sort-key").constantOr(1)!==void 0,this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};Jt.prototype.continuePlacement=function(N,q,H,Q,ge){for(var Le=this._bucketParts;this._currentTileIndex<N.length;){var U=N[this._currentTileIndex];if(q.getBucketParts(Le,Q,U,this._sortAcrossTiles),this._currentTileIndex++,ge())return!0}for(this._sortAcrossTiles&&(this._sortAcrossTiles=!1,Le.sort(function(le,ye){return le.sortKey-ye.sortKey}));this._currentPartIndex<Le.length;){var ne=Le[this._currentPartIndex];if(q.placeLayerBucketPart(ne,this._seenCrossTileIDs,H),this._currentPartIndex++,ge())return!0}return!1};var en=function(N,q,H,Q,ge,Le,U){this.placement=new jn(N,ge,Le,U),this._currentPlacementIndex=q.length-1,this._forceFullPlacement=H,this._showCollisionBoxes=Q,this._done=!1};en.prototype.isDone=function(){return this._done},en.prototype.continuePlacement=function(N,q,H){for(var Q=this,ge=i.browser.now(),Le=function(){var le=i.browser.now()-ge;return!Q._forceFullPlacement&&le>2};this._currentPlacementIndex>=0;){var U=q[N[this._currentPlacementIndex]],ne=this.placement.collisionIndex.transform.zoom;if(U.type==="symbol"&&(!U.minzoom||U.minzoom<=ne)&&(!U.maxzoom||U.maxzoom>ne)){if(this._inProgressLayer||(this._inProgressLayer=new Jt(U)),this._inProgressLayer.continuePlacement(H[U.source],this.placement,this._showCollisionBoxes,U,Le))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},en.prototype.commit=function(N){return this.placement.commit(N),this.placement};var cn=512/i.EXTENT/2,pn=function(N,q,H){this.tileID=N,this.indexedSymbolInstances={},this.bucketInstanceId=H;for(var Q=0;Q<q.length;Q++){var ge=q.get(Q),Le=ge.key;this.indexedSymbolInstances[Le]||(this.indexedSymbolInstances[Le]=[]),this.indexedSymbolInstances[Le].push({crossTileID:ge.crossTileID,coord:this.getScaledCoordinates(ge,N)})}};pn.prototype.getScaledCoordinates=function(N,q){var H=q.canonical.z-this.tileID.canonical.z,Q=cn/Math.pow(2,H);return{x:Math.floor((q.canonical.x*i.EXTENT+N.anchorX)*Q),y:Math.floor((q.canonical.y*i.EXTENT+N.anchorY)*Q)}},pn.prototype.findMatches=function(N,q,H){for(var Q=this.tileID.canonical.z<q.canonical.z?1:Math.pow(2,this.tileID.canonical.z-q.canonical.z),ge=0;ge<N.length;ge++){var Le=N.get(ge);if(!Le.crossTileID){var U=this.indexedSymbolInstances[Le.key];if(U)for(var ne=this.getScaledCoordinates(Le,q),le=0,ye=U;le<ye.length;le+=1){var ke=ye[le];if(Math.abs(ke.coord.x-ne.x)<=Q&&Math.abs(ke.coord.y-ne.y)<=Q&&!H[ke.crossTileID]){H[ke.crossTileID]=!0,Le.crossTileID=ke.crossTileID;break}}}}};var On=function(){this.maxCrossTileID=0};On.prototype.generate=function(){return++this.maxCrossTileID};var Rn=function(){this.indexes={},this.usedCrossTileIDs={},this.lng=0};Rn.prototype.handleWrapJump=function(N){var q=Math.round((N-this.lng)/360);if(q!==0)for(var H in this.indexes){var Q=this.indexes[H],ge={};for(var Le in Q){var U=Q[Le];U.tileID=U.tileID.unwrapTo(U.tileID.wrap+q),ge[U.tileID.key]=U}this.indexes[H]=ge}this.lng=N},Rn.prototype.addBucket=function(N,q,H){if(this.indexes[N.overscaledZ]&&this.indexes[N.overscaledZ][N.key]){if(this.indexes[N.overscaledZ][N.key].bucketInstanceId===q.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(N.overscaledZ,this.indexes[N.overscaledZ][N.key])}for(var Q=0;Q<q.symbolInstances.length;Q++)q.symbolInstances.get(Q).crossTileID=0;this.usedCrossTileIDs[N.overscaledZ]||(this.usedCrossTileIDs[N.overscaledZ]={});var ge=this.usedCrossTileIDs[N.overscaledZ];for(var Le in this.indexes){var U=this.indexes[Le];if(Number(Le)>N.overscaledZ)for(var ne in U){var le=U[ne];le.tileID.isChildOf(N)&&le.findMatches(q.symbolInstances,N,ge)}else{var ye=U[N.scaledTo(Number(Le)).key];ye&&ye.findMatches(q.symbolInstances,N,ge)}}for(var ke=0;ke<q.symbolInstances.length;ke++){var Re=q.symbolInstances.get(ke);Re.crossTileID||(Re.crossTileID=H.generate(),ge[Re.crossTileID]=!0)}return this.indexes[N.overscaledZ]===void 0&&(this.indexes[N.overscaledZ]={}),this.indexes[N.overscaledZ][N.key]=new pn(N,q.symbolInstances,q.bucketInstanceId),!0},Rn.prototype.removeBucketCrossTileIDs=function(N,q){for(var H in q.indexedSymbolInstances)for(var Q=0,ge=q.indexedSymbolInstances[H];Q<ge.length;Q+=1){var Le=ge[Q];delete this.usedCrossTileIDs[N][Le.crossTileID]}},Rn.prototype.removeStaleBuckets=function(N){var q=!1;for(var H in this.indexes){var Q=this.indexes[H];for(var ge in Q)N[Q[ge].bucketInstanceId]||(this.removeBucketCrossTileIDs(H,Q[ge]),delete Q[ge],q=!0)}return q};var Wn=function(){this.layerIndexes={},this.crossTileIDs=new On,this.maxBucketInstanceId=0,this.bucketsInCurrentPlacement={}};Wn.prototype.addLayer=function(N,q,H){var Q=this.layerIndexes[N.id];Q===void 0&&(Q=this.layerIndexes[N.id]=new Rn);var ge=!1,Le={};Q.handleWrapJump(H);for(var U=0,ne=q;U<ne.length;U+=1){var le=ne[U],ye=le.getBucket(N);ye&&N.id===ye.layerIds[0]&&(ye.bucketInstanceId||(ye.bucketInstanceId=++this.maxBucketInstanceId),Q.addBucket(le.tileID,ye,this.crossTileIDs)&&(ge=!0),Le[ye.bucketInstanceId]=!0)}return Q.removeStaleBuckets(Le)&&(ge=!0),ge},Wn.prototype.pruneUnusedLayers=function(N){var q={};for(var H in N.forEach(function(Q){q[Q]=!0}),this.layerIndexes)q[H]||delete this.layerIndexes[H]};var Hn=function(N,q){return i.emitValidationErrors(N,q&&q.filter(function(H){return H.identifier!=="source.canvas"}))},tr=i.pick(dt,["addLayer","removeLayer","setPaintProperty","setLayoutProperty","setFilter","addSource","removeSource","setLayerZoomRange","setLight","setTransition","setGeoJSONSourceData"]),Xn=i.pick(dt,["setCenter","setZoom","setBearing","setPitch"]),lr=function(){var N={},q=i.styleSpec.$version;for(var H in i.styleSpec.$root){var Q=i.styleSpec.$root[H];if(Q.required){var ge;(ge=H==="version"?q:Q.type==="array"?[]:{})!=null&&(N[H]=ge)}}return N}(),or=function(N){function q(H,Q){var ge=this;Q===void 0&&(Q={}),N.call(this),this.map=H,this.dispatcher=new P(_t(),this),this.imageManager=new p,this.imageManager.setEventedParent(this),this.glyphManager=new x(H._requestManager,Q.localIdeographFontFamily),this.lineAtlas=new C(256,512),this.crossTileSymbolIndex=new Wn,this._layers={},this._serializedLayers={},this._order=[],this.sourceCaches={},this.zoomHistory=new i.ZoomHistory,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("setReferrer",i.getReferrer());var Le=this;this._rtlTextPluginCallback=q.registerForPluginStateChange(function(U){var ne={pluginStatus:U.pluginStatus,pluginURL:U.pluginURL};Le.dispatcher.broadcast("syncRTLPluginState",ne,function(le,ye){if(i.triggerPluginCompletionEvent(le),ye&&ye.every(function(Re){return Re}))for(var ke in Le.sourceCaches)Le.sourceCaches[ke].reload()})}),this.on("data",function(U){if(U.dataType==="source"&&U.sourceDataType==="metadata"){var ne=ge.sourceCaches[U.sourceId];if(ne){var le=ne.getSource();if(le&&le.vectorLayerIds)for(var ye in ge._layers){var ke=ge._layers[ye];ke.source===le.id&&ge._validateLayer(ke)}}}})}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.loadURL=function(H,Q){var ge=this;Q===void 0&&(Q={}),this.fire(new i.Event("dataloading",{dataType:"style"}));var Le=typeof Q.validate=="boolean"?Q.validate:!i.isMapboxURL(H);H=this.map._requestManager.normalizeStyleURL(H,Q.accessToken);var U=this.map._requestManager.transformRequest(H,i.ResourceType.Style);this._request=i.getJSON(U,function(ne,le){ge._request=null,ne?ge.fire(new i.ErrorEvent(ne)):le&&ge._load(le,Le)})},q.prototype.loadJSON=function(H,Q){var ge=this;Q===void 0&&(Q={}),this.fire(new i.Event("dataloading",{dataType:"style"})),this._request=i.browser.frame(function(){ge._request=null,ge._load(H,Q.validate!==!1)})},q.prototype.loadEmpty=function(){this.fire(new i.Event("dataloading",{dataType:"style"})),this._load(lr,!1)},q.prototype._load=function(H,Q){if(!Q||!Hn(this,i.validateStyle(H))){for(var ge in this._loaded=!0,this.stylesheet=H,H.sources)this.addSource(ge,H.sources[ge],{validate:!1});H.sprite?this._loadSprite(H.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(H.glyphs);var Le=Ct(this.stylesheet.layers);this._order=Le.map(function(ye){return ye.id}),this._layers={},this._serializedLayers={};for(var U=0,ne=Le;U<ne.length;U+=1){var le=ne[U];(le=i.createStyleLayer(le)).setEventedParent(this,{layer:{id:le.id}}),this._layers[le.id]=le,this._serializedLayers[le.id]=le.serialize()}this.dispatcher.broadcast("setLayers",this._serializeLayers(this._order)),this.light=new A(this.stylesheet.light),this.fire(new i.Event("data",{dataType:"style"})),this.fire(new i.Event("style.load"))}},q.prototype._loadSprite=function(H){var Q=this;this._spriteRequest=function(ge,Le,U){var ne,le,ye,ke=i.browser.devicePixelRatio>1?"@2x":"",Re=i.getJSON(Le.transformRequest(Le.normalizeSpriteURL(ge,ke,".json"),i.ResourceType.SpriteJSON),function(Xe,Ke){Re=null,ye||(ye=Xe,ne=Ke,We())}),He=i.getImage(Le.transformRequest(Le.normalizeSpriteURL(ge,ke,".png"),i.ResourceType.SpriteImage),function(Xe,Ke){He=null,ye||(ye=Xe,le=Ke,We())});function We(){if(ye)U(ye);else if(ne&&le){var Xe=i.browser.getImageData(le),Ke={};for(var it in ne){var pt=ne[it],mt=pt.width,Ot=pt.height,Rt=pt.x,Pt=pt.y,Vt=pt.sdf,It=pt.pixelRatio,on=pt.stretchX,Kt=pt.stretchY,Zt=pt.content,yn=new i.RGBAImage({width:mt,height:Ot});i.RGBAImage.copy(Xe,yn,{x:Rt,y:Pt},{x:0,y:0},{width:mt,height:Ot}),Ke[it]={data:yn,pixelRatio:It,sdf:Vt,stretchX:on,stretchY:Kt,content:Zt}}U(null,Ke)}}return{cancel:function(){Re&&(Re.cancel(),Re=null),He&&(He.cancel(),He=null)}}}(H,this.map._requestManager,function(ge,Le){if(Q._spriteRequest=null,ge)Q.fire(new i.ErrorEvent(ge));else if(Le)for(var U in Le)Q.imageManager.addImage(U,Le[U]);Q.imageManager.setLoaded(!0),Q._availableImages=Q.imageManager.listImages(),Q.dispatcher.broadcast("setImages",Q._availableImages),Q.fire(new i.Event("data",{dataType:"style"}))})},q.prototype._validateLayer=function(H){var Q=this.sourceCaches[H.source];if(Q){var ge=H.sourceLayer;if(ge){var Le=Q.getSource();(Le.type==="geojson"||Le.vectorLayerIds&&Le.vectorLayerIds.indexOf(ge)===-1)&&this.fire(new i.ErrorEvent(new Error('Source layer "'+ge+'" does not exist on source "'+Le.id+'" as specified by style layer "'+H.id+'"')))}}},q.prototype.loaded=function(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(var H in this.sourceCaches)if(!this.sourceCaches[H].loaded())return!1;return!!this.imageManager.isLoaded()},q.prototype._serializeLayers=function(H){for(var Q=[],ge=0,Le=H;ge<Le.length;ge+=1){var U=Le[ge],ne=this._layers[U];ne.type!=="custom"&&Q.push(ne.serialize())}return Q},q.prototype.hasTransitions=function(){if(this.light&&this.light.hasTransition())return!0;for(var H in this.sourceCaches)if(this.sourceCaches[H].hasTransition())return!0;for(var Q in this._layers)if(this._layers[Q].hasTransition())return!0;return!1},q.prototype._checkLoaded=function(){if(!this._loaded)throw new Error("Style is not done loading")},q.prototype.update=function(H){if(this._loaded){var Q=this._changed;if(this._changed){var ge=Object.keys(this._updatedLayers),Le=Object.keys(this._removedLayers);for(var U in(ge.length||Le.length)&&this._updateWorkerLayers(ge,Le),this._updatedSources){var ne=this._updatedSources[U];ne==="reload"?this._reloadSource(U):ne==="clear"&&this._clearSource(U)}for(var le in this._updateTilesForChangedImages(),this._updatedPaintProps)this._layers[le].updateTransitions(H);this.light.updateTransitions(H),this._resetUpdates()}for(var ye in this.sourceCaches)this.sourceCaches[ye].used=!1;for(var ke=0,Re=this._order;ke<Re.length;ke+=1){var He=Re[ke],We=this._layers[He];We.recalculate(H,this._availableImages),!We.isHidden(H.zoom)&&We.source&&(this.sourceCaches[We.source].used=!0)}this.light.recalculate(H),this.z=H.zoom,Q&&this.fire(new i.Event("data",{dataType:"style"}))}},q.prototype._updateTilesForChangedImages=function(){var H=Object.keys(this._changedImages);if(H.length){for(var Q in this.sourceCaches)this.sourceCaches[Q].reloadTilesForDependencies(["icons","patterns"],H);this._changedImages={}}},q.prototype._updateWorkerLayers=function(H,Q){this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(H),removedIds:Q})},q.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={}},q.prototype.setState=function(H){var Q=this;if(this._checkLoaded(),Hn(this,i.validateStyle(H)))return!1;(H=i.clone$1(H)).layers=Ct(H.layers);var ge=Qt(this.serialize(),H).filter(function(U){return!(U.command in Xn)});if(ge.length===0)return!1;var Le=ge.filter(function(U){return!(U.command in tr)});if(Le.length>0)throw new Error("Unimplemented: "+Le.map(function(U){return U.command}).join(", ")+".");return ge.forEach(function(U){U.command!=="setTransition"&&Q[U.command].apply(Q,U.args)}),this.stylesheet=H,!0},q.prototype.addImage=function(H,Q){if(this.getImage(H))return this.fire(new i.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(H,Q),this._availableImages=this.imageManager.listImages(),this._changedImages[H]=!0,this._changed=!0,this.fire(new i.Event("data",{dataType:"style"}))},q.prototype.updateImage=function(H,Q){this.imageManager.updateImage(H,Q)},q.prototype.getImage=function(H){return this.imageManager.getImage(H)},q.prototype.removeImage=function(H){if(!this.getImage(H))return this.fire(new i.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(H),this._availableImages=this.imageManager.listImages(),this._changedImages[H]=!0,this._changed=!0,this.fire(new i.Event("data",{dataType:"style"}))},q.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},q.prototype.addSource=function(H,Q,ge){var Le=this;if(ge===void 0&&(ge={}),this._checkLoaded(),this.sourceCaches[H]!==void 0)throw new Error("There is already a source with this ID");if(!Q.type)throw new Error("The type property must be defined, but the only the following properties were given: "+Object.keys(Q).join(", ")+".");if(!(["vector","raster","geojson","video","image"].indexOf(Q.type)>=0&&this._validate(i.validateStyle.source,"sources."+H,Q,null,ge))){this.map&&this.map._collectResourceTiming&&(Q.collectResourceTiming=!0);var U=this.sourceCaches[H]=new st(H,Q,this.dispatcher);U.style=this,U.setEventedParent(this,function(){return{isSourceLoaded:Le.loaded(),source:U.serialize(),sourceId:H}}),U.onAdd(this.map),this._changed=!0}},q.prototype.removeSource=function(H){if(this._checkLoaded(),this.sourceCaches[H]===void 0)throw new Error("There is no source with this ID");for(var Q in this._layers)if(this._layers[Q].source===H)return this.fire(new i.ErrorEvent(new Error('Source "'+H+'" cannot be removed while layer "'+Q+'" is using it.')));var ge=this.sourceCaches[H];delete this.sourceCaches[H],delete this._updatedSources[H],ge.fire(new i.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:H})),ge.setEventedParent(null),ge.clearTiles(),ge.onRemove&&ge.onRemove(this.map),this._changed=!0},q.prototype.setGeoJSONSourceData=function(H,Q){this._checkLoaded(),this.sourceCaches[H].getSource().setData(Q),this._changed=!0},q.prototype.getSource=function(H){return this.sourceCaches[H]&&this.sourceCaches[H].getSource()},q.prototype.addLayer=function(H,Q,ge){ge===void 0&&(ge={}),this._checkLoaded();var Le=H.id;if(this.getLayer(Le))this.fire(new i.ErrorEvent(new Error('Layer with id "'+Le+'" already exists on this map')));else{var U;if(H.type==="custom"){if(Hn(this,i.validateCustomStyleLayer(H)))return;U=i.createStyleLayer(H)}else{if(typeof H.source=="object"&&(this.addSource(Le,H.source),H=i.clone$1(H),H=i.extend(H,{source:Le})),this._validate(i.validateStyle.layer,"layers."+Le,H,{arrayIndex:-1},ge))return;U=i.createStyleLayer(H),this._validateLayer(U),U.setEventedParent(this,{layer:{id:Le}}),this._serializedLayers[U.id]=U.serialize()}var ne=Q?this._order.indexOf(Q):this._order.length;if(Q&&ne===-1)this.fire(new i.ErrorEvent(new Error('Layer with id "'+Q+'" does not exist on this map.')));else{if(this._order.splice(ne,0,Le),this._layerOrderChanged=!0,this._layers[Le]=U,this._removedLayers[Le]&&U.source&&U.type!=="custom"){var le=this._removedLayers[Le];delete this._removedLayers[Le],le.type!==U.type?this._updatedSources[U.source]="clear":(this._updatedSources[U.source]="reload",this.sourceCaches[U.source].pause())}this._updateLayer(U),U.onAdd&&U.onAdd(this.map)}}},q.prototype.moveLayer=function(H,Q){if(this._checkLoaded(),this._changed=!0,this._layers[H]){if(H!==Q){var ge=this._order.indexOf(H);this._order.splice(ge,1);var Le=Q?this._order.indexOf(Q):this._order.length;Q&&Le===-1?this.fire(new i.ErrorEvent(new Error('Layer with id "'+Q+'" does not exist on this map.'))):(this._order.splice(Le,0,H),this._layerOrderChanged=!0)}}else this.fire(new i.ErrorEvent(new Error("The layer '"+H+"' does not exist in the map's style and cannot be moved.")))},q.prototype.removeLayer=function(H){this._checkLoaded();var Q=this._layers[H];if(Q){Q.setEventedParent(null);var ge=this._order.indexOf(H);this._order.splice(ge,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[H]=Q,delete this._layers[H],delete this._serializedLayers[H],delete this._updatedLayers[H],delete this._updatedPaintProps[H],Q.onRemove&&Q.onRemove(this.map)}else this.fire(new i.ErrorEvent(new Error("The layer '"+H+"' does not exist in the map's style and cannot be removed.")))},q.prototype.getLayer=function(H){return this._layers[H]},q.prototype.hasLayer=function(H){return H in this._layers},q.prototype.setLayerZoomRange=function(H,Q,ge){this._checkLoaded();var Le=this.getLayer(H);Le?Le.minzoom===Q&&Le.maxzoom===ge||(Q!=null&&(Le.minzoom=Q),ge!=null&&(Le.maxzoom=ge),this._updateLayer(Le)):this.fire(new i.ErrorEvent(new Error("The layer '"+H+"' does not exist in the map's style and cannot have zoom extent.")))},q.prototype.setFilter=function(H,Q,ge){ge===void 0&&(ge={}),this._checkLoaded();var Le=this.getLayer(H);if(Le){if(!i.deepEqual(Le.filter,Q))return Q==null?(Le.filter=void 0,void this._updateLayer(Le)):void(this._validate(i.validateStyle.filter,"layers."+Le.id+".filter",Q,null,ge)||(Le.filter=i.clone$1(Q),this._updateLayer(Le)))}else this.fire(new i.ErrorEvent(new Error("The layer '"+H+"' does not exist in the map's style and cannot be filtered.")))},q.prototype.getFilter=function(H){return i.clone$1(this.getLayer(H).filter)},q.prototype.setLayoutProperty=function(H,Q,ge,Le){Le===void 0&&(Le={}),this._checkLoaded();var U=this.getLayer(H);U?i.deepEqual(U.getLayoutProperty(Q),ge)||(U.setLayoutProperty(Q,ge,Le),this._updateLayer(U)):this.fire(new i.ErrorEvent(new Error("The layer '"+H+"' does not exist in the map's style and cannot be styled.")))},q.prototype.getLayoutProperty=function(H,Q){var ge=this.getLayer(H);if(ge)return ge.getLayoutProperty(Q);this.fire(new i.ErrorEvent(new Error("The layer '"+H+"' does not exist in the map's style.")))},q.prototype.setPaintProperty=function(H,Q,ge,Le){Le===void 0&&(Le={}),this._checkLoaded();var U=this.getLayer(H);U?i.deepEqual(U.getPaintProperty(Q),ge)||(U.setPaintProperty(Q,ge,Le)&&this._updateLayer(U),this._changed=!0,this._updatedPaintProps[H]=!0):this.fire(new i.ErrorEvent(new Error("The layer '"+H+"' does not exist in the map's style and cannot be styled.")))},q.prototype.getPaintProperty=function(H,Q){return this.getLayer(H).getPaintProperty(Q)},q.prototype.setFeatureState=function(H,Q){this._checkLoaded();var ge=H.source,Le=H.sourceLayer,U=this.sourceCaches[ge];if(U!==void 0){var ne=U.getSource().type;ne==="geojson"&&Le?this.fire(new i.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):ne!=="vector"||Le?(H.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),U.setFeatureState(Le,H.id,Q)):this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new i.ErrorEvent(new Error("The source '"+ge+"' does not exist in the map's style.")))},q.prototype.removeFeatureState=function(H,Q){this._checkLoaded();var ge=H.source,Le=this.sourceCaches[ge];if(Le!==void 0){var U=Le.getSource().type,ne=U==="vector"?H.sourceLayer:void 0;U!=="vector"||ne?Q&&typeof H.id!="string"&&typeof H.id!="number"?this.fire(new i.ErrorEvent(new Error("A feature id is requred to remove its specific state property."))):Le.removeFeatureState(ne,H.id,Q):this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new i.ErrorEvent(new Error("The source '"+ge+"' does not exist in the map's style.")))},q.prototype.getFeatureState=function(H){this._checkLoaded();var Q=H.source,ge=H.sourceLayer,Le=this.sourceCaches[Q];if(Le!==void 0){if(Le.getSource().type!=="vector"||ge)return H.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),Le.getFeatureState(ge,H.id);this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}else this.fire(new i.ErrorEvent(new Error("The source '"+Q+"' does not exist in the map's style.")))},q.prototype.getTransition=function(){return i.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},q.prototype.serialize=function(){return i.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:i.mapObject(this.sourceCaches,function(H){return H.serialize()}),layers:this._serializeLayers(this._order)},function(H){return H!==void 0})},q.prototype._updateLayer=function(H){this._updatedLayers[H.id]=!0,H.source&&!this._updatedSources[H.source]&&this.sourceCaches[H.source].getSource().type!=="raster"&&(this._updatedSources[H.source]="reload",this.sourceCaches[H.source].pause()),this._changed=!0},q.prototype._flattenAndSortRenderedFeatures=function(H){for(var Q=this,ge=function(Zt){return Q._layers[Zt].type==="fill-extrusion"},Le={},U=[],ne=this._order.length-1;ne>=0;ne--){var le=this._order[ne];if(ge(le)){Le[le]=ne;for(var ye=0,ke=H;ye<ke.length;ye+=1){var Re=ke[ye][le];if(Re)for(var He=0,We=Re;He<We.length;He+=1){var Xe=We[He];U.push(Xe)}}}}U.sort(function(Zt,yn){return yn.intersectionZ-Zt.intersectionZ});for(var Ke=[],it=this._order.length-1;it>=0;it--){var pt=this._order[it];if(ge(pt))for(var mt=U.length-1;mt>=0;mt--){var Ot=U[mt].feature;if(Le[Ot.layer.id]<it)break;Ke.push(Ot),U.pop()}else for(var Rt=0,Pt=H;Rt<Pt.length;Rt+=1){var Vt=Pt[Rt][pt];if(Vt)for(var It=0,on=Vt;It<on.length;It+=1){var Kt=on[It];Ke.push(Kt.feature)}}}return Ke},q.prototype.queryRenderedFeatures=function(H,Q,ge){Q&&Q.filter&&this._validate(i.validateStyle.filter,"queryRenderedFeatures.filter",Q.filter,null,Q);var Le={};if(Q&&Q.layers){if(!Array.isArray(Q.layers))return this.fire(new i.ErrorEvent(new Error("parameters.layers must be an Array."))),[];for(var U=0,ne=Q.layers;U<ne.length;U+=1){var le=ne[U],ye=this._layers[le];if(!ye)return this.fire(new i.ErrorEvent(new Error("The layer '"+le+"' does not exist in the map's style and cannot be queried for features."))),[];Le[ye.source]=!0}}var ke=[];for(var Re in Q.availableImages=this._availableImages,this.sourceCaches)Q.layers&&!Le[Re]||ke.push(J(this.sourceCaches[Re],this._layers,this._serializedLayers,H,Q,ge));return this.placement&&ke.push(function(He,We,Xe,Ke,it,pt,mt){for(var Ot={},Rt=pt.queryRenderedSymbols(Ke),Pt=[],Vt=0,It=Object.keys(Rt).map(Number);Vt<It.length;Vt+=1){var on=It[Vt];Pt.push(mt[on])}Pt.sort(X);for(var Kt=function(){var Vn=yn[Zt],Zn=Vn.featureIndex.lookupSymbolFeatures(Rt[Vn.bucketInstanceId],We,Vn.bucketIndex,Vn.sourceLayerIndex,it.filter,it.layers,it.availableImages,He);for(var Qn in Zn){var pr=Ot[Qn]=Ot[Qn]||[],cr=Zn[Qn];cr.sort(function(qn,ur){var yr=Vn.featureSortOrder;if(yr){var Mr=yr.indexOf(qn.featureIndex);return yr.indexOf(ur.featureIndex)-Mr}return ur.featureIndex-qn.featureIndex});for(var mr=0,Ar=cr;mr<Ar.length;mr+=1){var Br=Ar[mr];pr.push(Br)}}},Zt=0,yn=Pt;Zt<yn.length;Zt+=1)Kt();var _n=function(Vn){Ot[Vn].forEach(function(Zn){var Qn=Zn.feature,pr=He[Vn],cr=Xe[pr.source].getFeatureState(Qn.layer["source-layer"],Qn.id);Qn.source=Qn.layer.source,Qn.layer["source-layer"]&&(Qn.sourceLayer=Qn.layer["source-layer"]),Qn.state=cr})};for(var Un in Ot)_n(Un);return Ot}(this._layers,this._serializedLayers,this.sourceCaches,H,Q,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(ke)},q.prototype.querySourceFeatures=function(H,Q){Q&&Q.filter&&this._validate(i.validateStyle.filter,"querySourceFeatures.filter",Q.filter,null,Q);var ge=this.sourceCaches[H];return ge?function(Le,U){for(var ne=Le.getRenderableIds().map(function(We){return Le.getTileByID(We)}),le=[],ye={},ke=0;ke<ne.length;ke++){var Re=ne[ke],He=Re.tileID.canonical.key;ye[He]||(ye[He]=!0,Re.querySourceFeatures(le,U))}return le}(ge,Q):[]},q.prototype.addSourceType=function(H,Q,ge){return q.getSourceType(H)?ge(new Error('A source type called "'+H+'" already exists.')):(q.setSourceType(H,Q),Q.workerSourceURL?void this.dispatcher.broadcast("loadWorkerSource",{name:H,url:Q.workerSourceURL},ge):ge(null,null))},q.prototype.getLight=function(){return this.light.getLight()},q.prototype.setLight=function(H,Q){Q===void 0&&(Q={}),this._checkLoaded();var ge=this.light.getLight(),Le=!1;for(var U in H)if(!i.deepEqual(H[U],ge[U])){Le=!0;break}if(Le){var ne={now:i.browser.now(),transition:i.extend({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(H,Q),this.light.updateTransitions(ne)}},q.prototype._validate=function(H,Q,ge,Le,U){return U===void 0&&(U={}),(!U||U.validate!==!1)&&Hn(this,H.call(i.validateStyle,i.extend({key:Q,style:this.serialize(),value:ge,styleSpec:i.styleSpec},Le)))},q.prototype._remove=function(){for(var H in this._request&&(this._request.cancel(),this._request=null),this._spriteRequest&&(this._spriteRequest.cancel(),this._spriteRequest=null),i.evented.off("pluginStateChange",this._rtlTextPluginCallback),this._layers)this._layers[H].setEventedParent(null);for(var Q in this.sourceCaches)this.sourceCaches[Q].clearTiles(),this.sourceCaches[Q].setEventedParent(null);this.imageManager.setEventedParent(null),this.setEventedParent(null),this.dispatcher.remove()},q.prototype._clearSource=function(H){this.sourceCaches[H].clearTiles()},q.prototype._reloadSource=function(H){this.sourceCaches[H].resume(),this.sourceCaches[H].reload()},q.prototype._updateSources=function(H){for(var Q in this.sourceCaches)this.sourceCaches[Q].update(H)},q.prototype._generateCollisionBoxes=function(){for(var H in this.sourceCaches)this._reloadSource(H)},q.prototype._updatePlacement=function(H,Q,ge,Le,U){U===void 0&&(U=!1);for(var ne=!1,le=!1,ye={},ke=0,Re=this._order;ke<Re.length;ke+=1){var He=Re[ke],We=this._layers[He];if(We.type==="symbol"){if(!ye[We.source]){var Xe=this.sourceCaches[We.source];ye[We.source]=Xe.getRenderableIds(!0).map(function(Rt){return Xe.getTileByID(Rt)}).sort(function(Rt,Pt){return Pt.tileID.overscaledZ-Rt.tileID.overscaledZ||(Rt.tileID.isLessThan(Pt.tileID)?-1:1)})}var Ke=this.crossTileSymbolIndex.addLayer(We,ye[We.source],H.center.lng);ne=ne||Ke}}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((U=U||this._layerOrderChanged||ge===0)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(i.browser.now(),H.zoom))&&(this.pauseablePlacement=new en(H,this._order,U,Q,ge,Le,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,ye),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(i.browser.now()),le=!0),ne&&this.pauseablePlacement.placement.setStale()),le||ne)for(var it=0,pt=this._order;it<pt.length;it+=1){var mt=pt[it],Ot=this._layers[mt];Ot.type==="symbol"&&this.placement.updateLayerOpacities(Ot,ye[Ot.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(i.browser.now())},q.prototype._releaseSymbolFadeTiles=function(){for(var H in this.sourceCaches)this.sourceCaches[H].releaseSymbolFadeTiles()},q.prototype.getImages=function(H,Q,ge){this.imageManager.getImages(Q.icons,ge),this._updateTilesForChangedImages();var Le=this.sourceCaches[Q.source];Le&&Le.setDependencies(Q.tileID.key,Q.type,Q.icons)},q.prototype.getGlyphs=function(H,Q,ge){this.glyphManager.getGlyphs(Q.stacks,ge)},q.prototype.getResource=function(H,Q,ge){return i.makeRequest(Q,ge)},q}(i.Evented);or.getSourceType=function(N){return ie[N]},or.setSourceType=function(N,q){ie[N]=q},or.registerForPluginStateChange=i.registerForPluginStateChange;var sr=i.createLayout([{name:"a_pos",type:"Int16",components:2}]),gr=ti(`#ifdef GL_ES
|
||
precision mediump float;
|
||
#else
|
||
#if !defined(lowp)
|
||
#define lowp
|
||
#endif
|
||
#if !defined(mediump)
|
||
#define mediump
|
||
#endif
|
||
#if !defined(highp)
|
||
#define highp
|
||
#endif
|
||
#endif`,`#ifdef GL_ES
|
||
precision highp float;
|
||
#else
|
||
#if !defined(lowp)
|
||
#define lowp
|
||
#endif
|
||
#if !defined(mediump)
|
||
#define mediump
|
||
#endif
|
||
#if !defined(highp)
|
||
#define highp
|
||
#endif
|
||
#endif
|
||
vec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(unpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0
|
||
);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;}`),vr=ti(`uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,"attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),Er=ti(`uniform vec2 u_pattern_tl_a;uniform vec2 u_pattern_br_a;uniform vec2 u_pattern_tl_b;uniform vec2 u_pattern_br_b;uniform vec2 u_texsize;uniform float u_mix;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(u_pattern_tl_a/u_texsize,u_pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(u_pattern_tl_b/u_texsize,u_pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_mix)*u_opacity;
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,"uniform mat4 u_matrix;uniform vec2 u_pattern_size_a;uniform vec2 u_pattern_size_b;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_scale_a;uniform float u_scale_b;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_a*u_pattern_size_a,u_tile_units_to_pixels,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_b*u_pattern_size_b,u_tile_units_to_pixels,a_pos);}"),Jn=ti(`varying vec3 v_data;
|
||
#pragma mapbox: define highp vec4 color
|
||
#pragma mapbox: define mediump float radius
|
||
#pragma mapbox: define lowp float blur
|
||
#pragma mapbox: define lowp float opacity
|
||
#pragma mapbox: define highp vec4 stroke_color
|
||
#pragma mapbox: define mediump float stroke_width
|
||
#pragma mapbox: define lowp float stroke_opacity
|
||
void main() {
|
||
#pragma mapbox: initialize highp vec4 color
|
||
#pragma mapbox: initialize mediump float radius
|
||
#pragma mapbox: initialize lowp float blur
|
||
#pragma mapbox: initialize lowp float opacity
|
||
#pragma mapbox: initialize highp vec4 stroke_color
|
||
#pragma mapbox: initialize mediump float stroke_width
|
||
#pragma mapbox: initialize lowp float stroke_opacity
|
||
vec2 extrude=v_data.xy;float extrude_length=length(extrude);lowp float antialiasblur=v_data.z;float antialiased_blur=-max(blur,antialiasblur);float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(antialiased_blur,0.0,extrude_length-radius/(radius+stroke_width));gl_FragColor=opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t);
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,`uniform mat4 u_matrix;uniform bool u_scale_with_map;uniform bool u_pitch_with_map;uniform vec2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;varying vec3 v_data;
|
||
#pragma mapbox: define highp vec4 color
|
||
#pragma mapbox: define mediump float radius
|
||
#pragma mapbox: define lowp float blur
|
||
#pragma mapbox: define lowp float opacity
|
||
#pragma mapbox: define highp vec4 stroke_color
|
||
#pragma mapbox: define mediump float stroke_width
|
||
#pragma mapbox: define lowp float stroke_opacity
|
||
void main(void) {
|
||
#pragma mapbox: initialize highp vec4 color
|
||
#pragma mapbox: initialize mediump float radius
|
||
#pragma mapbox: initialize lowp float blur
|
||
#pragma mapbox: initialize lowp float opacity
|
||
#pragma mapbox: initialize highp vec4 stroke_color
|
||
#pragma mapbox: initialize mediump float stroke_width
|
||
#pragma mapbox: initialize lowp float stroke_opacity
|
||
vec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);if (u_pitch_with_map) {vec2 corner_position=circle_center;if (u_scale_with_map) {corner_position+=extrude*(radius+stroke_width)*u_extrude_scale;} else {vec4 projected_center=u_matrix*vec4(circle_center,0,1);corner_position+=extrude*(radius+stroke_width)*u_extrude_scale*(projected_center.w/u_camera_to_center_distance);}gl_Position=u_matrix*vec4(corner_position,0,1);} else {gl_Position=u_matrix*vec4(circle_center,0,1);if (u_scale_with_map) {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*u_camera_to_center_distance;} else {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*gl_Position.w;}}lowp float antialiasblur=1.0/u_device_pixel_ratio/(radius+stroke_width);v_data=vec3(extrude.x,extrude.y,antialiasblur);}`),br=ti("void main() {gl_FragColor=vec4(1.0);}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),zr=ti(`uniform highp float u_intensity;varying vec2 v_extrude;
|
||
#pragma mapbox: define highp float weight
|
||
#define GAUSS_COEF 0.3989422804014327
|
||
void main() {
|
||
#pragma mapbox: initialize highp float weight
|
||
float d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0);
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,`uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;varying vec2 v_extrude;
|
||
#pragma mapbox: define highp float weight
|
||
#pragma mapbox: define mediump float radius
|
||
const highp float ZERO=1.0/255.0/16.0;
|
||
#define GAUSS_COEF 0.3989422804014327
|
||
void main(void) {
|
||
#pragma mapbox: initialize highp float weight
|
||
#pragma mapbox: initialize mediump float radius
|
||
vec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec4 pos=vec4(floor(a_pos*0.5)+extrude,0,1);gl_Position=u_matrix*pos;}`),ii=ti(`uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity;
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(0.0);
|
||
#endif
|
||
}`,"uniform mat4 u_matrix;uniform vec2 u_world;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos*u_world,0,1);v_pos.x=a_pos.x;v_pos.y=1.0-a_pos.y;}"),xi=ti("varying float v_placed;varying float v_notUsed;void main() {float alpha=0.5;gl_FragColor=vec4(1.0,0.0,0.0,1.0)*alpha;if (v_placed > 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}","attribute vec2 a_pos;attribute vec2 a_anchor_pos;attribute vec2 a_extrude;attribute vec2 a_placed;attribute vec2 a_shift;uniform mat4 u_matrix;uniform vec2 u_extrude_scale;uniform float u_camera_to_center_distance;varying float v_placed;varying float v_notUsed;void main() {vec4 projectedPoint=u_matrix*vec4(a_anchor_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);gl_Position=u_matrix*vec4(a_pos,0.0,1.0);gl_Position.xy+=(a_extrude+a_shift)*u_extrude_scale*gl_Position.w*collision_perspective_ratio;v_placed=a_placed.x;v_notUsed=a_placed.y;}"),vi=ti("varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}","attribute vec2 a_pos;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(mix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}"),Ai=ti("uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}","attribute vec2 a_pos;varying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {v_uv=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos*u_overlay_scale,0,1);}"),ci=ti(`#pragma mapbox: define highp vec4 color
|
||
#pragma mapbox: define lowp float opacity
|
||
void main() {
|
||
#pragma mapbox: initialize highp vec4 color
|
||
#pragma mapbox: initialize lowp float opacity
|
||
gl_FragColor=color*opacity;
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,`attribute vec2 a_pos;uniform mat4 u_matrix;
|
||
#pragma mapbox: define highp vec4 color
|
||
#pragma mapbox: define lowp float opacity
|
||
void main() {
|
||
#pragma mapbox: initialize highp vec4 color
|
||
#pragma mapbox: initialize lowp float opacity
|
||
gl_Position=u_matrix*vec4(a_pos,0,1);}`),zi=ti(`varying vec2 v_pos;
|
||
#pragma mapbox: define highp vec4 outline_color
|
||
#pragma mapbox: define lowp float opacity
|
||
void main() {
|
||
#pragma mapbox: initialize highp vec4 outline_color
|
||
#pragma mapbox: initialize lowp float opacity
|
||
float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,`attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;
|
||
#pragma mapbox: define highp vec4 outline_color
|
||
#pragma mapbox: define lowp float opacity
|
||
void main() {
|
||
#pragma mapbox: initialize highp vec4 outline_color
|
||
#pragma mapbox: initialize lowp float opacity
|
||
gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`),Do=ti(`uniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_fade;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;
|
||
#pragma mapbox: define lowp float opacity
|
||
#pragma mapbox: define lowp vec4 pattern_from
|
||
#pragma mapbox: define lowp vec4 pattern_to
|
||
void main() {
|
||
#pragma mapbox: initialize lowp float opacity
|
||
#pragma mapbox: initialize mediump vec4 pattern_from
|
||
#pragma mapbox: initialize mediump vec4 pattern_to
|
||
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=mix(color1,color2,u_fade)*alpha*opacity;
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,`uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;
|
||
#pragma mapbox: define lowp float opacity
|
||
#pragma mapbox: define lowp vec4 pattern_from
|
||
#pragma mapbox: define lowp vec4 pattern_to
|
||
#pragma mapbox: define lowp float pixel_ratio_from
|
||
#pragma mapbox: define lowp float pixel_ratio_to
|
||
void main() {
|
||
#pragma mapbox: initialize lowp float opacity
|
||
#pragma mapbox: initialize mediump vec4 pattern_from
|
||
#pragma mapbox: initialize mediump vec4 pattern_to
|
||
#pragma mapbox: initialize lowp float pixel_ratio_from
|
||
#pragma mapbox: initialize lowp float pixel_ratio_to
|
||
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,a_pos);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`),Ha=ti(`uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;
|
||
#pragma mapbox: define lowp float opacity
|
||
#pragma mapbox: define lowp vec4 pattern_from
|
||
#pragma mapbox: define lowp vec4 pattern_to
|
||
void main() {
|
||
#pragma mapbox: initialize lowp float opacity
|
||
#pragma mapbox: initialize mediump vec4 pattern_from
|
||
#pragma mapbox: initialize mediump vec4 pattern_to
|
||
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_fade)*opacity;
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;
|
||
#pragma mapbox: define lowp float opacity
|
||
#pragma mapbox: define lowp vec4 pattern_from
|
||
#pragma mapbox: define lowp vec4 pattern_to
|
||
#pragma mapbox: define lowp float pixel_ratio_from
|
||
#pragma mapbox: define lowp float pixel_ratio_to
|
||
void main() {
|
||
#pragma mapbox: initialize lowp float opacity
|
||
#pragma mapbox: initialize mediump vec4 pattern_from
|
||
#pragma mapbox: initialize mediump vec4 pattern_to
|
||
#pragma mapbox: initialize lowp float pixel_ratio_from
|
||
#pragma mapbox: initialize lowp float pixel_ratio_to
|
||
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileZoomRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileZoomRatio,a_pos);}`),Ko=ti(`varying vec4 v_color;void main() {gl_FragColor=v_color;
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,`uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;attribute vec2 a_pos;attribute vec4 a_normal_ed;varying vec4 v_color;
|
||
#pragma mapbox: define highp float base
|
||
#pragma mapbox: define highp float height
|
||
#pragma mapbox: define highp vec4 color
|
||
void main() {
|
||
#pragma mapbox: initialize highp float base
|
||
#pragma mapbox: initialize highp float height
|
||
#pragma mapbox: initialize highp vec4 color
|
||
vec3 normal=a_normal_ed.xyz;base=max(0.0,base);height=max(0.0,height);float t=mod(normal.x,2.0);gl_Position=u_matrix*vec4(a_pos,t > 0.0 ? height : base,1);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal/16384.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.r+=clamp(color.r*directional*u_lightcolor.r,mix(0.0,0.3,1.0-u_lightcolor.r),1.0);v_color.g+=clamp(color.g*directional*u_lightcolor.g,mix(0.0,0.3,1.0-u_lightcolor.g),1.0);v_color.b+=clamp(color.b*directional*u_lightcolor.b,mix(0.0,0.3,1.0-u_lightcolor.b),1.0);v_color*=u_opacity;}`),Eu=ti(`uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;
|
||
#pragma mapbox: define lowp float base
|
||
#pragma mapbox: define lowp float height
|
||
#pragma mapbox: define lowp vec4 pattern_from
|
||
#pragma mapbox: define lowp vec4 pattern_to
|
||
#pragma mapbox: define lowp float pixel_ratio_from
|
||
#pragma mapbox: define lowp float pixel_ratio_to
|
||
void main() {
|
||
#pragma mapbox: initialize lowp float base
|
||
#pragma mapbox: initialize lowp float height
|
||
#pragma mapbox: initialize mediump vec4 pattern_from
|
||
#pragma mapbox: initialize mediump vec4 pattern_to
|
||
#pragma mapbox: initialize lowp float pixel_ratio_from
|
||
#pragma mapbox: initialize lowp float pixel_ratio_to
|
||
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 mixedColor=mix(color1,color2,u_fade);gl_FragColor=mixedColor*v_lighting;
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,`uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec2 a_pos;attribute vec4 a_normal_ed;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;
|
||
#pragma mapbox: define lowp float base
|
||
#pragma mapbox: define lowp float height
|
||
#pragma mapbox: define lowp vec4 pattern_from
|
||
#pragma mapbox: define lowp vec4 pattern_to
|
||
#pragma mapbox: define lowp float pixel_ratio_from
|
||
#pragma mapbox: define lowp float pixel_ratio_to
|
||
void main() {
|
||
#pragma mapbox: initialize lowp float base
|
||
#pragma mapbox: initialize lowp float height
|
||
#pragma mapbox: initialize mediump vec4 pattern_from
|
||
#pragma mapbox: initialize mediump vec4 pattern_to
|
||
#pragma mapbox: initialize lowp float pixel_ratio_from
|
||
#pragma mapbox: initialize lowp float pixel_ratio_to
|
||
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 normal=a_normal_ed.xyz;float edgedistance=a_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;base=max(0.0,base);height=max(0.0,height);float t=mod(normal.x,2.0);float z=t > 0.0 ? height : base;gl_Position=u_matrix*vec4(a_pos,z,1);vec2 pos=normal.x==1.0 && normal.y==0.0 && normal.z==16384.0
|
||
? a_pos
|
||
: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal/16383.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;}`),qs=ti(`#ifdef GL_ES
|
||
precision highp float;
|
||
#endif
|
||
uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform float u_maxzoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggeration=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/ pow(2.0,(u_zoom-u_maxzoom)*exaggeration+19.2562-u_zoom);gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,"uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}"),zl=ti(`uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;
|
||
#define PI 3.141592653589793
|
||
void main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color;
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,"uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;}"),Cu=ti(`uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;
|
||
#pragma mapbox: define highp vec4 color
|
||
#pragma mapbox: define lowp float blur
|
||
#pragma mapbox: define lowp float opacity
|
||
void main() {
|
||
#pragma mapbox: initialize highp vec4 color
|
||
#pragma mapbox: initialize lowp float blur
|
||
#pragma mapbox: initialize lowp float opacity
|
||
float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);gl_FragColor=color*(alpha*opacity);
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,`
|
||
#define scale 0.015873016
|
||
attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_linesofar;
|
||
#pragma mapbox: define highp vec4 color
|
||
#pragma mapbox: define lowp float blur
|
||
#pragma mapbox: define lowp float opacity
|
||
#pragma mapbox: define mediump float gapwidth
|
||
#pragma mapbox: define lowp float offset
|
||
#pragma mapbox: define mediump float width
|
||
void main() {
|
||
#pragma mapbox: initialize highp vec4 color
|
||
#pragma mapbox: initialize lowp float blur
|
||
#pragma mapbox: initialize lowp float opacity
|
||
#pragma mapbox: initialize mediump float gapwidth
|
||
#pragma mapbox: initialize lowp float offset
|
||
#pragma mapbox: initialize mediump float width
|
||
float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}`),Fo=ti(`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp float v_lineprogress;
|
||
#pragma mapbox: define lowp float blur
|
||
#pragma mapbox: define lowp float opacity
|
||
void main() {
|
||
#pragma mapbox: initialize lowp float blur
|
||
#pragma mapbox: initialize lowp float opacity
|
||
float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,vec2(v_lineprogress,0.5));gl_FragColor=color*(alpha*opacity);
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,`
|
||
#define MAX_LINE_DISTANCE 32767.0
|
||
#define scale 0.015873016
|
||
attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_lineprogress;
|
||
#pragma mapbox: define lowp float blur
|
||
#pragma mapbox: define lowp float opacity
|
||
#pragma mapbox: define mediump float gapwidth
|
||
#pragma mapbox: define lowp float offset
|
||
#pragma mapbox: define mediump float width
|
||
void main() {
|
||
#pragma mapbox: initialize lowp float blur
|
||
#pragma mapbox: initialize lowp float opacity
|
||
#pragma mapbox: initialize mediump float gapwidth
|
||
#pragma mapbox: initialize lowp float offset
|
||
#pragma mapbox: initialize mediump float width
|
||
float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_lineprogress=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0/MAX_LINE_DISTANCE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_width2=vec2(outset,inset);}`),ac=ti(`uniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;
|
||
#pragma mapbox: define lowp vec4 pattern_from
|
||
#pragma mapbox: define lowp vec4 pattern_to
|
||
#pragma mapbox: define lowp float pixel_ratio_from
|
||
#pragma mapbox: define lowp float pixel_ratio_to
|
||
#pragma mapbox: define lowp float blur
|
||
#pragma mapbox: define lowp float opacity
|
||
void main() {
|
||
#pragma mapbox: initialize mediump vec4 pattern_from
|
||
#pragma mapbox: initialize mediump vec4 pattern_to
|
||
#pragma mapbox: initialize lowp float pixel_ratio_from
|
||
#pragma mapbox: initialize lowp float pixel_ratio_to
|
||
#pragma mapbox: initialize lowp float blur
|
||
#pragma mapbox: initialize lowp float opacity
|
||
vec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);gl_FragColor=color*alpha*opacity;
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,`
|
||
#define scale 0.015873016
|
||
#define LINE_DISTANCE_SCALE 2.0
|
||
attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;
|
||
#pragma mapbox: define lowp float blur
|
||
#pragma mapbox: define lowp float opacity
|
||
#pragma mapbox: define lowp float offset
|
||
#pragma mapbox: define mediump float gapwidth
|
||
#pragma mapbox: define mediump float width
|
||
#pragma mapbox: define lowp float floorwidth
|
||
#pragma mapbox: define lowp vec4 pattern_from
|
||
#pragma mapbox: define lowp vec4 pattern_to
|
||
#pragma mapbox: define lowp float pixel_ratio_from
|
||
#pragma mapbox: define lowp float pixel_ratio_to
|
||
void main() {
|
||
#pragma mapbox: initialize lowp float blur
|
||
#pragma mapbox: initialize lowp float opacity
|
||
#pragma mapbox: initialize lowp float offset
|
||
#pragma mapbox: initialize mediump float gapwidth
|
||
#pragma mapbox: initialize mediump float width
|
||
#pragma mapbox: initialize lowp float floorwidth
|
||
#pragma mapbox: initialize mediump vec4 pattern_from
|
||
#pragma mapbox: initialize mediump vec4 pattern_to
|
||
#pragma mapbox: initialize lowp float pixel_ratio_from
|
||
#pragma mapbox: initialize lowp float pixel_ratio_to
|
||
float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}`),Gs=ti(`uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;uniform float u_sdfgamma;uniform float u_mix;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;
|
||
#pragma mapbox: define highp vec4 color
|
||
#pragma mapbox: define lowp float blur
|
||
#pragma mapbox: define lowp float opacity
|
||
#pragma mapbox: define mediump float width
|
||
#pragma mapbox: define lowp float floorwidth
|
||
void main() {
|
||
#pragma mapbox: initialize highp vec4 color
|
||
#pragma mapbox: initialize lowp float blur
|
||
#pragma mapbox: initialize lowp float opacity
|
||
#pragma mapbox: initialize mediump float width
|
||
#pragma mapbox: initialize lowp float floorwidth
|
||
float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float sdfdist_a=texture2D(u_image,v_tex_a).a;float sdfdist_b=texture2D(u_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);alpha*=smoothstep(0.5-u_sdfgamma/floorwidth,0.5+u_sdfgamma/floorwidth,sdfdist);gl_FragColor=color*(alpha*opacity);
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,`
|
||
#define scale 0.015873016
|
||
#define LINE_DISTANCE_SCALE 2.0
|
||
attribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_patternscale_a;uniform float u_tex_y_a;uniform vec2 u_patternscale_b;uniform float u_tex_y_b;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;
|
||
#pragma mapbox: define highp vec4 color
|
||
#pragma mapbox: define lowp float blur
|
||
#pragma mapbox: define lowp float opacity
|
||
#pragma mapbox: define mediump float gapwidth
|
||
#pragma mapbox: define lowp float offset
|
||
#pragma mapbox: define mediump float width
|
||
#pragma mapbox: define lowp float floorwidth
|
||
void main() {
|
||
#pragma mapbox: initialize highp vec4 color
|
||
#pragma mapbox: initialize lowp float blur
|
||
#pragma mapbox: initialize lowp float opacity
|
||
#pragma mapbox: initialize mediump float gapwidth
|
||
#pragma mapbox: initialize lowp float offset
|
||
#pragma mapbox: initialize mediump float width
|
||
#pragma mapbox: initialize lowp float floorwidth
|
||
float ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;float extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;v_tex_a=vec2(a_linesofar*u_patternscale_a.x/floorwidth,normal.y*u_patternscale_a.y+u_tex_y_a);v_tex_b=vec2(a_linesofar*u_patternscale_b.x/floorwidth,normal.y*u_patternscale_b.y+u_tex_y_b);v_width2=vec2(outset,inset);}`),Ws=ti(`uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(dot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);gl_FragColor=vec4(mix(u_high_vec,u_low_vec,rgb)*color.a,color.a);
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,"uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform float u_buffer_scale;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos0=(((a_texture_pos/8192.0)-0.5)/u_buffer_scale )+0.5;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;}"),Bo=ti(`uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;
|
||
#pragma mapbox: define lowp float opacity
|
||
void main() {
|
||
#pragma mapbox: initialize lowp float opacity
|
||
lowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,`const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;varying vec2 v_tex;varying float v_fade_opacity;
|
||
#pragma mapbox: define lowp float opacity
|
||
void main() {
|
||
#pragma mapbox: initialize lowp float opacity
|
||
vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
|
||
camera_to_anchor_distance/u_camera_to_center_distance :
|
||
u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0),0.0,1.0);v_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;v_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));}`),qi=ti(`#define SDF_PX 8.0
|
||
uniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1;
|
||
#pragma mapbox: define highp vec4 fill_color
|
||
#pragma mapbox: define highp vec4 halo_color
|
||
#pragma mapbox: define lowp float opacity
|
||
#pragma mapbox: define lowp float halo_width
|
||
#pragma mapbox: define lowp float halo_blur
|
||
void main() {
|
||
#pragma mapbox: initialize highp vec4 fill_color
|
||
#pragma mapbox: initialize highp vec4 halo_color
|
||
#pragma mapbox: initialize lowp float opacity
|
||
#pragma mapbox: initialize lowp float halo_width
|
||
#pragma mapbox: initialize lowp float halo_blur
|
||
float EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,`const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;varying vec2 v_data0;varying vec3 v_data1;
|
||
#pragma mapbox: define highp vec4 fill_color
|
||
#pragma mapbox: define highp vec4 halo_color
|
||
#pragma mapbox: define lowp float opacity
|
||
#pragma mapbox: define lowp float halo_width
|
||
#pragma mapbox: define lowp float halo_blur
|
||
void main() {
|
||
#pragma mapbox: initialize highp vec4 fill_color
|
||
#pragma mapbox: initialize highp vec4 halo_color
|
||
#pragma mapbox: initialize lowp float opacity
|
||
#pragma mapbox: initialize lowp float halo_width
|
||
#pragma mapbox: initialize lowp float halo_blur
|
||
vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
|
||
camera_to_anchor_distance/u_camera_to_center_distance :
|
||
u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}`),Dl=ti(`#define SDF_PX 8.0
|
||
#define SDF 1.0
|
||
#define ICON 0.0
|
||
uniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1;
|
||
#pragma mapbox: define highp vec4 fill_color
|
||
#pragma mapbox: define highp vec4 halo_color
|
||
#pragma mapbox: define lowp float opacity
|
||
#pragma mapbox: define lowp float halo_width
|
||
#pragma mapbox: define lowp float halo_blur
|
||
void main() {
|
||
#pragma mapbox: initialize highp vec4 fill_color
|
||
#pragma mapbox: initialize highp vec4 halo_color
|
||
#pragma mapbox: initialize lowp float opacity
|
||
#pragma mapbox: initialize lowp float halo_width
|
||
#pragma mapbox: initialize lowp float halo_blur
|
||
float fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha;
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
return;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);
|
||
#ifdef OVERDRAW_INSPECTOR
|
||
gl_FragColor=vec4(1.0);
|
||
#endif
|
||
}`,`const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;varying vec4 v_data0;varying vec4 v_data1;
|
||
#pragma mapbox: define highp vec4 fill_color
|
||
#pragma mapbox: define highp vec4 halo_color
|
||
#pragma mapbox: define lowp float opacity
|
||
#pragma mapbox: define lowp float halo_width
|
||
#pragma mapbox: define lowp float halo_blur
|
||
void main() {
|
||
#pragma mapbox: initialize highp vec4 fill_color
|
||
#pragma mapbox: initialize highp vec4 halo_color
|
||
#pragma mapbox: initialize lowp float opacity
|
||
#pragma mapbox: initialize lowp float halo_width
|
||
#pragma mapbox: initialize lowp float halo_blur
|
||
vec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
|
||
camera_to_anchor_distance/u_camera_to_center_distance :
|
||
u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}`);function ti(N,q){var H=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,Q={};return{fragmentSource:N=N.replace(H,function(ge,Le,U,ne,le){return Q[le]=!0,Le==="define"?`
|
||
#ifndef HAS_UNIFORM_u_`+le+`
|
||
varying `+U+" "+ne+" "+le+`;
|
||
#else
|
||
uniform `+U+" "+ne+" u_"+le+`;
|
||
#endif
|
||
`:`
|
||
#ifdef HAS_UNIFORM_u_`+le+`
|
||
`+U+" "+ne+" "+le+" = u_"+le+`;
|
||
#endif
|
||
`}),vertexSource:q=q.replace(H,function(ge,Le,U,ne,le){var ye=ne==="float"?"vec2":"vec4",ke=le.match(/color/)?"color":ye;return Q[le]?Le==="define"?`
|
||
#ifndef HAS_UNIFORM_u_`+le+`
|
||
uniform lowp float u_`+le+`_t;
|
||
attribute `+U+" "+ye+" a_"+le+`;
|
||
varying `+U+" "+ne+" "+le+`;
|
||
#else
|
||
uniform `+U+" "+ne+" u_"+le+`;
|
||
#endif
|
||
`:ke==="vec4"?`
|
||
#ifndef HAS_UNIFORM_u_`+le+`
|
||
`+le+" = a_"+le+`;
|
||
#else
|
||
`+U+" "+ne+" "+le+" = u_"+le+`;
|
||
#endif
|
||
`:`
|
||
#ifndef HAS_UNIFORM_u_`+le+`
|
||
`+le+" = unpack_mix_"+ke+"(a_"+le+", u_"+le+`_t);
|
||
#else
|
||
`+U+" "+ne+" "+le+" = u_"+le+`;
|
||
#endif
|
||
`:Le==="define"?`
|
||
#ifndef HAS_UNIFORM_u_`+le+`
|
||
uniform lowp float u_`+le+`_t;
|
||
attribute `+U+" "+ye+" a_"+le+`;
|
||
#else
|
||
uniform `+U+" "+ne+" u_"+le+`;
|
||
#endif
|
||
`:ke==="vec4"?`
|
||
#ifndef HAS_UNIFORM_u_`+le+`
|
||
`+U+" "+ne+" "+le+" = a_"+le+`;
|
||
#else
|
||
`+U+" "+ne+" "+le+" = u_"+le+`;
|
||
#endif
|
||
`:`
|
||
#ifndef HAS_UNIFORM_u_`+le+`
|
||
`+U+" "+ne+" "+le+" = unpack_mix_"+ke+"(a_"+le+", u_"+le+`_t);
|
||
#else
|
||
`+U+" "+ne+" "+le+" = u_"+le+`;
|
||
#endif
|
||
`})}}var No=Object.freeze({__proto__:null,prelude:gr,background:vr,backgroundPattern:Er,circle:Jn,clippingMask:br,heatmap:zr,heatmapTexture:ii,collisionBox:xi,collisionCircle:vi,debug:Ai,fill:ci,fillOutline:zi,fillOutlinePattern:Do,fillPattern:Ha,fillExtrusion:Ko,fillExtrusionPattern:Eu,hillshadePrepare:qs,hillshade:zl,line:Cu,lineGradient:Fo,linePattern:ac,lineSDF:Gs,raster:Ws,symbolIcon:Bo,symbolSDF:qi,symbolTextAndIcon:Dl}),Qa=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};Qa.prototype.bind=function(N,q,H,Q,ge,Le,U,ne){this.context=N;for(var le=this.boundPaintVertexBuffers.length!==Q.length,ye=0;!le&&ye<Q.length;ye++)this.boundPaintVertexBuffers[ye]!==Q[ye]&&(le=!0);var ke=!this.vao||this.boundProgram!==q||this.boundLayoutVertexBuffer!==H||le||this.boundIndexBuffer!==ge||this.boundVertexOffset!==Le||this.boundDynamicVertexBuffer!==U||this.boundDynamicVertexBuffer2!==ne;!N.extVertexArrayObject||ke?this.freshBind(q,H,Q,ge,Le,U,ne):(N.bindVertexArrayOES.set(this.vao),U&&U.bind(),ge&&ge.dynamicDraw&&ge.bind(),ne&&ne.bind())},Qa.prototype.freshBind=function(N,q,H,Q,ge,Le,U){var ne,le=N.numAttributes,ye=this.context,ke=ye.gl;if(ye.extVertexArrayObject)this.vao&&this.destroy(),this.vao=ye.extVertexArrayObject.createVertexArrayOES(),ye.bindVertexArrayOES.set(this.vao),ne=0,this.boundProgram=N,this.boundLayoutVertexBuffer=q,this.boundPaintVertexBuffers=H,this.boundIndexBuffer=Q,this.boundVertexOffset=ge,this.boundDynamicVertexBuffer=Le,this.boundDynamicVertexBuffer2=U;else{ne=ye.currentNumAttributes||0;for(var Re=le;Re<ne;Re++)ke.disableVertexAttribArray(Re)}q.enableAttributes(ke,N);for(var He=0,We=H;He<We.length;He+=1)We[He].enableAttributes(ke,N);Le&&Le.enableAttributes(ke,N),U&&U.enableAttributes(ke,N),q.bind(),q.setVertexAttribPointers(ke,N,ge);for(var Xe=0,Ke=H;Xe<Ke.length;Xe+=1){var it=Ke[Xe];it.bind(),it.setVertexAttribPointers(ke,N,ge)}Le&&(Le.bind(),Le.setVertexAttribPointers(ke,N,ge)),Q&&Q.bind(),U&&(U.bind(),U.setVertexAttribPointers(ke,N,ge)),ye.currentNumAttributes=le},Qa.prototype.destroy=function(){this.vao&&(this.context.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)};var Jo=function(N,q,H,Q,ge){var Le=N.gl;this.program=Le.createProgram();var U=H?H.defines():[];ge&&U.push("#define OVERDRAW_INSPECTOR;");var ne=U.concat(gr.fragmentSource,q.fragmentSource).join(`
|
||
`),le=U.concat(gr.vertexSource,q.vertexSource).join(`
|
||
`),ye=Le.createShader(Le.FRAGMENT_SHADER);if(Le.isContextLost())this.failedToCreate=!0;else{Le.shaderSource(ye,ne),Le.compileShader(ye),Le.attachShader(this.program,ye);var ke=Le.createShader(Le.VERTEX_SHADER);if(Le.isContextLost())this.failedToCreate=!0;else{Le.shaderSource(ke,le),Le.compileShader(ke),Le.attachShader(this.program,ke);for(var Re=H?H.layoutAttributes:[],He=0;He<Re.length;He++)Le.bindAttribLocation(this.program,He,Re[He].name);Le.linkProgram(this.program),Le.deleteShader(ke),Le.deleteShader(ye),this.numAttributes=Le.getProgramParameter(this.program,Le.ACTIVE_ATTRIBUTES),this.attributes={};for(var We={},Xe=0;Xe<this.numAttributes;Xe++){var Ke=Le.getActiveAttrib(this.program,Xe);Ke&&(this.attributes[Ke.name]=Le.getAttribLocation(this.program,Ke.name))}for(var it=Le.getProgramParameter(this.program,Le.ACTIVE_UNIFORMS),pt=0;pt<it;pt++){var mt=Le.getActiveUniform(this.program,pt);mt&&(We[mt.name]=Le.getUniformLocation(this.program,mt.name))}this.fixedUniforms=Q(N,We),this.binderUniforms=H?H.getUniforms(N,We):[]}}};function xo(N,q,H){var Q=1/Kn(H,1,q.transform.tileZoom),ge=Math.pow(2,H.tileID.overscaledZ),Le=H.tileSize*Math.pow(2,q.transform.tileZoom)/ge,U=Le*(H.tileID.canonical.x+H.tileID.wrap*ge),ne=Le*H.tileID.canonical.y;return{u_image:0,u_texsize:H.imageAtlasTexture.size,u_scale:[Q,N.fromScale,N.toScale],u_fade:N.t,u_pixel_coord_upper:[U>>16,ne>>16],u_pixel_coord_lower:[65535&U,65535&ne]}}Jo.prototype.draw=function(N,q,H,Q,ge,Le,U,ne,le,ye,ke,Re,He,We,Xe,Ke){var it,pt=N.gl;if(!this.failedToCreate){for(var mt in N.program.set(this.program),N.setDepthMode(H),N.setStencilMode(Q),N.setColorMode(ge),N.setCullFace(Le),this.fixedUniforms)this.fixedUniforms[mt].set(U[mt]);We&&We.setUniforms(N,this.binderUniforms,Re,{zoom:He});for(var Ot=(it={},it[pt.LINES]=2,it[pt.TRIANGLES]=3,it[pt.LINE_STRIP]=1,it)[q],Rt=0,Pt=ke.get();Rt<Pt.length;Rt+=1){var Vt=Pt[Rt],It=Vt.vaos||(Vt.vaos={});(It[ne]||(It[ne]=new Qa)).bind(N,this,le,We?We.getPaintVertexBuffers():[],ye,Vt.vertexOffset,Xe,Ke),pt.drawElements(q,Vt.primitiveLength*Ot,pt.UNSIGNED_SHORT,Vt.primitiveOffset*Ot*2)}}};var xs=function(N,q,H,Q){var ge=q.style.light,Le=ge.properties.get("position"),U=[Le.x,Le.y,Le.z],ne=i.create$1();ge.properties.get("anchor")==="viewport"&&i.fromRotation(ne,-q.transform.angle),i.transformMat3(U,U,ne);var le=ge.properties.get("color");return{u_matrix:N,u_lightpos:U,u_lightintensity:ge.properties.get("intensity"),u_lightcolor:[le.r,le.g,le.b],u_vertical_gradient:+H,u_opacity:Q}},Qo=function(N,q,H,Q,ge,Le,U){return i.extend(xs(N,q,H,Q),xo(Le,q,U),{u_height_factor:-Math.pow(2,ge.overscaledZ)/U.tileSize/8})},es=function(N){return{u_matrix:N}},ou=function(N,q,H,Q){return i.extend(es(N),xo(H,q,Q))},oc=function(N,q){return{u_matrix:N,u_world:q}},bs=function(N,q,H,Q,ge){return i.extend(ou(N,q,H,Q),{u_world:ge})},sc=function(N,q,H,Q){var ge,Le,U=N.transform;if(Q.paint.get("circle-pitch-alignment")==="map"){var ne=Kn(H,1,U.zoom);ge=!0,Le=[ne,ne]}else ge=!1,Le=U.pixelsToGLUnits;return{u_camera_to_center_distance:U.cameraToCenterDistance,u_scale_with_map:+(Q.paint.get("circle-pitch-scale")==="map"),u_matrix:N.translatePosMatrix(q.posMatrix,H,Q.paint.get("circle-translate"),Q.paint.get("circle-translate-anchor")),u_pitch_with_map:+ge,u_device_pixel_ratio:i.browser.devicePixelRatio,u_extrude_scale:Le}},Lu=function(N,q,H){var Q=Kn(H,1,q.zoom),ge=Math.pow(2,q.zoom-H.tileID.overscaledZ),Le=H.tileID.overscaleFactor();return{u_matrix:N,u_camera_to_center_distance:q.cameraToCenterDistance,u_pixels_to_tile_units:Q,u_extrude_scale:[q.pixelsToGLUnits[0]/(Q*ge),q.pixelsToGLUnits[1]/(Q*ge)],u_overscale_factor:Le}},lc=function(N,q,H){return{u_matrix:N,u_inv_matrix:q,u_camera_to_center_distance:H.cameraToCenterDistance,u_viewport_size:[H.width,H.height]}},Pu=function(N,q,H){return H===void 0&&(H=1),{u_matrix:N,u_color:q,u_overlay:0,u_overlay_scale:H}},uc=function(N){return{u_matrix:N}},vl=function(N,q,H,Q){return{u_matrix:N,u_extrude_scale:Kn(q,1,H),u_intensity:Q}},_s=function(N,q,H,Q){var ge=i.create();i.ortho(ge,0,N.width,N.height,0,0,1);var Le=N.context.gl;return{u_matrix:ge,u_world:[Le.drawingBufferWidth,Le.drawingBufferHeight],u_image:H,u_color_ramp:Q,u_opacity:q.paint.get("heatmap-opacity")}},Zs=function(N,q,H){var Q=H.paint.get("hillshade-shadow-color"),ge=H.paint.get("hillshade-highlight-color"),Le=H.paint.get("hillshade-accent-color"),U=H.paint.get("hillshade-illumination-direction")*(Math.PI/180);H.paint.get("hillshade-illumination-anchor")==="viewport"&&(U-=N.transform.angle);var ne,le,ye,ke=!N.options.moving;return{u_matrix:N.transform.calculatePosMatrix(q.tileID.toUnwrapped(),ke),u_image:0,u_latrange:(ne=q.tileID,le=Math.pow(2,ne.canonical.z),ye=ne.canonical.y,[new i.MercatorCoordinate(0,ye/le).toLngLat().lat,new i.MercatorCoordinate(0,(ye+1)/le).toLngLat().lat]),u_light:[H.paint.get("hillshade-exaggeration"),U],u_shadow:Q,u_highlight:ge,u_accent:Le}},ml=function(N,q,H){var Q=q.stride,ge=i.create();return i.ortho(ge,0,i.EXTENT,-i.EXTENT,0,0,1),i.translate(ge,ge,[0,-i.EXTENT,0]),{u_matrix:ge,u_image:1,u_dimension:[Q,Q],u_zoom:N.overscaledZ,u_maxzoom:H,u_unpack:q.getUnpackVector()}},su=function(N,q,H){var Q=N.transform;return{u_matrix:jo(N,q,H),u_ratio:1/Kn(q,1,Q.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_units_to_pixels:[1/Q.pixelsToGLUnits[0],1/Q.pixelsToGLUnits[1]]}},Ou=function(N,q,H){return i.extend(su(N,q,H),{u_image:0})},Iu=function(N,q,H,Q){var ge=N.transform,Le=Ys(q,ge);return{u_matrix:jo(N,q,H),u_texsize:q.imageAtlasTexture.size,u_ratio:1/Kn(q,1,ge.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_image:0,u_scale:[Le,Q.fromScale,Q.toScale],u_fade:Q.t,u_units_to_pixels:[1/ge.pixelsToGLUnits[0],1/ge.pixelsToGLUnits[1]]}},so=function(N,q,H,Q,ge){var Le=N.transform,U=N.lineAtlas,ne=Ys(q,Le),le=H.layout.get("line-cap")==="round",ye=U.getDash(Q.from,le),ke=U.getDash(Q.to,le),Re=ye.width*ge.fromScale,He=ke.width*ge.toScale;return i.extend(su(N,q,H),{u_patternscale_a:[ne/Re,-ye.height/2],u_patternscale_b:[ne/He,-ke.height/2],u_sdfgamma:U.width/(256*Math.min(Re,He)*i.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:ye.y,u_tex_y_b:ke.y,u_mix:ge.t})};function Ys(N,q){return 1/Kn(N,1,q.tileZoom)}function jo(N,q,H){return N.translatePosMatrix(q.tileID.posMatrix,q,H.paint.get("line-translate"),H.paint.get("line-translate-anchor"))}var ts=function(N,q,H,Q,ge){return{u_matrix:N,u_tl_parent:q,u_scale_parent:H,u_buffer_scale:1,u_fade_t:Q.mix,u_opacity:Q.opacity*ge.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:ge.paint.get("raster-brightness-min"),u_brightness_high:ge.paint.get("raster-brightness-max"),u_saturation_factor:(U=ge.paint.get("raster-saturation"),U>0?1-1/(1.001-U):-U),u_contrast_factor:(Le=ge.paint.get("raster-contrast"),Le>0?1/(1-Le):1+Le),u_spin_weights:cc(ge.paint.get("raster-hue-rotate"))};var Le,U};function cc(N){N*=Math.PI/180;var q=Math.sin(N),H=Math.cos(N);return[(2*H+1)/3,(-Math.sqrt(3)*q-H+1)/3,(Math.sqrt(3)*q-H+1)/3]}var ws,fi=function(N,q,H,Q,ge,Le,U,ne,le,ye){var ke=ge.transform;return{u_is_size_zoom_constant:+(N==="constant"||N==="source"),u_is_size_feature_constant:+(N==="constant"||N==="camera"),u_size_t:q?q.uSizeT:0,u_size:q?q.uSize:0,u_camera_to_center_distance:ke.cameraToCenterDistance,u_pitch:ke.pitch/360*2*Math.PI,u_rotate_symbol:+H,u_aspect_ratio:ke.width/ke.height,u_fade_change:ge.options.fadeDuration?ge.symbolFadeChange:1,u_matrix:Le,u_label_plane_matrix:U,u_coord_matrix:ne,u_is_text:+le,u_pitch_with_map:+Q,u_texsize:ye,u_texture:0}},bo=function(N,q,H,Q,ge,Le,U,ne,le,ye,ke){var Re=ge.transform;return i.extend(fi(N,q,H,Q,ge,Le,U,ne,le,ye),{u_gamma_scale:Q?Math.cos(Re._pitch)*Re.cameraToCenterDistance:1,u_device_pixel_ratio:i.browser.devicePixelRatio,u_is_halo:+ke})},Fl=function(N,q,H,Q,ge,Le,U,ne,le,ye){return i.extend(bo(N,q,H,Q,ge,Le,U,ne,!0,le,!0),{u_texsize_icon:ye,u_texture_icon:1})},lo=function(N,q,H){return{u_matrix:N,u_opacity:q,u_color:H}},Xs=function(N,q,H,Q,ge,Le){return i.extend(function(U,ne,le,ye){var ke=le.imageManager.getPattern(U.from.toString()),Re=le.imageManager.getPattern(U.to.toString()),He=le.imageManager.getPixelSize(),We=He.width,Xe=He.height,Ke=Math.pow(2,ye.tileID.overscaledZ),it=ye.tileSize*Math.pow(2,le.transform.tileZoom)/Ke,pt=it*(ye.tileID.canonical.x+ye.tileID.wrap*Ke),mt=it*ye.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:ke.tl,u_pattern_br_a:ke.br,u_pattern_tl_b:Re.tl,u_pattern_br_b:Re.br,u_texsize:[We,Xe],u_mix:ne.t,u_pattern_size_a:ke.displaySize,u_pattern_size_b:Re.displaySize,u_scale_a:ne.fromScale,u_scale_b:ne.toScale,u_tile_units_to_pixels:1/Kn(ye,1,le.transform.tileZoom),u_pixel_coord_upper:[pt>>16,mt>>16],u_pixel_coord_lower:[65535&pt,65535&mt]}}(Q,Le,H,ge),{u_matrix:N,u_opacity:q})},$c={fillExtrusion:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_lightpos:new i.Uniform3f(N,q.u_lightpos),u_lightintensity:new i.Uniform1f(N,q.u_lightintensity),u_lightcolor:new i.Uniform3f(N,q.u_lightcolor),u_vertical_gradient:new i.Uniform1f(N,q.u_vertical_gradient),u_opacity:new i.Uniform1f(N,q.u_opacity)}},fillExtrusionPattern:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_lightpos:new i.Uniform3f(N,q.u_lightpos),u_lightintensity:new i.Uniform1f(N,q.u_lightintensity),u_lightcolor:new i.Uniform3f(N,q.u_lightcolor),u_vertical_gradient:new i.Uniform1f(N,q.u_vertical_gradient),u_height_factor:new i.Uniform1f(N,q.u_height_factor),u_image:new i.Uniform1i(N,q.u_image),u_texsize:new i.Uniform2f(N,q.u_texsize),u_pixel_coord_upper:new i.Uniform2f(N,q.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(N,q.u_pixel_coord_lower),u_scale:new i.Uniform3f(N,q.u_scale),u_fade:new i.Uniform1f(N,q.u_fade),u_opacity:new i.Uniform1f(N,q.u_opacity)}},fill:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix)}},fillPattern:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_image:new i.Uniform1i(N,q.u_image),u_texsize:new i.Uniform2f(N,q.u_texsize),u_pixel_coord_upper:new i.Uniform2f(N,q.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(N,q.u_pixel_coord_lower),u_scale:new i.Uniform3f(N,q.u_scale),u_fade:new i.Uniform1f(N,q.u_fade)}},fillOutline:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_world:new i.Uniform2f(N,q.u_world)}},fillOutlinePattern:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_world:new i.Uniform2f(N,q.u_world),u_image:new i.Uniform1i(N,q.u_image),u_texsize:new i.Uniform2f(N,q.u_texsize),u_pixel_coord_upper:new i.Uniform2f(N,q.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(N,q.u_pixel_coord_lower),u_scale:new i.Uniform3f(N,q.u_scale),u_fade:new i.Uniform1f(N,q.u_fade)}},circle:function(N,q){return{u_camera_to_center_distance:new i.Uniform1f(N,q.u_camera_to_center_distance),u_scale_with_map:new i.Uniform1i(N,q.u_scale_with_map),u_pitch_with_map:new i.Uniform1i(N,q.u_pitch_with_map),u_extrude_scale:new i.Uniform2f(N,q.u_extrude_scale),u_device_pixel_ratio:new i.Uniform1f(N,q.u_device_pixel_ratio),u_matrix:new i.UniformMatrix4f(N,q.u_matrix)}},collisionBox:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_camera_to_center_distance:new i.Uniform1f(N,q.u_camera_to_center_distance),u_pixels_to_tile_units:new i.Uniform1f(N,q.u_pixels_to_tile_units),u_extrude_scale:new i.Uniform2f(N,q.u_extrude_scale),u_overscale_factor:new i.Uniform1f(N,q.u_overscale_factor)}},collisionCircle:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_inv_matrix:new i.UniformMatrix4f(N,q.u_inv_matrix),u_camera_to_center_distance:new i.Uniform1f(N,q.u_camera_to_center_distance),u_viewport_size:new i.Uniform2f(N,q.u_viewport_size)}},debug:function(N,q){return{u_color:new i.UniformColor(N,q.u_color),u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_overlay:new i.Uniform1i(N,q.u_overlay),u_overlay_scale:new i.Uniform1f(N,q.u_overlay_scale)}},clippingMask:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix)}},heatmap:function(N,q){return{u_extrude_scale:new i.Uniform1f(N,q.u_extrude_scale),u_intensity:new i.Uniform1f(N,q.u_intensity),u_matrix:new i.UniformMatrix4f(N,q.u_matrix)}},heatmapTexture:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_world:new i.Uniform2f(N,q.u_world),u_image:new i.Uniform1i(N,q.u_image),u_color_ramp:new i.Uniform1i(N,q.u_color_ramp),u_opacity:new i.Uniform1f(N,q.u_opacity)}},hillshade:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_image:new i.Uniform1i(N,q.u_image),u_latrange:new i.Uniform2f(N,q.u_latrange),u_light:new i.Uniform2f(N,q.u_light),u_shadow:new i.UniformColor(N,q.u_shadow),u_highlight:new i.UniformColor(N,q.u_highlight),u_accent:new i.UniformColor(N,q.u_accent)}},hillshadePrepare:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_image:new i.Uniform1i(N,q.u_image),u_dimension:new i.Uniform2f(N,q.u_dimension),u_zoom:new i.Uniform1f(N,q.u_zoom),u_maxzoom:new i.Uniform1f(N,q.u_maxzoom),u_unpack:new i.Uniform4f(N,q.u_unpack)}},line:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_ratio:new i.Uniform1f(N,q.u_ratio),u_device_pixel_ratio:new i.Uniform1f(N,q.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(N,q.u_units_to_pixels)}},lineGradient:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_ratio:new i.Uniform1f(N,q.u_ratio),u_device_pixel_ratio:new i.Uniform1f(N,q.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(N,q.u_units_to_pixels),u_image:new i.Uniform1i(N,q.u_image)}},linePattern:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_texsize:new i.Uniform2f(N,q.u_texsize),u_ratio:new i.Uniform1f(N,q.u_ratio),u_device_pixel_ratio:new i.Uniform1f(N,q.u_device_pixel_ratio),u_image:new i.Uniform1i(N,q.u_image),u_units_to_pixels:new i.Uniform2f(N,q.u_units_to_pixels),u_scale:new i.Uniform3f(N,q.u_scale),u_fade:new i.Uniform1f(N,q.u_fade)}},lineSDF:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_ratio:new i.Uniform1f(N,q.u_ratio),u_device_pixel_ratio:new i.Uniform1f(N,q.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(N,q.u_units_to_pixels),u_patternscale_a:new i.Uniform2f(N,q.u_patternscale_a),u_patternscale_b:new i.Uniform2f(N,q.u_patternscale_b),u_sdfgamma:new i.Uniform1f(N,q.u_sdfgamma),u_image:new i.Uniform1i(N,q.u_image),u_tex_y_a:new i.Uniform1f(N,q.u_tex_y_a),u_tex_y_b:new i.Uniform1f(N,q.u_tex_y_b),u_mix:new i.Uniform1f(N,q.u_mix)}},raster:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_tl_parent:new i.Uniform2f(N,q.u_tl_parent),u_scale_parent:new i.Uniform1f(N,q.u_scale_parent),u_buffer_scale:new i.Uniform1f(N,q.u_buffer_scale),u_fade_t:new i.Uniform1f(N,q.u_fade_t),u_opacity:new i.Uniform1f(N,q.u_opacity),u_image0:new i.Uniform1i(N,q.u_image0),u_image1:new i.Uniform1i(N,q.u_image1),u_brightness_low:new i.Uniform1f(N,q.u_brightness_low),u_brightness_high:new i.Uniform1f(N,q.u_brightness_high),u_saturation_factor:new i.Uniform1f(N,q.u_saturation_factor),u_contrast_factor:new i.Uniform1f(N,q.u_contrast_factor),u_spin_weights:new i.Uniform3f(N,q.u_spin_weights)}},symbolIcon:function(N,q){return{u_is_size_zoom_constant:new i.Uniform1i(N,q.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(N,q.u_is_size_feature_constant),u_size_t:new i.Uniform1f(N,q.u_size_t),u_size:new i.Uniform1f(N,q.u_size),u_camera_to_center_distance:new i.Uniform1f(N,q.u_camera_to_center_distance),u_pitch:new i.Uniform1f(N,q.u_pitch),u_rotate_symbol:new i.Uniform1i(N,q.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(N,q.u_aspect_ratio),u_fade_change:new i.Uniform1f(N,q.u_fade_change),u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(N,q.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(N,q.u_coord_matrix),u_is_text:new i.Uniform1i(N,q.u_is_text),u_pitch_with_map:new i.Uniform1i(N,q.u_pitch_with_map),u_texsize:new i.Uniform2f(N,q.u_texsize),u_texture:new i.Uniform1i(N,q.u_texture)}},symbolSDF:function(N,q){return{u_is_size_zoom_constant:new i.Uniform1i(N,q.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(N,q.u_is_size_feature_constant),u_size_t:new i.Uniform1f(N,q.u_size_t),u_size:new i.Uniform1f(N,q.u_size),u_camera_to_center_distance:new i.Uniform1f(N,q.u_camera_to_center_distance),u_pitch:new i.Uniform1f(N,q.u_pitch),u_rotate_symbol:new i.Uniform1i(N,q.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(N,q.u_aspect_ratio),u_fade_change:new i.Uniform1f(N,q.u_fade_change),u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(N,q.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(N,q.u_coord_matrix),u_is_text:new i.Uniform1i(N,q.u_is_text),u_pitch_with_map:new i.Uniform1i(N,q.u_pitch_with_map),u_texsize:new i.Uniform2f(N,q.u_texsize),u_texture:new i.Uniform1i(N,q.u_texture),u_gamma_scale:new i.Uniform1f(N,q.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(N,q.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(N,q.u_is_halo)}},symbolTextAndIcon:function(N,q){return{u_is_size_zoom_constant:new i.Uniform1i(N,q.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(N,q.u_is_size_feature_constant),u_size_t:new i.Uniform1f(N,q.u_size_t),u_size:new i.Uniform1f(N,q.u_size),u_camera_to_center_distance:new i.Uniform1f(N,q.u_camera_to_center_distance),u_pitch:new i.Uniform1f(N,q.u_pitch),u_rotate_symbol:new i.Uniform1i(N,q.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(N,q.u_aspect_ratio),u_fade_change:new i.Uniform1f(N,q.u_fade_change),u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(N,q.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(N,q.u_coord_matrix),u_is_text:new i.Uniform1i(N,q.u_is_text),u_pitch_with_map:new i.Uniform1i(N,q.u_pitch_with_map),u_texsize:new i.Uniform2f(N,q.u_texsize),u_texsize_icon:new i.Uniform2f(N,q.u_texsize_icon),u_texture:new i.Uniform1i(N,q.u_texture),u_texture_icon:new i.Uniform1i(N,q.u_texture_icon),u_gamma_scale:new i.Uniform1f(N,q.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(N,q.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(N,q.u_is_halo)}},background:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_opacity:new i.Uniform1f(N,q.u_opacity),u_color:new i.UniformColor(N,q.u_color)}},backgroundPattern:function(N,q){return{u_matrix:new i.UniformMatrix4f(N,q.u_matrix),u_opacity:new i.Uniform1f(N,q.u_opacity),u_image:new i.Uniform1i(N,q.u_image),u_pattern_tl_a:new i.Uniform2f(N,q.u_pattern_tl_a),u_pattern_br_a:new i.Uniform2f(N,q.u_pattern_br_a),u_pattern_tl_b:new i.Uniform2f(N,q.u_pattern_tl_b),u_pattern_br_b:new i.Uniform2f(N,q.u_pattern_br_b),u_texsize:new i.Uniform2f(N,q.u_texsize),u_mix:new i.Uniform1f(N,q.u_mix),u_pattern_size_a:new i.Uniform2f(N,q.u_pattern_size_a),u_pattern_size_b:new i.Uniform2f(N,q.u_pattern_size_b),u_scale_a:new i.Uniform1f(N,q.u_scale_a),u_scale_b:new i.Uniform1f(N,q.u_scale_b),u_pixel_coord_upper:new i.Uniform2f(N,q.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(N,q.u_pixel_coord_lower),u_tile_units_to_pixels:new i.Uniform1f(N,q.u_tile_units_to_pixels)}}};function lu(N,q,H,Q,ge,Le,U){for(var ne=N.context,le=ne.gl,ye=N.useProgram("collisionBox"),ke=[],Re=0,He=0,We=0;We<Q.length;We++){var Xe=Q[We],Ke=q.getTile(Xe),it=Ke.getBucket(H);if(it){var pt=Xe.posMatrix;ge[0]===0&&ge[1]===0||(pt=N.translatePosMatrix(Xe.posMatrix,Ke,ge,Le));var mt=U?it.textCollisionBox:it.iconCollisionBox,Ot=it.collisionCircleArray;if(Ot.length>0){var Rt=i.create(),Pt=pt;i.mul(Rt,it.placementInvProjMatrix,N.transform.glCoordMatrix),i.mul(Rt,Rt,it.placementViewportMatrix),ke.push({circleArray:Ot,circleOffset:He,transform:Pt,invTransform:Rt}),He=Re+=Ot.length/4}mt&&ye.draw(ne,le.LINES,Ft.disabled,Je.disabled,N.colorModeForRenderPass(),Ze.disabled,Lu(pt,N.transform,Ke),H.id,mt.layoutVertexBuffer,mt.indexBuffer,mt.segments,null,N.transform.zoom,null,null,mt.collisionVertexBuffer)}}if(U&&ke.length){var Vt=N.useProgram("collisionCircle"),It=new i.StructArrayLayout2f1f2i16;It.resize(4*Re),It._trim();for(var on=0,Kt=0,Zt=ke;Kt<Zt.length;Kt+=1)for(var yn=Zt[Kt],_n=0;_n<yn.circleArray.length/4;_n++){var Un=4*_n,Vn=yn.circleArray[Un+0],Zn=yn.circleArray[Un+1],Qn=yn.circleArray[Un+2],pr=yn.circleArray[Un+3];It.emplace(on++,Vn,Zn,Qn,pr,0),It.emplace(on++,Vn,Zn,Qn,pr,1),It.emplace(on++,Vn,Zn,Qn,pr,2),It.emplace(on++,Vn,Zn,Qn,pr,3)}(!ws||ws.length<2*Re)&&(ws=function(yr){var Mr=2*yr,Rr=new i.StructArrayLayout3ui6;Rr.resize(Mr),Rr._trim();for(var Vr=0;Vr<Mr;Vr++){var $r=6*Vr;Rr.uint16[$r+0]=4*Vr+0,Rr.uint16[$r+1]=4*Vr+1,Rr.uint16[$r+2]=4*Vr+2,Rr.uint16[$r+3]=4*Vr+2,Rr.uint16[$r+4]=4*Vr+3,Rr.uint16[$r+5]=4*Vr+0}return Rr}(Re));for(var cr=ne.createIndexBuffer(ws,!0),mr=ne.createVertexBuffer(It,i.collisionCircleLayout.members,!0),Ar=0,Br=ke;Ar<Br.length;Ar+=1){var qn=Br[Ar],ur=lc(qn.transform,qn.invTransform,N.transform);Vt.draw(ne,le.TRIANGLES,Ft.disabled,Je.disabled,N.colorModeForRenderPass(),Ze.disabled,ur,H.id,mr,cr,i.SegmentVector.simpleSegment(0,2*qn.circleOffset,qn.circleArray.length,qn.circleArray.length/2),null,N.transform.zoom,null,null,null)}mr.destroy(),cr.destroy()}}var fc=i.identity(new Float32Array(16));function hc(N,q,H,Q,ge,Le){var U=i.getAnchorAlignment(N),ne=-(U.horizontalAlign-.5)*q,le=-(U.verticalAlign-.5)*H,ye=i.evaluateVariableOffset(N,Q);return new i.Point((ne/ge+ye[0])*Le,(le/ge+ye[1])*Le)}function Bl(N,q,H,Q,ge,Le,U,ne,le,ye,ke){var Re=N.text.placedSymbolArray,He=N.text.dynamicLayoutVertexArray,We=N.icon.dynamicLayoutVertexArray,Xe={};He.clear();for(var Ke=0;Ke<Re.length;Ke++){var it=Re.get(Ke),pt=N.allowVerticalPlacement&&!it.placedOrientation,mt=it.hidden||!it.crossTileID||pt?null:Q[it.crossTileID];if(mt){var Ot=new i.Point(it.anchorX,it.anchorY),Rt=Yt(Ot,H?ne:U),Pt=ln(Le.cameraToCenterDistance,Rt.signedDistanceFromCamera),Vt=ge.evaluateSizeForFeature(N.textSizeData,ye,it)*Pt/i.ONE_EM;H&&(Vt*=N.tilePixelRatio/le);for(var It=mt.width,on=mt.height,Kt=hc(mt.anchor,It,on,mt.textOffset,mt.textBoxScale,Vt),Zt=H?Yt(Ot.add(Kt),U).point:Rt.point.add(q?Kt.rotate(-Le.angle):Kt),yn=N.allowVerticalPlacement&&it.placedOrientation===i.WritingMode.vertical?Math.PI/2:0,_n=0;_n<it.numGlyphs;_n++)i.addDynamicAttributes(He,Zt,yn);ke&&it.associatedIconIndex>=0&&(Xe[it.associatedIconIndex]={shiftedAnchor:Zt,angle:yn})}else er(it.numGlyphs,He)}if(ke){We.clear();for(var Un=N.icon.placedSymbolArray,Vn=0;Vn<Un.length;Vn++){var Zn=Un.get(Vn);if(Zn.hidden)er(Zn.numGlyphs,We);else{var Qn=Xe[Vn];if(Qn)for(var pr=0;pr<Zn.numGlyphs;pr++)i.addDynamicAttributes(We,Qn.shiftedAnchor,Qn.angle);else er(Zn.numGlyphs,We)}}N.icon.dynamicLayoutVertexBuffer.updateData(We)}N.text.dynamicLayoutVertexBuffer.updateData(He)}function yl(N,q,H){return H.iconsInText&&q?"symbolTextAndIcon":N?"symbolSDF":"symbolIcon"}function Nl(N,q,H,Q,ge,Le,U,ne,le,ye,ke,Re){for(var He=N.context,We=He.gl,Xe=N.transform,Ke=ne==="map",it=le==="map",pt=Ke&&H.layout.get("symbol-placement")!=="point",mt=Ke&&!it&&!pt,Ot=H.layout.get("symbol-sort-key").constantOr(1)!==void 0,Rt=N.depthModeForSublayer(0,Ft.ReadOnly),Pt=H.layout.get("text-variable-anchor"),Vt=[],It=0,on=Q;It<on.length;It+=1){var Kt=on[It],Zt=q.getTile(Kt),yn=Zt.getBucket(H);if(yn){var _n=ge?yn.text:yn.icon;if(_n&&_n.segments.get().length){var Un=_n.programConfigurations.get(H.id),Vn=ge||yn.sdfIcons,Zn=ge?yn.textSizeData:yn.iconSizeData,Qn=it||Xe.pitch!==0,pr=N.useProgram(yl(Vn,ge,yn),Un),cr=i.evaluateSizeForZoom(Zn,Xe.zoom),mr=void 0,Ar=[0,0],Br=void 0,qn=void 0,ur=null,yr=void 0;if(ge){if(Br=Zt.glyphAtlasTexture,qn=We.LINEAR,mr=Zt.glyphAtlasTexture.size,yn.iconsInText){Ar=Zt.imageAtlasTexture.size,ur=Zt.imageAtlasTexture;var Mr=Zn.kind==="composite"||Zn.kind==="camera";yr=Qn||N.options.rotating||N.options.zooming||Mr?We.LINEAR:We.NEAREST}}else{var Rr=H.layout.get("icon-size").constantOr(0)!==1||yn.iconsNeedLinear;Br=Zt.imageAtlasTexture,qn=Vn||N.options.rotating||N.options.zooming||Rr||Qn?We.LINEAR:We.NEAREST,mr=Zt.imageAtlasTexture.size}var Vr=Kn(Zt,1,N.transform.zoom),$r=Tn(Kt.posMatrix,it,Ke,N.transform,Vr),ai=dn(Kt.posMatrix,it,Ke,N.transform,Vr),bi=Pt&&yn.hasTextData(),_i=H.layout.get("icon-text-fit")!=="none"&&bi&&yn.hasIconData();pt&&fn(yn,Kt.posMatrix,N,ge,$r,ai,it,ye);var oi=N.translatePosMatrix(Kt.posMatrix,Zt,Le,U),Fi=pt||ge&&Pt||_i?fc:$r,la=N.translatePosMatrix(ai,Zt,Le,U,!0),Wi=Vn&&H.paint.get(ge?"text-halo-width":"icon-halo-width").constantOr(1)!==0,ea={program:pr,buffers:_n,uniformValues:Vn?yn.iconsInText?Fl(Zn.kind,cr,mt,it,N,oi,Fi,la,mr,Ar):bo(Zn.kind,cr,mt,it,N,oi,Fi,la,ge,mr,!0):fi(Zn.kind,cr,mt,it,N,oi,Fi,la,ge,mr),atlasTexture:Br,atlasTextureIcon:ur,atlasInterpolation:qn,atlasInterpolationIcon:yr,isSDF:Vn,hasHalo:Wi};if(Ot)for(var ei=0,Yr=_n.segments.get();ei<Yr.length;ei+=1){var wi=Yr[ei];Vt.push({segments:new i.SegmentVector([wi]),sortKey:wi.sortKey,state:ea})}else Vt.push({segments:_n.segments,sortKey:0,state:ea})}}}Ot&&Vt.sort(function(sl,Wa){return sl.sortKey-Wa.sortKey});for(var gi=0,Mi=Vt;gi<Mi.length;gi+=1){var za=Mi[gi],Oi=za.state;if(He.activeTexture.set(We.TEXTURE0),Oi.atlasTexture.bind(Oi.atlasInterpolation,We.CLAMP_TO_EDGE),Oi.atlasTextureIcon&&(He.activeTexture.set(We.TEXTURE1),Oi.atlasTextureIcon&&Oi.atlasTextureIcon.bind(Oi.atlasInterpolationIcon,We.CLAMP_TO_EDGE)),Oi.isSDF){var si=Oi.uniformValues;Oi.hasHalo&&(si.u_is_halo=1,ks(Oi.buffers,za.segments,H,N,Oi.program,Rt,ke,Re,si)),si.u_is_halo=0}ks(Oi.buffers,za.segments,H,N,Oi.program,Rt,ke,Re,Oi.uniformValues)}}function ks(N,q,H,Q,ge,Le,U,ne,le){var ye=Q.context,ke=ye.gl;ge.draw(ye,ke.TRIANGLES,Le,U,ne,Ze.disabled,le,H.id,N.layoutVertexBuffer,N.indexBuffer,q,H.paint,Q.transform.zoom,N.programConfigurations.get(H.id),N.dynamicLayoutVertexBuffer,N.opacityVertexBuffer)}function ns(N,q,H,Q,ge,Le,U){var ne,le,ye,ke,Re,He=N.context.gl,We=H.paint.get("fill-pattern"),Xe=We&&We.constantOr(1),Ke=H.getCrossfadeParameters();U?(le=Xe&&!H.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",ne=He.LINES):(le=Xe?"fillPattern":"fill",ne=He.TRIANGLES);for(var it=0,pt=Q;it<pt.length;it+=1){var mt=pt[it],Ot=q.getTile(mt);if(!Xe||Ot.patternsLoaded()){var Rt=Ot.getBucket(H);if(Rt){var Pt=Rt.programConfigurations.get(H.id),Vt=N.useProgram(le,Pt);Xe&&(N.context.activeTexture.set(He.TEXTURE0),Ot.imageAtlasTexture.bind(He.LINEAR,He.CLAMP_TO_EDGE),Pt.updatePaintBuffers(Ke));var It=We.constantOr(null);if(It&&Ot.imageAtlas){var on=Ot.imageAtlas,Kt=on.patternPositions[It.to.toString()],Zt=on.patternPositions[It.from.toString()];Kt&&Zt&&Pt.setConstantPatternPositions(Kt,Zt)}var yn=N.translatePosMatrix(mt.posMatrix,Ot,H.paint.get("fill-translate"),H.paint.get("fill-translate-anchor"));if(U){ke=Rt.indexBuffer2,Re=Rt.segments2;var _n=[He.drawingBufferWidth,He.drawingBufferHeight];ye=le==="fillOutlinePattern"&&Xe?bs(yn,N,Ke,Ot,_n):oc(yn,_n)}else ke=Rt.indexBuffer,Re=Rt.segments,ye=Xe?ou(yn,N,Ke,Ot):es(yn);Vt.draw(N.context,ne,ge,N.stencilModeForClipping(mt),Le,Ze.disabled,ye,H.id,Rt.layoutVertexBuffer,ke,Re,H.paint,N.transform.zoom,Pt)}}}}function Ts(N,q,H,Q,ge,Le,U){for(var ne=N.context,le=ne.gl,ye=H.paint.get("fill-extrusion-pattern"),ke=ye.constantOr(1),Re=H.getCrossfadeParameters(),He=H.paint.get("fill-extrusion-opacity"),We=0,Xe=Q;We<Xe.length;We+=1){var Ke=Xe[We],it=q.getTile(Ke),pt=it.getBucket(H);if(pt){var mt=pt.programConfigurations.get(H.id),Ot=N.useProgram(ke?"fillExtrusionPattern":"fillExtrusion",mt);ke&&(N.context.activeTexture.set(le.TEXTURE0),it.imageAtlasTexture.bind(le.LINEAR,le.CLAMP_TO_EDGE),mt.updatePaintBuffers(Re));var Rt=ye.constantOr(null);if(Rt&&it.imageAtlas){var Pt=it.imageAtlas,Vt=Pt.patternPositions[Rt.to.toString()],It=Pt.patternPositions[Rt.from.toString()];Vt&&It&&mt.setConstantPatternPositions(Vt,It)}var on=N.translatePosMatrix(Ke.posMatrix,it,H.paint.get("fill-extrusion-translate"),H.paint.get("fill-extrusion-translate-anchor")),Kt=H.paint.get("fill-extrusion-vertical-gradient"),Zt=ke?Qo(on,N,Kt,He,Ke,Re,it):xs(on,N,Kt,He);Ot.draw(ne,ne.gl.TRIANGLES,ge,Le,U,Ze.backCCW,Zt,H.id,pt.layoutVertexBuffer,pt.indexBuffer,pt.segments,H.paint,N.transform.zoom,mt)}}}function rs(N,q,H,Q,ge,Le){var U=N.context,ne=U.gl,le=q.fbo;if(le){var ye=N.useProgram("hillshade");U.activeTexture.set(ne.TEXTURE0),ne.bindTexture(ne.TEXTURE_2D,le.colorAttachment.get());var ke=Zs(N,q,H);ye.draw(U,ne.TRIANGLES,Q,ge,Le,Ze.disabled,ke,H.id,N.rasterBoundsBuffer,N.quadTriangleIndexBuffer,N.rasterBoundsSegments)}}function uu(N,q,H,Q,ge,Le,U){var ne=N.context,le=ne.gl,ye=q.dem;if(ye&&ye.data){var ke=ye.dim,Re=ye.stride,He=ye.getPixels();if(ne.activeTexture.set(le.TEXTURE1),ne.pixelStoreUnpackPremultiplyAlpha.set(!1),q.demTexture=q.demTexture||N.getTileTexture(Re),q.demTexture){var We=q.demTexture;We.update(He,{premultiply:!1}),We.bind(le.NEAREST,le.CLAMP_TO_EDGE)}else q.demTexture=new i.Texture(ne,He,le.RGBA,{premultiply:!1}),q.demTexture.bind(le.NEAREST,le.CLAMP_TO_EDGE);ne.activeTexture.set(le.TEXTURE0);var Xe=q.fbo;if(!Xe){var Ke=new i.Texture(ne,{width:ke,height:ke,data:null},le.RGBA);Ke.bind(le.LINEAR,le.CLAMP_TO_EDGE),(Xe=q.fbo=ne.createFramebuffer(ke,ke,!0)).colorAttachment.set(Ke.texture)}ne.bindFramebuffer.set(Xe.framebuffer),ne.viewport.set([0,0,ke,ke]),N.useProgram("hillshadePrepare").draw(ne,le.TRIANGLES,ge,Le,U,Ze.disabled,ml(q.tileID,ye,Q),H.id,N.rasterBoundsBuffer,N.quadTriangleIndexBuffer,N.rasterBoundsSegments),q.needsHillshadePrepare=!1}}function _o(N,q,H,Q,ge){var Le=Q.paint.get("raster-fade-duration");if(Le>0){var U=i.browser.now(),ne=(U-N.timeAdded)/Le,le=q?(U-q.timeAdded)/Le:-1,ye=H.getSource(),ke=ge.coveringZoomLevel({tileSize:ye.tileSize,roundZoom:ye.roundZoom}),Re=!q||Math.abs(q.tileID.overscaledZ-ke)>Math.abs(N.tileID.overscaledZ-ke),He=Re&&N.refreshedUponExpiration?1:i.clamp(Re?ne:1-le,0,1);return N.refreshedUponExpiration&&ne>=1&&(N.refreshedUponExpiration=!1),q?{opacity:1,mix:1-He}:{opacity:He,mix:0}}return{opacity:1,mix:0}}var pc=new i.Color(1,0,0,1),dc=new i.Color(0,1,0,1),cu=new i.Color(0,0,1,1),As=new i.Color(1,0,1,1),fu=new i.Color(0,1,1,1);function $s(N){var q=N.transform.padding;Ru(N,N.transform.height-(q.top||0),3,pc),Ru(N,q.bottom||0,3,dc),xl(N,q.left||0,3,cu),xl(N,N.transform.width-(q.right||0),3,As);var H=N.transform.centerPoint;(function(Q,ge,Le,U){var ne=20,le=2;Ks(Q,ge-le/2,Le-ne/2,le,ne,U),Ks(Q,ge-ne/2,Le-le/2,ne,le,U)})(N,H.x,N.transform.height-H.y,fu)}function Ru(N,q,H,Q){Ks(N,0,q+H/2,N.transform.width,H,Q)}function xl(N,q,H,Q){Ks(N,q-H/2,0,H,N.transform.height,Q)}function Ks(N,q,H,Q,ge,Le){var U=N.context,ne=U.gl;ne.enable(ne.SCISSOR_TEST),ne.scissor(q*i.browser.devicePixelRatio,H*i.browser.devicePixelRatio,Q*i.browser.devicePixelRatio,ge*i.browser.devicePixelRatio),U.clear({color:Le}),ne.disable(ne.SCISSOR_TEST)}function jl(N,q,H){var Q=N.context,ge=Q.gl,Le=H.posMatrix,U=N.useProgram("debug"),ne=Ft.disabled,le=Je.disabled,ye=N.colorModeForRenderPass(),ke="$debug";Q.activeTexture.set(ge.TEXTURE0),N.emptyTexture.bind(ge.LINEAR,ge.CLAMP_TO_EDGE),U.draw(Q,ge.LINE_STRIP,ne,le,ye,Ze.disabled,Pu(Le,i.Color.red),ke,N.debugBuffer,N.tileBorderIndexBuffer,N.debugSegments);var Re=q.getTileByID(H.key).latestRawTileData,He=Re&&Re.byteLength||0,We=Math.floor(He/1024),Xe=q.getTile(H).tileSize,Ke=512/Math.min(Xe,512)*(H.overscaledZ/N.transform.zoom)*.5,it=H.canonical.toString();H.overscaledZ!==H.canonical.z&&(it+=" => "+H.overscaledZ),function(pt,mt){pt.initDebugOverlayCanvas();var Ot=pt.debugOverlayCanvas,Rt=pt.context.gl,Pt=pt.debugOverlayCanvas.getContext("2d");Pt.clearRect(0,0,Ot.width,Ot.height),Pt.shadowColor="white",Pt.shadowBlur=2,Pt.lineWidth=1.5,Pt.strokeStyle="white",Pt.textBaseline="top",Pt.font="bold 36px Open Sans, sans-serif",Pt.fillText(mt,5,5),Pt.strokeText(mt,5,5),pt.debugOverlayTexture.update(Ot),pt.debugOverlayTexture.bind(Rt.LINEAR,Rt.CLAMP_TO_EDGE)}(N,it+" "+We+"kb"),U.draw(Q,ge.TRIANGLES,ne,le,et.alphaBlended,Ze.disabled,Pu(Le,i.Color.transparent,Ke),ke,N.debugBuffer,N.quadTriangleIndexBuffer,N.debugSegments)}var bl={symbol:function(N,q,H,Q,ge){if(N.renderPass==="translucent"){var Le=Je.disabled,U=N.colorModeForRenderPass();H.layout.get("text-variable-anchor")&&function(ne,le,ye,ke,Re,He,We){for(var Xe=le.transform,Ke=Re==="map",it=He==="map",pt=0,mt=ne;pt<mt.length;pt+=1){var Ot=mt[pt],Rt=ke.getTile(Ot),Pt=Rt.getBucket(ye);if(Pt&&Pt.text&&Pt.text.segments.get().length){var Vt=Pt.textSizeData,It=i.evaluateSizeForZoom(Vt,Xe.zoom),on=Kn(Rt,1,le.transform.zoom),Kt=Tn(Ot.posMatrix,it,Ke,le.transform,on),Zt=ye.layout.get("icon-text-fit")!=="none"&&Pt.hasIconData();if(It){var yn=Math.pow(2,Xe.zoom-Rt.tileID.overscaledZ);Bl(Pt,Ke,it,We,i.symbolSize,Xe,Kt,Ot.posMatrix,yn,It,Zt)}}}}(Q,N,H,q,H.layout.get("text-rotation-alignment"),H.layout.get("text-pitch-alignment"),ge),H.paint.get("icon-opacity").constantOr(1)!==0&&Nl(N,q,H,Q,!1,H.paint.get("icon-translate"),H.paint.get("icon-translate-anchor"),H.layout.get("icon-rotation-alignment"),H.layout.get("icon-pitch-alignment"),H.layout.get("icon-keep-upright"),Le,U),H.paint.get("text-opacity").constantOr(1)!==0&&Nl(N,q,H,Q,!0,H.paint.get("text-translate"),H.paint.get("text-translate-anchor"),H.layout.get("text-rotation-alignment"),H.layout.get("text-pitch-alignment"),H.layout.get("text-keep-upright"),Le,U),q.map.showCollisionBoxes&&(lu(N,q,H,Q,H.paint.get("text-translate"),H.paint.get("text-translate-anchor"),!0),lu(N,q,H,Q,H.paint.get("icon-translate"),H.paint.get("icon-translate-anchor"),!1))}},circle:function(N,q,H,Q){if(N.renderPass==="translucent"){var ge=H.paint.get("circle-opacity"),Le=H.paint.get("circle-stroke-width"),U=H.paint.get("circle-stroke-opacity"),ne=H.layout.get("circle-sort-key").constantOr(1)!==void 0;if(ge.constantOr(1)!==0||Le.constantOr(1)!==0&&U.constantOr(1)!==0){for(var le=N.context,ye=le.gl,ke=N.depthModeForSublayer(0,Ft.ReadOnly),Re=Je.disabled,He=N.colorModeForRenderPass(),We=[],Xe=0;Xe<Q.length;Xe++){var Ke=Q[Xe],it=q.getTile(Ke),pt=it.getBucket(H);if(pt){var mt=pt.programConfigurations.get(H.id),Ot={programConfiguration:mt,program:N.useProgram("circle",mt),layoutVertexBuffer:pt.layoutVertexBuffer,indexBuffer:pt.indexBuffer,uniformValues:sc(N,Ke,it,H)};if(ne)for(var Rt=0,Pt=pt.segments.get();Rt<Pt.length;Rt+=1){var Vt=Pt[Rt];We.push({segments:new i.SegmentVector([Vt]),sortKey:Vt.sortKey,state:Ot})}else We.push({segments:pt.segments,sortKey:0,state:Ot})}}ne&&We.sort(function(pr,cr){return pr.sortKey-cr.sortKey});for(var It=0,on=We;It<on.length;It+=1){var Kt=on[It],Zt=Kt.state,yn=Zt.programConfiguration,_n=Zt.program,Un=Zt.layoutVertexBuffer,Vn=Zt.indexBuffer,Zn=Zt.uniformValues,Qn=Kt.segments;_n.draw(le,ye.TRIANGLES,ke,Re,He,Ze.disabled,Zn,H.id,Un,Vn,Qn,H.paint,N.transform.zoom,yn)}}}},heatmap:function(N,q,H,Q){if(H.paint.get("heatmap-opacity")!==0)if(N.renderPass==="offscreen"){var ge=N.context,Le=ge.gl,U=Je.disabled,ne=new et([Le.ONE,Le.ONE],i.Color.transparent,[!0,!0,!0,!0]);(function(Ke,it,pt){var mt=Ke.gl;Ke.activeTexture.set(mt.TEXTURE1),Ke.viewport.set([0,0,it.width/4,it.height/4]);var Ot=pt.heatmapFbo;if(Ot)mt.bindTexture(mt.TEXTURE_2D,Ot.colorAttachment.get()),Ke.bindFramebuffer.set(Ot.framebuffer);else{var Rt=mt.createTexture();mt.bindTexture(mt.TEXTURE_2D,Rt),mt.texParameteri(mt.TEXTURE_2D,mt.TEXTURE_WRAP_S,mt.CLAMP_TO_EDGE),mt.texParameteri(mt.TEXTURE_2D,mt.TEXTURE_WRAP_T,mt.CLAMP_TO_EDGE),mt.texParameteri(mt.TEXTURE_2D,mt.TEXTURE_MIN_FILTER,mt.LINEAR),mt.texParameteri(mt.TEXTURE_2D,mt.TEXTURE_MAG_FILTER,mt.LINEAR),Ot=pt.heatmapFbo=Ke.createFramebuffer(it.width/4,it.height/4,!1),function(Pt,Vt,It,on){var Kt=Pt.gl,Zt=Pt.extRenderToTextureHalfFloat?Pt.extTextureHalfFloat.HALF_FLOAT_OES:Kt.UNSIGNED_BYTE;Kt.texImage2D(Kt.TEXTURE_2D,0,Kt.RGBA,Vt.width/4,Vt.height/4,0,Kt.RGBA,Zt,null),on.colorAttachment.set(It)}(Ke,it,Rt,Ot)}})(ge,N,H),ge.clear({color:i.Color.transparent});for(var le=0;le<Q.length;le++){var ye=Q[le];if(!q.hasRenderableParent(ye)){var ke=q.getTile(ye),Re=ke.getBucket(H);if(Re){var He=Re.programConfigurations.get(H.id),We=N.useProgram("heatmap",He),Xe=N.transform.zoom;We.draw(ge,Le.TRIANGLES,Ft.disabled,U,ne,Ze.disabled,vl(ye.posMatrix,ke,Xe,H.paint.get("heatmap-intensity")),H.id,Re.layoutVertexBuffer,Re.indexBuffer,Re.segments,H.paint,N.transform.zoom,He)}}}ge.viewport.set([0,0,N.width,N.height])}else N.renderPass==="translucent"&&(N.context.setColorMode(N.colorModeForRenderPass()),function(Ke,it){var pt=Ke.context,mt=pt.gl,Ot=it.heatmapFbo;if(Ot){pt.activeTexture.set(mt.TEXTURE0),mt.bindTexture(mt.TEXTURE_2D,Ot.colorAttachment.get()),pt.activeTexture.set(mt.TEXTURE1);var Rt=it.colorRampTexture;Rt||(Rt=it.colorRampTexture=new i.Texture(pt,it.colorRamp,mt.RGBA)),Rt.bind(mt.LINEAR,mt.CLAMP_TO_EDGE),Ke.useProgram("heatmapTexture").draw(pt,mt.TRIANGLES,Ft.disabled,Je.disabled,Ke.colorModeForRenderPass(),Ze.disabled,_s(Ke,it,0,1),it.id,Ke.viewportBuffer,Ke.quadTriangleIndexBuffer,Ke.viewportSegments,it.paint,Ke.transform.zoom)}}(N,H))},line:function(N,q,H,Q){if(N.renderPass==="translucent"){var ge=H.paint.get("line-opacity"),Le=H.paint.get("line-width");if(ge.constantOr(1)!==0&&Le.constantOr(1)!==0){var U=N.depthModeForSublayer(0,Ft.ReadOnly),ne=N.colorModeForRenderPass(),le=H.paint.get("line-dasharray"),ye=H.paint.get("line-pattern"),ke=ye.constantOr(1),Re=H.paint.get("line-gradient"),He=H.getCrossfadeParameters(),We=ke?"linePattern":le?"lineSDF":Re?"lineGradient":"line",Xe=N.context,Ke=Xe.gl,it=!0;if(Re){Xe.activeTexture.set(Ke.TEXTURE0);var pt=H.gradientTexture;if(!H.gradient)return;pt||(pt=H.gradientTexture=new i.Texture(Xe,H.gradient,Ke.RGBA)),pt.bind(Ke.LINEAR,Ke.CLAMP_TO_EDGE)}for(var mt=0,Ot=Q;mt<Ot.length;mt+=1){var Rt=Ot[mt],Pt=q.getTile(Rt);if(!ke||Pt.patternsLoaded()){var Vt=Pt.getBucket(H);if(Vt){var It=Vt.programConfigurations.get(H.id),on=N.context.program.get(),Kt=N.useProgram(We,It),Zt=it||Kt.program!==on,yn=ye.constantOr(null);if(yn&&Pt.imageAtlas){var _n=Pt.imageAtlas,Un=_n.patternPositions[yn.to.toString()],Vn=_n.patternPositions[yn.from.toString()];Un&&Vn&&It.setConstantPatternPositions(Un,Vn)}var Zn=ke?Iu(N,Pt,H,He):le?so(N,Pt,H,le,He):Re?Ou(N,Pt,H):su(N,Pt,H);ke?(Xe.activeTexture.set(Ke.TEXTURE0),Pt.imageAtlasTexture.bind(Ke.LINEAR,Ke.CLAMP_TO_EDGE),It.updatePaintBuffers(He)):le&&(Zt||N.lineAtlas.dirty)&&(Xe.activeTexture.set(Ke.TEXTURE0),N.lineAtlas.bind(Xe)),Kt.draw(Xe,Ke.TRIANGLES,U,N.stencilModeForClipping(Rt),ne,Ze.disabled,Zn,H.id,Vt.layoutVertexBuffer,Vt.indexBuffer,Vt.segments,H.paint,N.transform.zoom,It),it=!1}}}}}},fill:function(N,q,H,Q){var ge=H.paint.get("fill-color"),Le=H.paint.get("fill-opacity");if(Le.constantOr(1)!==0){var U=N.colorModeForRenderPass(),ne=H.paint.get("fill-pattern"),le=N.opaquePassEnabledForLayer()&&!ne.constantOr(1)&&ge.constantOr(i.Color.transparent).a===1&&Le.constantOr(0)===1?"opaque":"translucent";if(N.renderPass===le){var ye=N.depthModeForSublayer(1,N.renderPass==="opaque"?Ft.ReadWrite:Ft.ReadOnly);ns(N,q,H,Q,ye,U,!1)}if(N.renderPass==="translucent"&&H.paint.get("fill-antialias")){var ke=N.depthModeForSublayer(H.getPaintProperty("fill-outline-color")?2:0,Ft.ReadOnly);ns(N,q,H,Q,ke,U,!0)}}},"fill-extrusion":function(N,q,H,Q){var ge=H.paint.get("fill-extrusion-opacity");if(ge!==0&&N.renderPass==="translucent"){var Le=new Ft(N.context.gl.LEQUAL,Ft.ReadWrite,N.depthRangeFor3D);if(ge!==1||H.paint.get("fill-extrusion-pattern").constantOr(1))Ts(N,q,H,Q,Le,Je.disabled,et.disabled),Ts(N,q,H,Q,Le,N.stencilModeFor3D(),N.colorModeForRenderPass());else{var U=N.colorModeForRenderPass();Ts(N,q,H,Q,Le,Je.disabled,U)}}},hillshade:function(N,q,H,Q){if(N.renderPass==="offscreen"||N.renderPass==="translucent"){for(var ge=N.context,Le=q.getSource().maxzoom,U=N.depthModeForSublayer(0,Ft.ReadOnly),ne=N.colorModeForRenderPass(),le=N.renderPass==="translucent"?N.stencilConfigForOverlap(Q):[{},Q],ye=le[0],ke=0,Re=le[1];ke<Re.length;ke+=1){var He=Re[ke],We=q.getTile(He);We.needsHillshadePrepare&&N.renderPass==="offscreen"?uu(N,We,H,Le,U,Je.disabled,ne):N.renderPass==="translucent"&&rs(N,We,H,U,ye[He.overscaledZ],ne)}ge.viewport.set([0,0,N.width,N.height])}},raster:function(N,q,H,Q){if(N.renderPass==="translucent"&&H.paint.get("raster-opacity")!==0&&Q.length)for(var ge=N.context,Le=ge.gl,U=q.getSource(),ne=N.useProgram("raster"),le=N.colorModeForRenderPass(),ye=U instanceof j?[{},Q]:N.stencilConfigForOverlap(Q),ke=ye[0],Re=ye[1],He=Re[Re.length-1].overscaledZ,We=!N.options.moving,Xe=0,Ke=Re;Xe<Ke.length;Xe+=1){var it=Ke[Xe],pt=N.depthModeForSublayer(it.overscaledZ-He,H.paint.get("raster-opacity")===1?Ft.ReadWrite:Ft.ReadOnly,Le.LESS),mt=q.getTile(it),Ot=N.transform.calculatePosMatrix(it.toUnwrapped(),We);mt.registerFadeDuration(H.paint.get("raster-fade-duration"));var Rt=q.findLoadedParent(it,0),Pt=_o(mt,Rt,q,H,N.transform),Vt=void 0,It=void 0,on=H.paint.get("raster-resampling")==="nearest"?Le.NEAREST:Le.LINEAR;ge.activeTexture.set(Le.TEXTURE0),mt.texture.bind(on,Le.CLAMP_TO_EDGE,Le.LINEAR_MIPMAP_NEAREST),ge.activeTexture.set(Le.TEXTURE1),Rt?(Rt.texture.bind(on,Le.CLAMP_TO_EDGE,Le.LINEAR_MIPMAP_NEAREST),Vt=Math.pow(2,Rt.tileID.overscaledZ-mt.tileID.overscaledZ),It=[mt.tileID.canonical.x*Vt%1,mt.tileID.canonical.y*Vt%1]):mt.texture.bind(on,Le.CLAMP_TO_EDGE,Le.LINEAR_MIPMAP_NEAREST);var Kt=ts(Ot,It||[0,0],Vt||1,Pt,H);U instanceof j?ne.draw(ge,Le.TRIANGLES,pt,Je.disabled,le,Ze.disabled,Kt,H.id,U.boundsBuffer,N.quadTriangleIndexBuffer,U.boundsSegments):ne.draw(ge,Le.TRIANGLES,pt,ke[it.overscaledZ],le,Ze.disabled,Kt,H.id,N.rasterBoundsBuffer,N.quadTriangleIndexBuffer,N.rasterBoundsSegments)}},background:function(N,q,H){var Q=H.paint.get("background-color"),ge=H.paint.get("background-opacity");if(ge!==0){var Le=N.context,U=Le.gl,ne=N.transform,le=ne.tileSize,ye=H.paint.get("background-pattern");if(!N.isPatternMissing(ye)){var ke=!ye&&Q.a===1&&ge===1&&N.opaquePassEnabledForLayer()?"opaque":"translucent";if(N.renderPass===ke){var Re=Je.disabled,He=N.depthModeForSublayer(0,ke==="opaque"?Ft.ReadWrite:Ft.ReadOnly),We=N.colorModeForRenderPass(),Xe=N.useProgram(ye?"backgroundPattern":"background"),Ke=ne.coveringTiles({tileSize:le});ye&&(Le.activeTexture.set(U.TEXTURE0),N.imageManager.bind(N.context));for(var it=H.getCrossfadeParameters(),pt=0,mt=Ke;pt<mt.length;pt+=1){var Ot=mt[pt],Rt=N.transform.calculatePosMatrix(Ot.toUnwrapped()),Pt=ye?Xs(Rt,ge,N,ye,{tileID:Ot,tileSize:le},it):lo(Rt,ge,Q);Xe.draw(Le,U.TRIANGLES,He,Re,We,Ze.disabled,Pt,H.id,N.tileExtentBuffer,N.quadTriangleIndexBuffer,N.tileExtentSegments)}}}}},debug:function(N,q,H){for(var Q=0;Q<H.length;Q++)jl(N,q,H[Q])},custom:function(N,q,H){var Q=N.context,ge=H.implementation;if(N.renderPass==="offscreen"){var Le=ge.prerender;Le&&(N.setCustomLayerDefaults(),Q.setColorMode(N.colorModeForRenderPass()),Le.call(ge,Q.gl,N.transform.customLayerMatrix()),Q.setDirty(),N.setBaseState())}else if(N.renderPass==="translucent"){N.setCustomLayerDefaults(),Q.setColorMode(N.colorModeForRenderPass()),Q.setStencilMode(Je.disabled);var U=ge.renderingMode==="3d"?new Ft(N.context.gl.LEQUAL,Ft.ReadWrite,N.depthRangeFor3D):N.depthModeForSublayer(0,Ft.ReadOnly);Q.setDepthMode(U),ge.render(Q.gl,N.transform.customLayerMatrix()),Q.setDirty(),N.setBaseState(),Q.bindFramebuffer.set(null)}}},hi=function(N,q){this.context=new Qe(N),this.transform=q,this._tileTextures={},this.setup(),this.numSublayers=st.maxUnderzooming+st.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Wn,this.gpuTimers={}};hi.prototype.resize=function(N,q){if(this.width=N*i.browser.devicePixelRatio,this.height=q*i.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var H=0,Q=this.style._order;H<Q.length;H+=1){var ge=Q[H];this.style._layers[ge].resize()}},hi.prototype.setup=function(){var N=this.context,q=new i.StructArrayLayout2i4;q.emplaceBack(0,0),q.emplaceBack(i.EXTENT,0),q.emplaceBack(0,i.EXTENT),q.emplaceBack(i.EXTENT,i.EXTENT),this.tileExtentBuffer=N.createVertexBuffer(q,sr.members),this.tileExtentSegments=i.SegmentVector.simpleSegment(0,0,4,2);var H=new i.StructArrayLayout2i4;H.emplaceBack(0,0),H.emplaceBack(i.EXTENT,0),H.emplaceBack(0,i.EXTENT),H.emplaceBack(i.EXTENT,i.EXTENT),this.debugBuffer=N.createVertexBuffer(H,sr.members),this.debugSegments=i.SegmentVector.simpleSegment(0,0,4,5);var Q=new i.StructArrayLayout4i8;Q.emplaceBack(0,0,0,0),Q.emplaceBack(i.EXTENT,0,i.EXTENT,0),Q.emplaceBack(0,i.EXTENT,0,i.EXTENT),Q.emplaceBack(i.EXTENT,i.EXTENT,i.EXTENT,i.EXTENT),this.rasterBoundsBuffer=N.createVertexBuffer(Q,V.members),this.rasterBoundsSegments=i.SegmentVector.simpleSegment(0,0,4,2);var ge=new i.StructArrayLayout2i4;ge.emplaceBack(0,0),ge.emplaceBack(1,0),ge.emplaceBack(0,1),ge.emplaceBack(1,1),this.viewportBuffer=N.createVertexBuffer(ge,sr.members),this.viewportSegments=i.SegmentVector.simpleSegment(0,0,4,2);var Le=new i.StructArrayLayout1ui2;Le.emplaceBack(0),Le.emplaceBack(1),Le.emplaceBack(3),Le.emplaceBack(2),Le.emplaceBack(0),this.tileBorderIndexBuffer=N.createIndexBuffer(Le);var U=new i.StructArrayLayout3ui6;U.emplaceBack(0,1,2),U.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=N.createIndexBuffer(U),this.emptyTexture=new i.Texture(N,{width:1,height:1,data:new Uint8Array([0,0,0,0])},N.gl.RGBA);var ne=this.context.gl;this.stencilClearMode=new Je({func:ne.ALWAYS,mask:0},0,255,ne.ZERO,ne.ZERO,ne.ZERO)},hi.prototype.clearStencil=function(){var N=this.context,q=N.gl;this.nextStencilID=1,this.currentStencilSource=void 0;var H=i.create();i.ortho(H,0,this.width,this.height,0,0,1),i.scale(H,H,[q.drawingBufferWidth,q.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(N,q.TRIANGLES,Ft.disabled,this.stencilClearMode,et.disabled,Ze.disabled,uc(H),"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)},hi.prototype._renderTileClippingMasks=function(N,q){if(this.currentStencilSource!==N.source&&N.isTileClipped()&&q&&q.length){this.currentStencilSource=N.source;var H=this.context,Q=H.gl;this.nextStencilID+q.length>256&&this.clearStencil(),H.setColorMode(et.disabled),H.setDepthMode(Ft.disabled);var ge=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var Le=0,U=q;Le<U.length;Le+=1){var ne=U[Le],le=this._tileClippingMaskIDs[ne.key]=this.nextStencilID++;ge.draw(H,Q.TRIANGLES,Ft.disabled,new Je({func:Q.ALWAYS,mask:0},le,255,Q.KEEP,Q.KEEP,Q.REPLACE),et.disabled,Ze.disabled,uc(ne.posMatrix),"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}},hi.prototype.stencilModeFor3D=function(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();var N=this.nextStencilID++,q=this.context.gl;return new Je({func:q.NOTEQUAL,mask:255},N,255,q.KEEP,q.KEEP,q.REPLACE)},hi.prototype.stencilModeForClipping=function(N){var q=this.context.gl;return new Je({func:q.EQUAL,mask:255},this._tileClippingMaskIDs[N.key],0,q.KEEP,q.KEEP,q.REPLACE)},hi.prototype.stencilConfigForOverlap=function(N){var q,H=this.context.gl,Q=N.sort(function(le,ye){return ye.overscaledZ-le.overscaledZ}),ge=Q[Q.length-1].overscaledZ,Le=Q[0].overscaledZ-ge+1;if(Le>1){this.currentStencilSource=void 0,this.nextStencilID+Le>256&&this.clearStencil();for(var U={},ne=0;ne<Le;ne++)U[ne+ge]=new Je({func:H.GEQUAL,mask:255},ne+this.nextStencilID,255,H.KEEP,H.KEEP,H.REPLACE);return this.nextStencilID+=Le,[U,Q]}return[(q={},q[ge]=Je.disabled,q),Q]},hi.prototype.colorModeForRenderPass=function(){var N=this.context.gl;if(this._showOverdrawInspector){var q=.125;return new et([N.CONSTANT_COLOR,N.ONE],new i.Color(q,q,q,0),[!0,!0,!0,!0])}return this.renderPass==="opaque"?et.unblended:et.alphaBlended},hi.prototype.depthModeForSublayer=function(N,q,H){if(!this.opaquePassEnabledForLayer())return Ft.disabled;var Q=1-((1+this.currentLayer)*this.numSublayers+N)*this.depthEpsilon;return new Ft(H||this.context.gl.LEQUAL,q,[Q,Q])},hi.prototype.opaquePassEnabledForLayer=function(){return this.currentLayer<this.opaquePassCutoff},hi.prototype.render=function(N,q){var H=this;this.style=N,this.options=q,this.lineAtlas=N.lineAtlas,this.imageManager=N.imageManager,this.glyphManager=N.glyphManager,this.symbolFadeChange=N.placement.symbolFadeChange(i.browser.now()),this.imageManager.beginFrame();var Q=this.style._order,ge=this.style.sourceCaches;for(var Le in ge){var U=ge[Le];U.used&&U.prepare(this.context)}var ne,le,ye={},ke={},Re={};for(var He in ge){var We=ge[He];ye[He]=We.getVisibleCoordinates(),ke[He]=ye[He].slice().reverse(),Re[He]=We.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(var Xe=0;Xe<Q.length;Xe++){var Ke=Q[Xe];if(this.style._layers[Ke].is3D()){this.opaquePassCutoff=Xe;break}}this.renderPass="offscreen";for(var it=0,pt=Q;it<pt.length;it+=1){var mt=pt[it],Ot=this.style._layers[mt];if(Ot.hasOffscreenPass()&&!Ot.isHidden(this.transform.zoom)){var Rt=ke[Ot.source];(Ot.type==="custom"||Rt.length)&&this.renderLayer(this,ge[Ot.source],Ot,Rt)}}for(this.context.bindFramebuffer.set(null),this.context.clear({color:q.showOverdrawInspector?i.Color.black:i.Color.transparent,depth:1}),this.clearStencil(),this._showOverdrawInspector=q.showOverdrawInspector,this.depthRangeFor3D=[0,1-(N._order.length+2)*this.numSublayers*this.depthEpsilon],this.renderPass="opaque",this.currentLayer=Q.length-1;this.currentLayer>=0;this.currentLayer--){var Pt=this.style._layers[Q[this.currentLayer]],Vt=ge[Pt.source],It=ye[Pt.source];this._renderTileClippingMasks(Pt,It),this.renderLayer(this,Vt,Pt,It)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer<Q.length;this.currentLayer++){var on=this.style._layers[Q[this.currentLayer]],Kt=ge[on.source],Zt=(on.type==="symbol"?Re:ke)[on.source];this._renderTileClippingMasks(on,ye[on.source]),this.renderLayer(this,Kt,on,Zt)}this.options.showTileBoundaries&&(i.values(this.style._layers).forEach(function(yn){yn.source&&!yn.isHidden(H.transform.zoom)&&(yn.source!==(le&&le.id)&&(le=H.style.sourceCaches[yn.source]),(!ne||ne.getSource().maxzoom<le.getSource().maxzoom)&&(ne=le))}),ne&&bl.debug(this,ne,ne.getVisibleCoordinates())),this.options.showPadding&&$s(this),this.context.setDefault()},hi.prototype.renderLayer=function(N,q,H,Q){H.isHidden(this.transform.zoom)||(H.type==="background"||H.type==="custom"||Q.length)&&(this.id=H.id,this.gpuTimingStart(H),bl[H.type](N,q,H,Q,this.style.placement.variableOffsets),this.gpuTimingEnd())},hi.prototype.gpuTimingStart=function(N){if(this.options.gpuTiming){var q=this.context.extTimerQuery,H=this.gpuTimers[N.id];H||(H=this.gpuTimers[N.id]={calls:0,cpuTime:0,query:q.createQueryEXT()}),H.calls++,q.beginQueryEXT(q.TIME_ELAPSED_EXT,H.query)}},hi.prototype.gpuTimingEnd=function(){if(this.options.gpuTiming){var N=this.context.extTimerQuery;N.endQueryEXT(N.TIME_ELAPSED_EXT)}},hi.prototype.collectGpuTimers=function(){var N=this.gpuTimers;return this.gpuTimers={},N},hi.prototype.queryGpuTimers=function(N){var q={};for(var H in N){var Q=N[H],ge=this.context.extTimerQuery,Le=ge.getQueryObjectEXT(Q.query,ge.QUERY_RESULT_EXT)/1e6;ge.deleteQueryEXT(Q.query),q[H]=Le}return q},hi.prototype.translatePosMatrix=function(N,q,H,Q,ge){if(!H[0]&&!H[1])return N;var Le=ge?Q==="map"?this.transform.angle:0:Q==="viewport"?-this.transform.angle:0;if(Le){var U=Math.sin(Le),ne=Math.cos(Le);H=[H[0]*ne-H[1]*U,H[0]*U+H[1]*ne]}var le=[ge?H[0]:Kn(q,H[0],this.transform.zoom),ge?H[1]:Kn(q,H[1],this.transform.zoom),0],ye=new Float32Array(16);return i.translate(ye,N,le),ye},hi.prototype.saveTileTexture=function(N){var q=this._tileTextures[N.size[0]];q?q.push(N):this._tileTextures[N.size[0]]=[N]},hi.prototype.getTileTexture=function(N){var q=this._tileTextures[N];return q&&q.length>0?q.pop():null},hi.prototype.isPatternMissing=function(N){if(!N)return!1;if(!N.from||!N.to)return!0;var q=this.imageManager.getPattern(N.from.toString()),H=this.imageManager.getPattern(N.to.toString());return!q||!H},hi.prototype.useProgram=function(N,q){this.cache=this.cache||{};var H=""+N+(q?q.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[H]||(this.cache[H]=new Jo(this.context,No[N],q,$c[N],this._showOverdrawInspector)),this.cache[H]},hi.prototype.setCustomLayerDefaults=function(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()},hi.prototype.setBaseState=function(){var N=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(N.FUNC_ADD)},hi.prototype.initDebugOverlayCanvas=function(){if(this.debugOverlayCanvas==null){this.debugOverlayCanvas=i.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var N=this.context.gl;this.debugOverlayTexture=new i.Texture(this.context,this.debugOverlayCanvas,N.RGBA)}},hi.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var Ms=function(N,q){this.points=N,this.planes=q};Ms.fromInvProjectionMatrix=function(N,q,H){var Q=Math.pow(2,H),ge=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map(function(U){return i.transformMat4([],U,N)}).map(function(U){return i.scale$1([],U,1/U[3]/q*Q)}),Le=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map(function(U){var ne=i.sub([],ge[U[0]],ge[U[1]]),le=i.sub([],ge[U[2]],ge[U[1]]),ye=i.normalize([],i.cross([],ne,le)),ke=-i.dot(ye,ge[U[1]]);return ye.concat(ke)});return new Ms(ge,Le)};var is=function(N,q){this.min=N,this.max=q,this.center=i.scale$2([],i.add([],this.min,this.max),.5)};is.prototype.quadrant=function(N){for(var q=[N%2==0,N<2],H=i.clone$2(this.min),Q=i.clone$2(this.max),ge=0;ge<q.length;ge++)H[ge]=q[ge]?this.min[ge]:this.center[ge],Q[ge]=q[ge]?this.center[ge]:this.max[ge];return Q[2]=this.max[2],new is(H,Q)},is.prototype.distanceX=function(N){return Math.max(Math.min(this.max[0],N[0]),this.min[0])-N[0]},is.prototype.distanceY=function(N){return Math.max(Math.min(this.max[1],N[1]),this.min[1])-N[1]},is.prototype.intersects=function(N){for(var q=[[this.min[0],this.min[1],0,1],[this.max[0],this.min[1],0,1],[this.max[0],this.max[1],0,1],[this.min[0],this.max[1],0,1]],H=!0,Q=0;Q<N.planes.length;Q++){for(var ge=N.planes[Q],Le=0,U=0;U<q.length;U++)Le+=i.dot$1(ge,q[U])>=0;if(Le===0)return 0;Le!==q.length&&(H=!1)}if(H)return 2;for(var ne=0;ne<3;ne++){for(var le=Number.MAX_VALUE,ye=-Number.MAX_VALUE,ke=0;ke<N.points.length;ke++){var Re=N.points[ke][ne]-this.min[ne];le=Math.min(le,Re),ye=Math.max(ye,Re)}if(ye<0||le>this.max[ne]-this.min[ne])return 0}return 1};var ia=function(N,q,H,Q){if(N===void 0&&(N=0),q===void 0&&(q=0),H===void 0&&(H=0),Q===void 0&&(Q=0),isNaN(N)||N<0||isNaN(q)||q<0||isNaN(H)||H<0||isNaN(Q)||Q<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=N,this.bottom=q,this.left=H,this.right=Q};ia.prototype.interpolate=function(N,q,H){return q.top!=null&&N.top!=null&&(this.top=i.number(N.top,q.top,H)),q.bottom!=null&&N.bottom!=null&&(this.bottom=i.number(N.bottom,q.bottom,H)),q.left!=null&&N.left!=null&&(this.left=i.number(N.left,q.left,H)),q.right!=null&&N.right!=null&&(this.right=i.number(N.right,q.right,H)),this},ia.prototype.getCenter=function(N,q){var H=i.clamp((this.left+N-this.right)/2,0,N),Q=i.clamp((this.top+q-this.bottom)/2,0,q);return new i.Point(H,Q)},ia.prototype.equals=function(N){return this.top===N.top&&this.bottom===N.bottom&&this.left===N.left&&this.right===N.right},ia.prototype.clone=function(){return new ia(this.top,this.bottom,this.left,this.right)},ia.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var Kr=function(N,q,H,Q,ge){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=ge===void 0||ge,this._minZoom=N||0,this._maxZoom=q||22,this._minPitch=H??0,this._maxPitch=Q??60,this.setMaxBounds(),this.width=0,this.height=0,this._center=new i.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new ia,this._posMatrixCache={},this._alignedPosMatrixCache={}},ni={minZoom:{configurable:!0},maxZoom:{configurable:!0},minPitch:{configurable:!0},maxPitch:{configurable:!0},renderWorldCopies:{configurable:!0},worldSize:{configurable:!0},centerOffset:{configurable:!0},size:{configurable:!0},bearing:{configurable:!0},pitch:{configurable:!0},fov:{configurable:!0},zoom:{configurable:!0},center:{configurable:!0},padding:{configurable:!0},centerPoint:{configurable:!0},unmodified:{configurable:!0},point:{configurable:!0}};Kr.prototype.clone=function(){var N=new Kr(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return N.tileSize=this.tileSize,N.latRange=this.latRange,N.width=this.width,N.height=this.height,N._center=this._center,N.zoom=this.zoom,N.angle=this.angle,N._fov=this._fov,N._pitch=this._pitch,N._unmodified=this._unmodified,N._edgeInsets=this._edgeInsets.clone(),N._calcMatrices(),N},ni.minZoom.get=function(){return this._minZoom},ni.minZoom.set=function(N){this._minZoom!==N&&(this._minZoom=N,this.zoom=Math.max(this.zoom,N))},ni.maxZoom.get=function(){return this._maxZoom},ni.maxZoom.set=function(N){this._maxZoom!==N&&(this._maxZoom=N,this.zoom=Math.min(this.zoom,N))},ni.minPitch.get=function(){return this._minPitch},ni.minPitch.set=function(N){this._minPitch!==N&&(this._minPitch=N,this.pitch=Math.max(this.pitch,N))},ni.maxPitch.get=function(){return this._maxPitch},ni.maxPitch.set=function(N){this._maxPitch!==N&&(this._maxPitch=N,this.pitch=Math.min(this.pitch,N))},ni.renderWorldCopies.get=function(){return this._renderWorldCopies},ni.renderWorldCopies.set=function(N){N===void 0?N=!0:N===null&&(N=!1),this._renderWorldCopies=N},ni.worldSize.get=function(){return this.tileSize*this.scale},ni.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},ni.size.get=function(){return new i.Point(this.width,this.height)},ni.bearing.get=function(){return-this.angle/Math.PI*180},ni.bearing.set=function(N){var q=-i.wrap(N,-180,180)*Math.PI/180;this.angle!==q&&(this._unmodified=!1,this.angle=q,this._calcMatrices(),this.rotationMatrix=i.create$2(),i.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},ni.pitch.get=function(){return this._pitch/Math.PI*180},ni.pitch.set=function(N){var q=i.clamp(N,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==q&&(this._unmodified=!1,this._pitch=q,this._calcMatrices())},ni.fov.get=function(){return this._fov/Math.PI*180},ni.fov.set=function(N){N=Math.max(.01,Math.min(60,N)),this._fov!==N&&(this._unmodified=!1,this._fov=N/180*Math.PI,this._calcMatrices())},ni.zoom.get=function(){return this._zoom},ni.zoom.set=function(N){var q=Math.min(Math.max(N,this.minZoom),this.maxZoom);this._zoom!==q&&(this._unmodified=!1,this._zoom=q,this.scale=this.zoomScale(q),this.tileZoom=Math.floor(q),this.zoomFraction=q-this.tileZoom,this._constrain(),this._calcMatrices())},ni.center.get=function(){return this._center},ni.center.set=function(N){N.lat===this._center.lat&&N.lng===this._center.lng||(this._unmodified=!1,this._center=N,this._constrain(),this._calcMatrices())},ni.padding.get=function(){return this._edgeInsets.toJSON()},ni.padding.set=function(N){this._edgeInsets.equals(N)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,N,1),this._calcMatrices())},ni.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},Kr.prototype.isPaddingEqual=function(N){return this._edgeInsets.equals(N)},Kr.prototype.interpolatePadding=function(N,q,H){this._unmodified=!1,this._edgeInsets.interpolate(N,q,H),this._constrain(),this._calcMatrices()},Kr.prototype.coveringZoomLevel=function(N){var q=(N.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/N.tileSize));return Math.max(0,q)},Kr.prototype.getVisibleUnwrappedCoordinates=function(N){var q=[new i.UnwrappedTileID(0,N)];if(this._renderWorldCopies)for(var H=this.pointCoordinate(new i.Point(0,0)),Q=this.pointCoordinate(new i.Point(this.width,0)),ge=this.pointCoordinate(new i.Point(this.width,this.height)),Le=this.pointCoordinate(new i.Point(0,this.height)),U=Math.floor(Math.min(H.x,Q.x,ge.x,Le.x)),ne=Math.floor(Math.max(H.x,Q.x,ge.x,Le.x)),le=U-1;le<=ne+1;le++)le!==0&&q.push(new i.UnwrappedTileID(le,N));return q},Kr.prototype.coveringTiles=function(N){var q=this.coveringZoomLevel(N),H=q;if(N.minzoom!==void 0&&q<N.minzoom)return[];N.maxzoom!==void 0&&q>N.maxzoom&&(q=N.maxzoom);var Q=i.MercatorCoordinate.fromLngLat(this.center),ge=Math.pow(2,q),Le=[ge*Q.x,ge*Q.y,0],U=Ms.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,q),ne=N.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(ne=q);var le=function(Zt){return{aabb:new is([Zt*ge,0,0],[(Zt+1)*ge,ge,0]),zoom:0,x:0,y:0,wrap:Zt,fullyVisible:!1}},ye=[],ke=[],Re=q,He=N.reparseOverscaled?H:q;if(this._renderWorldCopies)for(var We=1;We<=3;We++)ye.push(le(-We)),ye.push(le(We));for(ye.push(le(0));ye.length>0;){var Xe=ye.pop(),Ke=Xe.x,it=Xe.y,pt=Xe.fullyVisible;if(!pt){var mt=Xe.aabb.intersects(U);if(mt===0)continue;pt=mt===2}var Ot=Xe.aabb.distanceX(Le),Rt=Xe.aabb.distanceY(Le),Pt=Math.max(Math.abs(Ot),Math.abs(Rt)),Vt=3+(1<<Re-Xe.zoom)-2;if(Xe.zoom===Re||Pt>Vt&&Xe.zoom>=ne)ke.push({tileID:new i.OverscaledTileID(Xe.zoom===Re?He:Xe.zoom,Xe.wrap,Xe.zoom,Ke,it),distanceSq:i.sqrLen([Le[0]-.5-Ke,Le[1]-.5-it])});else for(var It=0;It<4;It++){var on=(Ke<<1)+It%2,Kt=(it<<1)+(It>>1);ye.push({aabb:Xe.aabb.quadrant(It),zoom:Xe.zoom+1,x:on,y:Kt,wrap:Xe.wrap,fullyVisible:pt})}}return ke.sort(function(Zt,yn){return Zt.distanceSq-yn.distanceSq}).map(function(Zt){return Zt.tileID})},Kr.prototype.resize=function(N,q){this.width=N,this.height=q,this.pixelsToGLUnits=[2/N,-2/q],this._constrain(),this._calcMatrices()},ni.unmodified.get=function(){return this._unmodified},Kr.prototype.zoomScale=function(N){return Math.pow(2,N)},Kr.prototype.scaleZoom=function(N){return Math.log(N)/Math.LN2},Kr.prototype.project=function(N){var q=i.clamp(N.lat,-this.maxValidLatitude,this.maxValidLatitude);return new i.Point(i.mercatorXfromLng(N.lng)*this.worldSize,i.mercatorYfromLat(q)*this.worldSize)},Kr.prototype.unproject=function(N){return new i.MercatorCoordinate(N.x/this.worldSize,N.y/this.worldSize).toLngLat()},ni.point.get=function(){return this.project(this.center)},Kr.prototype.setLocationAtPoint=function(N,q){var H=this.pointCoordinate(q),Q=this.pointCoordinate(this.centerPoint),ge=this.locationCoordinate(N),Le=new i.MercatorCoordinate(ge.x-(H.x-Q.x),ge.y-(H.y-Q.y));this.center=this.coordinateLocation(Le),this._renderWorldCopies&&(this.center=this.center.wrap())},Kr.prototype.locationPoint=function(N){return this.coordinatePoint(this.locationCoordinate(N))},Kr.prototype.pointLocation=function(N){return this.coordinateLocation(this.pointCoordinate(N))},Kr.prototype.locationCoordinate=function(N){return i.MercatorCoordinate.fromLngLat(N)},Kr.prototype.coordinateLocation=function(N){return N.toLngLat()},Kr.prototype.pointCoordinate=function(N){var q=[N.x,N.y,0,1],H=[N.x,N.y,1,1];i.transformMat4(q,q,this.pixelMatrixInverse),i.transformMat4(H,H,this.pixelMatrixInverse);var Q=q[3],ge=H[3],Le=q[0]/Q,U=H[0]/ge,ne=q[1]/Q,le=H[1]/ge,ye=q[2]/Q,ke=H[2]/ge,Re=ye===ke?0:(0-ye)/(ke-ye);return new i.MercatorCoordinate(i.number(Le,U,Re)/this.worldSize,i.number(ne,le,Re)/this.worldSize)},Kr.prototype.coordinatePoint=function(N){var q=[N.x*this.worldSize,N.y*this.worldSize,0,1];return i.transformMat4(q,q,this.pixelMatrix),new i.Point(q[0]/q[3],q[1]/q[3])},Kr.prototype.getBounds=function(){return new i.LngLatBounds().extend(this.pointLocation(new i.Point(0,0))).extend(this.pointLocation(new i.Point(this.width,0))).extend(this.pointLocation(new i.Point(this.width,this.height))).extend(this.pointLocation(new i.Point(0,this.height)))},Kr.prototype.getMaxBounds=function(){return this.latRange&&this.latRange.length===2&&this.lngRange&&this.lngRange.length===2?new i.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null},Kr.prototype.setMaxBounds=function(N){N?(this.lngRange=[N.getWest(),N.getEast()],this.latRange=[N.getSouth(),N.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},Kr.prototype.calculatePosMatrix=function(N,q){q===void 0&&(q=!1);var H=N.key,Q=q?this._alignedPosMatrixCache:this._posMatrixCache;if(Q[H])return Q[H];var ge=N.canonical,Le=this.worldSize/this.zoomScale(ge.z),U=ge.x+Math.pow(2,ge.z)*N.wrap,ne=i.identity(new Float64Array(16));return i.translate(ne,ne,[U*Le,ge.y*Le,0]),i.scale(ne,ne,[Le/i.EXTENT,Le/i.EXTENT,1]),i.multiply(ne,q?this.alignedProjMatrix:this.projMatrix,ne),Q[H]=new Float32Array(ne),Q[H]},Kr.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},Kr.prototype._constrain=function(){if(this.center&&this.width&&this.height&&!this._constraining){this._constraining=!0;var N,q,H,Q,ge=-90,Le=90,U=-180,ne=180,le=this.size,ye=this._unmodified;if(this.latRange){var ke=this.latRange;ge=i.mercatorYfromLat(ke[1])*this.worldSize,N=(Le=i.mercatorYfromLat(ke[0])*this.worldSize)-ge<le.y?le.y/(Le-ge):0}if(this.lngRange){var Re=this.lngRange;U=i.mercatorXfromLng(Re[0])*this.worldSize,q=(ne=i.mercatorXfromLng(Re[1])*this.worldSize)-U<le.x?le.x/(ne-U):0}var He=this.point,We=Math.max(q||0,N||0);if(We)return this.center=this.unproject(new i.Point(q?(ne+U)/2:He.x,N?(Le+ge)/2:He.y)),this.zoom+=this.scaleZoom(We),this._unmodified=ye,void(this._constraining=!1);if(this.latRange){var Xe=He.y,Ke=le.y/2;Xe-Ke<ge&&(Q=ge+Ke),Xe+Ke>Le&&(Q=Le-Ke)}if(this.lngRange){var it=He.x,pt=le.x/2;it-pt<U&&(H=U+pt),it+pt>ne&&(H=ne-pt)}H===void 0&&Q===void 0||(this.center=this.unproject(new i.Point(H!==void 0?H:He.x,Q!==void 0?Q:He.y))),this._unmodified=ye,this._constraining=!1}},Kr.prototype._calcMatrices=function(){if(this.height){var N=this._fov/2,q=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(N)*this.height;var H=Math.PI/2+this._pitch,Q=this._fov*(.5+q.y/this.height),ge=Math.sin(Q)*this.cameraToCenterDistance/Math.sin(i.clamp(Math.PI-H-Q,.01,Math.PI-.01)),Le=this.point,U=Le.x,ne=Le.y,le=1.01*(Math.cos(Math.PI/2-this._pitch)*ge+this.cameraToCenterDistance),ye=this.height/50,ke=new Float64Array(16);i.perspective(ke,this._fov,this.width/this.height,ye,le),ke[8]=2*-q.x/this.width,ke[9]=2*q.y/this.height,i.scale(ke,ke,[1,-1,1]),i.translate(ke,ke,[0,0,-this.cameraToCenterDistance]),i.rotateX(ke,ke,this._pitch),i.rotateZ(ke,ke,this.angle),i.translate(ke,ke,[-U,-ne,0]),this.mercatorMatrix=i.scale([],ke,[this.worldSize,this.worldSize,this.worldSize]),i.scale(ke,ke,[1,1,i.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=ke,this.invProjMatrix=i.invert([],this.projMatrix);var Re=this.width%2/2,He=this.height%2/2,We=Math.cos(this.angle),Xe=Math.sin(this.angle),Ke=U-Math.round(U)+We*Re+Xe*He,it=ne-Math.round(ne)+We*He+Xe*Re,pt=new Float64Array(ke);if(i.translate(pt,pt,[Ke>.5?Ke-1:Ke,it>.5?it-1:it,0]),this.alignedProjMatrix=pt,ke=i.create(),i.scale(ke,ke,[this.width/2,-this.height/2,1]),i.translate(ke,ke,[1,-1,0]),this.labelPlaneMatrix=ke,ke=i.create(),i.scale(ke,ke,[1,-1,1]),i.translate(ke,ke,[-1,-1,0]),i.scale(ke,ke,[2/this.width,2/this.height,1]),this.glCoordMatrix=ke,this.pixelMatrix=i.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),!(ke=i.invert(new Float64Array(16),this.pixelMatrix)))throw new Error("failed to invert matrix");this.pixelMatrixInverse=ke,this._posMatrixCache={},this._alignedPosMatrixCache={}}},Kr.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var N=this.pointCoordinate(new i.Point(0,0)),q=[N.x*this.worldSize,N.y*this.worldSize,0,1];return i.transformMat4(q,q,this.pixelMatrix)[3]/this.cameraToCenterDistance},Kr.prototype.getCameraPoint=function(){var N=this._pitch,q=Math.tan(N)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new i.Point(0,q))},Kr.prototype.getCameraQueryGeometry=function(N){var q=this.getCameraPoint();if(N.length===1)return[N[0],q];for(var H=q.x,Q=q.y,ge=q.x,Le=q.y,U=0,ne=N;U<ne.length;U+=1){var le=ne[U];H=Math.min(H,le.x),Q=Math.min(Q,le.y),ge=Math.max(ge,le.x),Le=Math.max(Le,le.y)}return[new i.Point(H,Q),new i.Point(ge,Q),new i.Point(ge,Le),new i.Point(H,Le),new i.Point(H,Q)]},Object.defineProperties(Kr.prototype,ni);var Ss=function(N){var q,H,Q,ge,Le;this._hashName=N&&encodeURIComponent(N),i.bindAll(["_getCurrentHash","_onHashChange","_updateHash"],this),this._updateHash=(q=this._updateHashUnthrottled.bind(this),H=300,Q=!1,ge=null,Le=function(){ge=null,Q&&(q(),ge=setTimeout(Le,H),Q=!1)},function(){return Q=!0,ge||Le(),ge})};Ss.prototype.addTo=function(N){return this._map=N,i.window.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this},Ss.prototype.remove=function(){return i.window.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),delete this._map,this},Ss.prototype.getHashString=function(N){var q=this._map.getCenter(),H=Math.round(100*this._map.getZoom())/100,Q=Math.ceil((H*Math.LN2+Math.log(512/360/.5))/Math.LN10),ge=Math.pow(10,Q),Le=Math.round(q.lng*ge)/ge,U=Math.round(q.lat*ge)/ge,ne=this._map.getBearing(),le=this._map.getPitch(),ye="";if(ye+=N?"/"+Le+"/"+U+"/"+H:H+"/"+U+"/"+Le,(ne||le)&&(ye+="/"+Math.round(10*ne)/10),le&&(ye+="/"+Math.round(le)),this._hashName){var ke=this._hashName,Re=!1,He=i.window.location.hash.slice(1).split("&").map(function(We){var Xe=We.split("=")[0];return Xe===ke?(Re=!0,Xe+"="+ye):We}).filter(function(We){return We});return Re||He.push(ke+"="+ye),"#"+He.join("&")}return"#"+ye},Ss.prototype._getCurrentHash=function(){var N,q=this,H=i.window.location.hash.replace("#","");return this._hashName?(H.split("&").map(function(Q){return Q.split("=")}).forEach(function(Q){Q[0]===q._hashName&&(N=Q)}),(N&&N[1]||"").split("/")):H.split("/")},Ss.prototype._onHashChange=function(){var N=this._getCurrentHash();if(N.length>=3&&!N.some(function(H){return isNaN(H)})){var q=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(N[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+N[2],+N[1]],zoom:+N[0],bearing:q,pitch:+(N[4]||0)}),!0}return!1},Ss.prototype._updateHashUnthrottled=function(){var N=this.getHashString();try{i.window.history.replaceState(i.window.history.state,"",N)}catch{}};var as={linearity:.3,easing:i.bezier(0,0,.3,1)},zu=i.extend({deceleration:2500,maxSpeed:1400},as),Ul=i.extend({deceleration:20,maxSpeed:1400},as),Es=i.extend({deceleration:1e3,maxSpeed:360},as),Vl=i.extend({deceleration:1e3,maxSpeed:90},as),os=function(N){this._map=N,this.clear()};function Js(N,q){(!N.duration||N.duration<q.duration)&&(N.duration=q.duration,N.easing=q.easing)}function Cs(N,q,H){var Q=H.maxSpeed,ge=H.linearity,Le=H.deceleration,U=i.clamp(N*ge/(q/1e3),-Q,Q),ne=Math.abs(U)/(Le*ge);return{easing:H.easing,duration:1e3*ne,amount:U*(ne/2)}}os.prototype.clear=function(){this._inertiaBuffer=[]},os.prototype.record=function(N){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:i.browser.now(),settings:N})},os.prototype._drainInertiaBuffer=function(){for(var N=this._inertiaBuffer,q=i.browser.now();N.length>0&&q-N[0].time>160;)N.shift()},os.prototype._onMoveEnd=function(N){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var q={zoom:0,bearing:0,pitch:0,pan:new i.Point(0,0),pinchAround:void 0,around:void 0},H=0,Q=this._inertiaBuffer;H<Q.length;H+=1){var ge=Q[H].settings;q.zoom+=ge.zoomDelta||0,q.bearing+=ge.bearingDelta||0,q.pitch+=ge.pitchDelta||0,ge.panDelta&&q.pan._add(ge.panDelta),ge.around&&(q.around=ge.around),ge.pinchAround&&(q.pinchAround=ge.pinchAround)}var Le=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,U={};if(q.pan.mag()){var ne=Cs(q.pan.mag(),Le,i.extend({},zu,N||{}));U.offset=q.pan.mult(ne.amount/q.pan.mag()),U.center=this._map.transform.center,Js(U,ne)}if(q.zoom){var le=Cs(q.zoom,Le,Ul);U.zoom=this._map.transform.zoom+le.amount,Js(U,le)}if(q.bearing){var ye=Cs(q.bearing,Le,Es);U.bearing=this._map.transform.bearing+i.clamp(ye.amount,-179,179),Js(U,ye)}if(q.pitch){var ke=Cs(q.pitch,Le,Vl);U.pitch=this._map.transform.pitch+ke.amount,Js(U,ke)}if(U.zoom||U.bearing){var Re=q.pinchAround===void 0?q.around:q.pinchAround;U.around=Re?this._map.unproject(Re):this._map.getCenter()}return this.clear(),i.extend(U,{noMoveStart:!0})}};var Ci=function(N){function q(Q,ge,Le,U){U===void 0&&(U={});var ne=y.mousePos(ge.getCanvasContainer(),Le),le=ge.unproject(ne);N.call(this,Q,i.extend({point:ne,lngLat:le,originalEvent:Le},U)),this._defaultPrevented=!1,this.target=ge}N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q;var H={defaultPrevented:{configurable:!0}};return q.prototype.preventDefault=function(){this._defaultPrevented=!0},H.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(q.prototype,H),q}(i.Event),Qs=function(N){function q(Q,ge,Le){var U=Q==="touchend"?Le.changedTouches:Le.touches,ne=y.touchPos(ge.getCanvasContainer(),U),le=ne.map(function(Re){return ge.unproject(Re)}),ye=ne.reduce(function(Re,He,We,Xe){return Re.add(He.div(Xe.length))},new i.Point(0,0)),ke=ge.unproject(ye);N.call(this,Q,{points:ne,point:ye,lngLats:le,lngLat:ke,originalEvent:Le}),this._defaultPrevented=!1}N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q;var H={defaultPrevented:{configurable:!0}};return q.prototype.preventDefault=function(){this._defaultPrevented=!0},H.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(q.prototype,H),q}(i.Event),el=function(N){function q(Q,ge,Le){N.call(this,Q,{originalEvent:Le}),this._defaultPrevented=!1}N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q;var H={defaultPrevented:{configurable:!0}};return q.prototype.preventDefault=function(){this._defaultPrevented=!0},H.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(q.prototype,H),q}(i.Event),Xi=function(N,q){this._map=N,this._clickTolerance=q.clickTolerance};Xi.prototype.reset=function(){delete this._mousedownPos},Xi.prototype.wheel=function(N){return this._firePreventable(new el(N.type,this._map,N))},Xi.prototype.mousedown=function(N,q){return this._mousedownPos=q,this._firePreventable(new Ci(N.type,this._map,N))},Xi.prototype.mouseup=function(N){this._map.fire(new Ci(N.type,this._map,N))},Xi.prototype.click=function(N,q){this._mousedownPos&&this._mousedownPos.dist(q)>=this._clickTolerance||this._map.fire(new Ci(N.type,this._map,N))},Xi.prototype.dblclick=function(N){return this._firePreventable(new Ci(N.type,this._map,N))},Xi.prototype.mouseover=function(N){this._map.fire(new Ci(N.type,this._map,N))},Xi.prototype.mouseout=function(N){this._map.fire(new Ci(N.type,this._map,N))},Xi.prototype.touchstart=function(N){return this._firePreventable(new Qs(N.type,this._map,N))},Xi.prototype.touchmove=function(N){this._map.fire(new Qs(N.type,this._map,N))},Xi.prototype.touchend=function(N){this._map.fire(new Qs(N.type,this._map,N))},Xi.prototype.touchcancel=function(N){this._map.fire(new Qs(N.type,this._map,N))},Xi.prototype._firePreventable=function(N){if(this._map.fire(N),N.defaultPrevented)return{}},Xi.prototype.isEnabled=function(){return!0},Xi.prototype.isActive=function(){return!1},Xi.prototype.enable=function(){},Xi.prototype.disable=function(){};var xa=function(N){this._map=N};xa.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},xa.prototype.mousemove=function(N){this._map.fire(new Ci(N.type,this._map,N))},xa.prototype.mousedown=function(){this._delayContextMenu=!0},xa.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new Ci("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},xa.prototype.contextmenu=function(N){this._delayContextMenu?this._contextMenuEvent=N:this._map.fire(new Ci(N.type,this._map,N)),this._map.listens("contextmenu")&&N.preventDefault()},xa.prototype.isEnabled=function(){return!0},xa.prototype.isActive=function(){return!1},xa.prototype.enable=function(){},xa.prototype.disable=function(){};var da=function(N,q){this._map=N,this._el=N.getCanvasContainer(),this._container=N.getContainer(),this._clickTolerance=q.clickTolerance||1};function $i(N,q){for(var H={},Q=0;Q<N.length;Q++)H[N[Q].identifier]=q[Q];return H}da.prototype.isEnabled=function(){return!!this._enabled},da.prototype.isActive=function(){return!!this._active},da.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},da.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},da.prototype.mousedown=function(N,q){this.isEnabled()&&N.shiftKey&&N.button===0&&(y.disableDrag(),this._startPos=this._lastPos=q,this._active=!0)},da.prototype.mousemoveWindow=function(N,q){if(this._active){var H=q;if(!(this._lastPos.equals(H)||!this._box&&H.dist(this._startPos)<this._clickTolerance)){var Q=this._startPos;this._lastPos=H,this._box||(this._box=y.create("div","mapboxgl-boxzoom",this._container),this._container.classList.add("mapboxgl-crosshair"),this._fireEvent("boxzoomstart",N));var ge=Math.min(Q.x,H.x),Le=Math.max(Q.x,H.x),U=Math.min(Q.y,H.y),ne=Math.max(Q.y,H.y);y.setTransform(this._box,"translate("+ge+"px,"+U+"px)"),this._box.style.width=Le-ge+"px",this._box.style.height=ne-U+"px"}}},da.prototype.mouseupWindow=function(N,q){var H=this;if(this._active&&N.button===0){var Q=this._startPos,ge=q;if(this.reset(),y.suppressClick(),Q.x!==ge.x||Q.y!==ge.y)return this._map.fire(new i.Event("boxzoomend",{originalEvent:N})),{cameraAnimation:function(Le){return Le.fitScreenCoordinates(Q,ge,H._map.getBearing(),{linear:!0})}};this._fireEvent("boxzoomcancel",N)}},da.prototype.keydown=function(N){this._active&&N.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",N))},da.prototype.reset=function(){this._active=!1,this._container.classList.remove("mapboxgl-crosshair"),this._box&&(y.remove(this._box),this._box=null),y.enableDrag(),delete this._startPos,delete this._lastPos},da.prototype._fireEvent=function(N,q){return this._map.fire(new i.Event(N,{originalEvent:q}))};var La=function(N){this.reset(),this.numTouches=N.numTouches};La.prototype.reset=function(){delete this.centroid,delete this.startTime,delete this.touches,this.aborted=!1},La.prototype.touchstart=function(N,q,H){(this.centroid||H.length>this.numTouches)&&(this.aborted=!0),this.aborted||(this.startTime===void 0&&(this.startTime=N.timeStamp),H.length===this.numTouches&&(this.centroid=function(Q){for(var ge=new i.Point(0,0),Le=0,U=Q;Le<U.length;Le+=1){var ne=U[Le];ge._add(ne)}return ge.div(Q.length)}(q),this.touches=$i(H,q)))},La.prototype.touchmove=function(N,q,H){if(!this.aborted&&this.centroid){var Q=$i(H,q);for(var ge in this.touches){var Le=this.touches[ge],U=Q[ge];(!U||U.dist(Le)>30)&&(this.aborted=!0)}}},La.prototype.touchend=function(N,q,H){if((!this.centroid||N.timeStamp-this.startTime>500)&&(this.aborted=!0),H.length===0){var Q=!this.aborted&&this.centroid;if(this.reset(),Q)return Q}};var Ls=function(N){this.singleTap=new La(N),this.numTaps=N.numTaps,this.reset()};Ls.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Ls.prototype.touchstart=function(N,q,H){this.singleTap.touchstart(N,q,H)},Ls.prototype.touchmove=function(N,q,H){this.singleTap.touchmove(N,q,H)},Ls.prototype.touchend=function(N,q,H){var Q=this.singleTap.touchend(N,q,H);if(Q){var ge=N.timeStamp-this.lastTime<500,Le=!this.lastTap||this.lastTap.dist(Q)<30;if(ge&&Le||this.reset(),this.count++,this.lastTime=N.timeStamp,this.lastTap=Q,this.count===this.numTaps)return this.reset(),Q}};var wo=function(){this._zoomIn=new Ls({numTouches:1,numTaps:2}),this._zoomOut=new Ls({numTouches:2,numTaps:1}),this.reset()};wo.prototype.reset=function(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()},wo.prototype.touchstart=function(N,q,H){this._zoomIn.touchstart(N,q,H),this._zoomOut.touchstart(N,q,H)},wo.prototype.touchmove=function(N,q,H){this._zoomIn.touchmove(N,q,H),this._zoomOut.touchmove(N,q,H)},wo.prototype.touchend=function(N,q,H){var Q=this,ge=this._zoomIn.touchend(N,q,H),Le=this._zoomOut.touchend(N,q,H);return ge?(this._active=!0,N.preventDefault(),setTimeout(function(){return Q.reset()},0),{cameraAnimation:function(U){return U.easeTo({duration:300,zoom:U.getZoom()+1,around:U.unproject(ge)},{originalEvent:N})}}):Le?(this._active=!0,N.preventDefault(),setTimeout(function(){return Q.reset()},0),{cameraAnimation:function(U){return U.easeTo({duration:300,zoom:U.getZoom()-1,around:U.unproject(Le)},{originalEvent:N})}}):void 0},wo.prototype.touchcancel=function(){this.reset()},wo.prototype.enable=function(){this._enabled=!0},wo.prototype.disable=function(){this._enabled=!1,this.reset()},wo.prototype.isEnabled=function(){return this._enabled},wo.prototype.isActive=function(){return this._active};var aa=function(N){this.reset(),this._clickTolerance=N.clickTolerance||1};aa.prototype.reset=function(){this._active=!1,this._moved=!1,delete this._lastPoint,delete this._eventButton},aa.prototype._correctButton=function(N,q){return!1},aa.prototype._move=function(N,q){return{}},aa.prototype.mousedown=function(N,q){if(!this._lastPoint){var H=y.mouseButton(N);this._correctButton(N,H)&&(this._lastPoint=q,this._eventButton=H)}},aa.prototype.mousemoveWindow=function(N,q){var H=this._lastPoint;if(H&&(N.preventDefault(),this._moved||!(q.dist(H)<this._clickTolerance)))return this._moved=!0,this._lastPoint=q,this._move(H,q)},aa.prototype.mouseupWindow=function(N){y.mouseButton(N)===this._eventButton&&(this._moved&&y.suppressClick(),this.reset())},aa.prototype.enable=function(){this._enabled=!0},aa.prototype.disable=function(){this._enabled=!1,this.reset()},aa.prototype.isEnabled=function(){return this._enabled},aa.prototype.isActive=function(){return this._active};var eo=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.mousedown=function(H,Q){N.prototype.mousedown.call(this,H,Q),this._lastPoint&&(this._active=!0)},q.prototype._correctButton=function(H,Q){return Q===0&&!H.ctrlKey},q.prototype._move=function(H,Q){return{around:Q,panDelta:Q.sub(H)}},q}(aa),uo=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype._correctButton=function(H,Q){return Q===0&&H.ctrlKey||Q===2},q.prototype._move=function(H,Q){var ge=.8*(Q.x-H.x);if(ge)return this._active=!0,{bearingDelta:ge}},q.prototype.contextmenu=function(H){H.preventDefault()},q}(aa),hu=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype._correctButton=function(H,Q){return Q===0&&H.ctrlKey||Q===2},q.prototype._move=function(H,Q){var ge=-.5*(Q.y-H.y);if(ge)return this._active=!0,{pitchDelta:ge}},q.prototype.contextmenu=function(H){H.preventDefault()},q}(aa),co=function(N){this._minTouches=1,this._clickTolerance=N.clickTolerance||1,this.reset()};co.prototype.reset=function(){this._active=!1,this._touches={},this._sum=new i.Point(0,0)},co.prototype.touchstart=function(N,q,H){return this._calculateTransform(N,q,H)},co.prototype.touchmove=function(N,q,H){if(this._active)return N.preventDefault(),this._calculateTransform(N,q,H)},co.prototype.touchend=function(N,q,H){this._calculateTransform(N,q,H),this._active&&H.length<this._minTouches&&this.reset()},co.prototype.touchcancel=function(){this.reset()},co.prototype._calculateTransform=function(N,q,H){H.length>0&&(this._active=!0);var Q=$i(H,q),ge=new i.Point(0,0),Le=new i.Point(0,0),U=0;for(var ne in Q){var le=Q[ne],ye=this._touches[ne];ye&&(ge._add(le),Le._add(le.sub(ye)),U++,Q[ne]=le)}if(this._touches=Q,!(U<this._minTouches)&&Le.mag()){var ke=Le.div(U);if(this._sum._add(ke),!(this._sum.mag()<this._clickTolerance))return{around:ge.div(U),panDelta:ke}}},co.prototype.enable=function(){this._enabled=!0},co.prototype.disable=function(){this._enabled=!1,this.reset()},co.prototype.isEnabled=function(){return this._enabled},co.prototype.isActive=function(){return this._active};var oa=function(){this.reset()};function Sr(N,q,H){for(var Q=0;Q<N.length;Q++)if(N[Q].identifier===H)return q[Q]}oa.prototype.reset=function(){this._active=!1,delete this._firstTwoTouches},oa.prototype._start=function(N){},oa.prototype._move=function(N,q,H){return{}},oa.prototype.touchstart=function(N,q,H){this._firstTwoTouches||H.length<2||(this._firstTwoTouches=[H[0].identifier,H[1].identifier],this._start([q[0],q[1]]))},oa.prototype.touchmove=function(N,q,H){if(this._firstTwoTouches){N.preventDefault();var Q=this._firstTwoTouches,ge=Q[0],Le=Q[1],U=Sr(H,q,ge),ne=Sr(H,q,Le);if(U&&ne){var le=this._aroundCenter?null:U.add(ne).div(2);return this._move([U,ne],le,N)}}},oa.prototype.touchend=function(N,q,H){if(this._firstTwoTouches){var Q=this._firstTwoTouches,ge=Q[0],Le=Q[1],U=Sr(H,q,ge),ne=Sr(H,q,Le);U&&ne||(this._active&&y.suppressClick(),this.reset())}},oa.prototype.touchcancel=function(){this.reset()},oa.prototype.enable=function(N){this._enabled=!0,this._aroundCenter=!!N&&N.around==="center"},oa.prototype.disable=function(){this._enabled=!1,this.reset()},oa.prototype.isEnabled=function(){return this._enabled},oa.prototype.isActive=function(){return this._active};function ba(N,q){return Math.log(N/q)/Math.LN2}var Hl=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.reset=function(){N.prototype.reset.call(this),delete this._distance,delete this._startDistance},q.prototype._start=function(H){this._startDistance=this._distance=H[0].dist(H[1])},q.prototype._move=function(H,Q){var ge=this._distance;if(this._distance=H[0].dist(H[1]),this._active||!(Math.abs(ba(this._distance,this._startDistance))<.1))return this._active=!0,{zoomDelta:ba(this._distance,ge),pinchAround:Q}},q}(oa);function pu(N,q){return 180*N.angleWith(q)/Math.PI}var tl=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.reset=function(){N.prototype.reset.call(this),delete this._minDiameter,delete this._startVector,delete this._vector},q.prototype._start=function(H){this._startVector=this._vector=H[0].sub(H[1]),this._minDiameter=H[0].dist(H[1])},q.prototype._move=function(H,Q){var ge=this._vector;if(this._vector=H[0].sub(H[1]),this._active||!this._isBelowThreshold(this._vector))return this._active=!0,{bearingDelta:pu(this._vector,ge),pinchAround:Q}},q.prototype._isBelowThreshold=function(H){this._minDiameter=Math.min(this._minDiameter,H.mag());var Q=25/(Math.PI*this._minDiameter)*360,ge=pu(H,this._startVector);return Math.abs(ge)<Q},q}(oa);function nl(N){return Math.abs(N.y)>Math.abs(N.x)}var ss=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.reset=function(){N.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},q.prototype._start=function(H){this._lastPoints=H,nl(H[0].sub(H[1]))&&(this._valid=!1)},q.prototype._move=function(H,Q,ge){var Le=H[0].sub(this._lastPoints[0]),U=H[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(Le,U,ge.timeStamp),this._valid)return this._lastPoints=H,this._active=!0,{pitchDelta:(Le.y+U.y)/2*-.5}},q.prototype.gestureBeginsVertically=function(H,Q,ge){if(this._valid!==void 0)return this._valid;var Le=H.mag()>=2,U=Q.mag()>=2;if(Le||U){if(!Le||!U)return this._firstMove===void 0&&(this._firstMove=ge),ge-this._firstMove<100&&void 0;var ne=H.y>0==Q.y>0;return nl(H)&&nl(Q)&&ne}},q}(oa),Tr={panStep:100,bearingStep:15,pitchStep:10},ko=function(){var N=Tr;this._panStep=N.panStep,this._bearingStep=N.bearingStep,this._pitchStep=N.pitchStep};function _l(N){return N*(2-N)}ko.prototype.reset=function(){this._active=!1},ko.prototype.keydown=function(N){var q=this;if(!(N.altKey||N.ctrlKey||N.metaKey)){var H=0,Q=0,ge=0,Le=0,U=0;switch(N.keyCode){case 61:case 107:case 171:case 187:H=1;break;case 189:case 109:case 173:H=-1;break;case 37:N.shiftKey?Q=-1:(N.preventDefault(),Le=-1);break;case 39:N.shiftKey?Q=1:(N.preventDefault(),Le=1);break;case 38:N.shiftKey?ge=1:(N.preventDefault(),U=-1);break;case 40:N.shiftKey?ge=-1:(N.preventDefault(),U=1);break;default:return}return{cameraAnimation:function(ne){var le=ne.getZoom();ne.easeTo({duration:300,easeId:"keyboardHandler",easing:_l,zoom:H?Math.round(le)+H*(N.shiftKey?2:1):le,bearing:ne.getBearing()+Q*q._bearingStep,pitch:ne.getPitch()+ge*q._pitchStep,offset:[-Le*q._panStep,-U*q._panStep],center:ne.getCenter()},{originalEvent:N})}}}},ko.prototype.enable=function(){this._enabled=!0},ko.prototype.disable=function(){this._enabled=!1,this.reset()},ko.prototype.isEnabled=function(){return this._enabled},ko.prototype.isActive=function(){return this._active};var ql=4.000244140625,_a=function(N,q){this._map=N,this._el=N.getCanvasContainer(),this._handler=q,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222,i.bindAll(["_onWheel","_onTimeout","_onScrollFrame","_onScrollFinished"],this)};_a.prototype.setZoomRate=function(N){this._defaultZoomRate=N},_a.prototype.setWheelZoomRate=function(N){this._wheelZoomRate=N},_a.prototype.isEnabled=function(){return!!this._enabled},_a.prototype.isActive=function(){return!!this._active||this._finishTimeout!==void 0},_a.prototype.isZooming=function(){return!!this._zooming},_a.prototype.enable=function(N){this.isEnabled()||(this._enabled=!0,this._aroundCenter=N&&N.around==="center")},_a.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},_a.prototype.wheel=function(N){if(this.isEnabled()){var q=N.deltaMode===i.window.WheelEvent.DOM_DELTA_LINE?40*N.deltaY:N.deltaY,H=i.browser.now(),Q=H-(this._lastWheelEventTime||0);this._lastWheelEventTime=H,q!==0&&q%ql==0?this._type="wheel":q!==0&&Math.abs(q)<4?this._type="trackpad":Q>400?(this._type=null,this._lastValue=q,this._timeout=setTimeout(this._onTimeout,40,N)):this._type||(this._type=Math.abs(Q*q)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,q+=this._lastValue)),N.shiftKey&&q&&(q/=4),this._type&&(this._lastWheelEvent=N,this._delta-=q,this._active||this._start(N)),N.preventDefault()}},_a.prototype._onTimeout=function(N){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(N)},_a.prototype._start=function(N){if(this._delta){this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);var q=y.mousePos(this._el,N);this._around=i.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(q)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},_a.prototype.renderFrame=function(){return this._onScrollFrame()},_a.prototype._onScrollFrame=function(){var N=this;if(this._frameId&&(this._frameId=null,this.isActive())){var q=this._map.transform;if(this._delta!==0){var H=this._type==="wheel"&&Math.abs(this._delta)>ql?this._wheelZoomRate:this._defaultZoomRate,Q=2/(1+Math.exp(-Math.abs(this._delta*H)));this._delta<0&&Q!==0&&(Q=1/Q);var ge=typeof this._targetZoom=="number"?q.zoomScale(this._targetZoom):q.scale;this._targetZoom=Math.min(q.maxZoom,Math.max(q.minZoom,q.scaleZoom(ge*Q))),this._type==="wheel"&&(this._startZoom=q.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var Le,U=typeof this._targetZoom=="number"?this._targetZoom:q.zoom,ne=this._startZoom,le=this._easing,ye=!1;if(this._type==="wheel"&&ne&&le){var ke=Math.min((i.browser.now()-this._lastWheelEventTime)/200,1),Re=le(ke);Le=i.number(ne,U,Re),ke<1?this._frameId||(this._frameId=!0):ye=!0}else Le=U,ye=!0;return this._active=!0,ye&&(this._active=!1,this._finishTimeout=setTimeout(function(){N._zooming=!1,N._handler._triggerRenderFrame(),delete N._targetZoom,delete N._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!ye,zoomDelta:Le-q.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},_a.prototype._smoothOutEasing=function(N){var q=i.ease;if(this._prevEase){var H=this._prevEase,Q=(i.browser.now()-H.start)/H.duration,ge=H.easing(Q+.01)-H.easing(Q),Le=.27/Math.sqrt(ge*ge+1e-4)*.01,U=Math.sqrt(.0729-Le*Le);q=i.bezier(Le,U,.25,1)}return this._prevEase={start:i.browser.now(),duration:N,easing:q},q},_a.prototype.reset=function(){this._active=!1};var To=function(N,q){this._clickZoom=N,this._tapZoom=q};To.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},To.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},To.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},To.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var fo=function(){this.reset()};fo.prototype.reset=function(){this._active=!1},fo.prototype.dblclick=function(N,q){return N.preventDefault(),{cameraAnimation:function(H){H.easeTo({duration:300,zoom:H.getZoom()+(N.shiftKey?-1:1),around:H.unproject(q)},{originalEvent:N})}}},fo.prototype.enable=function(){this._enabled=!0},fo.prototype.disable=function(){this._enabled=!1,this.reset()},fo.prototype.isEnabled=function(){return this._enabled},fo.prototype.isActive=function(){return this._active};var to=function(){this._tap=new Ls({numTouches:1,numTaps:1}),this.reset()};to.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},to.prototype.touchstart=function(N,q,H){this._swipePoint||(this._tapTime&&N.timeStamp-this._tapTime>500&&this.reset(),this._tapTime?H.length>0&&(this._swipePoint=q[0],this._swipeTouch=H[0].identifier):this._tap.touchstart(N,q,H))},to.prototype.touchmove=function(N,q,H){if(this._tapTime){if(this._swipePoint){if(H[0].identifier!==this._swipeTouch)return;var Q=q[0],ge=Q.y-this._swipePoint.y;return this._swipePoint=Q,N.preventDefault(),this._active=!0,{zoomDelta:ge/128}}}else this._tap.touchmove(N,q,H)},to.prototype.touchend=function(N,q,H){this._tapTime?this._swipePoint&&H.length===0&&this.reset():this._tap.touchend(N,q,H)&&(this._tapTime=N.timeStamp)},to.prototype.touchcancel=function(){this.reset()},to.prototype.enable=function(){this._enabled=!0},to.prototype.disable=function(){this._enabled=!1,this.reset()},to.prototype.isEnabled=function(){return this._enabled},to.prototype.isActive=function(){return this._active};var Uo=function(N,q,H){this._el=N,this._mousePan=q,this._touchPan=H};Uo.prototype.enable=function(N){this._inertiaOptions=N||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},Uo.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},Uo.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},Uo.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var ls=function(N,q,H){this._pitchWithRotate=N.pitchWithRotate,this._mouseRotate=q,this._mousePitch=H};ls.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},ls.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},ls.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},ls.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var Ki=function(N,q,H,Q){this._el=N,this._touchZoom=q,this._touchRotate=H,this._tapDragZoom=Q,this._rotationDisabled=!1,this._enabled=!0};Ki.prototype.enable=function(N){this._touchZoom.enable(N),this._rotationDisabled||this._touchRotate.enable(N),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},Ki.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},Ki.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},Ki.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},Ki.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},Ki.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var rl=function(N){return N.zoom||N.drag||N.pitch||N.rotate},wl=function(N){function q(){N.apply(this,arguments)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q}(i.Event);function sa(N){return N.panDelta&&N.panDelta.mag()||N.zoomDelta||N.bearingDelta||N.pitchDelta}var pi=function(N,q){this._map=N,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new os(N),this._bearingSnap=q.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(q),i.bindAll(["handleEvent","handleWindowEvent"],this);var H=this._el;this._listeners=[[H,"touchstart",{passive:!1}],[H,"touchmove",{passive:!1}],[H,"touchend",void 0],[H,"touchcancel",void 0],[H,"mousedown",void 0],[H,"mousemove",void 0],[H,"mouseup",void 0],[i.window.document,"mousemove",{capture:!0}],[i.window.document,"mouseup",void 0],[H,"mouseover",void 0],[H,"mouseout",void 0],[H,"dblclick",void 0],[H,"click",void 0],[H,"keydown",{capture:!1}],[H,"keyup",void 0],[H,"wheel",{passive:!1}],[H,"contextmenu",void 0],[i.window,"blur",void 0]];for(var Q=0,ge=this._listeners;Q<ge.length;Q+=1){var Le=ge[Q],U=Le[0],ne=Le[1],le=Le[2];y.addEventListener(U,ne,U===i.window.document?this.handleWindowEvent:this.handleEvent,le)}};pi.prototype.destroy=function(){for(var N=0,q=this._listeners;N<q.length;N+=1){var H=q[N],Q=H[0],ge=H[1],Le=H[2];y.removeEventListener(Q,ge,Q===i.window.document?this.handleWindowEvent:this.handleEvent,Le)}},pi.prototype._addDefaultHandlers=function(N){var q=this._map,H=q.getCanvasContainer();this._add("mapEvent",new Xi(q,N));var Q=q.boxZoom=new da(q,N);this._add("boxZoom",Q);var ge=new wo,Le=new fo;q.doubleClickZoom=new To(Le,ge),this._add("tapZoom",ge),this._add("clickZoom",Le);var U=new to;this._add("tapDragZoom",U);var ne=q.touchPitch=new ss;this._add("touchPitch",ne);var le=new uo(N),ye=new hu(N);q.dragRotate=new ls(N,le,ye),this._add("mouseRotate",le,["mousePitch"]),this._add("mousePitch",ye,["mouseRotate"]);var ke=new eo(N),Re=new co(N);q.dragPan=new Uo(H,ke,Re),this._add("mousePan",ke),this._add("touchPan",Re,["touchZoom","touchRotate"]);var He=new tl,We=new Hl;q.touchZoomRotate=new Ki(H,We,He,U),this._add("touchRotate",He,["touchPan","touchZoom"]),this._add("touchZoom",We,["touchPan","touchRotate"]);var Xe=q.scrollZoom=new _a(q,this);this._add("scrollZoom",Xe,["mousePan"]);var Ke=q.keyboard=new ko;this._add("keyboard",Ke),this._add("blockableMapEvent",new xa(q));for(var it=0,pt=["boxZoom","doubleClickZoom","tapDragZoom","touchPitch","dragRotate","dragPan","touchZoomRotate","scrollZoom","keyboard"];it<pt.length;it+=1){var mt=pt[it];N.interactive&&N[mt]&&q[mt].enable(N[mt])}},pi.prototype._add=function(N,q,H){this._handlers.push({handlerName:N,handler:q,allowed:H}),this._handlersById[N]=q},pi.prototype.stop=function(){if(!this._updatingCamera){for(var N=0,q=this._handlers;N<q.length;N+=1)q[N].handler.reset();this._inertia.clear(),this._fireEvents({},{}),this._changes=[]}},pi.prototype.isActive=function(){for(var N=0,q=this._handlers;N<q.length;N+=1)if(q[N].handler.isActive())return!0;return!1},pi.prototype.isZooming=function(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()},pi.prototype.isRotating=function(){return!!this._eventsInProgress.rotate},pi.prototype.isMoving=function(){return!!rl(this._eventsInProgress)||this.isZooming()},pi.prototype._blockedByActive=function(N,q,H){for(var Q in N)if(Q!==H&&(!q||q.indexOf(Q)<0))return!0;return!1},pi.prototype.handleWindowEvent=function(N){this.handleEvent(N,N.type+"Window")},pi.prototype._getMapTouches=function(N){for(var q=[],H=0,Q=N;H<Q.length;H+=1){var ge=Q[H],Le=ge.target;this._el.contains(Le)&&q.push(ge)}return q},pi.prototype.handleEvent=function(N,q){if(N.type!=="blur"){this._updatingCamera=!0;for(var H=N.type==="renderFrame"?void 0:N,Q={needsRenderFrame:!1},ge={},Le={},U=N.touches?this._getMapTouches(N.touches):void 0,ne=U?y.touchPos(this._el,U):y.mousePos(this._el,N),le=0,ye=this._handlers;le<ye.length;le+=1){var ke=ye[le],Re=ke.handlerName,He=ke.handler,We=ke.allowed;if(He.isEnabled()){var Xe=void 0;this._blockedByActive(Le,We,Re)?He.reset():He[q||N.type]&&(Xe=He[q||N.type](N,ne,U),this.mergeHandlerResult(Q,ge,Xe,Re,H),Xe&&Xe.needsRenderFrame&&this._triggerRenderFrame()),(Xe||He.isActive())&&(Le[Re]=He)}}var Ke={};for(var it in this._previousActiveHandlers)Le[it]||(Ke[it]=H);this._previousActiveHandlers=Le,(Object.keys(Ke).length||sa(Q))&&(this._changes.push([Q,ge,Ke]),this._triggerRenderFrame()),(Object.keys(Le).length||sa(Q))&&this._map._stop(!0),this._updatingCamera=!1;var pt=Q.cameraAnimation;pt&&(this._inertia.clear(),this._fireEvents({},{}),this._changes=[],pt(this._map))}else this.stop()},pi.prototype.mergeHandlerResult=function(N,q,H,Q,ge){if(H){i.extend(N,H);var Le={handlerName:Q,originalEvent:H.originalEvent||ge};H.zoomDelta!==void 0&&(q.zoom=Le),H.panDelta!==void 0&&(q.drag=Le),H.pitchDelta!==void 0&&(q.pitch=Le),H.bearingDelta!==void 0&&(q.rotate=Le)}},pi.prototype._applyChanges=function(){for(var N={},q={},H={},Q=0,ge=this._changes;Q<ge.length;Q+=1){var Le=ge[Q],U=Le[0],ne=Le[1],le=Le[2];U.panDelta&&(N.panDelta=(N.panDelta||new i.Point(0,0))._add(U.panDelta)),U.zoomDelta&&(N.zoomDelta=(N.zoomDelta||0)+U.zoomDelta),U.bearingDelta&&(N.bearingDelta=(N.bearingDelta||0)+U.bearingDelta),U.pitchDelta&&(N.pitchDelta=(N.pitchDelta||0)+U.pitchDelta),U.around!==void 0&&(N.around=U.around),U.pinchAround!==void 0&&(N.pinchAround=U.pinchAround),U.noInertia&&(N.noInertia=U.noInertia),i.extend(q,ne),i.extend(H,le)}this._updateMapTransform(N,q,H),this._changes=[]},pi.prototype._updateMapTransform=function(N,q,H){var Q=this._map,ge=Q.transform;if(!sa(N))return this._fireEvents(q,H);var Le=N.panDelta,U=N.zoomDelta,ne=N.bearingDelta,le=N.pitchDelta,ye=N.around,ke=N.pinchAround;ke!==void 0&&(ye=ke),Q._stop(!0),ye=ye||Q.transform.centerPoint;var Re=ge.pointLocation(Le?ye.sub(Le):ye);ne&&(ge.bearing+=ne),le&&(ge.pitch+=le),U&&(ge.zoom+=U),ge.setLocationAtPoint(Re,ye),this._map._update(),N.noInertia||this._inertia.record(N),this._fireEvents(q,H)},pi.prototype._fireEvents=function(N,q){var H=this,Q=rl(this._eventsInProgress),ge=rl(N),Le={};for(var U in N){var ne=N[U].originalEvent;this._eventsInProgress[U]||(Le[U+"start"]=ne),this._eventsInProgress[U]=N[U]}for(var le in!Q&&ge&&this._fireEvent("movestart",ge.originalEvent),Le)this._fireEvent(le,Le[le]);for(var ye in N.rotate&&(this._bearingChanged=!0),ge&&this._fireEvent("move",ge.originalEvent),N){var ke=N[ye].originalEvent;this._fireEvent(ye,ke)}var Re,He={};for(var We in this._eventsInProgress){var Xe=this._eventsInProgress[We],Ke=Xe.handlerName,it=Xe.originalEvent;this._handlersById[Ke].isActive()||(delete this._eventsInProgress[We],Re=q[Ke]||it,He[We+"end"]=Re)}for(var pt in He)this._fireEvent(pt,He[pt]);var mt=rl(this._eventsInProgress);if((Q||ge)&&!mt){this._updatingCamera=!0;var Ot=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),Rt=function(Pt){return Pt!==0&&-H._bearingSnap<Pt&&Pt<H._bearingSnap};Ot?(Rt(Ot.bearing||this._map.getBearing())&&(Ot.bearing=0),this._map.easeTo(Ot,{originalEvent:Re})):(this._map.fire(new i.Event("moveend",{originalEvent:Re})),Rt(this._map.getBearing())&&this._map.resetNorth()),this._bearingChanged=!1,this._updatingCamera=!1}},pi.prototype._fireEvent=function(N,q){this._map.fire(new i.Event(N,q?{originalEvent:q}:{}))},pi.prototype._triggerRenderFrame=function(){var N=this;this._frameId===void 0&&(this._frameId=this._map._requestRenderFrame(function(q){delete N._frameId,N.handleEvent(new wl("renderFrame",{timeStamp:q})),N._applyChanges()}))};var Gl=function(N){function q(H,Q){N.call(this),this._moving=!1,this._zooming=!1,this.transform=H,this._bearingSnap=Q.bearingSnap,i.bindAll(["_renderFrameCallback"],this)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.getCenter=function(){return new i.LngLat(this.transform.center.lng,this.transform.center.lat)},q.prototype.setCenter=function(H,Q){return this.jumpTo({center:H},Q)},q.prototype.panBy=function(H,Q,ge){return H=i.Point.convert(H).mult(-1),this.panTo(this.transform.center,i.extend({offset:H},Q),ge)},q.prototype.panTo=function(H,Q,ge){return this.easeTo(i.extend({center:H},Q),ge)},q.prototype.getZoom=function(){return this.transform.zoom},q.prototype.setZoom=function(H,Q){return this.jumpTo({zoom:H},Q),this},q.prototype.zoomTo=function(H,Q,ge){return this.easeTo(i.extend({zoom:H},Q),ge)},q.prototype.zoomIn=function(H,Q){return this.zoomTo(this.getZoom()+1,H,Q),this},q.prototype.zoomOut=function(H,Q){return this.zoomTo(this.getZoom()-1,H,Q),this},q.prototype.getBearing=function(){return this.transform.bearing},q.prototype.setBearing=function(H,Q){return this.jumpTo({bearing:H},Q),this},q.prototype.getPadding=function(){return this.transform.padding},q.prototype.setPadding=function(H,Q){return this.jumpTo({padding:H},Q),this},q.prototype.rotateTo=function(H,Q,ge){return this.easeTo(i.extend({bearing:H},Q),ge)},q.prototype.resetNorth=function(H,Q){return this.rotateTo(0,i.extend({duration:1e3},H),Q),this},q.prototype.resetNorthPitch=function(H,Q){return this.easeTo(i.extend({bearing:0,pitch:0,duration:1e3},H),Q),this},q.prototype.snapToNorth=function(H,Q){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(H,Q):this},q.prototype.getPitch=function(){return this.transform.pitch},q.prototype.setPitch=function(H,Q){return this.jumpTo({pitch:H},Q),this},q.prototype.cameraForBounds=function(H,Q){return H=i.LngLatBounds.convert(H),this._cameraForBoxAndBearing(H.getNorthWest(),H.getSouthEast(),0,Q)},q.prototype._cameraForBoxAndBearing=function(H,Q,ge,Le){var U={top:0,bottom:0,right:0,left:0};if(typeof(Le=i.extend({padding:U,offset:[0,0],maxZoom:this.transform.maxZoom},Le)).padding=="number"){var ne=Le.padding;Le.padding={top:ne,bottom:ne,right:ne,left:ne}}Le.padding=i.extend(U,Le.padding);var le=this.transform,ye=le.padding,ke=le.project(i.LngLat.convert(H)),Re=le.project(i.LngLat.convert(Q)),He=ke.rotate(-ge*Math.PI/180),We=Re.rotate(-ge*Math.PI/180),Xe=new i.Point(Math.max(He.x,We.x),Math.max(He.y,We.y)),Ke=new i.Point(Math.min(He.x,We.x),Math.min(He.y,We.y)),it=Xe.sub(Ke),pt=(le.width-(ye.left+ye.right+Le.padding.left+Le.padding.right))/it.x,mt=(le.height-(ye.top+ye.bottom+Le.padding.top+Le.padding.bottom))/it.y;if(!(mt<0||pt<0)){var Ot=Math.min(le.scaleZoom(le.scale*Math.min(pt,mt)),Le.maxZoom),Rt=i.Point.convert(Le.offset),Pt=(Le.padding.left-Le.padding.right)/2,Vt=(Le.padding.top-Le.padding.bottom)/2,It=new i.Point(Rt.x+Pt,Rt.y+Vt).mult(le.scale/le.zoomScale(Ot));return{center:le.unproject(ke.add(Re).div(2).sub(It)),zoom:Ot,bearing:ge}}i.warnOnce("Map cannot fit within canvas with the given bounds, padding, and/or offset.")},q.prototype.fitBounds=function(H,Q,ge){return this._fitInternal(this.cameraForBounds(H,Q),Q,ge)},q.prototype.fitScreenCoordinates=function(H,Q,ge,Le,U){return this._fitInternal(this._cameraForBoxAndBearing(this.transform.pointLocation(i.Point.convert(H)),this.transform.pointLocation(i.Point.convert(Q)),ge,Le),Le,U)},q.prototype._fitInternal=function(H,Q,ge){return H?(delete(Q=i.extend(H,Q)).padding,Q.linear?this.easeTo(Q,ge):this.flyTo(Q,ge)):this},q.prototype.jumpTo=function(H,Q){this.stop();var ge=this.transform,Le=!1,U=!1,ne=!1;return"zoom"in H&&ge.zoom!==+H.zoom&&(Le=!0,ge.zoom=+H.zoom),H.center!==void 0&&(ge.center=i.LngLat.convert(H.center)),"bearing"in H&&ge.bearing!==+H.bearing&&(U=!0,ge.bearing=+H.bearing),"pitch"in H&&ge.pitch!==+H.pitch&&(ne=!0,ge.pitch=+H.pitch),H.padding==null||ge.isPaddingEqual(H.padding)||(ge.padding=H.padding),this.fire(new i.Event("movestart",Q)).fire(new i.Event("move",Q)),Le&&this.fire(new i.Event("zoomstart",Q)).fire(new i.Event("zoom",Q)).fire(new i.Event("zoomend",Q)),U&&this.fire(new i.Event("rotatestart",Q)).fire(new i.Event("rotate",Q)).fire(new i.Event("rotateend",Q)),ne&&this.fire(new i.Event("pitchstart",Q)).fire(new i.Event("pitch",Q)).fire(new i.Event("pitchend",Q)),this.fire(new i.Event("moveend",Q))},q.prototype.easeTo=function(H,Q){var ge=this;this._stop(!1,H.easeId),((H=i.extend({offset:[0,0],duration:500,easing:i.ease},H)).animate===!1||!H.essential&&i.browser.prefersReducedMotion)&&(H.duration=0);var Le=this.transform,U=this.getZoom(),ne=this.getBearing(),le=this.getPitch(),ye=this.getPadding(),ke="zoom"in H?+H.zoom:U,Re="bearing"in H?this._normalizeBearing(H.bearing,ne):ne,He="pitch"in H?+H.pitch:le,We="padding"in H?H.padding:Le.padding,Xe=i.Point.convert(H.offset),Ke=Le.centerPoint.add(Xe),it=Le.pointLocation(Ke),pt=i.LngLat.convert(H.center||it);this._normalizeCenter(pt);var mt,Ot,Rt=Le.project(it),Pt=Le.project(pt).sub(Rt),Vt=Le.zoomScale(ke-U);H.around&&(mt=i.LngLat.convert(H.around),Ot=Le.locationPoint(mt));var It={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||ke!==U,this._rotating=this._rotating||ne!==Re,this._pitching=this._pitching||He!==le,this._padding=!Le.isPaddingEqual(We),this._easeId=H.easeId,this._prepareEase(Q,H.noMoveStart,It),clearTimeout(this._easeEndTimeoutID),this._ease(function(on){if(ge._zooming&&(Le.zoom=i.number(U,ke,on)),ge._rotating&&(Le.bearing=i.number(ne,Re,on)),ge._pitching&&(Le.pitch=i.number(le,He,on)),ge._padding&&(Le.interpolatePadding(ye,We,on),Ke=Le.centerPoint.add(Xe)),mt)Le.setLocationAtPoint(mt,Ot);else{var Kt=Le.zoomScale(Le.zoom-U),Zt=ke>U?Math.min(2,Vt):Math.max(.5,Vt),yn=Math.pow(Zt,1-on),_n=Le.unproject(Rt.add(Pt.mult(on*yn)).mult(Kt));Le.setLocationAtPoint(Le.renderWorldCopies?_n.wrap():_n,Ke)}ge._fireMoveEvents(Q)},function(on){ge._afterEase(Q,on)},H),this},q.prototype._prepareEase=function(H,Q,ge){ge===void 0&&(ge={}),this._moving=!0,Q||ge.moving||this.fire(new i.Event("movestart",H)),this._zooming&&!ge.zooming&&this.fire(new i.Event("zoomstart",H)),this._rotating&&!ge.rotating&&this.fire(new i.Event("rotatestart",H)),this._pitching&&!ge.pitching&&this.fire(new i.Event("pitchstart",H))},q.prototype._fireMoveEvents=function(H){this.fire(new i.Event("move",H)),this._zooming&&this.fire(new i.Event("zoom",H)),this._rotating&&this.fire(new i.Event("rotate",H)),this._pitching&&this.fire(new i.Event("pitch",H))},q.prototype._afterEase=function(H,Q){if(!this._easeId||!Q||this._easeId!==Q){delete this._easeId;var ge=this._zooming,Le=this._rotating,U=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,ge&&this.fire(new i.Event("zoomend",H)),Le&&this.fire(new i.Event("rotateend",H)),U&&this.fire(new i.Event("pitchend",H)),this.fire(new i.Event("moveend",H))}},q.prototype.flyTo=function(H,Q){var ge=this;if(!H.essential&&i.browser.prefersReducedMotion){var Le=i.pick(H,["center","zoom","bearing","pitch","around"]);return this.jumpTo(Le,Q)}this.stop(),H=i.extend({offset:[0,0],speed:1.2,curve:1.42,easing:i.ease},H);var U=this.transform,ne=this.getZoom(),le=this.getBearing(),ye=this.getPitch(),ke=this.getPadding(),Re="zoom"in H?i.clamp(+H.zoom,U.minZoom,U.maxZoom):ne,He="bearing"in H?this._normalizeBearing(H.bearing,le):le,We="pitch"in H?+H.pitch:ye,Xe="padding"in H?H.padding:U.padding,Ke=U.zoomScale(Re-ne),it=i.Point.convert(H.offset),pt=U.centerPoint.add(it),mt=U.pointLocation(pt),Ot=i.LngLat.convert(H.center||mt);this._normalizeCenter(Ot);var Rt=U.project(mt),Pt=U.project(Ot).sub(Rt),Vt=H.curve,It=Math.max(U.width,U.height),on=It/Ke,Kt=Pt.mag();if("minZoom"in H){var Zt=i.clamp(Math.min(H.minZoom,ne,Re),U.minZoom,U.maxZoom),yn=It/U.zoomScale(Zt-ne);Vt=Math.sqrt(yn/Kt*2)}var _n=Vt*Vt;function Un(qn){var ur=(on*on-It*It+(qn?-1:1)*_n*_n*Kt*Kt)/(2*(qn?on:It)*_n*Kt);return Math.log(Math.sqrt(ur*ur+1)-ur)}function Vn(qn){return(Math.exp(qn)-Math.exp(-qn))/2}function Zn(qn){return(Math.exp(qn)+Math.exp(-qn))/2}var Qn=Un(0),pr=function(qn){return Zn(Qn)/Zn(Qn+Vt*qn)},cr=function(qn){return It*((Zn(Qn)*(Vn(ur=Qn+Vt*qn)/Zn(ur))-Vn(Qn))/_n)/Kt;var ur},mr=(Un(1)-Qn)/Vt;if(Math.abs(Kt)<1e-6||!isFinite(mr)){if(Math.abs(It-on)<1e-6)return this.easeTo(H,Q);var Ar=on<It?-1:1;mr=Math.abs(Math.log(on/It))/Vt,cr=function(){return 0},pr=function(qn){return Math.exp(Ar*Vt*qn)}}if("duration"in H)H.duration=+H.duration;else{var Br="screenSpeed"in H?+H.screenSpeed/Vt:+H.speed;H.duration=1e3*mr/Br}return H.maxDuration&&H.duration>H.maxDuration&&(H.duration=0),this._zooming=!0,this._rotating=le!==He,this._pitching=We!==ye,this._padding=!U.isPaddingEqual(Xe),this._prepareEase(Q,!1),this._ease(function(qn){var ur=qn*mr,yr=1/pr(ur);U.zoom=qn===1?Re:ne+U.scaleZoom(yr),ge._rotating&&(U.bearing=i.number(le,He,qn)),ge._pitching&&(U.pitch=i.number(ye,We,qn)),ge._padding&&(U.interpolatePadding(ke,Xe,qn),pt=U.centerPoint.add(it));var Mr=qn===1?Ot:U.unproject(Rt.add(Pt.mult(cr(ur))).mult(yr));U.setLocationAtPoint(U.renderWorldCopies?Mr.wrap():Mr,pt),ge._fireMoveEvents(Q)},function(){return ge._afterEase(Q)},H),this},q.prototype.isEasing=function(){return!!this._easeFrameId},q.prototype.stop=function(){return this._stop()},q.prototype._stop=function(H,Q){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var ge=this._onEaseEnd;delete this._onEaseEnd,ge.call(this,Q)}if(!H){var Le=this.handlers;Le&&Le.stop()}return this},q.prototype._ease=function(H,Q,ge){ge.animate===!1||ge.duration===0?(H(1),Q()):(this._easeStart=i.browser.now(),this._easeOptions=ge,this._onEaseFrame=H,this._onEaseEnd=Q,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},q.prototype._renderFrameCallback=function(){var H=Math.min((i.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(H)),H<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},q.prototype._normalizeBearing=function(H,Q){H=i.wrap(H,-180,180);var ge=Math.abs(H-Q);return Math.abs(H-360-Q)<ge&&(H-=360),Math.abs(H+360-Q)<ge&&(H+=360),H},q.prototype._normalizeCenter=function(H){var Q=this.transform;if(Q.renderWorldCopies&&!Q.lngRange){var ge=H.lng-Q.center.lng;H.lng+=ge>180?-360:ge<-180?360:0}},q}(i.Evented),qa=function(N){N===void 0&&(N={}),this.options=N,i.bindAll(["_updateEditLink","_updateData","_updateCompact"],this)};qa.prototype.getDefaultPosition=function(){return"bottom-right"},qa.prototype.onAdd=function(N){var q=this.options&&this.options.compact;return this._map=N,this._container=y.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._innerContainer=y.create("div","mapboxgl-ctrl-attrib-inner",this._container),q&&this._container.classList.add("mapboxgl-compact"),this._updateAttributions(),this._updateEditLink(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("moveend",this._updateEditLink),q===void 0&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},qa.prototype.onRemove=function(){y.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0},qa.prototype._updateEditLink=function(){var N=this._editLink;N||(N=this._editLink=this._container.querySelector(".mapbox-improve-map"));var q=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||i.config.ACCESS_TOKEN}];if(N){var H=q.reduce(function(Q,ge,Le){return ge.value&&(Q+=ge.key+"="+ge.value+(Le<q.length-1?"&":"")),Q},"?");N.href=i.config.FEEDBACK_URL+"/"+H+(this._map._hash?this._map._hash.getHashString(!0):""),N.rel="noopener nofollow"}},qa.prototype._updateData=function(N){!N||N.sourceDataType!=="metadata"&&N.dataType!=="style"||(this._updateAttributions(),this._updateEditLink())},qa.prototype._updateAttributions=function(){if(this._map.style){var N=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?N=N.concat(this.options.customAttribution.map(function(ne){return typeof ne!="string"?"":ne})):typeof this.options.customAttribution=="string"&&N.push(this.options.customAttribution)),this._map.style.stylesheet){var q=this._map.style.stylesheet;this.styleOwner=q.owner,this.styleId=q.id}var H=this._map.style.sourceCaches;for(var Q in H){var ge=H[Q];if(ge.used){var Le=ge.getSource();Le.attribution&&N.indexOf(Le.attribution)<0&&N.push(Le.attribution)}}N.sort(function(ne,le){return ne.length-le.length});var U=(N=N.filter(function(ne,le){for(var ye=le+1;ye<N.length;ye++)if(N[ye].indexOf(ne)>=0)return!1;return!0})).join(" | ");U!==this._attribHTML&&(this._attribHTML=U,N.length?(this._innerContainer.innerHTML=U,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},qa.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact")};var Ji=function(){i.bindAll(["_updateLogo"],this),i.bindAll(["_updateCompact"],this)};Ji.prototype.onAdd=function(N){this._map=N,this._container=y.create("div","mapboxgl-ctrl");var q=y.create("a","mapboxgl-ctrl-logo");return q.target="_blank",q.rel="noopener nofollow",q.href="https://www.mapbox.com/",q.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),q.setAttribute("rel","noopener nofollow"),this._container.appendChild(q),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},Ji.prototype.onRemove=function(){y.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},Ji.prototype.getDefaultPosition=function(){return"bottom-left"},Ji.prototype._updateLogo=function(N){N&&N.sourceDataType!=="metadata"||(this._container.style.display=this._logoRequired()?"block":"none")},Ji.prototype._logoRequired=function(){if(this._map.style){var N=this._map.style.sourceCaches;for(var q in N)if(N[q].getSource().mapbox_logo)return!0;return!1}},Ji.prototype._updateCompact=function(){var N=this._container.children;if(N.length){var q=N[0];this._map.getCanvasContainer().offsetWidth<250?q.classList.add("mapboxgl-compact"):q.classList.remove("mapboxgl-compact")}};var Vo=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};Vo.prototype.add=function(N){var q=++this._id;return this._queue.push({callback:N,id:q,cancelled:!1}),q},Vo.prototype.remove=function(N){for(var q=this._currentlyRunning,H=0,Q=q?this._queue.concat(q):this._queue;H<Q.length;H+=1){var ge=Q[H];if(ge.id===N)return void(ge.cancelled=!0)}},Vo.prototype.run=function(N){N===void 0&&(N=0);var q=this._currentlyRunning=this._queue;this._queue=[];for(var H=0,Q=q;H<Q.length;H+=1){var ge=Q[H];if(!ge.cancelled&&(ge.callback(N),this._cleared))break}this._cleared=!1,this._currentlyRunning=!1},Vo.prototype.clear=function(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]};var Du={"FullscreenControl.Enter":"Enter fullscreen","FullscreenControl.Exit":"Exit fullscreen","GeolocateControl.FindMyLocation":"Find my location","GeolocateControl.LocationNotAvailable":"Location not available","LogoControl.Title":"Mapbox logo","NavigationControl.ResetBearing":"Reset bearing to north","NavigationControl.ZoomIn":"Zoom in","NavigationControl.ZoomOut":"Zoom out","ScaleControl.Feet":"ft","ScaleControl.Meters":"m","ScaleControl.Kilometers":"km","ScaleControl.Miles":"mi","ScaleControl.NauticalMiles":"nm"},Di=i.window.HTMLImageElement,li=i.window.HTMLElement,no=i.window.ImageBitmap,Ho=60,Ao={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:-2,maxZoom:22,minPitch:0,maxPitch:Ho,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,touchPitch:!0,bearingSnap:7,clickTolerance:3,pitchWithRotate:!0,hash:!1,attributionControl:!0,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0,maxTileCacheSize:null,localIdeographFontFamily:"sans-serif",transformRequest:null,accessToken:null,fadeDuration:300,crossSourceCollisions:!0},du=function(N){function q(Q){var ge=this;if((Q=i.extend({},Ao,Q)).minZoom!=null&&Q.maxZoom!=null&&Q.minZoom>Q.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(Q.minPitch!=null&&Q.maxPitch!=null&&Q.minPitch>Q.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(Q.minPitch!=null&&Q.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(Q.maxPitch!=null&&Q.maxPitch>Ho)throw new Error("maxPitch must be less than or equal to 60");var Le=new Kr(Q.minZoom,Q.maxZoom,Q.minPitch,Q.maxPitch,Q.renderWorldCopies);if(N.call(this,Le,Q),this._interactive=Q.interactive,this._maxTileCacheSize=Q.maxTileCacheSize,this._failIfMajorPerformanceCaveat=Q.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=Q.preserveDrawingBuffer,this._antialias=Q.antialias,this._trackResize=Q.trackResize,this._bearingSnap=Q.bearingSnap,this._refreshExpiredTiles=Q.refreshExpiredTiles,this._fadeDuration=Q.fadeDuration,this._crossSourceCollisions=Q.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=Q.collectResourceTiming,this._renderTaskQueue=new Vo,this._controls=[],this._mapId=i.uniqueId(),this._locale=i.extend({},Du,Q.locale),this._requestManager=new i.RequestManager(Q.transformRequest,Q.accessToken),typeof Q.container=="string"){if(this._container=i.window.document.getElementById(Q.container),!this._container)throw new Error("Container '"+Q.container+"' not found.")}else{if(!(Q.container instanceof li))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=Q.container}if(Q.maxBounds&&this.setMaxBounds(Q.maxBounds),i.bindAll(["_onWindowOnline","_onWindowResize","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return ge._update(!1)}),this.on("moveend",function(){return ge._update(!1)}),this.on("zoom",function(){return ge._update(!0)}),i.window!==void 0&&(i.window.addEventListener("online",this._onWindowOnline,!1),i.window.addEventListener("resize",this._onWindowResize,!1)),this.handlers=new pi(this,Q);var U=typeof Q.hash=="string"&&Q.hash||void 0;this._hash=Q.hash&&new Ss(U).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:Q.center,zoom:Q.zoom,bearing:Q.bearing,pitch:Q.pitch}),Q.bounds&&(this.resize(),this.fitBounds(Q.bounds,i.extend({},Q.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=Q.localIdeographFontFamily,Q.style&&this.setStyle(Q.style,{localIdeographFontFamily:Q.localIdeographFontFamily}),Q.attributionControl&&this.addControl(new qa({customAttribution:Q.customAttribution})),this.addControl(new Ji,Q.logoPosition),this.on("style.load",function(){ge.transform.unmodified&&ge.jumpTo(ge.style.stylesheet)}),this.on("data",function(ne){ge._update(ne.dataType==="style"),ge.fire(new i.Event(ne.dataType+"data",ne))}),this.on("dataloading",function(ne){ge.fire(new i.Event(ne.dataType+"dataloading",ne))})}N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q;var H={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return q.prototype._getMapId=function(){return this._mapId},q.prototype.addControl=function(Q,ge){if(ge===void 0&&Q.getDefaultPosition&&(ge=Q.getDefaultPosition()),ge===void 0&&(ge="top-right"),!Q||!Q.onAdd)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var Le=Q.onAdd(this);this._controls.push(Q);var U=this._controlPositions[ge];return ge.indexOf("bottom")!==-1?U.insertBefore(Le,U.firstChild):U.appendChild(Le),this},q.prototype.removeControl=function(Q){if(!Q||!Q.onRemove)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var ge=this._controls.indexOf(Q);return ge>-1&&this._controls.splice(ge,1),Q.onRemove(this),this},q.prototype.resize=function(Q){var ge=this._containerDimensions(),Le=ge[0],U=ge[1];this._resizeCanvas(Le,U),this.transform.resize(Le,U),this.painter.resize(Le,U);var ne=!this._moving;return ne&&(this.stop(),this.fire(new i.Event("movestart",Q)).fire(new i.Event("move",Q))),this.fire(new i.Event("resize",Q)),ne&&this.fire(new i.Event("moveend",Q)),this},q.prototype.getBounds=function(){return this.transform.getBounds()},q.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},q.prototype.setMaxBounds=function(Q){return this.transform.setMaxBounds(i.LngLatBounds.convert(Q)),this._update()},q.prototype.setMinZoom=function(Q){if((Q=Q??-2)>=-2&&Q<=this.transform.maxZoom)return this.transform.minZoom=Q,this._update(),this.getZoom()<Q&&this.setZoom(Q),this;throw new Error("minZoom must be between -2 and the current maxZoom, inclusive")},q.prototype.getMinZoom=function(){return this.transform.minZoom},q.prototype.setMaxZoom=function(Q){if((Q=Q??22)>=this.transform.minZoom)return this.transform.maxZoom=Q,this._update(),this.getZoom()>Q&&this.setZoom(Q),this;throw new Error("maxZoom must be greater than the current minZoom")},q.prototype.getMaxZoom=function(){return this.transform.maxZoom},q.prototype.setMinPitch=function(Q){if((Q=Q??0)<0)throw new Error("minPitch must be greater than or equal to 0");if(Q>=0&&Q<=this.transform.maxPitch)return this.transform.minPitch=Q,this._update(),this.getPitch()<Q&&this.setPitch(Q),this;throw new Error("minPitch must be between 0 and the current maxPitch, inclusive")},q.prototype.getMinPitch=function(){return this.transform.minPitch},q.prototype.setMaxPitch=function(Q){if((Q=Q??Ho)>Ho)throw new Error("maxPitch must be less than or equal to 60");if(Q>=this.transform.minPitch)return this.transform.maxPitch=Q,this._update(),this.getPitch()>Q&&this.setPitch(Q),this;throw new Error("maxPitch must be greater than the current minPitch")},q.prototype.getMaxPitch=function(){return this.transform.maxPitch},q.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},q.prototype.setRenderWorldCopies=function(Q){return this.transform.renderWorldCopies=Q,this._update()},q.prototype.project=function(Q){return this.transform.locationPoint(i.LngLat.convert(Q))},q.prototype.unproject=function(Q){return this.transform.pointLocation(i.Point.convert(Q))},q.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},q.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},q.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},q.prototype._createDelegatedListener=function(Q,ge,Le){var U,ne=this;if(Q==="mouseenter"||Q==="mouseover"){var le=!1;return{layer:ge,listener:Le,delegates:{mousemove:function(ke){var Re=ne.getLayer(ge)?ne.queryRenderedFeatures(ke.point,{layers:[ge]}):[];Re.length?le||(le=!0,Le.call(ne,new Ci(Q,ne,ke.originalEvent,{features:Re}))):le=!1},mouseout:function(){le=!1}}}}if(Q==="mouseleave"||Q==="mouseout"){var ye=!1;return{layer:ge,listener:Le,delegates:{mousemove:function(ke){(ne.getLayer(ge)?ne.queryRenderedFeatures(ke.point,{layers:[ge]}):[]).length?ye=!0:ye&&(ye=!1,Le.call(ne,new Ci(Q,ne,ke.originalEvent)))},mouseout:function(ke){ye&&(ye=!1,Le.call(ne,new Ci(Q,ne,ke.originalEvent)))}}}}return{layer:ge,listener:Le,delegates:(U={},U[Q]=function(ke){var Re=ne.getLayer(ge)?ne.queryRenderedFeatures(ke.point,{layers:[ge]}):[];Re.length&&(ke.features=Re,Le.call(ne,ke),delete ke.features)},U)}},q.prototype.on=function(Q,ge,Le){if(Le===void 0)return N.prototype.on.call(this,Q,ge);var U=this._createDelegatedListener(Q,ge,Le);for(var ne in this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[Q]=this._delegatedListeners[Q]||[],this._delegatedListeners[Q].push(U),U.delegates)this.on(ne,U.delegates[ne]);return this},q.prototype.once=function(Q,ge,Le){if(Le===void 0)return N.prototype.once.call(this,Q,ge);var U=this._createDelegatedListener(Q,ge,Le);for(var ne in U.delegates)this.once(ne,U.delegates[ne]);return this},q.prototype.off=function(Q,ge,Le){var U=this;return Le===void 0?N.prototype.off.call(this,Q,ge):(this._delegatedListeners&&this._delegatedListeners[Q]&&function(ne){for(var le=ne[Q],ye=0;ye<le.length;ye++){var ke=le[ye];if(ke.layer===ge&&ke.listener===Le){for(var Re in ke.delegates)U.off(Re,ke.delegates[Re]);return le.splice(ye,1),U}}}(this._delegatedListeners),this)},q.prototype.queryRenderedFeatures=function(Q,ge){if(!this.style)return[];var Le;if(ge!==void 0||Q===void 0||Q instanceof i.Point||Array.isArray(Q)||(ge=Q,Q=void 0),ge=ge||{},(Q=Q||[[0,0],[this.transform.width,this.transform.height]])instanceof i.Point||typeof Q[0]=="number")Le=[i.Point.convert(Q)];else{var U=i.Point.convert(Q[0]),ne=i.Point.convert(Q[1]);Le=[U,new i.Point(ne.x,U.y),ne,new i.Point(U.x,ne.y),U]}return this.style.queryRenderedFeatures(Le,ge,this.transform)},q.prototype.querySourceFeatures=function(Q,ge){return this.style.querySourceFeatures(Q,ge)},q.prototype.setStyle=function(Q,ge){return(ge=i.extend({},{localIdeographFontFamily:this._localIdeographFontFamily},ge)).diff!==!1&&ge.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&Q?(this._diffStyle(Q,ge),this):(this._localIdeographFontFamily=ge.localIdeographFontFamily,this._updateStyle(Q,ge))},q.prototype._getUIString=function(Q){var ge=this._locale[Q];if(ge==null)throw new Error("Missing UI string '"+Q+"'");return ge},q.prototype._updateStyle=function(Q,ge){return this.style&&(this.style.setEventedParent(null),this.style._remove()),Q?(this.style=new or(this,ge||{}),this.style.setEventedParent(this,{style:this.style}),typeof Q=="string"?this.style.loadURL(Q):this.style.loadJSON(Q),this):(delete this.style,this)},q.prototype._lazyInitEmptyStyle=function(){this.style||(this.style=new or(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())},q.prototype._diffStyle=function(Q,ge){var Le=this;if(typeof Q=="string"){var U=this._requestManager.normalizeStyleURL(Q),ne=this._requestManager.transformRequest(U,i.ResourceType.Style);i.getJSON(ne,function(le,ye){le?Le.fire(new i.ErrorEvent(le)):ye&&Le._updateDiff(ye,ge)})}else typeof Q=="object"&&this._updateDiff(Q,ge)},q.prototype._updateDiff=function(Q,ge){try{this.style.setState(Q)&&this._update(!0)}catch(Le){i.warnOnce("Unable to perform style diff: "+(Le.message||Le.error||Le)+". Rebuilding the style from scratch."),this._updateStyle(Q,ge)}},q.prototype.getStyle=function(){if(this.style)return this.style.serialize()},q.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():i.warnOnce("There is no style added to the map.")},q.prototype.addSource=function(Q,ge){return this._lazyInitEmptyStyle(),this.style.addSource(Q,ge),this._update(!0)},q.prototype.isSourceLoaded=function(Q){var ge=this.style&&this.style.sourceCaches[Q];if(ge!==void 0)return ge.loaded();this.fire(new i.ErrorEvent(new Error("There is no source with ID '"+Q+"'")))},q.prototype.areTilesLoaded=function(){var Q=this.style&&this.style.sourceCaches;for(var ge in Q){var Le=Q[ge]._tiles;for(var U in Le){var ne=Le[U];if(ne.state!=="loaded"&&ne.state!=="errored")return!1}}return!0},q.prototype.addSourceType=function(Q,ge,Le){return this._lazyInitEmptyStyle(),this.style.addSourceType(Q,ge,Le)},q.prototype.removeSource=function(Q){return this.style.removeSource(Q),this._update(!0)},q.prototype.getSource=function(Q){return this.style.getSource(Q)},q.prototype.addImage=function(Q,ge,Le){Le===void 0&&(Le={});var U=Le.pixelRatio;U===void 0&&(U=1);var ne=Le.sdf;ne===void 0&&(ne=!1);var le=Le.stretchX,ye=Le.stretchY,ke=Le.content;if(this._lazyInitEmptyStyle(),ge instanceof Di||no&&ge instanceof no){var Re=i.browser.getImageData(ge),He=Re.width,We=Re.height,Xe=Re.data;this.style.addImage(Q,{data:new i.RGBAImage({width:He,height:We},Xe),pixelRatio:U,stretchX:le,stretchY:ye,content:ke,sdf:ne,version:0})}else{if(ge.width===void 0||ge.height===void 0)return this.fire(new i.ErrorEvent(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));var Ke=ge.width,it=ge.height,pt=ge.data,mt=ge;this.style.addImage(Q,{data:new i.RGBAImage({width:Ke,height:it},new Uint8Array(pt)),pixelRatio:U,stretchX:le,stretchY:ye,content:ke,sdf:ne,version:0,userImage:mt}),mt.onAdd&&mt.onAdd(this,Q)}},q.prototype.updateImage=function(Q,ge){var Le=this.style.getImage(Q);if(!Le)return this.fire(new i.ErrorEvent(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));var U=ge instanceof Di||no&&ge instanceof no?i.browser.getImageData(ge):ge,ne=U.width,le=U.height,ye=U.data;if(ne===void 0||le===void 0)return this.fire(new i.ErrorEvent(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(ne!==Le.data.width||le!==Le.data.height)return this.fire(new i.ErrorEvent(new Error("The width and height of the updated image must be that same as the previous version of the image")));var ke=!(ge instanceof Di||no&&ge instanceof no);Le.data.replace(ye,ke),this.style.updateImage(Q,Le)},q.prototype.hasImage=function(Q){return Q?!!this.style.getImage(Q):(this.fire(new i.ErrorEvent(new Error("Missing required image id"))),!1)},q.prototype.removeImage=function(Q){this.style.removeImage(Q)},q.prototype.loadImage=function(Q,ge){i.getImage(this._requestManager.transformRequest(Q,i.ResourceType.Image),ge)},q.prototype.listImages=function(){return this.style.listImages()},q.prototype.addLayer=function(Q,ge){return this._lazyInitEmptyStyle(),this.style.addLayer(Q,ge),this._update(!0)},q.prototype.moveLayer=function(Q,ge){return this.style.moveLayer(Q,ge),this._update(!0)},q.prototype.removeLayer=function(Q){return this.style.removeLayer(Q),this._update(!0)},q.prototype.getLayer=function(Q){return this.style.getLayer(Q)},q.prototype.setLayerZoomRange=function(Q,ge,Le){return this.style.setLayerZoomRange(Q,ge,Le),this._update(!0)},q.prototype.setFilter=function(Q,ge,Le){return Le===void 0&&(Le={}),this.style.setFilter(Q,ge,Le),this._update(!0)},q.prototype.getFilter=function(Q){return this.style.getFilter(Q)},q.prototype.setPaintProperty=function(Q,ge,Le,U){return U===void 0&&(U={}),this.style.setPaintProperty(Q,ge,Le,U),this._update(!0)},q.prototype.getPaintProperty=function(Q,ge){return this.style.getPaintProperty(Q,ge)},q.prototype.setLayoutProperty=function(Q,ge,Le,U){return U===void 0&&(U={}),this.style.setLayoutProperty(Q,ge,Le,U),this._update(!0)},q.prototype.getLayoutProperty=function(Q,ge){return this.style.getLayoutProperty(Q,ge)},q.prototype.setLight=function(Q,ge){return ge===void 0&&(ge={}),this._lazyInitEmptyStyle(),this.style.setLight(Q,ge),this._update(!0)},q.prototype.getLight=function(){return this.style.getLight()},q.prototype.setFeatureState=function(Q,ge){return this.style.setFeatureState(Q,ge),this._update()},q.prototype.removeFeatureState=function(Q,ge){return this.style.removeFeatureState(Q,ge),this._update()},q.prototype.getFeatureState=function(Q){return this.style.getFeatureState(Q)},q.prototype.getContainer=function(){return this._container},q.prototype.getCanvasContainer=function(){return this._canvasContainer},q.prototype.getCanvas=function(){return this._canvas},q.prototype._containerDimensions=function(){var Q=0,ge=0;return this._container&&(Q=this._container.clientWidth||400,ge=this._container.clientHeight||300),[Q,ge]},q.prototype._detectMissingCSS=function(){i.window.getComputedStyle(this._missingCSSCanary).getPropertyValue("background-color")!=="rgb(250, 128, 114)"&&i.warnOnce("This page appears to be missing CSS declarations for Mapbox GL JS, which may cause the map to display incorrectly. Please ensure your page includes mapbox-gl.css, as described in https://www.mapbox.com/mapbox-gl-js/api/.")},q.prototype._setupContainer=function(){var Q=this._container;Q.classList.add("mapboxgl-map"),(this._missingCSSCanary=y.create("div","mapboxgl-canary",Q)).style.visibility="hidden",this._detectMissingCSS();var ge=this._canvasContainer=y.create("div","mapboxgl-canvas-container",Q);this._interactive&&ge.classList.add("mapboxgl-interactive"),this._canvas=y.create("canvas","mapboxgl-canvas",ge),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex","0"),this._canvas.setAttribute("aria-label","Map");var Le=this._containerDimensions();this._resizeCanvas(Le[0],Le[1]);var U=this._controlContainer=y.create("div","mapboxgl-control-container",Q),ne=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(function(le){ne[le]=y.create("div","mapboxgl-ctrl-"+le,U)})},q.prototype._resizeCanvas=function(Q,ge){var Le=i.browser.devicePixelRatio||1;this._canvas.width=Le*Q,this._canvas.height=Le*ge,this._canvas.style.width=Q+"px",this._canvas.style.height=ge+"px"},q.prototype._setupPainter=function(){var Q=i.extend({},_.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),ge=this._canvas.getContext("webgl",Q)||this._canvas.getContext("experimental-webgl",Q);ge?(this.painter=new hi(ge,this.transform),i.webpSupported.testSupport(ge)):this.fire(new i.ErrorEvent(new Error("Failed to initialize WebGL")))},q.prototype._contextLost=function(Q){Q.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new i.Event("webglcontextlost",{originalEvent:Q}))},q.prototype._contextRestored=function(Q){this._setupPainter(),this.resize(),this._update(),this.fire(new i.Event("webglcontextrestored",{originalEvent:Q}))},q.prototype.loaded=function(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()},q.prototype._update=function(Q){return this.style?(this._styleDirty=this._styleDirty||Q,this._sourcesDirty=!0,this.triggerRepaint(),this):this},q.prototype._requestRenderFrame=function(Q){return this._update(),this._renderTaskQueue.add(Q)},q.prototype._cancelRenderFrame=function(Q){this._renderTaskQueue.remove(Q)},q.prototype._render=function(Q){var ge,Le=this,U=0,ne=this.painter.context.extTimerQuery;if(this.listens("gpu-timing-frame")&&(ge=ne.createQueryEXT(),ne.beginQueryEXT(ne.TIME_ELAPSED_EXT,ge),U=i.browser.now()),this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(Q),!this._removed){var le=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;var ye=this.transform.zoom,ke=i.browser.now();this.style.zoomHistory.update(ye,ke);var Re=new i.EvaluationParameters(ye,{now:ke,fadeDuration:this._fadeDuration,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),He=Re.crossFadingFactor();He===1&&He===this._crossFadingFactor||(le=!0,this._crossFadingFactor=He),this.style.update(Re)}if(this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,this._fadeDuration,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:this._fadeDuration,showPadding:this.showPadding,gpuTiming:!!this.listens("gpu-timing-layer")}),this.fire(new i.Event("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new i.Event("load"))),this.style&&(this.style.hasTransitions()||le)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),this.listens("gpu-timing-frame")){var We=i.browser.now()-U;ne.endQueryEXT(ne.TIME_ELAPSED_EXT,ge),setTimeout(function(){var Ke=ne.getQueryObjectEXT(ge,ne.QUERY_RESULT_EXT)/1e6;ne.deleteQueryEXT(ge),Le.fire(new i.Event("gpu-timing-frame",{cpuTime:We,gpuTime:Ke}))},50)}if(this.listens("gpu-timing-layer")){var Xe=this.painter.collectGpuTimers();setTimeout(function(){var Ke=Le.painter.queryGpuTimers(Xe);Le.fire(new i.Event("gpu-timing-layer",{layerTimes:Ke}))},50)}return this._sourcesDirty||this._styleDirty||this._placementDirty||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&(this._fullyLoaded||(this._fullyLoaded=!0),this.fire(new i.Event("idle"))),this}},q.prototype.remove=function(){this._hash&&this._hash.remove();for(var Q=0,ge=this._controls;Q<ge.length;Q+=1)ge[Q].onRemove(this);this._controls=[],this._frame&&(this._frame.cancel(),this._frame=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),i.window!==void 0&&(i.window.removeEventListener("resize",this._onWindowResize,!1),i.window.removeEventListener("online",this._onWindowOnline,!1));var Le=this.painter.context.gl.getExtension("WEBGL_lose_context");Le&&Le.loseContext(),Ps(this._canvasContainer),Ps(this._controlContainer),Ps(this._missingCSSCanary),this._container.classList.remove("mapboxgl-map"),this._removed=!0,this.fire(new i.Event("remove"))},q.prototype.triggerRepaint=function(){var Q=this;this.style&&!this._frame&&(this._frame=i.browser.frame(function(ge){Q._frame=null,Q._render(ge)}))},q.prototype._onWindowOnline=function(){this._update()},q.prototype._onWindowResize=function(Q){this._trackResize&&this.resize({originalEvent:Q})._update()},H.showTileBoundaries.get=function(){return!!this._showTileBoundaries},H.showTileBoundaries.set=function(Q){this._showTileBoundaries!==Q&&(this._showTileBoundaries=Q,this._update())},H.showPadding.get=function(){return!!this._showPadding},H.showPadding.set=function(Q){this._showPadding!==Q&&(this._showPadding=Q,this._update())},H.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},H.showCollisionBoxes.set=function(Q){this._showCollisionBoxes!==Q&&(this._showCollisionBoxes=Q,Q?this.style._generateCollisionBoxes():this._update())},H.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},H.showOverdrawInspector.set=function(Q){this._showOverdrawInspector!==Q&&(this._showOverdrawInspector=Q,this._update())},H.repaint.get=function(){return!!this._repaint},H.repaint.set=function(Q){this._repaint!==Q&&(this._repaint=Q,this.triggerRepaint())},H.vertices.get=function(){return!!this._vertices},H.vertices.set=function(Q){this._vertices=Q,this._update()},q.prototype._setCacheLimits=function(Q,ge){i.setCacheLimits(Q,ge)},H.version.get=function(){return i.version},Object.defineProperties(q.prototype,H),q}(Gl);function Ps(N){N.parentNode&&N.parentNode.removeChild(N)}var il={showCompass:!0,showZoom:!0,visualizePitch:!1},Gi=function(N){var q=this;this.options=i.extend({},il,N),this._container=y.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._container.addEventListener("contextmenu",function(H){return H.preventDefault()}),this.options.showZoom&&(i.bindAll(["_setButtonTitle","_updateZoomButtons"],this),this._zoomInButton=this._createButton("mapboxgl-ctrl-zoom-in",function(H){return q._map.zoomIn({},{originalEvent:H})}),y.create("span","mapboxgl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden",!0),this._zoomOutButton=this._createButton("mapboxgl-ctrl-zoom-out",function(H){return q._map.zoomOut({},{originalEvent:H})}),y.create("span","mapboxgl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden",!0)),this.options.showCompass&&(i.bindAll(["_rotateCompassArrow"],this),this._compass=this._createButton("mapboxgl-ctrl-compass",function(H){q.options.visualizePitch?q._map.resetNorthPitch({},{originalEvent:H}):q._map.resetNorth({},{originalEvent:H})}),this._compassIcon=y.create("span","mapboxgl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden",!0))};Gi.prototype._updateZoomButtons=function(){var N=this._map.getZoom();this._zoomInButton.disabled=N===this._map.getMaxZoom(),this._zoomOutButton.disabled=N===this._map.getMinZoom()},Gi.prototype._rotateCompassArrow=function(){var N=this.options.visualizePitch?"scale("+1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)+") rotateX("+this._map.transform.pitch+"deg) rotateZ("+this._map.transform.angle*(180/Math.PI)+"deg)":"rotate("+this._map.transform.angle*(180/Math.PI)+"deg)";this._compassIcon.style.transform=N},Gi.prototype.onAdd=function(N){return this._map=N,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new ga(this._map,this._compass,this.options.visualizePitch)),this._container},Gi.prototype.onRemove=function(){y.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map},Gi.prototype._createButton=function(N,q){var H=y.create("button",N,this._container);return H.type="button",H.addEventListener("click",q),H},Gi.prototype._setButtonTitle=function(N,q){var H=this._map._getUIString("NavigationControl."+q);N.title=H,N.setAttribute("aria-label",H)};var ga=function(N,q,H){H===void 0&&(H=!1),this._clickTolerance=10,this.element=q,this.mouseRotate=new uo({clickTolerance:N.dragRotate._mouseRotate._clickTolerance}),this.map=N,H&&(this.mousePitch=new hu({clickTolerance:N.dragRotate._mousePitch._clickTolerance})),i.bindAll(["mousedown","mousemove","mouseup","touchstart","touchmove","touchend","reset"],this),y.addEventListener(q,"mousedown",this.mousedown),y.addEventListener(q,"touchstart",this.touchstart,{passive:!1}),y.addEventListener(q,"touchmove",this.touchmove),y.addEventListener(q,"touchend",this.touchend),y.addEventListener(q,"touchcancel",this.reset)};function Pr(N,q,H){if(N=new i.LngLat(N.lng,N.lat),q){var Q=new i.LngLat(N.lng-360,N.lat),ge=new i.LngLat(N.lng+360,N.lat),Le=H.locationPoint(N).distSqr(q);H.locationPoint(Q).distSqr(q)<Le?N=Q:H.locationPoint(ge).distSqr(q)<Le&&(N=ge)}for(;Math.abs(N.lng-H.center.lng)>180;){var U=H.locationPoint(N);if(U.x>=0&&U.y>=0&&U.x<=H.width&&U.y<=H.height)break;N.lng>H.center.lng?N.lng-=360:N.lng+=360}return N}ga.prototype.down=function(N,q){this.mouseRotate.mousedown(N,q),this.mousePitch&&this.mousePitch.mousedown(N,q),y.disableDrag()},ga.prototype.move=function(N,q){var H=this.map,Q=this.mouseRotate.mousemoveWindow(N,q);if(Q&&Q.bearingDelta&&H.setBearing(H.getBearing()+Q.bearingDelta),this.mousePitch){var ge=this.mousePitch.mousemoveWindow(N,q);ge&&ge.pitchDelta&&H.setPitch(H.getPitch()+ge.pitchDelta)}},ga.prototype.off=function(){var N=this.element;y.removeEventListener(N,"mousedown",this.mousedown),y.removeEventListener(N,"touchstart",this.touchstart,{passive:!1}),y.removeEventListener(N,"touchmove",this.touchmove),y.removeEventListener(N,"touchend",this.touchend),y.removeEventListener(N,"touchcancel",this.reset),this.offTemp()},ga.prototype.offTemp=function(){y.enableDrag(),y.removeEventListener(i.window,"mousemove",this.mousemove),y.removeEventListener(i.window,"mouseup",this.mouseup)},ga.prototype.mousedown=function(N){this.down(i.extend({},N,{ctrlKey:!0,preventDefault:function(){return N.preventDefault()}}),y.mousePos(this.element,N)),y.addEventListener(i.window,"mousemove",this.mousemove),y.addEventListener(i.window,"mouseup",this.mouseup)},ga.prototype.mousemove=function(N){this.move(N,y.mousePos(this.element,N))},ga.prototype.mouseup=function(N){this.mouseRotate.mouseupWindow(N),this.mousePitch&&this.mousePitch.mouseupWindow(N),this.offTemp()},ga.prototype.touchstart=function(N){N.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=y.touchPos(this.element,N.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:function(){return N.preventDefault()}},this._startPos))},ga.prototype.touchmove=function(N){N.targetTouches.length!==1?this.reset():(this._lastPos=y.touchPos(this.element,N.targetTouches)[0],this.move({preventDefault:function(){return N.preventDefault()}},this._lastPos))},ga.prototype.touchend=function(N){N.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._clickTolerance&&this.element.click(),this.reset()},ga.prototype.reset=function(){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()};var Ir={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function kl(N,q,H){var Q=N.classList;for(var ge in Ir)Q.remove("mapboxgl-"+H+"-anchor-"+ge);Q.add("mapboxgl-"+H+"-anchor-"+q)}var Pa,Os=function(N){function q(H,Q){var ge=this;if(N.call(this),(H instanceof i.window.HTMLElement||Q)&&(H=i.extend({element:H},Q)),i.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=H&&H.anchor||"center",this._color=H&&H.color||"#3FB1CE",this._draggable=H&&H.draggable||!1,this._state="inactive",this._rotation=H&&H.rotation||0,this._rotationAlignment=H&&H.rotationAlignment||"auto",this._pitchAlignment=H&&H.pitchAlignment&&H.pitchAlignment!=="auto"?H.pitchAlignment:this._rotationAlignment,H&&H.element)this._element=H.element,this._offset=i.Point.convert(H&&H.offset||[0,0]);else{this._defaultMarker=!0,this._element=y.create("div"),this._element.setAttribute("aria-label","Map marker");var Le=y.createNS("http://www.w3.org/2000/svg","svg");Le.setAttributeNS(null,"display","block"),Le.setAttributeNS(null,"height","41px"),Le.setAttributeNS(null,"width","27px"),Le.setAttributeNS(null,"viewBox","0 0 27 41");var U=y.createNS("http://www.w3.org/2000/svg","g");U.setAttributeNS(null,"stroke","none"),U.setAttributeNS(null,"stroke-width","1"),U.setAttributeNS(null,"fill","none"),U.setAttributeNS(null,"fill-rule","evenodd");var ne=y.createNS("http://www.w3.org/2000/svg","g");ne.setAttributeNS(null,"fill-rule","nonzero");var le=y.createNS("http://www.w3.org/2000/svg","g");le.setAttributeNS(null,"transform","translate(3.0, 29.0)"),le.setAttributeNS(null,"fill","#000000");for(var ye=0,ke=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];ye<ke.length;ye+=1){var Re=ke[ye],He=y.createNS("http://www.w3.org/2000/svg","ellipse");He.setAttributeNS(null,"opacity","0.04"),He.setAttributeNS(null,"cx","10.5"),He.setAttributeNS(null,"cy","5.80029008"),He.setAttributeNS(null,"rx",Re.rx),He.setAttributeNS(null,"ry",Re.ry),le.appendChild(He)}var We=y.createNS("http://www.w3.org/2000/svg","g");We.setAttributeNS(null,"fill",this._color);var Xe=y.createNS("http://www.w3.org/2000/svg","path");Xe.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),We.appendChild(Xe);var Ke=y.createNS("http://www.w3.org/2000/svg","g");Ke.setAttributeNS(null,"opacity","0.25"),Ke.setAttributeNS(null,"fill","#000000");var it=y.createNS("http://www.w3.org/2000/svg","path");it.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),Ke.appendChild(it);var pt=y.createNS("http://www.w3.org/2000/svg","g");pt.setAttributeNS(null,"transform","translate(6.0, 7.0)"),pt.setAttributeNS(null,"fill","#FFFFFF");var mt=y.createNS("http://www.w3.org/2000/svg","g");mt.setAttributeNS(null,"transform","translate(8.0, 8.0)");var Ot=y.createNS("http://www.w3.org/2000/svg","circle");Ot.setAttributeNS(null,"fill","#000000"),Ot.setAttributeNS(null,"opacity","0.25"),Ot.setAttributeNS(null,"cx","5.5"),Ot.setAttributeNS(null,"cy","5.5"),Ot.setAttributeNS(null,"r","5.4999962");var Rt=y.createNS("http://www.w3.org/2000/svg","circle");Rt.setAttributeNS(null,"fill","#FFFFFF"),Rt.setAttributeNS(null,"cx","5.5"),Rt.setAttributeNS(null,"cy","5.5"),Rt.setAttributeNS(null,"r","5.4999962"),mt.appendChild(Ot),mt.appendChild(Rt),ne.appendChild(le),ne.appendChild(We),ne.appendChild(Ke),ne.appendChild(pt),ne.appendChild(mt),Le.appendChild(ne),this._element.appendChild(Le),this._offset=i.Point.convert(H&&H.offset||[0,-14])}this._element.classList.add("mapboxgl-marker"),this._element.addEventListener("dragstart",function(Pt){Pt.preventDefault()}),this._element.addEventListener("mousedown",function(Pt){Pt.preventDefault()}),this._element.addEventListener("focus",function(){var Pt=ge._map.getContainer();Pt.scrollTop=0,Pt.scrollLeft=0}),kl(this._element,this._anchor,"marker"),this._popup=null}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.addTo=function(H){return this.remove(),this._map=H,H.getCanvasContainer().appendChild(this._element),H.on("move",this._update),H.on("moveend",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this},q.prototype.remove=function(){return this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),y.remove(this._element),this._popup&&this._popup.remove(),this},q.prototype.getLngLat=function(){return this._lngLat},q.prototype.setLngLat=function(H){return this._lngLat=i.LngLat.convert(H),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this},q.prototype.getElement=function(){return this._element},q.prototype.setPopup=function(H){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),H){if(!("offset"in H.options)){var Q=13.5,ge=Math.sqrt(Math.pow(Q,2)/2);H.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[ge,-1*(24.6+ge)],"bottom-right":[-ge,-1*(24.6+ge)],left:[Q,-24.6],right:[-13.5,-24.6]}:this._offset}this._popup=H,this._lngLat&&this._popup.setLngLat(this._lngLat),this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this},q.prototype._onKeyPress=function(H){var Q=H.code,ge=H.charCode||H.keyCode;Q!=="Space"&&Q!=="Enter"&&ge!==32&&ge!==13||this.togglePopup()},q.prototype._onMapClick=function(H){var Q=H.originalEvent.target,ge=this._element;this._popup&&(Q===ge||ge.contains(Q))&&this.togglePopup()},q.prototype.getPopup=function(){return this._popup},q.prototype.togglePopup=function(){var H=this._popup;return H?(H.isOpen()?H.remove():H.addTo(this._map),this):this},q.prototype._update=function(H){if(this._map){this._map.transform.renderWorldCopies&&(this._lngLat=Pr(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset);var Q="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?Q="rotateZ("+this._rotation+"deg)":this._rotationAlignment==="map"&&(Q="rotateZ("+(this._rotation-this._map.getBearing())+"deg)");var ge="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?ge="rotateX(0deg)":this._pitchAlignment==="map"&&(ge="rotateX("+this._map.getPitch()+"deg)"),H&&H.type!=="moveend"||(this._pos=this._pos.round()),y.setTransform(this._element,Ir[this._anchor]+" translate("+this._pos.x+"px, "+this._pos.y+"px) "+ge+" "+Q)}},q.prototype.getOffset=function(){return this._offset},q.prototype.setOffset=function(H){return this._offset=i.Point.convert(H),this._update(),this},q.prototype._onMove=function(H){this._pos=H.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new i.Event("dragstart"))),this.fire(new i.Event("drag"))},q.prototype._onUp=function(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new i.Event("dragend")),this._state="inactive"},q.prototype._addDragHandler=function(H){this._element.contains(H.originalEvent.target)&&(H.preventDefault(),this._positionDelta=H.point.sub(this._pos).add(this._offset),this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},q.prototype.setDraggable=function(H){return this._draggable=!!H,this._map&&(H?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},q.prototype.isDraggable=function(){return this._draggable},q.prototype.setRotation=function(H){return this._rotation=H||0,this._update(),this},q.prototype.getRotation=function(){return this._rotation},q.prototype.setRotationAlignment=function(H){return this._rotationAlignment=H||"auto",this._update(),this},q.prototype.getRotationAlignment=function(){return this._rotationAlignment},q.prototype.setPitchAlignment=function(H){return this._pitchAlignment=H&&H!=="auto"?H:this._rotationAlignment,this._update(),this},q.prototype.getPitchAlignment=function(){return this._pitchAlignment},q}(i.Evented),va={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},Tl=0,ma=!1,Is=function(N){function q(H){N.call(this),this.options=i.extend({},va,H),i.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.onAdd=function(H){return this._map=H,this._container=y.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),Q=this._setupUI,Pa!==void 0?Q(Pa):i.window.navigator.permissions!==void 0?i.window.navigator.permissions.query({name:"geolocation"}).then(function(ge){Pa=ge.state!=="denied",Q(Pa)}):(Pa=!!i.window.navigator.geolocation,Q(Pa)),this._container;var Q},q.prototype.onRemove=function(){this._geolocationWatchID!==void 0&&(i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),y.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,Tl=0,ma=!1},q.prototype._isOutOfMapMaxBounds=function(H){var Q=this._map.getMaxBounds(),ge=H.coords;return Q&&(ge.longitude<Q.getWest()||ge.longitude>Q.getEast()||ge.latitude<Q.getSouth()||ge.latitude>Q.getNorth())},q.prototype._setErrorState=function(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting")}},q.prototype._onSuccess=function(H){if(this._map){if(this._isOutOfMapMaxBounds(H))return this._setErrorState(),this.fire(new i.Event("outofmaxbounds",H)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=H,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background")}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(H),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(H),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new i.Event("geolocate",H)),this._finish()}},q.prototype._updateCamera=function(H){var Q=new i.LngLat(H.coords.longitude,H.coords.latitude),ge=H.coords.accuracy,Le=this._map.getBearing(),U=i.extend({bearing:Le},this.options.fitBoundsOptions);this._map.fitBounds(Q.toBounds(ge),U,{geolocateSource:!0})},q.prototype._updateMarker=function(H){if(H){var Q=new i.LngLat(H.coords.longitude,H.coords.latitude);this._accuracyCircleMarker.setLngLat(Q).addTo(this._map),this._userLocationDotMarker.setLngLat(Q).addTo(this._map),this._accuracy=H.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},q.prototype._updateCircleRadius=function(){var H=this._map._container.clientHeight/2,Q=this._map.unproject([0,H]),ge=this._map.unproject([1,H]),Le=Q.distanceTo(ge),U=Math.ceil(2*this._accuracy/Le);this._circleElement.style.width=U+"px",this._circleElement.style.height=U+"px"},q.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},q.prototype._onError=function(H){if(this._map){if(this.options.trackUserLocation)if(H.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;var Q=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=Q,this._geolocateButton.setAttribute("aria-label",Q),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(H.code===3&&ma)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new i.Event("error",H)),this._finish()}},q.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},q.prototype._setupUI=function(H){var Q=this;if(this._container.addEventListener("contextmenu",function(U){return U.preventDefault()}),this._geolocateButton=y.create("button","mapboxgl-ctrl-geolocate",this._container),y.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",H===!1){i.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var ge=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=ge,this._geolocateButton.setAttribute("aria-label",ge)}else{var Le=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=Le,this._geolocateButton.setAttribute("aria-label",Le)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=y.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new Os(this._dotElement),this._circleElement=y.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Os({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",function(U){var ne=U.originalEvent&&U.originalEvent.type==="resize";U.geolocateSource||Q._watchState!=="ACTIVE_LOCK"||ne||(Q._watchState="BACKGROUND",Q._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),Q._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),Q.fire(new i.Event("trackuserlocationend")))})},q.prototype.trigger=function(){if(!this._setup)return i.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new i.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Tl--,ma=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new i.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new i.Event("trackuserlocationstart"))}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error")}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){var H;this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),++Tl>1?(H={maximumAge:6e5,timeout:0},ma=!0):(H=this.options.positionOptions,ma=!1),this._geolocationWatchID=i.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,H)}}else i.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},q.prototype._clearWatch=function(){i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},q}(i.Evented),Rs={maxWidth:100,unit:"metric"},Nr=function(N){this.options=i.extend({},Rs,N),i.bindAll(["_onMove","setUnit"],this)};function Qi(N,q,H){var Q=H&&H.maxWidth||100,ge=N._container.clientHeight/2,Le=N.unproject([0,ge]),U=N.unproject([Q,ge]),ne=Le.distanceTo(U);if(H&&H.unit==="imperial"){var le=3.2808*ne;le>5280?qo(q,Q,le/5280,N._getUIString("ScaleControl.Miles")):qo(q,Q,le,N._getUIString("ScaleControl.Feet"))}else H&&H.unit==="nautical"?qo(q,Q,ne/1852,N._getUIString("ScaleControl.NauticalMiles")):ne>=1e3?qo(q,Q,ne/1e3,N._getUIString("ScaleControl.Kilometers")):qo(q,Q,ne,N._getUIString("ScaleControl.Meters"))}function qo(N,q,H,Q){var ge,Le,U,ne=(ge=H,(Le=Math.pow(10,(""+Math.floor(ge)).length-1))*((U=ge/Le)>=10?10:U>=5?5:U>=3?3:U>=2?2:U>=1?1:function(ye){var ke=Math.pow(10,Math.ceil(-Math.log(ye)/Math.LN10));return Math.round(ye*ke)/ke}(U))),le=ne/H;N.style.width=q*le+"px",N.innerHTML=ne+" "+Q}Nr.prototype.getDefaultPosition=function(){return"bottom-left"},Nr.prototype._onMove=function(){Qi(this._map,this._container,this.options)},Nr.prototype.onAdd=function(N){return this._map=N,this._container=y.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",N.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},Nr.prototype.onRemove=function(){y.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},Nr.prototype.setUnit=function(N){this.options.unit=N,Qi(this._map,this._container,this.options)};var Ga=function(N){this._fullscreen=!1,N&&N.container&&(N.container instanceof i.window.HTMLElement?this._container=N.container:i.warnOnce("Full screen control 'container' must be a DOM element.")),i.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in i.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in i.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in i.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in i.window.document&&(this._fullscreenchange="MSFullscreenChange")};Ga.prototype.onAdd=function(N){return this._map=N,this._container||(this._container=this._map.getContainer()),this._controlContainer=y.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",i.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},Ga.prototype.onRemove=function(){y.remove(this._controlContainer),this._map=null,i.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},Ga.prototype._checkFullscreenSupport=function(){return!!(i.window.document.fullscreenEnabled||i.window.document.mozFullScreenEnabled||i.window.document.msFullscreenEnabled||i.window.document.webkitFullscreenEnabled)},Ga.prototype._setupUI=function(){var N=this._fullscreenButton=y.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);y.create("span","mapboxgl-ctrl-icon",N).setAttribute("aria-hidden",!0),N.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),i.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},Ga.prototype._updateTitle=function(){var N=this._getTitle();this._fullscreenButton.setAttribute("aria-label",N),this._fullscreenButton.title=N},Ga.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},Ga.prototype._isFullscreen=function(){return this._fullscreen},Ga.prototype._changeIcon=function(){(i.window.document.fullscreenElement||i.window.document.mozFullScreenElement||i.window.document.webkitFullscreenElement||i.window.document.msFullscreenElement)===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},Ga.prototype._onClickFullscreen=function(){this._isFullscreen()?i.window.document.exitFullscreen?i.window.document.exitFullscreen():i.window.document.mozCancelFullScreen?i.window.document.mozCancelFullScreen():i.window.document.msExitFullscreen?i.window.document.msExitFullscreen():i.window.document.webkitCancelFullScreen&&i.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var al={closeButton:!0,closeOnClick:!0,className:"",maxWidth:"240px"},Al=function(N){function q(H){N.call(this),this.options=i.extend(Object.create(al),H),i.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return N&&(q.__proto__=N),q.prototype=Object.create(N&&N.prototype),q.prototype.constructor=q,q.prototype.addTo=function(H){return this._map&&this.remove(),this._map=H,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new i.Event("open")),this},q.prototype.isOpen=function(){return!!this._map},q.prototype.remove=function(){return this._content&&y.remove(this._content),this._container&&(y.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new i.Event("close")),this},q.prototype.getLngLat=function(){return this._lngLat},q.prototype.setLngLat=function(H){return this._lngLat=i.LngLat.convert(H),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this},q.prototype.trackPointer=function(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")),this},q.prototype.getElement=function(){return this._container},q.prototype.setText=function(H){return this.setDOMContent(i.window.document.createTextNode(H))},q.prototype.setHTML=function(H){var Q,ge=i.window.document.createDocumentFragment(),Le=i.window.document.createElement("body");for(Le.innerHTML=H;Q=Le.firstChild;)ge.appendChild(Q);return this.setDOMContent(ge)},q.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},q.prototype.setMaxWidth=function(H){return this.options.maxWidth=H,this._update(),this},q.prototype.setDOMContent=function(H){return this._createContent(),this._content.appendChild(H),this._update(),this},q.prototype.addClassName=function(H){this._container&&this._container.classList.add(H)},q.prototype.removeClassName=function(H){this._container&&this._container.classList.remove(H)},q.prototype.toggleClassName=function(H){if(this._container)return this._container.classList.toggle(H)},q.prototype._createContent=function(){this._content&&y.remove(this._content),this._content=y.create("div","mapboxgl-popup-content",this._container),this.options.closeButton&&(this._closeButton=y.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))},q.prototype._onMouseUp=function(H){this._update(H.point)},q.prototype._onMouseMove=function(H){this._update(H.point)},q.prototype._onDrag=function(H){this._update(H.point)},q.prototype._update=function(H){var Q=this,ge=this._lngLat||this._trackPointer;if(this._map&&ge&&this._content&&(this._container||(this._container=y.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=y.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach(function(He){return Q._container.classList.add(He)}),this._trackPointer&&this._container.classList.add("mapboxgl-popup-track-pointer")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=Pr(this._lngLat,this._pos,this._map.transform)),!this._trackPointer||H)){var Le=this._pos=this._trackPointer&&H?H:this._map.project(this._lngLat),U=this.options.anchor,ne=ol(this.options.offset);if(!U){var le,ye=this._container.offsetWidth,ke=this._container.offsetHeight;le=Le.y+ne.bottom.y<ke?["top"]:Le.y>this._map.transform.height-ke?["bottom"]:[],Le.x<ye/2?le.push("left"):Le.x>this._map.transform.width-ye/2&&le.push("right"),U=le.length===0?"bottom":le.join("-")}var Re=Le.add(ne[U]).round();y.setTransform(this._container,Ir[U]+" translate("+Re.x+"px,"+Re.y+"px)"),kl(this._container,U,"popup")}},q.prototype._onClose=function(){this.remove()},q}(i.Evented);function ol(N){if(N){if(typeof N=="number"){var q=Math.round(Math.sqrt(.5*Math.pow(N,2)));return{center:new i.Point(0,0),top:new i.Point(0,N),"top-left":new i.Point(q,q),"top-right":new i.Point(-q,q),bottom:new i.Point(0,-N),"bottom-left":new i.Point(q,-q),"bottom-right":new i.Point(-q,-q),left:new i.Point(N,0),right:new i.Point(-N,0)}}if(N instanceof i.Point||Array.isArray(N)){var H=i.Point.convert(N);return{center:H,top:H,"top-left":H,"top-right":H,bottom:H,"bottom-left":H,"bottom-right":H,left:H,right:H}}return{center:i.Point.convert(N.center||[0,0]),top:i.Point.convert(N.top||[0,0]),"top-left":i.Point.convert(N["top-left"]||[0,0]),"top-right":i.Point.convert(N["top-right"]||[0,0]),bottom:i.Point.convert(N.bottom||[0,0]),"bottom-left":i.Point.convert(N["bottom-left"]||[0,0]),"bottom-right":i.Point.convert(N["bottom-right"]||[0,0]),left:i.Point.convert(N.left||[0,0]),right:i.Point.convert(N.right||[0,0])}}return ol(new i.Point(0,0))}var us={version:i.version,supported:_,setRTLTextPlugin:i.setRTLTextPlugin,getRTLTextPluginStatus:i.getRTLTextPluginStatus,Map:du,NavigationControl:Gi,GeolocateControl:Is,AttributionControl:qa,ScaleControl:Nr,FullscreenControl:Ga,Popup:Al,Marker:Os,Style:or,LngLat:i.LngLat,LngLatBounds:i.LngLatBounds,Point:i.Point,MercatorCoordinate:i.MercatorCoordinate,Evented:i.Evented,config:i.config,prewarm:function(){_t().acquire(at)},clearPrewarmedResources:function(){var N=xt;N&&(N.isPreloaded()&&N.numActive()===1?(N.release(at),xt=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},get accessToken(){return i.config.ACCESS_TOKEN},set accessToken(N){i.config.ACCESS_TOKEN=N},get baseApiUrl(){return i.config.API_URL},set baseApiUrl(N){i.config.API_URL=N},get workerCount(){return ot.workerCount},set workerCount(N){ot.workerCount=N},get maxParallelImageRequests(){return i.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(N){i.config.MAX_PARALLEL_IMAGE_REQUESTS=N},clearStorage:function(N){i.clearTileCache(N)},workerUrl:""};return us}),w}()},27084:function(R){R.exports=Math.log2||function(E){return Math.log(E)*Math.LOG2E}},16825:function(R,E,e){R.exports=function(k,i){i||(i=k,k=window);var _=0,y=0,h=0,l={shift:!1,alt:!1,control:!1,meta:!1},t=!1;function o(f){var v=!1;return"altKey"in f&&(v=v||f.altKey!==l.alt,l.alt=!!f.altKey),"shiftKey"in f&&(v=v||f.shiftKey!==l.shift,l.shift=!!f.shiftKey),"ctrlKey"in f&&(v=v||f.ctrlKey!==l.control,l.control=!!f.ctrlKey),"metaKey"in f&&(v=v||f.metaKey!==l.meta,l.meta=!!f.metaKey),v}function r(f,v){var m=w.x(v),x=w.y(v);"buttons"in v&&(f=0|v.buttons),(f!==_||m!==y||x!==h||o(v))&&(_=0|f,y=m||0,h=x||0,i&&i(_,y,h,l))}function n(f){r(0,f)}function a(){(_||y||h||l.shift||l.alt||l.meta||l.control)&&(y=h=0,_=0,l.shift=l.alt=l.control=l.meta=!1,i&&i(0,0,0,l))}function s(f){o(f)&&i&&i(_,y,h,l)}function u(f){w.buttons(f)===0?r(0,f):r(_,f)}function p(f){r(_|w.buttons(f),f)}function c(f){r(_&~w.buttons(f),f)}function b(){t||(t=!0,k.addEventListener("mousemove",u),k.addEventListener("mousedown",p),k.addEventListener("mouseup",c),k.addEventListener("mouseleave",n),k.addEventListener("mouseenter",n),k.addEventListener("mouseout",n),k.addEventListener("mouseover",n),k.addEventListener("blur",a),k.addEventListener("keyup",s),k.addEventListener("keydown",s),k.addEventListener("keypress",s),k!==window&&(window.addEventListener("blur",a),window.addEventListener("keyup",s),window.addEventListener("keydown",s),window.addEventListener("keypress",s)))}b();var g={element:k};return Object.defineProperties(g,{enabled:{get:function(){return t},set:function(f){f?b():t&&(t=!1,k.removeEventListener("mousemove",u),k.removeEventListener("mousedown",p),k.removeEventListener("mouseup",c),k.removeEventListener("mouseleave",n),k.removeEventListener("mouseenter",n),k.removeEventListener("mouseout",n),k.removeEventListener("mouseover",n),k.removeEventListener("blur",a),k.removeEventListener("keyup",s),k.removeEventListener("keydown",s),k.removeEventListener("keypress",s),k!==window&&(window.removeEventListener("blur",a),window.removeEventListener("keyup",s),window.removeEventListener("keydown",s),window.removeEventListener("keypress",s)))},enumerable:!0},buttons:{get:function(){return _},enumerable:!0},x:{get:function(){return y},enumerable:!0},y:{get:function(){return h},enumerable:!0},mods:{get:function(){return l},enumerable:!0}}),g};var w=e(74311)},48956:function(R){var E={left:0,top:0};R.exports=function(e,w,k){w=w||e.currentTarget||e.srcElement,Array.isArray(k)||(k=[0,0]);var i,_=e.clientX||0,y=e.clientY||0,h=(i=w)===window||i===document||i===document.body?E:i.getBoundingClientRect();return k[0]=_-h.left,k[1]=y-h.top,k}},74311:function(R,E){function e(w){return w.target||w.srcElement||window}E.buttons=function(w){if(typeof w=="object"){if("buttons"in w)return w.buttons;if("which"in w){if((k=w.which)===2)return 4;if(k===3)return 2;if(k>0)return 1<<k-1}else if("button"in w){var k;if((k=w.button)===1)return 4;if(k===2)return 2;if(k>=0)return 1<<k}}return 0},E.element=e,E.x=function(w){if(typeof w=="object"){if("offsetX"in w)return w.offsetX;var k=e(w).getBoundingClientRect();return w.clientX-k.left}return 0},E.y=function(w){if(typeof w=="object"){if("offsetY"in w)return w.offsetY;var k=e(w).getBoundingClientRect();return w.clientY-k.top}return 0}},1195:function(R,E,e){var w=e(75686);R.exports=function(k,i,_){typeof k=="function"&&(_=!!i,i=k,k=window);var y=w("ex",k),h=function(l){_&&l.preventDefault();var t=l.deltaX||0,o=l.deltaY||0,r=l.deltaZ||0,n=1;switch(l.deltaMode){case 1:n=y;break;case 2:n=window.innerHeight}if(o*=n,r*=n,(t*=n)||o||r)return i(t,o,r,l)};return k.addEventListener("wheel",h),h}},7417:function(R,E,e){var w;(function(k,i,_){i[k]=i[k]||function(){var y,h,l,t=Object.prototype.toString,o=typeof setImmediate<"u"?function(m){return setImmediate(m)}:setTimeout;try{Object.defineProperty({},"x",{}),y=function(m,x,T,d){return Object.defineProperty(m,x,{value:T,writable:!0,configurable:d!==!1})}}catch{y=function(x,T,d){return x[T]=d,x}}function r(m,x){l.add(m,x),h||(h=o(l.drain))}function n(m){var x,T=typeof m;return m==null||T!="object"&&T!="function"||(x=m.then),typeof x=="function"&&x}function a(){for(var m=0;m<this.chain.length;m++)s(this,this.state===1?this.chain[m].success:this.chain[m].failure,this.chain[m]);this.chain.length=0}function s(m,x,T){var d,M;try{x===!1?T.reject(m.msg):(d=x===!0?m.msg:x.call(void 0,m.msg))===T.promise?T.reject(TypeError("Promise-chain cycle")):(M=n(d))?M.call(d,T.resolve,T.reject):T.resolve(d)}catch(A){T.reject(A)}}function u(m){var x,T=this;if(!T.triggered){T.triggered=!0,T.def&&(T=T.def);try{(x=n(m))?r(function(){var d=new b(T);try{x.call(m,function(){u.apply(d,arguments)},function(){p.apply(d,arguments)})}catch(M){p.call(d,M)}}):(T.msg=m,T.state=1,T.chain.length>0&&r(a,T))}catch(d){p.call(new b(T),d)}}}function p(m){var x=this;x.triggered||(x.triggered=!0,x.def&&(x=x.def),x.msg=m,x.state=2,x.chain.length>0&&r(a,x))}function c(m,x,T,d){for(var M=0;M<x.length;M++)(function(A){m.resolve(x[A]).then(function(C){T(A,C)},d)})(M)}function b(m){this.def=m,this.triggered=!1}function g(m){this.promise=m,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function f(m){if(typeof m!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var x=new g(this);this.then=function(T,d){var M={success:typeof T!="function"||T,failure:typeof d=="function"&&d};return M.promise=new this.constructor(function(A,C){if(typeof A!="function"||typeof C!="function")throw TypeError("Not a function");M.resolve=A,M.reject=C}),x.chain.push(M),x.state!==0&&r(a,x),M.promise},this.catch=function(T){return this.then(void 0,T)};try{m.call(void 0,function(T){u.call(x,T)},function(T){p.call(x,T)})}catch(T){p.call(x,T)}}l=function(){var m,x,T;function d(M,A){this.fn=M,this.self=A,this.next=void 0}return{add:function(M,A){T=new d(M,A),x?x.next=T:m=T,x=T,T=void 0},drain:function(){var M=m;for(m=x=h=void 0;M;)M.fn.call(M.self),M=M.next}}}();var v=y({},"constructor",f,!1);return f.prototype=v,y(v,"__NPO__",0,!1),y(f,"resolve",function(m){return m&&typeof m=="object"&&m.__NPO__===1?m:new this(function(x,T){if(typeof x!="function"||typeof T!="function")throw TypeError("Not a function");x(m)})}),y(f,"reject",function(m){return new this(function(x,T){if(typeof x!="function"||typeof T!="function")throw TypeError("Not a function");T(m)})}),y(f,"all",function(m){var x=this;return t.call(m)!="[object Array]"?x.reject(TypeError("Not an array")):m.length===0?x.resolve([]):new x(function(T,d){if(typeof T!="function"||typeof d!="function")throw TypeError("Not a function");var M=m.length,A=Array(M),C=0;c(x,m,function(P,O){A[P]=O,++C===M&&T(A)},d)})}),y(f,"race",function(m){var x=this;return t.call(m)!="[object Array]"?x.reject(TypeError("Not an array")):new x(function(T,d){if(typeof T!="function"||typeof d!="function")throw TypeError("Not a function");c(x,m,function(M,A){T(A)},d)})}),f}(),R.exports?R.exports=i[k]:(w=function(){return i[k]}.call(E,e,E,R))===void 0||(R.exports=w)})("Promise",e.g!==void 0?e.g:this)},18625:function(R){var E=Math.PI,e=y(120);function w(h,l,t,o){return["C",h,l,t,o,t,o]}function k(h,l,t,o,r,n){return["C",h/3+.6666666666666666*t,l/3+.6666666666666666*o,r/3+.6666666666666666*t,n/3+.6666666666666666*o,r,n]}function i(h,l,t,o,r,n,a,s,u,p){if(p)M=p[0],A=p[1],T=p[2],d=p[3];else{var c=_(h,l,-r);h=c.x,l=c.y;var b=(h-(s=(c=_(s,u,-r)).x))/2,g=(l-(u=c.y))/2,f=b*b/(t*t)+g*g/(o*o);f>1&&(t*=f=Math.sqrt(f),o*=f);var v=t*t,m=o*o,x=(n==a?-1:1)*Math.sqrt(Math.abs((v*m-v*g*g-m*b*b)/(v*g*g+m*b*b)));x==1/0&&(x=1);var T=x*t*g/o+(h+s)/2,d=x*-o*b/t+(l+u)/2,M=Math.asin(((l-d)/o).toFixed(9)),A=Math.asin(((u-d)/o).toFixed(9));(M=h<T?E-M:M)<0&&(M=2*E+M),(A=s<T?E-A:A)<0&&(A=2*E+A),a&&M>A&&(M-=2*E),!a&&A>M&&(A-=2*E)}if(Math.abs(A-M)>e){var C=A,P=s,O=u;A=M+e*(a&&A>M?1:-1);var z=i(s=T+t*Math.cos(A),u=d+o*Math.sin(A),t,o,r,0,a,P,O,[A,C,T,d])}var B=Math.tan((A-M)/4),Y=4/3*t*B,D=4/3*o*B,G=[2*h-(h+Y*Math.sin(M)),2*l-(l-D*Math.cos(M)),s+Y*Math.sin(A),u-D*Math.cos(A),s,u];if(p)return G;z&&(G=G.concat(z));for(var V=0;V<G.length;){var j=_(G[V],G[V+1],r);G[V++]=j.x,G[V++]=j.y}return G}function _(h,l,t){return{x:h*Math.cos(t)-l*Math.sin(t),y:h*Math.sin(t)+l*Math.cos(t)}}function y(h){return h*(E/180)}R.exports=function(h){for(var l,t=[],o=0,r=0,n=0,a=0,s=null,u=null,p=0,c=0,b=0,g=h.length;b<g;b++){var f=h[b],v=f[0];switch(v){case"M":n=f[1],a=f[2];break;case"A":(f=i(p,c,f[1],f[2],y(f[3]),f[4],f[5],f[6],f[7])).unshift("C"),f.length>7&&(t.push(f.splice(0,7)),f.unshift("C"));break;case"S":var m=p,x=c;l!="C"&&l!="S"||(m+=m-o,x+=x-r),f=["C",m,x,f[1],f[2],f[3],f[4]];break;case"T":l=="Q"||l=="T"?(s=2*p-s,u=2*c-u):(s=p,u=c),f=k(p,c,s,u,f[1],f[2]);break;case"Q":s=f[1],u=f[2],f=k(p,c,f[1],f[2],f[3],f[4]);break;case"L":f=w(p,c,f[1],f[2]);break;case"H":f=w(p,c,f[1],c);break;case"V":f=w(p,c,p,f[1]);break;case"Z":f=w(p,c,n,a)}l=v,p=f[f.length-2],c=f[f.length-1],f.length>4?(o=f[f.length-4],r=f[f.length-3]):(o=p,r=c),t.push(f)}return t}},56131:function(R){var E=Object.getOwnPropertySymbols,e=Object.prototype.hasOwnProperty,w=Object.prototype.propertyIsEnumerable;R.exports=function(){try{if(!Object.assign)return!1;var k=new String("abc");if(k[5]="de",Object.getOwnPropertyNames(k)[0]==="5")return!1;for(var i={},_=0;_<10;_++)i["_"+String.fromCharCode(_)]=_;if(Object.getOwnPropertyNames(i).map(function(h){return i[h]}).join("")!=="0123456789")return!1;var y={};return"abcdefghijklmnopqrst".split("").forEach(function(h){y[h]=h}),Object.keys(Object.assign({},y)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}()?Object.assign:function(k,i){for(var _,y,h=function(r){if(r==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(r)}(k),l=1;l<arguments.length;l++){for(var t in _=Object(arguments[l]))e.call(_,t)&&(h[t]=_[t]);if(E){y=E(_);for(var o=0;o<y.length;o++)w.call(_,y[o])&&(h[y[o]]=_[y[o]])}}return h}},65848:function(R){var E=function(e){return e!=e};R.exports=function(e,w){return e===0&&w===0?1/e==1/w:e===w||!(!E(e)||!E(w))}},64003:function(R,E,e){var w=e(17045),k=e(68222),i=e(65848),_=e(27015),y=e(55572),h=k(_(),Object);w(h,{getPolyfill:_,implementation:i,shim:y}),R.exports=h},27015:function(R,E,e){var w=e(65848);R.exports=function(){return typeof Object.is=="function"?Object.is:w}},55572:function(R,E,e){var w=e(27015),k=e(17045);R.exports=function(){var i=w();return k(Object,{is:i},{is:function(){return Object.is!==i}}),i}},99019:function(R,E,e){var w;if(!Object.keys){var k=Object.prototype.hasOwnProperty,i=Object.prototype.toString,_=e(64178),y=Object.prototype.propertyIsEnumerable,h=!y.call({toString:null},"toString"),l=y.call(function(){},"prototype"),t=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],o=function(a){var s=a.constructor;return s&&s.prototype===a},r={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},n=function(){if(typeof window>"u")return!1;for(var a in window)try{if(!r["$"+a]&&k.call(window,a)&&window[a]!==null&&typeof window[a]=="object")try{o(window[a])}catch{return!0}}catch{return!0}return!1}();w=function(a){var s=a!==null&&typeof a=="object",u=i.call(a)==="[object Function]",p=_(a),c=s&&i.call(a)==="[object String]",b=[];if(!s&&!u&&!p)throw new TypeError("Object.keys called on a non-object");var g=l&&u;if(c&&a.length>0&&!k.call(a,0))for(var f=0;f<a.length;++f)b.push(String(f));if(p&&a.length>0)for(var v=0;v<a.length;++v)b.push(String(v));else for(var m in a)g&&m==="prototype"||!k.call(a,m)||b.push(String(m));if(h)for(var x=function(d){if(typeof window>"u"||!n)return o(d);try{return o(d)}catch{return!1}}(a),T=0;T<t.length;++T)x&&t[T]==="constructor"||!k.call(a,t[T])||b.push(t[T]);return b}}R.exports=w},8709:function(R,E,e){var w=Array.prototype.slice,k=e(64178),i=Object.keys,_=i?function(h){return i(h)}:e(99019),y=Object.keys;_.shim=function(){if(Object.keys){var h=function(){var l=Object.keys(arguments);return l&&l.length===arguments.length}(1,2);h||(Object.keys=function(l){return k(l)?y(w.call(l)):y(l)})}else Object.keys=_;return Object.keys||_},R.exports=_},64178:function(R){var E=Object.prototype.toString;R.exports=function(e){var w=E.call(e),k=w==="[object Arguments]";return k||(k=w!=="[object Array]"&&e!==null&&typeof e=="object"&&typeof e.length=="number"&&e.length>=0&&E.call(e.callee)==="[object Function]"),k}},88641:function(R){function E(k,i){if(typeof k!="string")return[k];var _=[k];typeof i=="string"||Array.isArray(i)?i={brackets:i}:i||(i={});var y=i.brackets?Array.isArray(i.brackets)?i.brackets:[i.brackets]:["{}","[]","()"],h=i.escape||"___",l=!!i.flat;y.forEach(function(o){var r=new RegExp(["\\",o[0],"[^\\",o[0],"\\",o[1],"]*\\",o[1]].join("")),n=[];function a(s,u,p){var c=_.push(s.slice(o[0].length,-o[1].length))-1;return n.push(c),h+c+h}_.forEach(function(s,u){for(var p,c=0;s!=p;)if(p=s,s=s.replace(r,a),c++>1e4)throw Error("References have circular dependency. Please, check them.");_[u]=s}),n=n.reverse(),_=_.map(function(s){return n.forEach(function(u){s=s.replace(new RegExp("(\\"+h+u+"\\"+h+")","g"),o[0]+"$1"+o[1])}),s})});var t=new RegExp("\\"+h+"([0-9]+)\\"+h);return l?_:function o(r,n,a){for(var s,u=[],p=0;s=t.exec(r);){if(p++>1e4)throw Error("Circular references in parenthesis");u.push(r.slice(0,s.index)),u.push(o(n[s[1]],n)),r=r.slice(s.index+s[0].length)}return u.push(r),u}(_[0],_)}function e(k,i){if(i&&i.flat){var _,y=i&&i.escape||"___",h=k[0];if(!h)return"";for(var l=new RegExp("\\"+y+"([0-9]+)\\"+y),t=0;h!=_;){if(t++>1e4)throw Error("Circular references in "+k);_=h,h=h.replace(l,o)}return h}return k.reduce(function r(n,a){return Array.isArray(a)&&(a=a.reduce(r,"")),n+a},"");function o(r,n){if(k[n]==null)throw Error("Reference "+n+"is undefined");return k[n]}}function w(k,i){return Array.isArray(k)?e(k,i):E(k,i)}w.parse=E,w.stringify=e,R.exports=w},18863:function(R,E,e){var w=e(71299);R.exports=function(k){var i;return arguments.length>1&&(k=arguments),typeof k=="string"?k=k.split(/\s/).map(parseFloat):typeof k=="number"&&(k=[k]),k.length&&typeof k[0]=="number"?i=k.length===1?{width:k[0],height:k[0],x:0,y:0}:k.length===2?{width:k[0],height:k[1],x:0,y:0}:{x:k[0],y:k[1],width:k[2]-k[0]||0,height:k[3]-k[1]||0}:k&&(i={x:(k=w(k,{left:"x l left Left",top:"y t top Top",width:"w width W Width",height:"h height W Width",bottom:"b bottom Bottom",right:"r right Right"})).left||0,y:k.top||0},k.width==null?k.right?i.width=k.right-i.x:i.width=0:i.width=k.width,k.height==null?k.bottom?i.height=k.bottom-i.y:i.height=0:i.height=k.height),i}},95616:function(R){R.exports=function(k){var i=[];return k.replace(e,function(_,y,h){var l=y.toLowerCase();for(h=function(t){var o=t.match(w);return o?o.map(Number):[]}(h),l=="m"&&h.length>2&&(i.push([y].concat(h.splice(0,2))),l="l",y=y=="m"?"l":"L");;){if(h.length==E[l])return h.unshift(y),i.push(h);if(h.length<E[l])throw new Error("malformed path data");i.push([y].concat(h.splice(0,E[l])))}}),i};var E={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},e=/([astvzqmhlc])([^astvzqmhlc]*)/gi,w=/-?[0-9]*\.?[0-9]+(?:e[-+]?\d+)?/gi},25677:function(R){R.exports=function(E,e){e||(e=[0,""]),E=String(E);var w=parseFloat(E,10);return e[0]=w,e[1]=E.match(/[\d.\-\+]*\s*(.*)/)[1]||"",e}},9748:function(R,E,e){var w=e(90386);(function(){var k,i,_,y,h,l;typeof performance<"u"&&performance!==null&&performance.now?R.exports=function(){return performance.now()}:w!=null&&w.hrtime?(R.exports=function(){return(k()-h)/1e6},i=w.hrtime,y=(k=function(){var t;return 1e9*(t=i())[0]+t[1]})(),l=1e9*w.uptime(),h=y-l):Date.now?(R.exports=function(){return Date.now()-_},_=Date.now()):(R.exports=function(){return new Date().getTime()-_},_=new Date().getTime())}).call(this)},71299:function(R){R.exports=function(w,k,i){var _,y,h={};if(typeof k=="string"&&(k=e(k)),Array.isArray(k)){var l={};for(y=0;y<k.length;y++)l[k[y]]=!0;k=l}for(_ in k)k[_]=e(k[_]);var t={};for(_ in k){var o=k[_];if(Array.isArray(o))for(y=0;y<o.length;y++){var r=o[y];if(i&&(t[r]=!0),r in w){if(h[_]=w[r],i)for(var n=y;n<o.length;n++)t[o[n]]=!0;break}}else _ in w&&(k[_]&&(h[_]=w[_]),i&&(t[_]=!0))}if(i)for(_ in w)t[_]||(h[_]=w[_]);return h};var E={};function e(w){return E[w]?E[w]:(typeof w=="string"&&(w=E[w]=w.split(/\s*,\s*|\s+/)),w)}},38258:function(R){R.exports=function(E,e,w,k){var i=E[0],_=E[1],y=!1;w===void 0&&(w=0),k===void 0&&(k=e.length);for(var h=k-w,l=0,t=h-1;l<h;t=l++){var o=e[l+w][0],r=e[l+w][1],n=e[t+w][0],a=e[t+w][1];r>_!=a>_&&i<(n-o)*(_-r)/(a-r)+o&&(y=!y)}return y}},52142:function(R,E,e){var w,k=e(69444),i=e(29023),_=e(87263),y=e(11328),h=e(55968),l=e(10670),t=!1,o=i();function r(n,a,s){var u=w.segments(n),p=w.segments(a),c=s(w.combine(u,p));return w.polygon(c)}w={buildLog:function(n){return n===!0?t=k():n===!1&&(t=!1),t!==!1&&t.list},epsilon:function(n){return o.epsilon(n)},segments:function(n){var a=_(!0,o,t);return n.regions.forEach(a.addRegion),{segments:a.calculate(n.inverted),inverted:n.inverted}},combine:function(n,a){return{combined:_(!1,o,t).calculate(n.segments,n.inverted,a.segments,a.inverted),inverted1:n.inverted,inverted2:a.inverted}},selectUnion:function(n){return{segments:h.union(n.combined,t),inverted:n.inverted1||n.inverted2}},selectIntersect:function(n){return{segments:h.intersect(n.combined,t),inverted:n.inverted1&&n.inverted2}},selectDifference:function(n){return{segments:h.difference(n.combined,t),inverted:n.inverted1&&!n.inverted2}},selectDifferenceRev:function(n){return{segments:h.differenceRev(n.combined,t),inverted:!n.inverted1&&n.inverted2}},selectXor:function(n){return{segments:h.xor(n.combined,t),inverted:n.inverted1!==n.inverted2}},polygon:function(n){return{regions:y(n.segments,o,t),inverted:n.inverted}},polygonFromGeoJSON:function(n){return l.toPolygon(w,n)},polygonToGeoJSON:function(n){return l.fromPolygon(w,o,n)},union:function(n,a){return r(n,a,w.selectUnion)},intersect:function(n,a){return r(n,a,w.selectIntersect)},difference:function(n,a){return r(n,a,w.selectDifference)},differenceRev:function(n,a){return r(n,a,w.selectDifferenceRev)},xor:function(n,a){return r(n,a,w.selectXor)}},typeof window=="object"&&(window.PolyBool=w),R.exports=w},69444:function(R){R.exports=function(){var E,e=0,w=!1;function k(i,_){return E.list.push({type:i,data:_?JSON.parse(JSON.stringify(_)):void 0}),E}return E={list:[],segmentId:function(){return e++},checkIntersection:function(i,_){return k("check",{seg1:i,seg2:_})},segmentChop:function(i,_){return k("div_seg",{seg:i,pt:_}),k("chop",{seg:i,pt:_})},statusRemove:function(i){return k("pop_seg",{seg:i})},segmentUpdate:function(i){return k("seg_update",{seg:i})},segmentNew:function(i,_){return k("new_seg",{seg:i,primary:_})},segmentRemove:function(i){return k("rem_seg",{seg:i})},tempStatus:function(i,_,y){return k("temp_status",{seg:i,above:_,below:y})},rewind:function(i){return k("rewind",{seg:i})},status:function(i,_,y){return k("status",{seg:i,above:_,below:y})},vert:function(i){return i===w?E:(w=i,k("vert",{x:i}))},log:function(i){return typeof i!="string"&&(i=JSON.stringify(i,!1," ")),k("log",{txt:i})},reset:function(){return k("reset")},selected:function(i){return k("selected",{segs:i})},chainStart:function(i){return k("chain_start",{seg:i})},chainRemoveHead:function(i,_){return k("chain_rem_head",{index:i,pt:_})},chainRemoveTail:function(i,_){return k("chain_rem_tail",{index:i,pt:_})},chainNew:function(i,_){return k("chain_new",{pt1:i,pt2:_})},chainMatch:function(i){return k("chain_match",{index:i})},chainClose:function(i){return k("chain_close",{index:i})},chainAddHead:function(i,_){return k("chain_add_head",{index:i,pt:_})},chainAddTail:function(i,_){return k("chain_add_tail",{index:i,pt:_})},chainConnect:function(i,_){return k("chain_con",{index1:i,index2:_})},chainReverse:function(i){return k("chain_rev",{index:i})},chainJoin:function(i,_){return k("chain_join",{index1:i,index2:_})},done:function(){return k("done")}}}},29023:function(R){R.exports=function(E){typeof E!="number"&&(E=1e-10);var e={epsilon:function(w){return typeof w=="number"&&(E=w),E},pointAboveOrOnLine:function(w,k,i){var _=k[0],y=k[1],h=i[0],l=i[1],t=w[0];return(h-_)*(w[1]-y)-(l-y)*(t-_)>=-E},pointBetween:function(w,k,i){var _=w[1]-k[1],y=i[0]-k[0],h=w[0]-k[0],l=i[1]-k[1],t=h*y+_*l;return!(t<E||t-(y*y+l*l)>-E)},pointsSameX:function(w,k){return Math.abs(w[0]-k[0])<E},pointsSameY:function(w,k){return Math.abs(w[1]-k[1])<E},pointsSame:function(w,k){return e.pointsSameX(w,k)&&e.pointsSameY(w,k)},pointsCompare:function(w,k){return e.pointsSameX(w,k)?e.pointsSameY(w,k)?0:w[1]<k[1]?-1:1:w[0]<k[0]?-1:1},pointsCollinear:function(w,k,i){var _=w[0]-k[0],y=w[1]-k[1],h=k[0]-i[0],l=k[1]-i[1];return Math.abs(_*l-h*y)<E},linesIntersect:function(w,k,i,_){var y=k[0]-w[0],h=k[1]-w[1],l=_[0]-i[0],t=_[1]-i[1],o=y*t-h*l;if(Math.abs(o)<E)return!1;var r=w[0]-i[0],n=w[1]-i[1],a=(l*n-t*r)/o,s=(y*n-h*r)/o,u={alongA:0,alongB:0,pt:[w[0]+a*y,w[1]+a*h]};return u.alongA=a<=-E?-2:a<E?-1:a-1<=-E?0:a-1<E?1:2,u.alongB=s<=-E?-2:s<E?-1:s-1<=-E?0:s-1<E?1:2,u},pointInsideRegion:function(w,k){for(var i=w[0],_=w[1],y=k[k.length-1][0],h=k[k.length-1][1],l=!1,t=0;t<k.length;t++){var o=k[t][0],r=k[t][1];r-_>E!=h-_>E&&(y-o)*(_-r)/(h-r)+o-i>E&&(l=!l),y=o,h=r}return l}};return e}},10670:function(R){var E={toPolygon:function(e,w){function k(y){if(y.length<=0)return e.segments({inverted:!1,regions:[]});function h(o){var r=o.slice(0,o.length-1);return e.segments({inverted:!1,regions:[r]})}for(var l=h(y[0]),t=1;t<y.length;t++)l=e.selectDifference(e.combine(l,h(y[t])));return l}if(w.type==="Polygon")return e.polygon(k(w.coordinates));if(w.type==="MultiPolygon"){for(var i=e.segments({inverted:!1,regions:[]}),_=0;_<w.coordinates.length;_++)i=e.selectUnion(e.combine(i,k(w.coordinates[_])));return e.polygon(i)}throw new Error("PolyBool: Cannot convert GeoJSON object to PolyBool polygon")},fromPolygon:function(e,w,k){function i(s,u){return w.pointInsideRegion([.5*(s[0][0]+s[1][0]),.5*(s[0][1]+s[1][1])],u)}function _(s){return{region:s,children:[]}}k=e.polygon(e.segments(k));var y=_(null);function h(s,u){for(var p=0;p<s.children.length;p++)if(i(u,(b=s.children[p]).region))return void h(b,u);var c=_(u);for(p=0;p<s.children.length;p++){var b;i((b=s.children[p]).region,u)&&(c.children.push(b),s.children.splice(p,1),p--)}s.children.push(c)}for(var l=0;l<k.regions.length;l++){var t=k.regions[l];t.length<3||h(y,t)}function o(s,u){for(var p=0,c=s[s.length-1][0],b=s[s.length-1][1],g=[],f=0;f<s.length;f++){var v=s[f][0],m=s[f][1];g.push([v,m]),p+=m*c-v*b,c=v,b=m}return p<0!==u&&g.reverse(),g.push([g[0][0],g[0][1]]),g}var r=[];function n(s){var u=[o(s.region,!1)];r.push(u);for(var p=0;p<s.children.length;p++)u.push(a(s.children[p]))}function a(s){for(var u=0;u<s.children.length;u++)n(s.children[u]);return o(s.region,!0)}for(l=0;l<y.children.length;l++)n(y.children[l]);return r.length<=0?{type:"Polygon",coordinates:[]}:r.length==1?{type:"Polygon",coordinates:r[0]}:{type:"MultiPolygon",coordinates:r}}};R.exports=E},87263:function(R,E,e){var w=e(26859);R.exports=function(k,i,_){function y(n,a,s){return{id:_?_.segmentId():-1,start:n,end:a,myFill:{above:s.myFill.above,below:s.myFill.below},otherFill:null}}var h=w.create();function l(n,a){h.insertBefore(n,function(s){return u=n.isStart,p=n.pt,c=a,b=s.isStart,g=s.pt,f=s.other.pt,((v=i.pointsCompare(p,g))!==0?v:i.pointsSame(c,f)?0:u!==b?u?1:-1:i.pointAboveOrOnLine(c,b?g:f,b?f:g)?1:-1)<0;var u,p,c,b,g,f,v})}function t(n,a){var s=function(u,p){var c=w.node({isStart:!0,pt:u.start,seg:u,primary:p,other:null,status:null});return l(c,u.end),c}(n,a);return function(u,p,c){var b=w.node({isStart:!1,pt:p.end,seg:p,primary:c,other:u,status:null});u.other=b,l(b,u.pt)}(s,n,a),s}function o(n,a){var s=y(a,n.seg.end,n.seg);return function(u,p){_&&_.segmentChop(u.seg,p),u.other.remove(),u.seg.end=p,u.other.pt=p,l(u.other,u.pt)}(n,a),t(s,n.primary)}function r(n,a){var s=w.create();function u(C){return s.findTransition(function(P){var O,z,B,Y,D,G;return O=C,z=P.ev,B=O.seg.start,Y=O.seg.end,D=z.seg.start,G=z.seg.end,(i.pointsCollinear(B,D,G)?i.pointsCollinear(Y,D,G)||i.pointAboveOrOnLine(Y,D,G)?1:-1:i.pointAboveOrOnLine(B,D,G)?1:-1)>0})}function p(C,P){var O=C.seg,z=P.seg,B=O.start,Y=O.end,D=z.start,G=z.end;_&&_.checkIntersection(O,z);var V=i.linesIntersect(B,Y,D,G);if(V===!1){if(!i.pointsCollinear(B,Y,D)||i.pointsSame(B,G)||i.pointsSame(Y,D))return!1;var j=i.pointsSame(B,D),W=i.pointsSame(Y,G);if(j&&W)return P;var Z=!j&&i.pointBetween(B,D,G),ie=!W&&i.pointBetween(Y,D,G);if(j)return ie?o(P,Y):o(C,G),P;Z&&(W||(ie?o(P,Y):o(C,G)),o(P,B))}else V.alongA===0&&(V.alongB===-1?o(C,D):V.alongB===0?o(C,V.pt):V.alongB===1&&o(C,G)),V.alongB===0&&(V.alongA===-1?o(P,B):V.alongA===0?o(P,V.pt):V.alongA===1&&o(P,Y));return!1}for(var c=[];!h.isEmpty();){var b=h.getHead();if(_&&_.vert(b.pt[0]),b.isStart){let C=function(){if(f){var P=p(b,f);if(P)return P}return!!v&&p(b,v)};var A=C;_&&_.segmentNew(b.seg,b.primary);var g=u(b),f=g.before?g.before.ev:null,v=g.after?g.after.ev:null;_&&_.tempStatus(b.seg,!!f&&f.seg,!!v&&v.seg);var m,x,T=C();if(T&&(k?(x=b.seg.myFill.below===null||b.seg.myFill.above!==b.seg.myFill.below)&&(T.seg.myFill.above=!T.seg.myFill.above):T.seg.otherFill=b.seg.myFill,_&&_.segmentUpdate(T.seg),b.other.remove(),b.remove()),h.getHead()!==b){_&&_.rewind(b.seg);continue}k?(x=b.seg.myFill.below===null||b.seg.myFill.above!==b.seg.myFill.below,b.seg.myFill.below=v?v.seg.myFill.above:n,b.seg.myFill.above=x?!b.seg.myFill.below:b.seg.myFill.below):b.seg.otherFill===null&&(m=v?b.primary===v.primary?v.seg.otherFill.above:v.seg.myFill.above:b.primary?a:n,b.seg.otherFill={above:m,below:m}),_&&_.status(b.seg,!!f&&f.seg,!!v&&v.seg),b.other.status=g.insert(w.node({ev:b}))}else{var d=b.status;if(d===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(s.exists(d.prev)&&s.exists(d.next)&&p(d.prev.ev,d.next.ev),_&&_.statusRemove(d.ev.seg),d.remove(),!b.primary){var M=b.seg.myFill;b.seg.myFill=b.seg.otherFill,b.seg.otherFill=M}c.push(b.seg)}h.getHead().remove()}return _&&_.done(),c}return k?{addRegion:function(n){for(var a,s,u,p=n[n.length-1],c=0;c<n.length;c++){a=p,p=n[c];var b=i.pointsCompare(a,p);b!==0&&t((s=b<0?a:p,u=b<0?p:a,{id:_?_.segmentId():-1,start:s,end:u,myFill:{above:null,below:null},otherFill:null}),!0)}},calculate:function(n){return r(n,!1)}}:{calculate:function(n,a,s,u){return n.forEach(function(p){t(y(p.start,p.end,p),!0)}),s.forEach(function(p){t(y(p.start,p.end,p),!1)}),r(a,u)}}}},26859:function(R){R.exports={create:function(){var E={root:{root:!0,next:null},exists:function(e){return e!==null&&e!==E.root},isEmpty:function(){return E.root.next===null},getHead:function(){return E.root.next},insertBefore:function(e,w){for(var k=E.root,i=E.root.next;i!==null;){if(w(i))return e.prev=i.prev,e.next=i,i.prev.next=e,void(i.prev=e);k=i,i=i.next}k.next=e,e.prev=k,e.next=null},findTransition:function(e){for(var w=E.root,k=E.root.next;k!==null&&!e(k);)w=k,k=k.next;return{before:w===E.root?null:w,after:k,insert:function(i){return i.prev=w,i.next=k,w.next=i,k!==null&&(k.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}}},11328:function(R){R.exports=function(E,e,w){var k=[],i=[];return E.forEach(function(_){var y=_.start,h=_.end;if(e.pointsSame(y,h))console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");else{w&&w.chainStart(_);for(var l={index:0,matches_head:!1,matches_pt1:!1},t={index:0,matches_head:!1,matches_pt1:!1},o=l,r=0;r<k.length;r++){var n=(c=k[r])[0],a=(c[1],c[c.length-1]);if(c[c.length-2],e.pointsSame(n,y)){if(d(r,!0,!0))break}else if(e.pointsSame(n,h)){if(d(r,!0,!1))break}else if(e.pointsSame(a,y)){if(d(r,!1,!0))break}else if(e.pointsSame(a,h)&&d(r,!1,!1))break}if(o===l)return k.push([y,h]),void(w&&w.chainNew(y,h));if(o===t){w&&w.chainMatch(l.index);var s=l.index,u=l.matches_pt1?h:y,p=l.matches_head,c=k[s],b=p?c[0]:c[c.length-1],g=p?c[1]:c[c.length-2],f=p?c[c.length-1]:c[0],v=p?c[c.length-2]:c[1];return e.pointsCollinear(g,b,u)&&(p?(w&&w.chainRemoveHead(l.index,u),c.shift()):(w&&w.chainRemoveTail(l.index,u),c.pop()),b=g),e.pointsSame(f,u)?(k.splice(s,1),e.pointsCollinear(v,f,b)&&(p?(w&&w.chainRemoveTail(l.index,b),c.pop()):(w&&w.chainRemoveHead(l.index,b),c.shift())),w&&w.chainClose(l.index),void i.push(c)):void(p?(w&&w.chainAddHead(l.index,u),c.unshift(u)):(w&&w.chainAddTail(l.index,u),c.push(u)))}var m=l.index,x=t.index;w&&w.chainConnect(m,x);var T=k[m].length<k[x].length;l.matches_head?t.matches_head?T?(M(m),A(m,x)):(M(x),A(x,m)):A(x,m):t.matches_head?A(m,x):T?(M(m),A(x,m)):(M(x),A(m,x))}function d(C,P,O){return o.index=C,o.matches_head=P,o.matches_pt1=O,o===l?(o=t,!1):(o=null,!0)}function M(C){w&&w.chainReverse(C),k[C].reverse()}function A(C,P){var O=k[C],z=k[P],B=O[O.length-1],Y=O[O.length-2],D=z[0],G=z[1];e.pointsCollinear(Y,B,D)&&(w&&w.chainRemoveTail(C,B),O.pop(),B=Y),e.pointsCollinear(B,D,G)&&(w&&w.chainRemoveHead(P,D),z.shift()),w&&w.chainJoin(C,P),k[C]=O.concat(z),k.splice(P,1)}}),i}},55968:function(R){function E(w,k,i){var _=[];return w.forEach(function(y){var h=(y.myFill.above?8:0)+(y.myFill.below?4:0)+(y.otherFill&&y.otherFill.above?2:0)+(y.otherFill&&y.otherFill.below?1:0);k[h]!==0&&_.push({id:i?i.segmentId():-1,start:y.start,end:y.end,myFill:{above:k[h]===1,below:k[h]===2},otherFill:null})}),i&&i.selected(_),_}var e={union:function(w,k){return E(w,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],k)},intersect:function(w,k){return E(w,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],k)},difference:function(w,k){return E(w,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],k)},differenceRev:function(w,k){return E(w,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],k)},xor:function(w,k){return E(w,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],k)}};R.exports=e},14847:function(R,E,e){var w=e(21630).Transform,k=e(90715);function i(){w.call(this,{readableObjectMode:!0})}function _(y,h,l){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||"",this.name=this.constructor.name,this.message=y,h&&(this.code=h),l&&(this.statusCode=l)}i.prototype=Object.create(w.prototype),i.prototype.constructor=i,k(i.prototype),E.OF=function(y,h,l){for(var t=h,o=0;o<l.length;)if(y[t++]!==l[o++])return!1;return!0},E.eG=function(y,h){var l=[],t=0;if(h&&h==="hex")for(;t<y.length;)l.push(parseInt(y.slice(t,t+2),16)),t+=2;else for(;t<y.length;t++)l.push(255&y.charCodeAt(t));return l},E.mP=function(y,h){return y[h]|y[h+1]<<8},E.n8=function(y,h){return y[h+1]|y[h]<<8},E.nm=function(y,h){return y[h]|y[h+1]<<8|y[h+2]<<16|16777216*y[h+3]},E.Ag=function(y,h){return y[h+3]|y[h+2]<<8|y[h+1]<<16|16777216*y[h]},_.prototype=Object.create(Error.prototype),_.prototype.constructor=_},71371:function(R){function E(k,i){var _=new Error(k);return _.code=i,_}function e(k){try{return decodeURIComponent(escape(k))}catch{return k}}function w(k,i,_){this.input=k.subarray(i,_),this.start=i;var y=String.fromCharCode.apply(null,this.input.subarray(0,4));if(y!=="II*\0"&&y!=="MM\0*")throw E("invalid TIFF signature","EBADDATA");this.big_endian=y[0]==="M"}w.prototype.each=function(k){this.aborted=!1;var i=this.read_uint32(4);for(this.ifds_to_read=[{id:0,offset:i}];this.ifds_to_read.length>0&&!this.aborted;){var _=this.ifds_to_read.shift();_.offset&&this.scan_ifd(_.id,_.offset,k)}},w.prototype.read_uint16=function(k){var i=this.input;if(k+2>i.length)throw E("unexpected EOF","EBADDATA");return this.big_endian?256*i[k]+i[k+1]:i[k]+256*i[k+1]},w.prototype.read_uint32=function(k){var i=this.input;if(k+4>i.length)throw E("unexpected EOF","EBADDATA");return this.big_endian?16777216*i[k]+65536*i[k+1]+256*i[k+2]+i[k+3]:i[k]+256*i[k+1]+65536*i[k+2]+16777216*i[k+3]},w.prototype.is_subifd_link=function(k,i){return k===0&&i===34665||k===0&&i===34853||k===34665&&i===40965},w.prototype.exif_format_length=function(k){switch(k){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}},w.prototype.exif_format_read=function(k,i){var _;switch(k){case 1:case 2:return this.input[i];case 6:return(_=this.input[i])|33554430*(128&_);case 3:return this.read_uint16(i);case 8:return(_=this.read_uint16(i))|131070*(32768&_);case 4:return this.read_uint32(i);case 9:return 0|this.read_uint32(i);default:return null}},w.prototype.scan_ifd=function(k,i,_){var y=this.read_uint16(i);i+=2;for(var h=0;h<y;h++){var l=this.read_uint16(i),t=this.read_uint16(i+2),o=this.read_uint32(i+4),r=this.exif_format_length(t),n=o*r,a=n<=4?i+8:this.read_uint32(i+8),s=!1;if(a+n>this.input.length)throw E("unexpected EOF","EBADDATA");for(var u=[],p=a,c=0;c<o;c++,p+=r){var b=this.exif_format_read(t,p);if(b===null){u=null;break}u.push(b)}if(Array.isArray(u)&&t===2&&(u=e(String.fromCharCode.apply(null,u)))&&u[u.length-1]==="\0"&&(u=u.slice(0,-1)),this.is_subifd_link(k,l)&&Array.isArray(u)&&Number.isInteger(u[0])&&u[0]>0&&(this.ifds_to_read.push({id:l,offset:u[0]}),s=!0),_({is_big_endian:this.big_endian,ifd:k,tag:l,format:t,count:o,entry_offset:i+this.start,data_length:n,data_offset:a+this.start,value:u,is_subifd_link:s})===!1)return void(this.aborted=!0);i+=12}k===0&&this.ifds_to_read.push({id:1,offset:this.read_uint32(i)})},R.exports.ExifParser=w,R.exports.get_orientation=function(k){var i=0;try{return new w(k,0,k.length).each(function(_){if(_.ifd===0&&_.tag===274&&Array.isArray(_.value))return i=_.value[0],!1}),i}catch{return-1}}},76767:function(R,E,e){var w=e(14847).n8,k=e(14847).Ag;function i(o,r){if(o.length<4+r)return null;var n=k(o,r);return o.length<n+r||n<8?null:{boxtype:String.fromCharCode.apply(null,o.slice(r+4,r+8)),data:o.slice(r+8,r+n),end:r+n}}function _(o,r){for(var n=0;;){var a=i(o,n);if(!a)break;switch(a.boxtype){case"ispe":r.sizes.push({width:k(a.data,4),height:k(a.data,8)});break;case"irot":r.transforms.push({type:"irot",value:3&a.data[0]});break;case"imir":r.transforms.push({type:"imir",value:1&a.data[0]})}n=a.end}}function y(o,r,n){for(var a=0,s=0;s<n;s++)a=256*a+(o[r+s]||0);return a}function h(o,r){for(var n=o[4]>>4&15,a=15&o[4],s=o[5]>>4&15,u=w(o,6),p=8,c=0;c<u;c++){var b=w(o,p),g=w(o,p+=2),f=y(o,p+=2,s),v=w(o,p+=s);if(p+=2,g===0&&v===1){var m=y(o,p,n),x=y(o,p+n,a);r.item_loc[b]={length:x,offset:m+f}}p+=v*(n+a)}}function l(o,r){for(var n=w(o,4),a=6,s=0;s<n;s++){var u=i(o,a);if(!u)break;if(u.boxtype==="infe"){for(var p=w(u.data,4),c="",b=8;b<u.data.length&&u.data[b];b++)c+=String.fromCharCode(u.data[b]);r.item_inf[c]=p}a=u.end}}function t(o,r){for(var n=0;;){var a=i(o,n);if(!a)break;a.boxtype==="ipco"&&_(a.data,r),n=a.end}}R.exports.unbox=i,R.exports.readSizeFromMeta=function(o){var r={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(function(b,g){for(var f=4;;){var v=i(b,f);if(!v)break;v.boxtype==="iprp"&&t(v.data,g),v.boxtype==="iloc"&&h(v.data,g),v.boxtype==="iinf"&&l(v.data,g),f=v.end}}(o,r),r.sizes.length){var n,a,s,u=(a=(n=r.sizes).reduce(function(b,g){return b.width>g.width||b.width===g.width&&b.height>g.height?b:g}),s=n.reduce(function(b,g){return b.height>g.height||b.height===g.height&&b.width>g.width?b:g}),a.width>s.height||a.width===s.height&&a.height>s.width?a:s),p=1;r.transforms.forEach(function(b){var g={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},f={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if(b.type==="imir"&&(p=b.value===0?f[p]:g[p=g[p=f[p]]]),b.type==="irot")for(var v=0;v<b.value;v++)p=g[p]});var c=null;return r.item_inf.Exif&&(c=r.item_loc[r.item_inf.Exif]),{width:u.width,height:u.height,orientation:r.transforms.length?p:null,variants:r.sizes,exif_location:c}}},R.exports.getMimeType=function(o){var r=String.fromCharCode.apply(null,o.slice(0,4)),n={};n[r]=!0;for(var a=8;a<o.length;a+=4)n[String.fromCharCode.apply(null,o.slice(a,a+4))]=!0;if(n.mif1||n.msf1||n.miaf)return r==="avif"||r==="avis"||r==="avio"?{type:"avif",mime:"image/avif"}:r==="heic"||r==="heix"?{type:"heic",mime:"image/heic"}:r==="hevc"||r==="hevx"?{type:"heic",mime:"image/heic-sequence"}:n.avif||n.avis?{type:"avif",mime:"image/avif"}:n.heic||n.heix||n.hevc||n.hevx||n.heis?n.msf1?{type:"heif",mime:"image/heif-sequence"}:{type:"heif",mime:"image/heif"}:{type:"avif",mime:"image/avif"}}},24461:function(R,E,e){var w=e(14847).eG,k=e(14847).OF,i=e(14847).Ag,_=e(76767),y=e(71371),h=w("ftyp");R.exports=function(l){if(k(l,4,h)){var t=_.unbox(l,0);if(t){var o=_.getMimeType(t.data);if(o){for(var r,n=t.end;;){var a=_.unbox(l,n);if(!a)break;if(n=a.end,a.boxtype==="mdat")return;if(a.boxtype==="meta"){r=a.data;break}}if(r){var s=_.readSizeFromMeta(r);if(s){var u={width:s.width,height:s.height,type:o.type,mime:o.mime,wUnits:"px",hUnits:"px"};if(s.variants.length>1&&(u.variants=s.variants),s.orientation&&(u.orientation=s.orientation),s.exif_location&&s.exif_location.offset+s.exif_location.length<=l.length){var p=i(l,s.exif_location.offset),c=l.slice(s.exif_location.offset+p+4,s.exif_location.offset+s.exif_location.length),b=y.get_orientation(c);b>0&&(u.orientation=b)}return u}}}}}}},2504:function(R,E,e){var w=e(14847).eG,k=e(14847).OF,i=e(14847).mP,_=w("BM");R.exports=function(y){if(!(y.length<26)&&k(y,0,_))return{width:i(y,18),height:i(y,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}},47342:function(R,E,e){var w=e(14847).eG,k=e(14847).OF,i=e(14847).mP,_=w("GIF87a"),y=w("GIF89a");R.exports=function(h){if(!(h.length<10)&&(k(h,0,_)||k(h,0,y)))return{width:i(h,6),height:i(h,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}},31355:function(R,E,e){var w=e(14847).mP;R.exports=function(k){var i=w(k,0),_=w(k,2),y=w(k,4);if(i===0&&_===1&&y){for(var h=[],l={width:0,height:0},t=0;t<y;t++){var o=k[6+16*t]||256,r=k[6+16*t+1]||256,n={width:o,height:r};h.push(n),(o>l.width||r>l.height)&&(l=n)}return{width:l.width,height:l.height,variants:h,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}},54261:function(R,E,e){var w=e(14847).n8,k=e(14847).eG,i=e(14847).OF,_=e(71371),y=k("Exif\0\0");R.exports=function(h){if(!(h.length<2)&&h[0]===255&&h[1]===216&&h[2]===255)for(var l=2;;){for(;;){if(h.length-l<2)return;if(h[l++]===255)break}for(var t,o,r=h[l++];r===255;)r=h[l++];if(208<=r&&r<=217||r===1)t=0;else{if(!(192<=r&&r<=254)||h.length-l<2)return;t=w(h,l)-2,l+=2}if(r===217||r===218)return;if(r===225&&t>=10&&i(h,l,y)&&(o=_.get_orientation(h.slice(l+6,l+t))),t>=5&&192<=r&&r<=207&&r!==196&&r!==200&&r!==204){if(h.length-l<t)return;var n={width:w(h,l+3),height:w(h,l+1),type:"jpg",mime:"image/jpeg",wUnits:"px",hUnits:"px"};return o>0&&(n.orientation=o),n}l+=t}}},6303:function(R,E,e){var w=e(14847).eG,k=e(14847).OF,i=e(14847).Ag,_=w(`PNG\r
|
||
|
||
`),y=w("IHDR");R.exports=function(h){if(!(h.length<24)&&k(h,0,_)&&k(h,12,y))return{width:i(h,16),height:i(h,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}},38689:function(R,E,e){var w=e(14847).eG,k=e(14847).OF,i=e(14847).Ag,_=w("8BPS\0");R.exports=function(y){if(!(y.length<22)&&k(y,0,_))return{width:i(y,18),height:i(y,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}},6881:function(R){function E(l){return typeof l=="number"&&isFinite(l)&&l>0}var e=/<[-_.:a-zA-Z0-9][^>]*>/,w=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,k=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,i=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,_=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,y=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function h(l){return y.test(l)?l.match(y)[0]:"px"}R.exports=function(l){if(function(f){var v,m=0,x=f.length;for(f[0]===239&&f[1]===187&&f[2]===191&&(m=3);m<x&&((v=f[m])===32||v===9||v===13||v===10);)m++;return m!==x&&f[m]===60}(l)){for(var t="",o=0;o<l.length;o++)t+=String.fromCharCode(l[o]);var r=(t.match(e)||[""])[0];if(w.test(r)){var n=function(f){var v=f.match(k),m=f.match(i),x=f.match(_);return{width:v&&(v[1]||v[2]),height:m&&(m[1]||m[2]),viewbox:x&&(x[1]||x[2])}}(r),a=parseFloat(n.width),s=parseFloat(n.height);if(n.width&&n.height)return!E(a)||!E(s)?void 0:{width:a,height:s,type:"svg",mime:"image/svg+xml",wUnits:h(n.width),hUnits:h(n.height)};var u=(n.viewbox||"").split(" "),p={width:u[2],height:u[3]},c=parseFloat(p.width),b=parseFloat(p.height);if(E(c)&&E(b)&&h(p.width)===h(p.height)){var g=c/b;return n.width?E(a)?{width:a,height:a/g,type:"svg",mime:"image/svg+xml",wUnits:h(n.width),hUnits:h(n.width)}:void 0:n.height?E(s)?{width:s*g,height:s,type:"svg",mime:"image/svg+xml",wUnits:h(n.height),hUnits:h(n.height)}:void 0:{width:c,height:b,type:"svg",mime:"image/svg+xml",wUnits:h(p.width),hUnits:h(p.height)}}}}}},66278:function(R,E,e){var w=e(14847).eG,k=e(14847).OF,i=e(14847).mP,_=e(14847).n8,y=e(14847).nm,h=e(14847).Ag,l=w("II*\0"),t=w("MM\0*");function o(a,s,u){return u?_(a,s):i(a,s)}function r(a,s,u){return u?h(a,s):y(a,s)}function n(a,s,u){var p=o(a,s+2,u);return r(a,s+4,u)!==1||p!==3&&p!==4?null:p===3?o(a,s+8,u):r(a,s+8,u)}R.exports=function(a){if(!(a.length<8)&&(k(a,0,l)||k(a,0,t))){var s=a[0]===77,u=r(a,4,s)-8;if(!(u<0)){var p=u+8;if(!(a.length-p<2)){var c=12*o(a,p+0,s);if(!(c<=0||(p+=2,a.length-p<c))){var b,g,f,v;for(b=0;b<c;b+=12)(v=o(a,p+b,s))===256?g=n(a,p+b,s):v===257&&(f=n(a,p+b,s));return g&&f?{width:g,height:f,type:"tiff",mime:"image/tiff",wUnits:"px",hUnits:"px"}:void 0}}}}}},90784:function(R,E,e){var w=e(14847).eG,k=e(14847).OF,i=e(14847).mP,_=e(14847).nm,y=e(71371),h=w("RIFF"),l=w("WEBP");function t(n,a){if(n[a+3]===157&&n[a+4]===1&&n[a+5]===42)return{width:16383&i(n,a+6),height:16383&i(n,a+8),type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}function o(n,a){if(n[a]===47){var s=_(n,a+1);return{width:1+(16383&s),height:1+(s>>14&16383),type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function r(n,a){return{width:1+(n[a+6]<<16|n[a+5]<<8|n[a+4]),height:1+(n[a+9]<<a|n[a+8]<<8|n[a+7]),type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}R.exports=function(n){if(!(n.length<16)&&(k(n,0,h)||k(n,8,l))){var a=12,s=null,u=0,p=_(n,4)+8;if(!(p>n.length)){for(;a+8<p;)if(n[a]!==0){var c=String.fromCharCode.apply(null,n.slice(a,a+4)),b=_(n,a+4);c==="VP8 "&&b>=10?s=s||t(n,a+8):c==="VP8L"&&b>=9?s=s||o(n,a+8):c==="VP8X"&&b>=10?s=s||r(n,a+8):c==="EXIF"&&(u=y.get_orientation(n.slice(a+8,a+8+b)),a=1/0),a+=8+b}else a++;if(s)return u>0&&(s.orientation=u),s}}}},91497:function(R,E,e){R.exports={avif:e(24461),bmp:e(2504),gif:e(47342),ico:e(31355),jpeg:e(54261),png:e(6303),psd:e(38689),svg:e(6881),tiff:e(66278),webp:e(90784)}},33575:function(R,E,e){var w=e(91497);R.exports=function(k){return function(i){for(var _=Object.keys(w),y=0;y<_.length;y++){var h=w[_[y]](i);if(h)return h}return null}(k)},R.exports.parsers=w},90386:function(R){var E,e,w=R.exports={};function k(){throw new Error("setTimeout has not been defined")}function i(){throw new Error("clearTimeout has not been defined")}function _(s){if(E===setTimeout)return setTimeout(s,0);if((E===k||!E)&&setTimeout)return E=setTimeout,setTimeout(s,0);try{return E(s,0)}catch{try{return E.call(null,s,0)}catch{return E.call(this,s,0)}}}(function(){try{E=typeof setTimeout=="function"?setTimeout:k}catch{E=k}try{e=typeof clearTimeout=="function"?clearTimeout:i}catch{e=i}})();var y,h=[],l=!1,t=-1;function o(){l&&y&&(l=!1,y.length?h=y.concat(h):t=-1,h.length&&r())}function r(){if(!l){var s=_(o);l=!0;for(var u=h.length;u;){for(y=h,h=[];++t<u;)y&&y[t].run();t=-1,u=h.length}y=null,l=!1,function(p){if(e===clearTimeout)return clearTimeout(p);if((e===i||!e)&&clearTimeout)return e=clearTimeout,clearTimeout(p);try{return e(p)}catch{try{return e.call(null,p)}catch{return e.call(this,p)}}}(s)}}function n(s,u){this.fun=s,this.array=u}function a(){}w.nextTick=function(s){var u=new Array(arguments.length-1);if(arguments.length>1)for(var p=1;p<arguments.length;p++)u[p-1]=arguments[p];h.push(new n(s,u)),h.length!==1||l||_(r)},n.prototype.run=function(){this.fun.apply(null,this.array)},w.title="browser",w.browser=!0,w.env={},w.argv=[],w.version="",w.versions={},w.on=a,w.addListener=a,w.once=a,w.off=a,w.removeListener=a,w.removeAllListeners=a,w.emit=a,w.prependListener=a,w.prependOnceListener=a,w.listeners=function(s){return[]},w.binding=function(s){throw new Error("process.binding is not supported")},w.cwd=function(){return"/"},w.chdir=function(s){throw new Error("process.chdir is not supported")},w.umask=function(){return 0}},5877:function(R,E,e){for(var w=e(9748),k=typeof window>"u"?e.g:window,i=["moz","webkit"],_="AnimationFrame",y=k["request"+_],h=k["cancel"+_]||k["cancelRequest"+_],l=0;!y&&l<i.length;l++)y=k[i[l]+"Request"+_],h=k[i[l]+"Cancel"+_]||k[i[l]+"CancelRequest"+_];if(!y||!h){var t=0,o=0,r=[];y=function(n){if(r.length===0){var a=w(),s=Math.max(0,16.666666666666668-(a-t));t=s+a,setTimeout(function(){var u=r.slice(0);r.length=0;for(var p=0;p<u.length;p++)if(!u[p].cancelled)try{u[p].callback(t)}catch(c){setTimeout(function(){throw c},0)}},Math.round(s))}return r.push({handle:++o,callback:n,cancelled:!1}),o},h=function(n){for(var a=0;a<r.length;a++)r[a].handle===n&&(r[a].cancelled=!0)}}R.exports=function(n){return y.call(k,n)},R.exports.cancel=function(){h.apply(k,arguments)},R.exports.polyfill=function(n){n||(n=k),n.requestAnimationFrame=y,n.cancelAnimationFrame=h}},3593:function(R,E,e){var w=e(21527),k=e(25075),i=e(93447),_=e(71299),y=e(56131),h=e(30120),l=e(57060),t=l.float32,o=l.fract32;R.exports=function(n,a){if(typeof n=="function"?(a||(a={}),a.regl=n):a=n,a.length&&(a.positions=a),!(n=a.regl).hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");var s,u,p,c,b,g,f=n._gl,v={color:"black",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},m=[];return c=n.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array(0)}),u=n.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),p=n.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),b=n.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),g=n.buffer({usage:"static",type:"float",data:r}),M(a),s=n({vert:`
|
||
precision highp float;
|
||
|
||
attribute vec2 position, positionFract;
|
||
attribute vec4 error;
|
||
attribute vec4 color;
|
||
|
||
attribute vec2 direction, lineOffset, capOffset;
|
||
|
||
uniform vec4 viewport;
|
||
uniform float lineWidth, capSize;
|
||
uniform vec2 scale, scaleFract, translate, translateFract;
|
||
|
||
varying vec4 fragColor;
|
||
|
||
void main() {
|
||
fragColor = color / 255.;
|
||
|
||
vec2 pixelOffset = lineWidth * lineOffset + (capSize + lineWidth) * capOffset;
|
||
|
||
vec2 dxy = -step(.5, direction.xy) * error.xz + step(direction.xy, vec2(-.5)) * error.yw;
|
||
|
||
vec2 position = position + dxy;
|
||
|
||
vec2 pos = (position + translate) * scale
|
||
+ (positionFract + translateFract) * scale
|
||
+ (position + translate) * scaleFract
|
||
+ (positionFract + translateFract) * scaleFract;
|
||
|
||
pos += pixelOffset / viewport.zw;
|
||
|
||
gl_Position = vec4(pos * 2. - 1., 0, 1);
|
||
}
|
||
`,frag:`
|
||
precision highp float;
|
||
|
||
varying vec4 fragColor;
|
||
|
||
uniform float opacity;
|
||
|
||
void main() {
|
||
gl_FragColor = fragColor;
|
||
gl_FragColor.a *= opacity;
|
||
}
|
||
`,uniforms:{range:n.prop("range"),lineWidth:n.prop("lineWidth"),capSize:n.prop("capSize"),opacity:n.prop("opacity"),scale:n.prop("scale"),translate:n.prop("translate"),scaleFract:n.prop("scaleFract"),translateFract:n.prop("translateFract"),viewport:function(C,P){return[P.viewport.x,P.viewport.y,C.viewportWidth,C.viewportHeight]}},attributes:{color:{buffer:c,offset:function(C,P){return 4*P.offset},divisor:1},position:{buffer:u,offset:function(C,P){return 8*P.offset},divisor:1},positionFract:{buffer:p,offset:function(C,P){return 8*P.offset},divisor:1},error:{buffer:b,offset:function(C,P){return 16*P.offset},divisor:1},direction:{buffer:g,stride:24,offset:0},lineOffset:{buffer:g,stride:24,offset:8},capOffset:{buffer:g,stride:24,offset:16}},primitive:"triangles",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:!1},scissor:{enable:!0,box:n.prop("viewport")},viewport:n.prop("viewport"),stencil:!1,instances:n.prop("count"),count:r.length}),y(x,{update:M,draw:T,destroy:A,regl:n,gl:f,canvas:f.canvas,groups:m}),x;function x(C){C?M(C):C===null&&A(),T()}function T(C){if(typeof C=="number")return d(C);C&&!Array.isArray(C)&&(C=[C]),n._refresh(),m.forEach(function(P,O){P&&(C&&(C[O]?P.draw=!0:P.draw=!1),P.draw?d(O):P.draw=!0)})}function d(C){typeof C=="number"&&(C=m[C]),C!=null&&C&&C.count&&C.color&&C.opacity&&C.positions&&C.positions.length>1&&(C.scaleRatio=[C.scale[0]*C.viewport.width,C.scale[1]*C.viewport.height],s(C),C.after&&C.after(C))}function M(C){if(C){C.length!=null?typeof C[0]=="number"&&(C=[{positions:C}]):Array.isArray(C)||(C=[C]);var P=0,O=0;if(x.groups=m=C.map(function(j,W){var Z=m[W];return j&&(typeof j=="function"?j={after:j}:typeof j[0]=="number"&&(j={positions:j}),j=_(j,{color:"color colors fill",capSize:"capSize cap capsize cap-size",lineWidth:"lineWidth line-width width line thickness",opacity:"opacity alpha",range:"range dataBox",viewport:"viewport viewBox",errors:"errors error",positions:"positions position data points"}),Z||(m[W]=Z={id:W,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},j=y({},v,j)),i(Z,j,[{lineWidth:function(ie){return .5*+ie},capSize:function(ie){return .5*+ie},opacity:parseFloat,errors:function(ie){return ie=h(ie),O+=ie.length,ie},positions:function(ie,te){return ie=h(ie,"float64"),te.count=Math.floor(ie.length/2),te.bounds=w(ie,2),te.offset=P,P+=te.count,ie}},{color:function(ie,te){var J=te.count;if(ie||(ie="transparent"),!Array.isArray(ie)||typeof ie[0]=="number"){var X=ie;ie=Array(J);for(var ee=0;ee<J;ee++)ie[ee]=X}if(ie.length<J)throw Error("Not enough colors");for(var re=new Uint8Array(4*J),oe=0;oe<J;oe++){var ue=k(ie[oe],"uint8");re.set(ue,4*oe)}return re},range:function(ie,te,J){var X=te.bounds;return ie||(ie=X),te.scale=[1/(ie[2]-ie[0]),1/(ie[3]-ie[1])],te.translate=[-ie[0],-ie[1]],te.scaleFract=o(te.scale),te.translateFract=o(te.translate),ie},viewport:function(ie){var te;return Array.isArray(ie)?te={x:ie[0],y:ie[1],width:ie[2]-ie[0],height:ie[3]-ie[1]}:ie?(te={x:ie.x||ie.left||0,y:ie.y||ie.top||0},ie.right?te.width=ie.right-te.x:te.width=ie.w||ie.width||0,ie.bottom?te.height=ie.bottom-te.y:te.height=ie.h||ie.height||0):te={x:0,y:0,width:f.drawingBufferWidth,height:f.drawingBufferHeight},te}}])),Z}),P||O){var z=m.reduce(function(j,W,Z){return j+(W?W.count:0)},0),B=new Float64Array(2*z),Y=new Uint8Array(4*z),D=new Float32Array(4*z);m.forEach(function(j,W){if(j){var Z=j.positions,ie=j.count,te=j.offset,J=j.color,X=j.errors;ie&&(Y.set(J,4*te),D.set(X,4*te),B.set(Z,2*te))}});var G=t(B);u(G);var V=o(B,G);p(V),c(Y),b(D)}}}function A(){u.destroy(),p.destroy(),c.destroy(),b.destroy(),g.destroy()}};var r=[[1,0,0,1,0,0],[1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]]},46075:function(R,E,e){var w=e(25075),k=e(21527),i=e(56131),_=e(56068),y=e(71299),h=e(30120),l=e(11474),t=e(54),o=e(57060),r=o.float32,n=o.fract32,a=e(83522),s=e(18863),u=e(6851);function p(c,b){if(!(this instanceof p))return new p(c,b);if(typeof c=="function"?(b||(b={}),b.regl=c):b=c,b.length&&(b.positions=b),!(c=b.regl).hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");this.gl=c._gl,this.regl=c,this.passes=[],this.shaders=p.shaders.has(c)?p.shaders.get(c):p.shaders.set(c,p.createShaders(c)).get(c),this.update(b)}R.exports=p,p.dashMult=2,p.maxPatternLength=256,p.precisionThreshold=3e6,p.maxPoints=1e4,p.maxLines=2048,p.shaders=new a,p.createShaders=function(c){var b,g=c.buffer({usage:"static",type:"float",data:[0,1,0,0,1,1,1,0]}),f={primitive:"triangle strip",instances:c.prop("count"),count:4,offset:0,uniforms:{miterMode:function(m,x){return x.join==="round"?2:1},miterLimit:c.prop("miterLimit"),scale:c.prop("scale"),scaleFract:c.prop("scaleFract"),translateFract:c.prop("translateFract"),translate:c.prop("translate"),thickness:c.prop("thickness"),dashTexture:c.prop("dashTexture"),opacity:c.prop("opacity"),pixelRatio:c.context("pixelRatio"),id:c.prop("id"),dashLength:c.prop("dashLength"),viewport:function(m,x){return[x.viewport.x,x.viewport.y,m.viewportWidth,m.viewportHeight]},depth:c.prop("depth")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:function(m,x){return!x.overlay}},stencil:{enable:!1},scissor:{enable:!0,box:c.prop("viewport")},viewport:c.prop("viewport")},v=c(i({vert:_([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute vec2 aCoord, bCoord, aCoordFract, bCoordFract;
|
||
attribute vec4 color;
|
||
attribute float lineEnd, lineTop;
|
||
|
||
uniform vec2 scale, scaleFract, translate, translateFract;
|
||
uniform float thickness, pixelRatio, id, depth;
|
||
uniform vec4 viewport;
|
||
|
||
varying vec4 fragColor;
|
||
varying vec2 tangent;
|
||
|
||
vec2 project(vec2 position, vec2 positionFract, vec2 scale, vec2 scaleFract, vec2 translate, vec2 translateFract) {
|
||
// the order is important
|
||
return position * scale + translate
|
||
+ positionFract * scale + translateFract
|
||
+ position * scaleFract
|
||
+ positionFract * scaleFract;
|
||
}
|
||
|
||
void main() {
|
||
float lineStart = 1. - lineEnd;
|
||
float lineOffset = lineTop * 2. - 1.;
|
||
|
||
vec2 diff = (bCoord + bCoordFract - aCoord - aCoordFract);
|
||
tangent = normalize(diff * scale * viewport.zw);
|
||
vec2 normal = vec2(-tangent.y, tangent.x);
|
||
|
||
vec2 position = project(aCoord, aCoordFract, scale, scaleFract, translate, translateFract) * lineStart
|
||
+ project(bCoord, bCoordFract, scale, scaleFract, translate, translateFract) * lineEnd
|
||
|
||
+ thickness * normal * .5 * lineOffset / viewport.zw;
|
||
|
||
gl_Position = vec4(position * 2.0 - 1.0, depth, 1);
|
||
|
||
fragColor = color / 255.;
|
||
}
|
||
`]),frag:_([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
uniform float dashLength, pixelRatio, thickness, opacity, id;
|
||
uniform sampler2D dashTexture;
|
||
|
||
varying vec4 fragColor;
|
||
varying vec2 tangent;
|
||
|
||
void main() {
|
||
float alpha = 1.;
|
||
|
||
float t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25;
|
||
float dash = texture2D(dashTexture, vec2(t, .5)).r;
|
||
|
||
gl_FragColor = fragColor;
|
||
gl_FragColor.a *= alpha * opacity * dash;
|
||
}
|
||
`]),attributes:{lineEnd:{buffer:g,divisor:0,stride:8,offset:0},lineTop:{buffer:g,divisor:0,stride:8,offset:4},aCoord:{buffer:c.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:c.prop("positionBuffer"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:c.prop("positionFractBuffer"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:c.prop("positionFractBuffer"),stride:8,offset:16,divisor:1},color:{buffer:c.prop("colorBuffer"),stride:4,offset:0,divisor:1}}},f));try{b=c(i({cull:{enable:!0,face:"back"},vert:_([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute vec2 aCoord, bCoord, nextCoord, prevCoord;
|
||
attribute vec4 aColor, bColor;
|
||
attribute float lineEnd, lineTop;
|
||
|
||
uniform vec2 scale, translate;
|
||
uniform float thickness, pixelRatio, id, depth;
|
||
uniform vec4 viewport;
|
||
uniform float miterLimit, miterMode;
|
||
|
||
varying vec4 fragColor;
|
||
varying vec4 startCutoff, endCutoff;
|
||
varying vec2 tangent;
|
||
varying vec2 startCoord, endCoord;
|
||
varying float enableStartMiter, enableEndMiter;
|
||
|
||
const float REVERSE_THRESHOLD = -.875;
|
||
const float MIN_DIFF = 1e-6;
|
||
|
||
// TODO: possible optimizations: avoid overcalculating all for vertices and calc just one instead
|
||
// TODO: precalculate dot products, normalize things beforehead etc.
|
||
// TODO: refactor to rectangular algorithm
|
||
|
||
float distToLine(vec2 p, vec2 a, vec2 b) {
|
||
vec2 diff = b - a;
|
||
vec2 perp = normalize(vec2(-diff.y, diff.x));
|
||
return dot(p - a, perp);
|
||
}
|
||
|
||
bool isNaN( float val ){
|
||
return ( val < 0.0 || 0.0 < val || val == 0.0 ) ? false : true;
|
||
}
|
||
|
||
void main() {
|
||
vec2 aCoord = aCoord, bCoord = bCoord, prevCoord = prevCoord, nextCoord = nextCoord;
|
||
|
||
vec2 adjustedScale;
|
||
adjustedScale.x = (abs(scale.x) < MIN_DIFF) ? MIN_DIFF : scale.x;
|
||
adjustedScale.y = (abs(scale.y) < MIN_DIFF) ? MIN_DIFF : scale.y;
|
||
|
||
vec2 scaleRatio = adjustedScale * viewport.zw;
|
||
vec2 normalWidth = thickness / scaleRatio;
|
||
|
||
float lineStart = 1. - lineEnd;
|
||
float lineBot = 1. - lineTop;
|
||
|
||
fragColor = (lineStart * aColor + lineEnd * bColor) / 255.;
|
||
|
||
if (isNaN(aCoord.x) || isNaN(aCoord.y) || isNaN(bCoord.x) || isNaN(bCoord.y)) return;
|
||
|
||
if (aCoord == prevCoord) prevCoord = aCoord + normalize(bCoord - aCoord);
|
||
if (bCoord == nextCoord) nextCoord = bCoord - normalize(bCoord - aCoord);
|
||
|
||
vec2 prevDiff = aCoord - prevCoord;
|
||
vec2 currDiff = bCoord - aCoord;
|
||
vec2 nextDiff = nextCoord - bCoord;
|
||
|
||
vec2 prevTangent = normalize(prevDiff * scaleRatio);
|
||
vec2 currTangent = normalize(currDiff * scaleRatio);
|
||
vec2 nextTangent = normalize(nextDiff * scaleRatio);
|
||
|
||
vec2 prevNormal = vec2(-prevTangent.y, prevTangent.x);
|
||
vec2 currNormal = vec2(-currTangent.y, currTangent.x);
|
||
vec2 nextNormal = vec2(-nextTangent.y, nextTangent.x);
|
||
|
||
vec2 startJoinDirection = normalize(prevTangent - currTangent);
|
||
vec2 endJoinDirection = normalize(currTangent - nextTangent);
|
||
|
||
// collapsed/unidirectional segment cases
|
||
// FIXME: there should be more elegant solution
|
||
vec2 prevTanDiff = abs(prevTangent - currTangent);
|
||
vec2 nextTanDiff = abs(nextTangent - currTangent);
|
||
if (max(prevTanDiff.x, prevTanDiff.y) < MIN_DIFF) {
|
||
startJoinDirection = currNormal;
|
||
}
|
||
if (max(nextTanDiff.x, nextTanDiff.y) < MIN_DIFF) {
|
||
endJoinDirection = currNormal;
|
||
}
|
||
if (aCoord == bCoord) {
|
||
endJoinDirection = startJoinDirection;
|
||
currNormal = prevNormal;
|
||
currTangent = prevTangent;
|
||
}
|
||
|
||
tangent = currTangent;
|
||
|
||
//calculate join shifts relative to normals
|
||
float startJoinShift = dot(currNormal, startJoinDirection);
|
||
float endJoinShift = dot(currNormal, endJoinDirection);
|
||
|
||
float startMiterRatio = abs(1. / startJoinShift);
|
||
float endMiterRatio = abs(1. / endJoinShift);
|
||
|
||
vec2 startJoin = startJoinDirection * startMiterRatio;
|
||
vec2 endJoin = endJoinDirection * endMiterRatio;
|
||
|
||
vec2 startTopJoin, startBotJoin, endTopJoin, endBotJoin;
|
||
startTopJoin = sign(startJoinShift) * startJoin * .5;
|
||
startBotJoin = -startTopJoin;
|
||
|
||
endTopJoin = sign(endJoinShift) * endJoin * .5;
|
||
endBotJoin = -endTopJoin;
|
||
|
||
vec2 aTopCoord = aCoord + normalWidth * startTopJoin;
|
||
vec2 bTopCoord = bCoord + normalWidth * endTopJoin;
|
||
vec2 aBotCoord = aCoord + normalWidth * startBotJoin;
|
||
vec2 bBotCoord = bCoord + normalWidth * endBotJoin;
|
||
|
||
//miter anti-clipping
|
||
float baClipping = distToLine(bCoord, aCoord, aBotCoord) / dot(normalize(normalWidth * endBotJoin), normalize(normalWidth.yx * vec2(-startBotJoin.y, startBotJoin.x)));
|
||
float abClipping = distToLine(aCoord, bCoord, bTopCoord) / dot(normalize(normalWidth * startBotJoin), normalize(normalWidth.yx * vec2(-endBotJoin.y, endBotJoin.x)));
|
||
|
||
//prevent close to reverse direction switch
|
||
bool prevReverse = dot(currTangent, prevTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, prevNormal)) * min(length(prevDiff), length(currDiff)) < length(normalWidth * currNormal);
|
||
bool nextReverse = dot(currTangent, nextTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, nextNormal)) * min(length(nextDiff), length(currDiff)) < length(normalWidth * currNormal);
|
||
|
||
if (prevReverse) {
|
||
//make join rectangular
|
||
vec2 miterShift = normalWidth * startJoinDirection * miterLimit * .5;
|
||
float normalAdjust = 1. - min(miterLimit / startMiterRatio, 1.);
|
||
aBotCoord = aCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;
|
||
aTopCoord = aCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;
|
||
}
|
||
else if (!nextReverse && baClipping > 0. && baClipping < length(normalWidth * endBotJoin)) {
|
||
//handle miter clipping
|
||
bTopCoord -= normalWidth * endTopJoin;
|
||
bTopCoord += normalize(endTopJoin * normalWidth) * baClipping;
|
||
}
|
||
|
||
if (nextReverse) {
|
||
//make join rectangular
|
||
vec2 miterShift = normalWidth * endJoinDirection * miterLimit * .5;
|
||
float normalAdjust = 1. - min(miterLimit / endMiterRatio, 1.);
|
||
bBotCoord = bCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;
|
||
bTopCoord = bCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;
|
||
}
|
||
else if (!prevReverse && abClipping > 0. && abClipping < length(normalWidth * startBotJoin)) {
|
||
//handle miter clipping
|
||
aBotCoord -= normalWidth * startBotJoin;
|
||
aBotCoord += normalize(startBotJoin * normalWidth) * abClipping;
|
||
}
|
||
|
||
vec2 aTopPosition = (aTopCoord) * adjustedScale + translate;
|
||
vec2 aBotPosition = (aBotCoord) * adjustedScale + translate;
|
||
|
||
vec2 bTopPosition = (bTopCoord) * adjustedScale + translate;
|
||
vec2 bBotPosition = (bBotCoord) * adjustedScale + translate;
|
||
|
||
//position is normalized 0..1 coord on the screen
|
||
vec2 position = (aTopPosition * lineTop + aBotPosition * lineBot) * lineStart + (bTopPosition * lineTop + bBotPosition * lineBot) * lineEnd;
|
||
|
||
startCoord = aCoord * scaleRatio + translate * viewport.zw + viewport.xy;
|
||
endCoord = bCoord * scaleRatio + translate * viewport.zw + viewport.xy;
|
||
|
||
gl_Position = vec4(position * 2.0 - 1.0, depth, 1);
|
||
|
||
enableStartMiter = step(dot(currTangent, prevTangent), .5);
|
||
enableEndMiter = step(dot(currTangent, nextTangent), .5);
|
||
|
||
//bevel miter cutoffs
|
||
if (miterMode == 1.) {
|
||
if (enableStartMiter == 1.) {
|
||
vec2 startMiterWidth = vec2(startJoinDirection) * thickness * miterLimit * .5;
|
||
startCutoff = vec4(aCoord, aCoord);
|
||
startCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;
|
||
startCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
|
||
startCutoff += viewport.xyxy;
|
||
startCutoff += startMiterWidth.xyxy;
|
||
}
|
||
|
||
if (enableEndMiter == 1.) {
|
||
vec2 endMiterWidth = vec2(endJoinDirection) * thickness * miterLimit * .5;
|
||
endCutoff = vec4(bCoord, bCoord);
|
||
endCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;
|
||
endCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
|
||
endCutoff += viewport.xyxy;
|
||
endCutoff += endMiterWidth.xyxy;
|
||
}
|
||
}
|
||
|
||
//round miter cutoffs
|
||
else if (miterMode == 2.) {
|
||
if (enableStartMiter == 1.) {
|
||
vec2 startMiterWidth = vec2(startJoinDirection) * thickness * abs(dot(startJoinDirection, currNormal)) * .5;
|
||
startCutoff = vec4(aCoord, aCoord);
|
||
startCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;
|
||
startCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
|
||
startCutoff += viewport.xyxy;
|
||
startCutoff += startMiterWidth.xyxy;
|
||
}
|
||
|
||
if (enableEndMiter == 1.) {
|
||
vec2 endMiterWidth = vec2(endJoinDirection) * thickness * abs(dot(endJoinDirection, currNormal)) * .5;
|
||
endCutoff = vec4(bCoord, bCoord);
|
||
endCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;
|
||
endCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
|
||
endCutoff += viewport.xyxy;
|
||
endCutoff += endMiterWidth.xyxy;
|
||
}
|
||
}
|
||
}
|
||
`]),frag:_([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
uniform float dashLength, pixelRatio, thickness, opacity, id, miterMode;
|
||
uniform sampler2D dashTexture;
|
||
|
||
varying vec4 fragColor;
|
||
varying vec2 tangent;
|
||
varying vec4 startCutoff, endCutoff;
|
||
varying vec2 startCoord, endCoord;
|
||
varying float enableStartMiter, enableEndMiter;
|
||
|
||
float distToLine(vec2 p, vec2 a, vec2 b) {
|
||
vec2 diff = b - a;
|
||
vec2 perp = normalize(vec2(-diff.y, diff.x));
|
||
return dot(p - a, perp);
|
||
}
|
||
|
||
void main() {
|
||
float alpha = 1., distToStart, distToEnd;
|
||
float cutoff = thickness * .5;
|
||
|
||
//bevel miter
|
||
if (miterMode == 1.) {
|
||
if (enableStartMiter == 1.) {
|
||
distToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);
|
||
if (distToStart < -1.) {
|
||
discard;
|
||
return;
|
||
}
|
||
alpha *= min(max(distToStart + 1., 0.), 1.);
|
||
}
|
||
|
||
if (enableEndMiter == 1.) {
|
||
distToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);
|
||
if (distToEnd < -1.) {
|
||
discard;
|
||
return;
|
||
}
|
||
alpha *= min(max(distToEnd + 1., 0.), 1.);
|
||
}
|
||
}
|
||
|
||
// round miter
|
||
else if (miterMode == 2.) {
|
||
if (enableStartMiter == 1.) {
|
||
distToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);
|
||
if (distToStart < 0.) {
|
||
float radius = length(gl_FragCoord.xy - startCoord);
|
||
|
||
if(radius > cutoff + .5) {
|
||
discard;
|
||
return;
|
||
}
|
||
|
||
alpha -= smoothstep(cutoff - .5, cutoff + .5, radius);
|
||
}
|
||
}
|
||
|
||
if (enableEndMiter == 1.) {
|
||
distToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);
|
||
if (distToEnd < 0.) {
|
||
float radius = length(gl_FragCoord.xy - endCoord);
|
||
|
||
if(radius > cutoff + .5) {
|
||
discard;
|
||
return;
|
||
}
|
||
|
||
alpha -= smoothstep(cutoff - .5, cutoff + .5, radius);
|
||
}
|
||
}
|
||
}
|
||
|
||
float t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25;
|
||
float dash = texture2D(dashTexture, vec2(t, .5)).r;
|
||
|
||
gl_FragColor = fragColor;
|
||
gl_FragColor.a *= alpha * opacity * dash;
|
||
}
|
||
`]),attributes:{lineEnd:{buffer:g,divisor:0,stride:8,offset:0},lineTop:{buffer:g,divisor:0,stride:8,offset:4},aColor:{buffer:c.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:c.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:c.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:c.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:c.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:c.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},f))}catch{b=v}return{fill:c({primitive:"triangle",elements:function(m,x){return x.triangles},offset:0,vert:_([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute vec2 position, positionFract;
|
||
|
||
uniform vec4 color;
|
||
uniform vec2 scale, scaleFract, translate, translateFract;
|
||
uniform float pixelRatio, id;
|
||
uniform vec4 viewport;
|
||
uniform float opacity;
|
||
|
||
varying vec4 fragColor;
|
||
|
||
const float MAX_LINES = 256.;
|
||
|
||
void main() {
|
||
float depth = (MAX_LINES - 4. - id) / (MAX_LINES);
|
||
|
||
vec2 position = position * scale + translate
|
||
+ positionFract * scale + translateFract
|
||
+ position * scaleFract
|
||
+ positionFract * scaleFract;
|
||
|
||
gl_Position = vec4(position * 2.0 - 1.0, depth, 1);
|
||
|
||
fragColor = color / 255.;
|
||
fragColor.a *= opacity;
|
||
}
|
||
`]),frag:_([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
varying vec4 fragColor;
|
||
|
||
void main() {
|
||
gl_FragColor = fragColor;
|
||
}
|
||
`]),uniforms:{scale:c.prop("scale"),color:c.prop("fill"),scaleFract:c.prop("scaleFract"),translateFract:c.prop("translateFract"),translate:c.prop("translate"),opacity:c.prop("opacity"),pixelRatio:c.context("pixelRatio"),id:c.prop("id"),viewport:function(m,x){return[x.viewport.x,x.viewport.y,m.viewportWidth,m.viewportHeight]}},attributes:{position:{buffer:c.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:c.prop("positionFractBuffer"),stride:8,offset:8}},blend:f.blend,depth:{enable:!1},scissor:f.scissor,stencil:f.stencil,viewport:f.viewport}),rect:v,miter:b}},p.defaults={dashes:null,join:"miter",miterLimit:1,thickness:10,cap:"square",color:"black",opacity:1,overlay:!1,viewport:null,range:null,close:!1,fill:null},p.prototype.render=function(){for(var c,b=[],g=arguments.length;g--;)b[g]=arguments[g];b.length&&(c=this).update.apply(c,b),this.draw()},p.prototype.draw=function(){for(var c=this,b=[],g=arguments.length;g--;)b[g]=arguments[g];return(b.length?b:this.passes).forEach(function(f,v){var m;if(f&&Array.isArray(f))return(m=c).draw.apply(m,f);typeof f=="number"&&(f=c.passes[f]),f&&f.count>1&&f.opacity&&(c.regl._refresh(),f.fill&&f.triangles&&f.triangles.length>2&&c.shaders.fill(f),f.thickness&&(f.scale[0]*f.viewport.width>p.precisionThreshold||f.scale[1]*f.viewport.height>p.precisionThreshold||f.join==="rect"||!f.join&&(f.thickness<=2||f.count>=p.maxPoints)?c.shaders.rect(f):c.shaders.miter(f)))}),this},p.prototype.update=function(c){var b=this;if(c){c.length!=null?typeof c[0]=="number"&&(c=[{positions:c}]):Array.isArray(c)||(c=[c]);var g=this.regl,f=this.gl;if(c.forEach(function(d,M){var A=b.passes[M];if(d!==void 0)if(d!==null){if(typeof d[0]=="number"&&(d={positions:d}),d=y(d,{positions:"positions points data coords",thickness:"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth",join:"lineJoin linejoin join type mode",miterLimit:"miterlimit miterLimit",dashes:"dash dashes dasharray dash-array dashArray",color:"color colour stroke colors colours stroke-color strokeColor",fill:"fill fill-color fillColor",opacity:"alpha opacity",overlay:"overlay crease overlap intersect",close:"closed close closed-path closePath",range:"range dataBox",viewport:"viewport viewBox",hole:"holes hole hollow",splitNull:"splitNull"}),A||(b.passes[M]=A={id:M,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:g.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:g.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:g.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:g.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},d=i({},p.defaults,d)),d.thickness!=null&&(A.thickness=parseFloat(d.thickness)),d.opacity!=null&&(A.opacity=parseFloat(d.opacity)),d.miterLimit!=null&&(A.miterLimit=parseFloat(d.miterLimit)),d.overlay!=null&&(A.overlay=!!d.overlay,M<p.maxLines&&(A.depth=2*(p.maxLines-1-M%p.maxLines)/p.maxLines-1)),d.join!=null&&(A.join=d.join),d.hole!=null&&(A.hole=d.hole),d.fill!=null&&(A.fill=d.fill?w(d.fill,"uint8"):null),d.viewport!=null&&(A.viewport=s(d.viewport)),A.viewport||(A.viewport=s([f.drawingBufferWidth,f.drawingBufferHeight])),d.close!=null&&(A.close=d.close),d.positions===null&&(d.positions=[]),d.positions){var C,P;if(d.positions.x&&d.positions.y){var O=d.positions.x,z=d.positions.y;P=A.count=Math.max(O.length,z.length),C=new Float64Array(2*P);for(var B=0;B<P;B++)C[2*B]=O[B],C[2*B+1]=z[B]}else C=h(d.positions,"float64"),P=A.count=Math.floor(C.length/2);var Y=A.bounds=k(C,2);if(A.fill){for(var D=[],G={},V=0,j=0,W=0,Z=A.count;j<Z;j++){var ie=C[2*j],te=C[2*j+1];isNaN(ie)||isNaN(te)||ie==null||te==null?(ie=C[2*V],te=C[2*V+1],G[j]=V):V=j,D[W++]=ie,D[W++]=te}if(d.splitNull){A.count-1 in G||(G[A.count]=A.count-1);var J=Object.keys(G).map(Number).sort(function(ut,lt){return ut-lt}),X=[],ee=0,re=A.hole!=null?A.hole[0]:null;if(re!=null){var oe=u(J,function(ut){return ut>=re});(J=J.slice(0,oe)).push(re)}for(var ue=function(ut){var lt=D.slice(2*ee,2*J[ut]).concat(re?D.slice(2*re):[]),Tt=(A.hole||[]).map(function(St){return St-re+(J[ut]-ee)}),Et=l(lt,Tt);Et=Et.map(function(St){return St+ee+(St+ee<J[ut]?0:re-J[ut])}),X.push.apply(X,Et),ee=J[ut]+1},ce=0;ce<J.length;ce++)ue(ce);for(var de=0,me=X.length;de<me;de++)G[X[de]]!=null&&(X[de]=G[X[de]]);A.triangles=X}else{for(var _e=l(D,A.hole||[]),Se=0,we=_e.length;Se<we;Se++)G[_e[Se]]!=null&&(_e[Se]=G[_e[Se]]);A.triangles=_e}}var xe=new Float64Array(C);t(xe,2,Y);var De=new Float64Array(2*P+6);A.close?C[0]===C[2*P-2]&&C[1]===C[2*P-1]?(De[0]=xe[2*P-4],De[1]=xe[2*P-3]):(De[0]=xe[2*P-2],De[1]=xe[2*P-1]):(De[0]=xe[0],De[1]=xe[1]),De.set(xe,2),A.close?C[0]===C[2*P-2]&&C[1]===C[2*P-1]?(De[2*P+2]=xe[2],De[2*P+3]=xe[3],A.count-=1):(De[2*P+2]=xe[0],De[2*P+3]=xe[1],De[2*P+4]=xe[2],De[2*P+5]=xe[3]):(De[2*P+2]=xe[2*P-2],De[2*P+3]=xe[2*P-1],De[2*P+4]=xe[2*P-2],De[2*P+5]=xe[2*P-1]);var Ee=r(De);A.positionBuffer(Ee);var Me=n(De,Ee);A.positionFractBuffer(Me)}if(d.range?A.range=d.range:A.range||(A.range=A.bounds),(d.range||d.positions)&&A.count){var he=A.bounds,fe=he[2]-he[0],ae=he[3]-he[1],be=A.range[2]-A.range[0],Ie=A.range[3]-A.range[1];A.scale=[fe/be,ae/Ie],A.translate=[-A.range[0]/be+he[0]/be||0,-A.range[1]/Ie+he[1]/Ie||0],A.scaleFract=n(A.scale),A.translateFract=n(A.translate)}if(d.dashes){var Te,Ne=0;if(!d.dashes||d.dashes.length<2)Ne=1,Te=new Uint8Array([255,255,255,255,255,255,255,255]);else{Ne=0;for(var qe=0;qe<d.dashes.length;++qe)Ne+=d.dashes[qe];Te=new Uint8Array(Ne*p.dashMult);for(var ve=0,Ce=255,Ae=0;Ae<2;Ae++)for(var ze=0;ze<d.dashes.length;++ze){for(var Ue=0,Ve=d.dashes[ze]*p.dashMult*.5;Ue<Ve;++Ue)Te[ve++]=Ce;Ce^=255}}A.dashLength=Ne,A.dashTexture({channels:1,data:Te,width:Te.length,height:1,mag:"linear",min:"linear"},0,0)}if(d.color){var Ye=A.count,$e=d.color;$e||($e="transparent");var rt=new Uint8Array(4*Ye+4);if(Array.isArray($e)&&typeof $e[0]!="number"){for(var ht=0;ht<Ye;ht++){var nt=w($e[ht],"uint8");rt.set(nt,4*ht)}rt.set(w($e[0],"uint8"),4*Ye)}else for(var bt=w($e,"uint8"),wt=0;wt<Ye+1;wt++)rt.set(bt,4*wt);A.colorBuffer({usage:"dynamic",type:"uint8",data:rt})}}else b.passes[M]=null}),c.length<this.passes.length){for(var v=c.length;v<this.passes.length;v++){var m=this.passes[v];m&&(m.colorBuffer.destroy(),m.positionBuffer.destroy(),m.dashTexture.destroy())}this.passes.length=c.length}for(var x=[],T=0;T<this.passes.length;T++)this.passes[T]!==null&&x.push(this.passes[T]);return this.passes=x,this}},p.prototype.destroy=function(){return this.passes.forEach(function(c){c.colorBuffer.destroy(),c.positionBuffer.destroy(),c.dashTexture.destroy()}),this.passes.length=0,this}},11870:function(R,E,e){function w(f,v){return function(m){if(Array.isArray(m))return m}(f)||function(m,x){var T=m==null?null:typeof Symbol<"u"&&m[Symbol.iterator]||m["@@iterator"];if(T!=null){var d,M,A,C,P=[],O=!0,z=!1;try{if(A=(T=T.call(m)).next,x===0){if(Object(T)!==T)return;O=!1}else for(;!(O=(d=A.call(T)).done)&&(P.push(d.value),P.length!==x);O=!0);}catch(B){z=!0,M=B}finally{try{if(!O&&T.return!=null&&(C=T.return(),Object(C)!==C))return}finally{if(z)throw M}}return P}}(f,v)||k(f,v)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function k(f,v){if(f){if(typeof f=="string")return i(f,v);var m=Object.prototype.toString.call(f).slice(8,-1);return m==="Object"&&f.constructor&&(m=f.constructor.name),m==="Map"||m==="Set"?Array.from(f):m==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(m)?i(f,v):void 0}}function i(f,v){(v==null||v>f.length)&&(v=f.length);for(var m=0,x=new Array(v);m<v;m++)x[m]=f[m];return x}var _=e(25075),y=e(21527),h=e(6475),l=e(88294),t=e(56131),o=e(56068),r=e(71299),n=e(93447),a=e(30120),s=e(62683),u=e(57060),p=e(18863),c=b;function b(f,v){var m=this;if(!(this instanceof b))return new b(f,v);typeof f=="function"?(v||(v={}),v.regl=f):(v=f,f=null),v&&v.length&&(v.positions=v);var x,T=(f=v.regl)._gl,d=[];this.tooManyColors=s,x=f.texture({data:new Uint8Array(1020),width:255,height:1,type:"uint8",format:"rgba",wrapS:"clamp",wrapT:"clamp",mag:"nearest",min:"nearest"}),t(this,{regl:f,gl:T,groups:[],markerCache:[null],markerTextures:[null],palette:d,paletteIds:{},paletteTexture:x,maxColors:255,maxSize:100,canvas:T.canvas}),this.update(v);var M={uniforms:{constPointSize:!!v.constPointSize,opacity:f.prop("opacity"),paletteSize:function(P,O){return[m.tooManyColors?0:255,x.height]},pixelRatio:f.context("pixelRatio"),scale:f.prop("scale"),scaleFract:f.prop("scaleFract"),translate:f.prop("translate"),translateFract:f.prop("translateFract"),markerTexture:f.prop("markerTexture"),paletteTexture:x},attributes:{x:function(P,O){return O.xAttr||{buffer:O.positionBuffer,stride:8,offset:0}},y:function(P,O){return O.yAttr||{buffer:O.positionBuffer,stride:8,offset:4}},xFract:function(P,O){return O.xAttr?{constant:[0,0]}:{buffer:O.positionFractBuffer,stride:8,offset:0}},yFract:function(P,O){return O.yAttr?{constant:[0,0]}:{buffer:O.positionFractBuffer,stride:8,offset:4}},size:function(P,O){return O.size.length?{buffer:O.sizeBuffer,stride:2,offset:0}:{constant:[Math.round(255*O.size/m.maxSize)]}},borderSize:function(P,O){return O.borderSize.length?{buffer:O.sizeBuffer,stride:2,offset:1}:{constant:[Math.round(255*O.borderSize/m.maxSize)]}},colorId:function(P,O){return O.color.length?{buffer:O.colorBuffer,stride:m.tooManyColors?8:4,offset:0}:{constant:m.tooManyColors?d.slice(4*O.color,4*O.color+4):[O.color]}},borderColorId:function(P,O){return O.borderColor.length?{buffer:O.colorBuffer,stride:m.tooManyColors?8:4,offset:m.tooManyColors?4:2}:{constant:m.tooManyColors?d.slice(4*O.borderColor,4*O.borderColor+4):[O.borderColor]}},isActive:function(P,O){return O.activation===!0?{constant:[1]}:O.activation?O.activation:{constant:[0]}}},blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},scissor:{enable:!0,box:f.prop("viewport")},viewport:f.prop("viewport"),stencil:{enable:!1},depth:{enable:!1},elements:f.prop("elements"),count:f.prop("count"),offset:f.prop("offset"),primitive:"points"},A=t({},M);A.frag=o([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
uniform float opacity;
|
||
uniform sampler2D markerTexture;
|
||
|
||
varying vec4 fragColor, fragBorderColor;
|
||
varying float fragWidth, fragBorderColorLevel, fragColorLevel;
|
||
|
||
float smoothStep(float x, float y) {
|
||
return 1.0 / (1.0 + exp(50.0*(x - y)));
|
||
}
|
||
|
||
void main() {
|
||
float dist = texture2D(markerTexture, gl_PointCoord).r, delta = fragWidth;
|
||
|
||
// max-distance alpha
|
||
if (dist < 0.003) discard;
|
||
|
||
// null-border case
|
||
if (fragBorderColorLevel == fragColorLevel || fragBorderColor.a == 0.) {
|
||
float colorAmt = smoothstep(.5 - delta, .5 + delta, dist);
|
||
gl_FragColor = vec4(fragColor.rgb, colorAmt * fragColor.a * opacity);
|
||
}
|
||
else {
|
||
float borderColorAmt = smoothstep(fragBorderColorLevel - delta, fragBorderColorLevel + delta, dist);
|
||
float colorAmt = smoothstep(fragColorLevel - delta, fragColorLevel + delta, dist);
|
||
|
||
vec4 color = fragBorderColor;
|
||
color.a *= borderColorAmt;
|
||
color = mix(color, fragColor, colorAmt);
|
||
color.a *= opacity;
|
||
|
||
gl_FragColor = color;
|
||
}
|
||
|
||
}
|
||
`]),A.vert=o([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute float x, y, xFract, yFract;
|
||
attribute float size, borderSize;
|
||
attribute vec4 colorId, borderColorId;
|
||
attribute float isActive;
|
||
|
||
uniform bool constPointSize;
|
||
uniform float pixelRatio;
|
||
uniform vec2 scale, scaleFract, translate, translateFract, paletteSize;
|
||
uniform sampler2D paletteTexture;
|
||
|
||
const float maxSize = 100.;
|
||
const float borderLevel = .5;
|
||
|
||
varying vec4 fragColor, fragBorderColor;
|
||
varying float fragPointSize, fragBorderRadius, fragWidth, fragBorderColorLevel, fragColorLevel;
|
||
|
||
float pointSizeScale = (constPointSize) ? 2. : pixelRatio;
|
||
|
||
bool isDirect = (paletteSize.x < 1.);
|
||
|
||
vec4 getColor(vec4 id) {
|
||
return isDirect ? id / 255. : texture2D(paletteTexture,
|
||
vec2(
|
||
(id.x + .5) / paletteSize.x,
|
||
(id.y + .5) / paletteSize.y
|
||
)
|
||
);
|
||
}
|
||
|
||
void main() {
|
||
// ignore inactive points
|
||
if (isActive == 0.) return;
|
||
|
||
vec2 position = vec2(x, y);
|
||
vec2 positionFract = vec2(xFract, yFract);
|
||
|
||
vec4 color = getColor(colorId);
|
||
vec4 borderColor = getColor(borderColorId);
|
||
|
||
float size = size * maxSize / 255.;
|
||
float borderSize = borderSize * maxSize / 255.;
|
||
|
||
gl_PointSize = 2. * size * pointSizeScale;
|
||
fragPointSize = size * pixelRatio;
|
||
|
||
vec2 pos = (position + translate) * scale
|
||
+ (positionFract + translateFract) * scale
|
||
+ (position + translate) * scaleFract
|
||
+ (positionFract + translateFract) * scaleFract;
|
||
|
||
gl_Position = vec4(pos * 2. - 1., 0., 1.);
|
||
|
||
fragColor = color;
|
||
fragBorderColor = borderColor;
|
||
fragWidth = 1. / gl_PointSize;
|
||
|
||
fragBorderColorLevel = clamp(borderLevel - borderLevel * borderSize / size, 0., 1.);
|
||
fragColorLevel = clamp(borderLevel + (1. - borderLevel) * borderSize / size, 0., 1.);
|
||
}`]),this.drawMarker=f(A);var C=t({},M);C.frag=o([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
varying vec4 fragColor, fragBorderColor;
|
||
varying float fragBorderRadius, fragWidth;
|
||
|
||
uniform float opacity;
|
||
|
||
float smoothStep(float edge0, float edge1, float x) {
|
||
float t;
|
||
t = clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
|
||
return t * t * (3.0 - 2.0 * t);
|
||
}
|
||
|
||
void main() {
|
||
float radius, alpha = 1.0, delta = fragWidth;
|
||
|
||
radius = length(2.0 * gl_PointCoord.xy - 1.0);
|
||
|
||
if (radius > 1.0 + delta) {
|
||
discard;
|
||
}
|
||
|
||
alpha -= smoothstep(1.0 - delta, 1.0 + delta, radius);
|
||
|
||
float borderRadius = fragBorderRadius;
|
||
float ratio = smoothstep(borderRadius - delta, borderRadius + delta, radius);
|
||
vec4 color = mix(fragColor, fragBorderColor, ratio);
|
||
color.a *= alpha * opacity;
|
||
gl_FragColor = color;
|
||
}
|
||
`]),C.vert=o([`precision highp float;
|
||
#define GLSLIFY 1
|
||
|
||
attribute float x, y, xFract, yFract;
|
||
attribute float size, borderSize;
|
||
attribute vec4 colorId, borderColorId;
|
||
attribute float isActive;
|
||
|
||
uniform bool constPointSize;
|
||
uniform float pixelRatio;
|
||
uniform vec2 paletteSize, scale, scaleFract, translate, translateFract;
|
||
uniform sampler2D paletteTexture;
|
||
|
||
const float maxSize = 100.;
|
||
|
||
varying vec4 fragColor, fragBorderColor;
|
||
varying float fragBorderRadius, fragWidth;
|
||
|
||
float pointSizeScale = (constPointSize) ? 2. : pixelRatio;
|
||
|
||
bool isDirect = (paletteSize.x < 1.);
|
||
|
||
vec4 getColor(vec4 id) {
|
||
return isDirect ? id / 255. : texture2D(paletteTexture,
|
||
vec2(
|
||
(id.x + .5) / paletteSize.x,
|
||
(id.y + .5) / paletteSize.y
|
||
)
|
||
);
|
||
}
|
||
|
||
void main() {
|
||
// ignore inactive points
|
||
if (isActive == 0.) return;
|
||
|
||
vec2 position = vec2(x, y);
|
||
vec2 positionFract = vec2(xFract, yFract);
|
||
|
||
vec4 color = getColor(colorId);
|
||
vec4 borderColor = getColor(borderColorId);
|
||
|
||
float size = size * maxSize / 255.;
|
||
float borderSize = borderSize * maxSize / 255.;
|
||
|
||
gl_PointSize = (size + borderSize) * pointSizeScale;
|
||
|
||
vec2 pos = (position + translate) * scale
|
||
+ (positionFract + translateFract) * scale
|
||
+ (position + translate) * scaleFract
|
||
+ (positionFract + translateFract) * scaleFract;
|
||
|
||
gl_Position = vec4(pos * 2. - 1., 0., 1.);
|
||
|
||
fragBorderRadius = 1. - 2. * borderSize / (size + borderSize);
|
||
fragColor = color;
|
||
fragBorderColor = borderColor.a == 0. || borderSize == 0. ? vec4(color.rgb, 0.) : borderColor;
|
||
fragWidth = 1. / gl_PointSize;
|
||
}
|
||
`]),s&&(C.frag=C.frag.replace("smoothstep","smoothStep"),A.frag=A.frag.replace("smoothstep","smoothStep")),this.drawCircle=f(C)}b.defaults={color:"black",borderColor:"transparent",borderSize:0,size:12,opacity:1,marker:void 0,viewport:null,range:null,pixelSize:null,count:0,offset:0,bounds:null,positions:[],snap:1e4},b.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this},b.prototype.draw=function(){for(var f=this,v=arguments.length,m=new Array(v),x=0;x<v;x++)m[x]=arguments[x];var T=this.groups;if(m.length===1&&Array.isArray(m[0])&&(m[0][0]===null||Array.isArray(m[0][0]))&&(m=m[0]),this.regl._refresh(),m.length)for(var d=0;d<m.length;d++)this.drawItem(d,m[d]);else T.forEach(function(M,A){f.drawItem(A)});return this},b.prototype.drawItem=function(f,v){var m,x=this.groups,T=x[f];if(typeof v=="number"&&(f=v,T=x[v],v=null),T&&T.count&&T.opacity){T.activation[0]&&this.drawCircle(this.getMarkerDrawOptions(0,T,v));for(var d=[],M=1;M<T.activation.length;M++)T.activation[M]&&(T.activation[M]===!0||T.activation[M].data.length)&&d.push.apply(d,function(A){if(Array.isArray(A))return i(A)}(m=this.getMarkerDrawOptions(M,T,v))||function(A){if(typeof Symbol<"u"&&A[Symbol.iterator]!=null||A["@@iterator"]!=null)return Array.from(A)}(m)||k(m)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
||
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}());d.length&&this.drawMarker(d)}},b.prototype.getMarkerDrawOptions=function(f,v,m){var x=v.range,T=v.tree,d=v.viewport,M=v.activation,A=v.selectionBuffer,C=v.count;if(this.regl,!T)return m?[t({},v,{markerTexture:this.markerTextures[f],activation:M[f],count:m.length,elements:m,offset:0})]:[t({},v,{markerTexture:this.markerTextures[f],activation:M[f],offset:0})];var P=[],O=T.range(x,{lod:!0,px:[(x[2]-x[0])/d.width,(x[3]-x[1])/d.height]});if(m){for(var z=M[f].data,B=new Uint8Array(C),Y=0;Y<m.length;Y++){var D=m[Y];B[D]=z?z[D]:1}A.subdata(B)}for(var G=O.length;G--;){var V=w(O[G],2),j=V[0],W=V[1];P.push(t({},v,{markerTexture:this.markerTextures[f],activation:m?A:M[f],offset:j,count:W-j}))}return P},b.prototype.update=function(){for(var f=this,v=arguments.length,m=new Array(v),x=0;x<v;x++)m[x]=arguments[x];if(m.length){m.length===1&&Array.isArray(m[0])&&(m=m[0]);var T=this.groups,d=this.gl,M=this.regl,A=this.maxSize,C=this.maxColors,P=this.palette;this.groups=T=m.map(function(O,z){var B=T[z];if(O===void 0)return B;O===null?O={positions:null}:typeof O=="function"?O={ondraw:O}:typeof O[0]=="number"&&(O={positions:O}),(O=r(O,{positions:"positions data points",snap:"snap cluster lod tree",size:"sizes size radius",borderSize:"borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline",color:"colors color fill fill-color fillColor",borderColor:"borderColors borderColor stroke stroke-color strokeColor",marker:"markers marker shape",range:"range dataBox databox",viewport:"viewport viewPort viewBox viewbox",opacity:"opacity alpha transparency",bounds:"bound bounds boundaries limits",tooManyColors:"tooManyColors palette paletteMode optimizePalette enablePalette"})).positions===null&&(O.positions=[]),O.tooManyColors!=null&&(f.tooManyColors=O.tooManyColors),B||(T[z]=B={id:z,scale:null,translate:null,scaleFract:null,translateFract:null,activation:[],selectionBuffer:M.buffer({data:new Uint8Array(0),usage:"stream",type:"uint8"}),sizeBuffer:M.buffer({data:new Uint8Array(0),usage:"dynamic",type:"uint8"}),colorBuffer:M.buffer({data:new Uint8Array(0),usage:"dynamic",type:"uint8"}),positionBuffer:M.buffer({data:new Uint8Array(0),usage:"dynamic",type:"float"}),positionFractBuffer:M.buffer({data:new Uint8Array(0),usage:"dynamic",type:"float"})},O=t({},b.defaults,O)),O.positions&&!("marker"in O)&&(O.marker=B.marker,delete B.marker),O.marker&&!("positions"in O)&&(O.positions=B.positions,delete B.positions);var Y=0,D=0;if(n(B,O,[{snap:!0,size:function(Se,we){return Se==null&&(Se=b.defaults.size),Y+=Se&&Se.length?1:0,Se},borderSize:function(Se,we){return Se==null&&(Se=b.defaults.borderSize),Y+=Se&&Se.length?1:0,Se},opacity:parseFloat,color:function(Se,we){return Se==null&&(Se=b.defaults.color),Se=f.updateColor(Se),D++,Se},borderColor:function(Se,we){return Se==null&&(Se=b.defaults.borderColor),Se=f.updateColor(Se),D++,Se},bounds:function(Se,we,xe){return"range"in xe||(xe.range=null),Se},positions:function(Se,we,xe){var De=we.snap,Ee=we.positionBuffer,Me=we.positionFractBuffer,he=we.selectionBuffer;if(Se.x||Se.y)return Se.x.length?we.xAttr={buffer:M.buffer(Se.x),offset:0,stride:4,count:Se.x.length}:we.xAttr={buffer:Se.x.buffer,offset:4*Se.x.offset||0,stride:4*(Se.x.stride||1),count:Se.x.count},Se.y.length?we.yAttr={buffer:M.buffer(Se.y),offset:0,stride:4,count:Se.y.length}:we.yAttr={buffer:Se.y.buffer,offset:4*Se.y.offset||0,stride:4*(Se.y.stride||1),count:Se.y.count},we.count=Math.max(we.xAttr.count,we.yAttr.count),Se;Se=a(Se,"float64");var fe=we.count=Math.floor(Se.length/2),ae=we.bounds=fe?y(Se,2):null;if(xe.range||we.range||(delete we.range,xe.range=ae),xe.marker||we.marker||(delete we.marker,xe.marker=null),De&&(De===!0||fe>De)?we.tree=l(Se,{bounds:ae}):De&&De.length&&(we.tree=De),we.tree){var be={primitive:"points",usage:"static",data:we.tree,type:"uint32"};we.elements?we.elements(be):we.elements=M.elements(be)}var Ie=u.float32(Se);return Ee({data:Ie,usage:"dynamic"}),Me({data:u.fract32(Se,Ie),usage:"dynamic"}),he({data:new Uint8Array(fe),type:"uint8",usage:"stream"}),Se}},{marker:function(Se,we,xe){var De=we.activation;if(De.forEach(function(Ie){return Ie&&Ie.destroy&&Ie.destroy()}),De.length=0,Se&&typeof Se[0]!="number"){for(var Ee=[],Me=0,he=Math.min(Se.length,we.count);Me<he;Me++){var fe=f.addMarker(Se[Me]);Ee[fe]||(Ee[fe]=new Uint8Array(we.count)),Ee[fe][Me]=1}for(var ae=0;ae<Ee.length;ae++)if(Ee[ae]){var be={data:Ee[ae],type:"uint8",usage:"static"};De[ae]?De[ae](be):De[ae]=M.buffer(be),De[ae].data=Ee[ae]}}else De[f.addMarker(Se)]=!0;return Se},range:function(Se,we,xe){var De=we.bounds;if(De)return Se||(Se=De),we.scale=[1/(Se[2]-Se[0]),1/(Se[3]-Se[1])],we.translate=[-Se[0],-Se[1]],we.scaleFract=u.fract(we.scale),we.translateFract=u.fract(we.translate),Se},viewport:function(Se){return p(Se||[d.drawingBufferWidth,d.drawingBufferHeight])}}]),Y){var G=B,V=G.count,j=G.size,W=G.borderSize,Z=G.sizeBuffer,ie=new Uint8Array(2*V);if(j.length||W.length)for(var te=0;te<V;te++)ie[2*te]=Math.round(255*(j[te]==null?j:j[te])/A),ie[2*te+1]=Math.round(255*(W[te]==null?W:W[te])/A);Z({data:ie,usage:"dynamic"})}if(D){var J,X=B,ee=X.count,re=X.color,oe=X.borderColor,ue=X.colorBuffer;if(f.tooManyColors){if(re.length||oe.length){J=new Uint8Array(8*ee);for(var ce=0;ce<ee;ce++){var de=re[ce];J[8*ce]=P[4*de],J[8*ce+1]=P[4*de+1],J[8*ce+2]=P[4*de+2],J[8*ce+3]=P[4*de+3];var me=oe[ce];J[8*ce+4]=P[4*me],J[8*ce+5]=P[4*me+1],J[8*ce+6]=P[4*me+2],J[8*ce+7]=P[4*me+3]}}}else if(re.length||oe.length){J=new Uint8Array(4*ee+2);for(var _e=0;_e<ee;_e++)re[_e]!=null&&(J[4*_e]=re[_e]%C,J[4*_e+1]=Math.floor(re[_e]/C)),oe[_e]!=null&&(J[4*_e+2]=oe[_e]%C,J[4*_e+3]=Math.floor(oe[_e]/C))}ue({data:J||new Uint8Array(0),type:"uint8",usage:"dynamic"})}return B})}},b.prototype.addMarker=function(f){var v,m=this.markerTextures,x=this.regl,T=this.markerCache,d=f==null?0:T.indexOf(f);if(d>=0)return d;if(f instanceof Uint8Array||f instanceof Uint8ClampedArray)v=f;else{v=new Uint8Array(f.length);for(var M=0,A=f.length;M<A;M++)v[M]=255*f[M]}var C=Math.floor(Math.sqrt(v.length));return d=m.length,T.push(f),m.push(x.texture({channels:1,data:v,radius:C,mag:"linear",min:"linear"})),d},b.prototype.updateColor=function(f){var v=this.paletteIds,m=this.palette,x=this.maxColors;Array.isArray(f)||(f=[f]);var T=[];if(typeof f[0]=="number"){var d=[];if(Array.isArray(f))for(var M=0;M<f.length;M+=4)d.push(f.slice(M,M+4));else for(var A=0;A<f.length;A+=4)d.push(f.subarray(A,A+4));f=d}for(var C=0;C<f.length;C++){var P=f[C];P=_(P,"uint8");var O=h(P,!1);if(v[O]==null){var z=m.length;v[O]=Math.floor(z/4),m[z]=P[0],m[z+1]=P[1],m[z+2]=P[2],m[z+3]=P[3]}T[C]=v[O]}return!this.tooManyColors&&m.length>4*x&&(this.tooManyColors=!0),this.updatePalette(m),T.length===1?T[0]:T},b.prototype.updatePalette=function(f){if(!this.tooManyColors){var v=this.maxColors,m=this.paletteTexture,x=Math.ceil(.25*f.length/v);if(x>1)for(var T=.25*(f=f.slice()).length%v;T<x*v;T++)f.push(0,0,0,0);m.height<x&&m.resize(v,x),m.subimage({width:Math.min(.25*f.length,v),height:x,data:f},0,0)}},b.prototype.destroy=function(){return this.groups.forEach(function(f){f.sizeBuffer.destroy(),f.positionBuffer.destroy(),f.positionFractBuffer.destroy(),f.colorBuffer.destroy(),f.activation.forEach(function(v){return v&&v.destroy&&v.destroy()}),f.selectionBuffer.destroy(),f.elements&&f.elements.destroy()}),this.groups.length=0,this.paletteTexture.destroy(),this.markerTextures.forEach(function(f){return f&&f.destroy&&f.destroy()}),this};var g=e(56131);R.exports=function(f,v){var m=new c(f,v),x=m.render.bind(m);return g(x,{render:x,update:m.update.bind(m),draw:m.draw.bind(m),destroy:m.destroy.bind(m),regl:m.regl,gl:m.gl,canvas:m.gl.canvas,groups:m.groups,markers:m.markerCache,palette:m.palette}),x}},60487:function(R,E,e){var w=e(11870),k=e(71299),i=e(21527),_=e(5877),y=e(57471),h=e(18863),l=e(30120);function t(a,s){if(!(this instanceof t))return new t(a);this.traces=[],this.passes={},this.regl=a,this.scatter=w(a),this.canvas=this.scatter.canvas}function o(a,s,u){return(a.id!=null?a.id:a)<<16|(255&s)<<8|255&u}function r(a,s,u){var p,c,b,g,f=a[s],v=a[u];return f.length>2?(f[0],f[2],p=f[1],c=f[3]):f.length?(p=f[0],c=f[1]):(f.x,p=f.y,f.x,f.width,c=f.y+f.height),v.length>2?(b=v[0],g=v[2],v[1],v[3]):v.length?(b=v[0],g=v[1]):(b=v.x,v.y,g=v.x+v.width,v.y,v.height),[b,p,g,c]}function n(a){if(typeof a=="number")return[a,a,a,a];if(a.length===2)return[a[0],a[1],a[0],a[1]];var s=h(a);return[s.x,s.y,s.x+s.width,s.y+s.height]}R.exports=t,t.prototype.render=function(){for(var a,s=this,u=[],p=arguments.length;p--;)u[p]=arguments[p];return u.length&&(a=this).update.apply(a,u),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?this.planned==null&&(this.planned=_(function(){s.draw(),s.dirty=!0,s.planned=null})):(this.draw(),this.dirty=!0,_(function(){s.dirty=!1})),this)},t.prototype.update=function(){for(var a,s=[],u=arguments.length;u--;)s[u]=arguments[u];if(s.length){for(var p=0;p<s.length;p++)this.updateItem(p,s[p]);this.traces=this.traces.filter(Boolean);for(var c=[],b=0,g=0;g<this.traces.length;g++){for(var f=this.traces[g],v=this.traces[g].passes,m=0;m<v.length;m++)c.push(this.passes[v[m]]);f.passOffset=b,b+=f.passes.length}return(a=this.scatter).update.apply(a,c),this}},t.prototype.updateItem=function(a,s){var u=this.regl;if(s===null)return this.traces[a]=null,this;if(!s)return this;var p,c=k(s,{data:"data items columns rows values dimensions samples x",snap:"snap cluster",size:"sizes size radius",color:"colors color fill fill-color fillColor",opacity:"opacity alpha transparency opaque",borderSize:"borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline",borderColor:"borderColors borderColor bordercolor stroke stroke-color strokeColor",marker:"markers marker shape",range:"range ranges databox dataBox",viewport:"viewport viewBox viewbox",domain:"domain domains area areas",padding:"pad padding paddings pads margin margins",transpose:"transpose transposed",diagonal:"diagonal diag showDiagonal",upper:"upper up top upperhalf upperHalf showupperhalf showUpper showUpperHalf",lower:"lower low bottom lowerhalf lowerHalf showlowerhalf showLowerHalf showLower"}),b=this.traces[a]||(this.traces[a]={id:a,buffer:u.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),color:"black",marker:null,size:12,borderColor:"transparent",borderSize:1,viewport:h([u._gl.drawingBufferWidth,u._gl.drawingBufferHeight]),padding:[0,0,0,0],opacity:1,diagonal:!0,upper:!0,lower:!0});if(c.color!=null&&(b.color=c.color),c.size!=null&&(b.size=c.size),c.marker!=null&&(b.marker=c.marker),c.borderColor!=null&&(b.borderColor=c.borderColor),c.borderSize!=null&&(b.borderSize=c.borderSize),c.opacity!=null&&(b.opacity=c.opacity),c.viewport&&(b.viewport=h(c.viewport)),c.diagonal!=null&&(b.diagonal=c.diagonal),c.upper!=null&&(b.upper=c.upper),c.lower!=null&&(b.lower=c.lower),c.data){b.buffer(l(c.data)),b.columns=c.data.length,b.count=c.data[0].length,b.bounds=[];for(var g=0;g<b.columns;g++)b.bounds[g]=i(c.data[g],1)}c.range&&(b.range=c.range,p=b.range&&typeof b.range[0]!="number"),c.domain&&(b.domain=c.domain);var f=!1;c.padding!=null&&(Array.isArray(c.padding)&&c.padding.length===b.columns&&typeof c.padding[c.padding.length-1]=="number"?(b.padding=c.padding.map(n),f=!0):b.padding=n(c.padding));var v=b.columns,m=b.count,x=b.viewport.width,T=b.viewport.height,d=b.viewport.x,M=b.viewport.y,A=x/v,C=T/v;b.passes=[];for(var P=0;P<v;P++)for(var O=0;O<v;O++)if((b.diagonal||O!==P)&&(b.upper||!(P>O))&&(b.lower||!(P<O))){var z=o(b.id,P,O),B=this.passes[z]||(this.passes[z]={});if(c.data&&(c.transpose?B.positions={x:{buffer:b.buffer,offset:O,count:m,stride:v},y:{buffer:b.buffer,offset:P,count:m,stride:v}}:B.positions={x:{buffer:b.buffer,offset:O*m,count:m},y:{buffer:b.buffer,offset:P*m,count:m}},B.bounds=r(b.bounds,P,O)),c.domain||c.viewport||c.data){var Y=f?r(b.padding,P,O):b.padding;if(b.domain){var D=r(b.domain,P,O),G=D[0],V=D[1],j=D[2],W=D[3];B.viewport=[d+G*x+Y[0],M+V*T+Y[1],d+j*x-Y[2],M+W*T-Y[3]]}else B.viewport=[d+O*A+A*Y[0],M+P*C+C*Y[1],d+(O+1)*A-A*Y[2],M+(P+1)*C-C*Y[3]]}c.color&&(B.color=b.color),c.size&&(B.size=b.size),c.marker&&(B.marker=b.marker),c.borderSize&&(B.borderSize=b.borderSize),c.borderColor&&(B.borderColor=b.borderColor),c.opacity&&(B.opacity=b.opacity),c.range&&(B.range=p?r(b.range,P,O):b.range||B.bounds),b.passes.push(z)}return this},t.prototype.draw=function(){for(var a,s=[],u=arguments.length;u--;)s[u]=arguments[u];if(s.length){for(var p=[],c=0;c<s.length;c++)if(typeof s[c]=="number"){var b=this.traces[s[c]],g=b.passes,f=b.passOffset;p.push.apply(p,y(f,f+g.length))}else if(s[c].length){var v=s[c],m=this.traces[c],x=m.passes,T=m.passOffset;x=x.map(function(d,M){p[T+M]=v})}(a=this.scatter).draw.apply(a,p)}else this.scatter.draw();return this},t.prototype.destroy=function(){return this.traces.forEach(function(a){a.buffer&&a.buffer.destroy&&a.buffer.destroy()}),this.traces=null,this.passes=null,this.scatter.destroy(),this}},98580:function(R){R.exports=function(){function E(Ze,Qe){this.id=oe++,this.type=Ze,this.data=Qe}function e(Ze){if(Ze.length===0)return[];var Qe=Ze.charAt(0),st=Ze.charAt(Ze.length-1);if(1<Ze.length&&Qe===st&&(Qe==='"'||Qe==="'"))return['"'+Ze.substr(1,Ze.length-2).replace(/\\/g,"\\\\").replace(/"/g,'\\"')+'"'];if(Qe=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Ze))return e(Ze.substr(0,Qe.index)).concat(e(Qe[1])).concat(e(Ze.substr(Qe.index+Qe[0].length)));if((Qe=Ze.split(".")).length===1)return['"'+Ze.replace(/\\/g,"\\\\").replace(/"/g,'\\"')+'"'];for(Ze=[],st=0;st<Qe.length;++st)Ze=Ze.concat(e(Qe[st]));return Ze}function w(Ze){return"["+e(Ze).join("][")+"]"}function k(Ze){return typeof Ze=="string"?Ze.split():Ze}function i(Ze){return typeof Ze=="string"?document.querySelector(Ze):Ze}function _(Ze){var Qe,st,ft,Be,je=Ze||{};Ze={};var at=[],ot=[],xt=typeof window>"u"?1:window.devicePixelRatio,yt=!1,_t={},gt=function(dt){},Ct=function(){};if(typeof je=="string"?Qe=document.querySelector(je):typeof je=="object"&&(typeof je.nodeName=="string"&&typeof je.appendChild=="function"&&typeof je.getBoundingClientRect=="function"?Qe=je:typeof je.drawArrays=="function"||typeof je.drawElements=="function"?ft=(Be=je).canvas:("gl"in je?Be=je.gl:"canvas"in je?ft=i(je.canvas):"container"in je&&(st=i(je.container)),"attributes"in je&&(Ze=je.attributes),"extensions"in je&&(at=k(je.extensions)),"optionalExtensions"in je&&(ot=k(je.optionalExtensions)),"onDone"in je&&(gt=je.onDone),"profile"in je&&(yt=!!je.profile),"pixelRatio"in je&&(xt=+je.pixelRatio),"cachedCode"in je&&(_t=je.cachedCode))),Qe&&(Qe.nodeName.toLowerCase()==="canvas"?ft=Qe:st=Qe),!Be){if(!ft){if(!(Qe=function(dt,vt,At){function Bt(){var tn=window.innerWidth,Xt=window.innerHeight;dt!==document.body&&(tn=(Xt=Ut.getBoundingClientRect()).right-Xt.left,Xt=Xt.bottom-Xt.top),Ut.width=At*tn,Ut.height=At*Xt}var jt,Ut=document.createElement("canvas");return re(Ut.style,{border:0,margin:0,padding:0,top:0,left:0,width:"100%",height:"100%"}),dt.appendChild(Ut),dt===document.body&&(Ut.style.position="absolute",re(dt.style,{margin:0,padding:0})),dt!==document.body&&typeof ResizeObserver=="function"?(jt=new ResizeObserver(function(){setTimeout(Bt)})).observe(dt):window.addEventListener("resize",Bt,!1),Bt(),{canvas:Ut,onDestroy:function(){jt?jt.disconnect():window.removeEventListener("resize",Bt),dt.removeChild(Ut)}}}(st||document.body,0,xt)))return null;ft=Qe.canvas,Ct=Qe.onDestroy}Ze.premultipliedAlpha===void 0&&(Ze.premultipliedAlpha=!0),Be=function(dt,vt){function At(Bt){try{return dt.getContext(Bt,vt)}catch{return null}}return At("webgl")||At("experimental-webgl")||At("webgl-experimental")}(ft,Ze)}return Be?{gl:Be,canvas:ft,container:st,extensions:at,optionalExtensions:ot,pixelRatio:xt,profile:yt,cachedCode:_t,onDone:gt,onDestroy:Ct}:(Ct(),gt("webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org"),null)}function y(Ze,Qe){for(var st=Array(Ze),ft=0;ft<Ze;++ft)st[ft]=Qe(ft);return st}function h(Ze){var Qe,st;return Qe=(65535<Ze)<<4,Qe|=st=(255<(Ze>>>=Qe))<<3,(Qe|=st=(15<(Ze>>>=st))<<2)|(st=(3<(Ze>>>=st))<<1)|Ze>>>st>>1}function l(){function Ze(ft){e:{for(var Be=16;268435456>=Be;Be*=16)if(ft<=Be){ft=Be;break e}ft=0}return 0<(Be=st[h(ft)>>2]).length?Be.pop():new ArrayBuffer(ft)}function Qe(ft){st[h(ft.byteLength)>>2].push(ft)}var st=y(8,function(){return[]});return{alloc:Ze,free:Qe,allocType:function(ft,Be){var je=null;switch(ft){case 5120:je=new Int8Array(Ze(Be),0,Be);break;case 5121:je=new Uint8Array(Ze(Be),0,Be);break;case 5122:je=new Int16Array(Ze(2*Be),0,Be);break;case 5123:je=new Uint16Array(Ze(2*Be),0,Be);break;case 5124:je=new Int32Array(Ze(4*Be),0,Be);break;case 5125:je=new Uint32Array(Ze(4*Be),0,Be);break;case 5126:je=new Float32Array(Ze(4*Be),0,Be);break;default:return null}return je.length!==Be?je.subarray(0,Be):je},freeType:function(ft){Qe(ft.buffer)}}}function t(Ze){return!!Ze&&typeof Ze=="object"&&Array.isArray(Ze.shape)&&Array.isArray(Ze.stride)&&typeof Ze.offset=="number"&&Ze.shape.length===Ze.stride.length&&(Array.isArray(Ze.data)||Se(Ze.data))}function o(Ze,Qe,st,ft,Be,je){for(var at=0;at<Qe;++at)for(var ot=Ze[at],xt=0;xt<st;++xt)for(var yt=ot[xt],_t=0;_t<ft;++_t)Be[je++]=yt[_t]}function r(Ze,Qe,st,ft,Be){for(var je=1,at=st+1;at<Qe.length;++at)je*=Qe[at];var ot=Qe[st];if(Qe.length-st==4){var xt=Qe[st+1],yt=Qe[st+2];for(Qe=Qe[st+3],at=0;at<ot;++at)o(Ze[at],xt,yt,Qe,ft,Be),Be+=je}else for(at=0;at<ot;++at)r(Ze[at],Qe,st+1,ft,Be),Be+=je}function n(Ze){return 0|De[Object.prototype.toString.call(Ze)]}function a(Ze,Qe){for(var st=0;st<Qe.length;++st)Ze[st]=Qe[st]}function s(Ze,Qe,st,ft,Be,je,at){for(var ot=0,xt=0;xt<st;++xt)for(var yt=0;yt<ft;++yt)Ze[ot++]=Qe[Be*xt+je*yt+at]}function u(Ze,Qe,st,ft){function Be(gt){this.id=xt++,this.buffer=Ze.createBuffer(),this.type=gt,this.usage=35044,this.byteLength=0,this.dimension=1,this.dtype=5121,this.persistentData=null,st.profile&&(this.stats={size:0})}function je(gt,Ct,dt){gt.byteLength=Ct.byteLength,Ze.bufferData(gt.type,Ct,dt)}function at(gt,Ct,dt,vt,At,Bt){if(gt.usage=dt,Array.isArray(Ct)){if(gt.dtype=vt||5126,0<Ct.length)if(Array.isArray(Ct[0])){At=fe(Ct);for(var jt=vt=1;jt<At.length;++jt)vt*=At[jt];gt.dimension=vt,je(gt,Ct=he(Ct,At,gt.dtype),dt),Bt?gt.persistentData=Ct:me.freeType(Ct)}else typeof Ct[0]=="number"?(gt.dimension=At,a(At=me.allocType(gt.dtype,Ct.length),Ct),je(gt,At,dt),Bt?gt.persistentData=At:me.freeType(At)):Se(Ct[0])&&(gt.dimension=Ct[0].length,gt.dtype=vt||n(Ct[0])||5126,je(gt,Ct=he(Ct,[Ct.length,Ct[0].length],gt.dtype),dt),Bt?gt.persistentData=Ct:me.freeType(Ct))}else if(Se(Ct))gt.dtype=vt||n(Ct),gt.dimension=At,je(gt,Ct,dt),Bt&&(gt.persistentData=new Uint8Array(new Uint8Array(Ct.buffer)));else if(t(Ct)){At=Ct.shape;var Ut=Ct.stride,tn=(jt=Ct.offset,0),Xt=0,Qt=0,Gt=0;At.length===1?(tn=At[0],Xt=1,Qt=Ut[0],Gt=0):At.length===2&&(tn=At[0],Xt=At[1],Qt=Ut[0],Gt=Ut[1]),gt.dtype=vt||n(Ct.data)||5126,gt.dimension=Xt,s(At=me.allocType(gt.dtype,tn*Xt),Ct.data,tn,Xt,Qt,Gt,jt),je(gt,At,dt),Bt?gt.persistentData=At:me.freeType(At)}else Ct instanceof ArrayBuffer&&(gt.dtype=5121,gt.dimension=At,je(gt,Ct,dt),Bt&&(gt.persistentData=new Uint8Array(new Uint8Array(Ct))))}function ot(gt){Qe.bufferCount--,ft(gt),Ze.deleteBuffer(gt.buffer),gt.buffer=null,delete yt[gt.id]}var xt=0,yt={};Be.prototype.bind=function(){Ze.bindBuffer(this.type,this.buffer)},Be.prototype.destroy=function(){ot(this)};var _t=[];return st.profile&&(Qe.getTotalBufferSize=function(){var gt=0;return Object.keys(yt).forEach(function(Ct){gt+=yt[Ct].stats.size}),gt}),{create:function(gt,Ct,dt,vt){function At(jt){var Ut=35044,tn=null,Xt=0,Qt=0,Gt=1;return Array.isArray(jt)||Se(jt)||t(jt)||jt instanceof ArrayBuffer?tn=jt:typeof jt=="number"?Xt=0|jt:jt&&("data"in jt&&(tn=jt.data),"usage"in jt&&(Ut=Me[jt.usage]),"type"in jt&&(Qt=Ee[jt.type]),"dimension"in jt&&(Gt=0|jt.dimension),"length"in jt&&(Xt=0|jt.length)),Bt.bind(),tn?at(Bt,tn,Ut,Qt,Gt,vt):(Xt&&Ze.bufferData(Bt.type,Xt,Ut),Bt.dtype=Qt||5121,Bt.usage=Ut,Bt.dimension=Gt,Bt.byteLength=Xt),st.profile&&(Bt.stats.size=Bt.byteLength*ae[Bt.dtype]),At}Qe.bufferCount++;var Bt=new Be(Ct);return yt[Bt.id]=Bt,dt||At(gt),At._reglType="buffer",At._buffer=Bt,At.subdata=function(jt,Ut){var tn,Xt=0|(Ut||0);if(Bt.bind(),Se(jt)||jt instanceof ArrayBuffer)Ze.bufferSubData(Bt.type,Xt,jt);else if(Array.isArray(jt)){if(0<jt.length)if(typeof jt[0]=="number"){var Qt=me.allocType(Bt.dtype,jt.length);a(Qt,jt),Ze.bufferSubData(Bt.type,Xt,Qt),me.freeType(Qt)}else(Array.isArray(jt[0])||Se(jt[0]))&&(tn=fe(jt),Qt=he(jt,tn,Bt.dtype),Ze.bufferSubData(Bt.type,Xt,Qt),me.freeType(Qt))}else if(t(jt)){tn=jt.shape;var Gt=jt.stride,vn=Qt=0,Tn=0,dn=0;tn.length===1?(Qt=tn[0],vn=1,Tn=Gt[0],dn=0):tn.length===2&&(Qt=tn[0],vn=tn[1],Tn=Gt[0],dn=Gt[1]),tn=Array.isArray(jt.data)?Bt.dtype:n(jt.data),s(tn=me.allocType(tn,Qt*vn),jt.data,Qt,vn,Tn,dn,jt.offset),Ze.bufferSubData(Bt.type,Xt,tn),me.freeType(tn)}return At},st.profile&&(At.stats=Bt.stats),At.destroy=function(){ot(Bt)},At},createStream:function(gt,Ct){var dt=_t.pop();return dt||(dt=new Be(gt)),dt.bind(),at(dt,Ct,35040,0,1,!1),dt},destroyStream:function(gt){_t.push(gt)},clear:function(){we(yt).forEach(ot),_t.forEach(ot)},getBuffer:function(gt){return gt&>._buffer instanceof Be?gt._buffer:null},restore:function(){we(yt).forEach(function(gt){gt.buffer=Ze.createBuffer(),Ze.bindBuffer(gt.type,gt.buffer),Ze.bufferData(gt.type,gt.persistentData||gt.byteLength,gt.usage)})},_initBuffer:at}}function p(Ze,Qe,st,ft){function Be(gt){this.id=xt++,ot[this.id]=this,this.buffer=gt,this.primType=4,this.type=this.vertCount=0}function je(gt,Ct,dt,vt,At,Bt,jt){var Ut;if(gt.buffer.bind(),Ct?((Ut=jt)||Se(Ct)&&(!t(Ct)||Se(Ct.data))||(Ut=Qe.oes_element_index_uint?5125:5123),st._initBuffer(gt.buffer,Ct,dt,Ut,3)):(Ze.bufferData(34963,Bt,dt),gt.buffer.dtype=Ut||5121,gt.buffer.usage=dt,gt.buffer.dimension=3,gt.buffer.byteLength=Bt),Ut=jt,!jt){switch(gt.buffer.dtype){case 5121:case 5120:Ut=5121;break;case 5123:case 5122:Ut=5123;break;case 5125:case 5124:Ut=5125}gt.buffer.dtype=Ut}gt.type=Ut,0>(Ct=At)&&(Ct=gt.buffer.byteLength,Ut===5123?Ct>>=1:Ut===5125&&(Ct>>=2)),gt.vertCount=Ct,Ct=vt,0>vt&&(Ct=4,(vt=gt.buffer.dimension)===1&&(Ct=0),vt===2&&(Ct=1),vt===3&&(Ct=4)),gt.primType=Ct}function at(gt){ft.elementsCount--,delete ot[gt.id],gt.buffer.destroy(),gt.buffer=null}var ot={},xt=0,yt={uint8:5121,uint16:5123};Qe.oes_element_index_uint&&(yt.uint32=5125),Be.prototype.bind=function(){this.buffer.bind()};var _t=[];return{create:function(gt,Ct){function dt(Bt){if(Bt)if(typeof Bt=="number")vt(Bt),At.primType=4,At.vertCount=0|Bt,At.type=5121;else{var jt=null,Ut=35044,tn=-1,Xt=-1,Qt=0,Gt=0;Array.isArray(Bt)||Se(Bt)||t(Bt)?jt=Bt:("data"in Bt&&(jt=Bt.data),"usage"in Bt&&(Ut=Me[Bt.usage]),"primitive"in Bt&&(tn=be[Bt.primitive]),"count"in Bt&&(Xt=0|Bt.count),"type"in Bt&&(Gt=yt[Bt.type]),"length"in Bt?Qt=0|Bt.length:(Qt=Xt,Gt===5123||Gt===5122?Qt*=2:Gt!==5125&&Gt!==5124||(Qt*=4))),je(At,jt,Ut,tn,Xt,Qt,Gt)}else vt(),At.primType=4,At.vertCount=0,At.type=5121;return dt}var vt=st.create(null,34963,!0),At=new Be(vt._buffer);return ft.elementsCount++,dt(gt),dt._reglType="elements",dt._elements=At,dt.subdata=function(Bt,jt){return vt.subdata(Bt,jt),dt},dt.destroy=function(){at(At)},dt},createStream:function(gt){var Ct=_t.pop();return Ct||(Ct=new Be(st.create(null,34963,!0,!1)._buffer)),je(Ct,gt,35040,-1,-1,0,0),Ct},destroyStream:function(gt){_t.push(gt)},getElements:function(gt){return typeof gt=="function"&>._elements instanceof Be?gt._elements:null},clear:function(){we(ot).forEach(at)}}}function c(Ze){for(var Qe=me.allocType(5123,Ze.length),st=0;st<Ze.length;++st)if(isNaN(Ze[st]))Qe[st]=65535;else if(Ze[st]===1/0)Qe[st]=31744;else if(Ze[st]===-1/0)Qe[st]=64512;else{Ie[0]=Ze[st];var ft=(je=Te[0])>>>31<<15,Be=(je<<1>>>24)-127,je=je>>13&1023;Qe[st]=-24>Be?ft:-14>Be?ft+(je+1024>>-14-Be):15<Be?ft+31744:ft+(Be+15<<10)+je}return Qe}function b(Ze){return Array.isArray(Ze)||Se(Ze)}function g(Ze){return"[object "+Ze+"]"}function f(Ze){return Array.isArray(Ze)&&(Ze.length===0||typeof Ze[0]=="number")}function v(Ze){return!(!Array.isArray(Ze)||Ze.length===0||!b(Ze[0]))}function m(Ze){return Object.prototype.toString.call(Ze)}function x(Ze){if(!Ze)return!1;var Qe=m(Ze);return 0<=$e.indexOf(Qe)||f(Ze)||v(Ze)||t(Ze)}function T(Ze,Qe){Ze.type===36193?(Ze.data=c(Qe),me.freeType(Qe)):Ze.data=Qe}function d(Ze,Qe,st,ft,Be,je){if(Ze=ht[Ze]!==void 0?ht[Ze]:ve[Ze]*rt[Qe],je&&(Ze*=6),Be){for(ft=0;1<=st;)ft+=Ze*st*st,st/=2;return ft}return Ze*st*ft}function M(Ze,Qe,st,ft,Be,je,at){function ot(){this.format=this.internalformat=6408,this.type=5121,this.flipY=this.premultiplyAlpha=this.compressed=!1,this.unpackAlignment=1,this.colorSpace=37444,this.channels=this.height=this.width=0}function xt(Wt,An){Wt.internalformat=An.internalformat,Wt.format=An.format,Wt.type=An.type,Wt.compressed=An.compressed,Wt.premultiplyAlpha=An.premultiplyAlpha,Wt.flipY=An.flipY,Wt.unpackAlignment=An.unpackAlignment,Wt.colorSpace=An.colorSpace,Wt.width=An.width,Wt.height=An.height,Wt.channels=An.channels}function yt(Wt,An){if(typeof An=="object"&&An){"premultiplyAlpha"in An&&(Wt.premultiplyAlpha=An.premultiplyAlpha),"flipY"in An&&(Wt.flipY=An.flipY),"alignment"in An&&(Wt.unpackAlignment=An.alignment),"colorSpace"in An&&(Wt.colorSpace=Dn[An.colorSpace]),"type"in An&&(Wt.type=En[An.type]);var Lt=Wt.width,$t=Wt.height,rn=Wt.channels,wn=!1;"shape"in An?(Lt=An.shape[0],$t=An.shape[1],An.shape.length===3&&(rn=An.shape[2],wn=!0)):("radius"in An&&(Lt=$t=An.radius),"width"in An&&(Lt=An.width),"height"in An&&($t=An.height),"channels"in An&&(rn=An.channels,wn=!0)),Wt.width=0|Lt,Wt.height=0|$t,Wt.channels=0|rn,Lt=!1,"format"in An&&(Lt=An.format,$t=Wt.internalformat=Fn[Lt],Wt.format=gn[$t],Lt in En&&!("type"in An)&&(Wt.type=En[Lt]),Lt in er&&(Wt.compressed=!0),Lt=!0),!wn&&Lt?Wt.channels=ve[Wt.format]:wn&&!Lt&&Wt.channels!==qe[Wt.format]&&(Wt.format=Wt.internalformat=qe[Wt.channels])}}function _t(Wt){Ze.pixelStorei(37440,Wt.flipY),Ze.pixelStorei(37441,Wt.premultiplyAlpha),Ze.pixelStorei(37443,Wt.colorSpace),Ze.pixelStorei(3317,Wt.unpackAlignment)}function gt(){ot.call(this),this.yOffset=this.xOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function Ct(Wt,An){var Lt=null;if(x(An)?Lt=An:An&&(yt(Wt,An),"x"in An&&(Wt.xOffset=0|An.x),"y"in An&&(Wt.yOffset=0|An.y),x(An.data)&&(Lt=An.data)),An.copy){var $t=Be.viewportWidth,rn=Be.viewportHeight;Wt.width=Wt.width||$t-Wt.xOffset,Wt.height=Wt.height||rn-Wt.yOffset,Wt.needsCopy=!0}else if(Lt){if(Se(Lt))Wt.channels=Wt.channels||4,Wt.data=Lt,"type"in An||Wt.type!==5121||(Wt.type=0|De[Object.prototype.toString.call(Lt)]);else if(f(Lt)){switch(Wt.channels=Wt.channels||4,rn=($t=Lt).length,Wt.type){case 5121:case 5123:case 5125:case 5126:(rn=me.allocType(Wt.type,rn)).set($t),Wt.data=rn;break;case 36193:Wt.data=c($t)}Wt.alignment=1,Wt.needsFree=!0}else if(t(Lt)){$t=Lt.data,Array.isArray($t)||Wt.type!==5121||(Wt.type=0|De[Object.prototype.toString.call($t)]),rn=Lt.shape;var wn,kn,Ln,hn,Jt=Lt.stride;rn.length===3?(Ln=rn[2],hn=Jt[2]):hn=Ln=1,wn=rn[0],kn=rn[1],rn=Jt[0],Jt=Jt[1],Wt.alignment=1,Wt.width=wn,Wt.height=kn,Wt.channels=Ln,Wt.format=Wt.internalformat=qe[Ln],Wt.needsFree=!0,wn=hn,Lt=Lt.offset,Ln=Wt.width,hn=Wt.height,kn=Wt.channels;for(var en=me.allocType(Wt.type===36193?5126:Wt.type,Ln*hn*kn),cn=0,pn=0;pn<hn;++pn)for(var On=0;On<Ln;++On)for(var Rn=0;Rn<kn;++Rn)en[cn++]=$t[rn*On+Jt*pn+wn*Rn+Lt];T(Wt,en)}else if(m(Lt)===Ce||m(Lt)===Ae||m(Lt)===ze)m(Lt)===Ce||m(Lt)===Ae?Wt.element=Lt:Wt.element=Lt.canvas,Wt.width=Wt.element.width,Wt.height=Wt.element.height,Wt.channels=4;else if(m(Lt)===Ue)Wt.element=Lt,Wt.width=Lt.width,Wt.height=Lt.height,Wt.channels=4;else if(m(Lt)===Ve)Wt.element=Lt,Wt.width=Lt.naturalWidth,Wt.height=Lt.naturalHeight,Wt.channels=4;else if(m(Lt)===Ye)Wt.element=Lt,Wt.width=Lt.videoWidth,Wt.height=Lt.videoHeight,Wt.channels=4;else if(v(Lt)){for($t=Wt.width||Lt[0].length,rn=Wt.height||Lt.length,Jt=Wt.channels,Jt=b(Lt[0][0])?Jt||Lt[0][0].length:Jt||1,wn=xe.shape(Lt),Ln=1,hn=0;hn<wn.length;++hn)Ln*=wn[hn];Ln=me.allocType(Wt.type===36193?5126:Wt.type,Ln),xe.flatten(Lt,wn,"",Ln),T(Wt,Ln),Wt.alignment=1,Wt.width=$t,Wt.height=rn,Wt.channels=Jt,Wt.format=Wt.internalformat=qe[Jt],Wt.needsFree=!0}}else Wt.width=Wt.width||1,Wt.height=Wt.height||1,Wt.channels=Wt.channels||4}function dt(Wt,An,Lt,$t,rn){var wn=Wt.element,kn=Wt.data,Ln=Wt.internalformat,hn=Wt.format,Jt=Wt.type,en=Wt.width,cn=Wt.height;_t(Wt),wn?Ze.texSubImage2D(An,rn,Lt,$t,hn,Jt,wn):Wt.compressed?Ze.compressedTexSubImage2D(An,rn,Lt,$t,Ln,en,cn,kn):Wt.needsCopy?(ft(),Ze.copyTexSubImage2D(An,rn,Lt,$t,Wt.xOffset,Wt.yOffset,en,cn)):Ze.texSubImage2D(An,rn,Lt,$t,en,cn,hn,Jt,kn)}function vt(){return bn.pop()||new gt}function At(Wt){Wt.needsFree&&me.freeType(Wt.data),gt.call(Wt),bn.push(Wt)}function Bt(){ot.call(this),this.genMipmaps=!1,this.mipmapHint=4352,this.mipmask=0,this.images=Array(16)}function jt(Wt,An,Lt){var $t=Wt.images[0]=vt();Wt.mipmask=1,$t.width=Wt.width=An,$t.height=Wt.height=Lt,$t.channels=Wt.channels=4}function Ut(Wt,An){var Lt=null;if(x(An))xt(Lt=Wt.images[0]=vt(),Wt),Ct(Lt,An),Wt.mipmask=1;else if(yt(Wt,An),Array.isArray(An.mipmap))for(var $t=An.mipmap,rn=0;rn<$t.length;++rn)xt(Lt=Wt.images[rn]=vt(),Wt),Lt.width>>=rn,Lt.height>>=rn,Ct(Lt,$t[rn]),Wt.mipmask|=1<<rn;else xt(Lt=Wt.images[0]=vt(),Wt),Ct(Lt,An),Wt.mipmask=1;xt(Wt,Wt.images[0])}function tn(Wt,An){for(var Lt=Wt.images,$t=0;$t<Lt.length&&Lt[$t];++$t){var rn=Lt[$t],wn=An,kn=$t,Ln=rn.element,hn=rn.data,Jt=rn.internalformat,en=rn.format,cn=rn.type,pn=rn.width,On=rn.height;_t(rn),Ln?Ze.texImage2D(wn,kn,en,en,cn,Ln):rn.compressed?Ze.compressedTexImage2D(wn,kn,Jt,pn,On,0,hn):rn.needsCopy?(ft(),Ze.copyTexImage2D(wn,kn,en,rn.xOffset,rn.yOffset,pn,On,0)):Ze.texImage2D(wn,kn,en,pn,On,0,en,cn,hn||null)}}function Xt(){var Wt=Cn.pop()||new Bt;ot.call(Wt);for(var An=Wt.mipmask=0;16>An;++An)Wt.images[An]=null;return Wt}function Qt(Wt){for(var An=Wt.images,Lt=0;Lt<An.length;++Lt)An[Lt]&&At(An[Lt]),An[Lt]=null;Cn.push(Wt)}function Gt(){this.magFilter=this.minFilter=9728,this.wrapT=this.wrapS=33071,this.anisotropic=1,this.genMipmaps=!1,this.mipmapHint=4352}function vn(Wt,An){"min"in An&&(Wt.minFilter=Pn[An.min],0<=Ne.indexOf(Wt.minFilter)&&!("faces"in An)&&(Wt.genMipmaps=!0)),"mag"in An&&(Wt.magFilter=xn[An.mag]);var Lt=Wt.wrapS,$t=Wt.wrapT;if("wrap"in An){var rn=An.wrap;typeof rn=="string"?Lt=$t=mn[rn]:Array.isArray(rn)&&(Lt=mn[rn[0]],$t=mn[rn[1]])}else"wrapS"in An&&(Lt=mn[An.wrapS]),"wrapT"in An&&($t=mn[An.wrapT]);if(Wt.wrapS=Lt,Wt.wrapT=$t,"anisotropic"in An&&(Wt.anisotropic=An.anisotropic),"mipmap"in An){switch(Lt=!1,typeof An.mipmap){case"string":Wt.mipmapHint=fn[An.mipmap],Lt=Wt.genMipmaps=!0;break;case"boolean":Lt=Wt.genMipmaps=An.mipmap;break;case"object":Wt.genMipmaps=!1,Lt=!0}!Lt||"min"in An||(Wt.minFilter=9984)}}function Tn(Wt,An){Ze.texParameteri(An,10241,Wt.minFilter),Ze.texParameteri(An,10240,Wt.magFilter),Ze.texParameteri(An,10242,Wt.wrapS),Ze.texParameteri(An,10243,Wt.wrapT),Qe.ext_texture_filter_anisotropic&&Ze.texParameteri(An,34046,Wt.anisotropic),Wt.genMipmaps&&(Ze.hint(33170,Wt.mipmapHint),Ze.generateMipmap(An))}function dn(Wt){ot.call(this),this.mipmask=0,this.internalformat=6408,this.id=Yn++,this.refCount=1,this.target=Wt,this.texture=Ze.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new Gt,at.profile&&(this.stats={size:0})}function Yt(Wt){Ze.activeTexture(33984),Ze.bindTexture(Wt.target,Wt.texture)}function ln(){var Wt=rr[0];Wt?Ze.bindTexture(Wt.target,Wt.texture):Ze.bindTexture(3553,null)}function nn(Wt){var An=Wt.texture,Lt=Wt.unit,$t=Wt.target;0<=Lt&&(Ze.activeTexture(33984+Lt),Ze.bindTexture($t,null),rr[Lt]=null),Ze.deleteTexture(An),Wt.texture=null,Wt.params=null,Wt.pixels=null,Wt.refCount=0,delete Nn[Wt.id],je.textureCount--}var fn={"don't care":4352,"dont care":4352,nice:4354,fast:4353},mn={repeat:10497,clamp:33071,mirror:33648},xn={nearest:9728,linear:9729},Pn=re({mipmap:9987,"nearest mipmap nearest":9984,"linear mipmap nearest":9985,"nearest mipmap linear":9986,"linear mipmap linear":9987},xn),Dn={none:0,browser:37444},En={uint8:5121,rgba4:32819,rgb565:33635,"rgb5 a1":32820},Fn={alpha:6406,luminance:6409,"luminance alpha":6410,rgb:6407,rgba:6408,rgba4:32854,"rgb5 a1":32855,rgb565:36194},er={};Qe.ext_srgb&&(Fn.srgb=35904,Fn.srgba=35906),Qe.oes_texture_float&&(En.float32=En.float=5126),Qe.oes_texture_half_float&&(En.float16=En["half float"]=36193),Qe.webgl_depth_texture&&(re(Fn,{depth:6402,"depth stencil":34041}),re(En,{uint16:5123,uint32:5125,"depth stencil":34042})),Qe.webgl_compressed_texture_s3tc&&re(er,{"rgb s3tc dxt1":33776,"rgba s3tc dxt1":33777,"rgba s3tc dxt3":33778,"rgba s3tc dxt5":33779}),Qe.webgl_compressed_texture_atc&&re(er,{"rgb atc":35986,"rgba atc explicit alpha":35987,"rgba atc interpolated alpha":34798}),Qe.webgl_compressed_texture_pvrtc&&re(er,{"rgb pvrtc 4bppv1":35840,"rgb pvrtc 2bppv1":35841,"rgba pvrtc 4bppv1":35842,"rgba pvrtc 2bppv1":35843}),Qe.webgl_compressed_texture_etc1&&(er["rgb etc1"]=36196);var ir=Array.prototype.slice.call(Ze.getParameter(34467));Object.keys(er).forEach(function(Wt){var An=er[Wt];0<=ir.indexOf(An)&&(Fn[Wt]=An)});var fr=Object.keys(Fn);st.textureFormats=fr;var ar=[];Object.keys(Fn).forEach(function(Wt){ar[Fn[Wt]]=Wt});var Kn=[];Object.keys(En).forEach(function(Wt){Kn[En[Wt]]=Wt});var wr=[];Object.keys(xn).forEach(function(Wt){wr[xn[Wt]]=Wt});var Ht=[];Object.keys(Pn).forEach(function(Wt){Ht[Pn[Wt]]=Wt});var sn=[];Object.keys(mn).forEach(function(Wt){sn[mn[Wt]]=Wt});var gn=fr.reduce(function(Wt,An){var Lt=Fn[An];return Lt===6409||Lt===6406||Lt===6409||Lt===6410||Lt===6402||Lt===34041||Qe.ext_srgb&&(Lt===35904||Lt===35906)?Wt[Lt]=Lt:Lt===32855||0<=An.indexOf("rgba")?Wt[Lt]=6408:Wt[Lt]=6407,Wt},{}),bn=[],Cn=[],Yn=0,Nn={},jn=st.maxTextureUnits,rr=Array(jn).map(function(){return null});return re(dn.prototype,{bind:function(){this.bindCount+=1;var Wt=this.unit;if(0>Wt){for(var An=0;An<jn;++An){var Lt=rr[An];if(Lt){if(0<Lt.bindCount)continue;Lt.unit=-1}rr[An]=this,Wt=An;break}at.profile&&je.maxTextureUnits<Wt+1&&(je.maxTextureUnits=Wt+1),this.unit=Wt,Ze.activeTexture(33984+Wt),Ze.bindTexture(this.target,this.texture)}return Wt},unbind:function(){--this.bindCount},decRef:function(){0>=--this.refCount&&nn(this)}}),at.profile&&(je.getTotalTextureSize=function(){var Wt=0;return Object.keys(Nn).forEach(function(An){Wt+=Nn[An].stats.size}),Wt}),{create2D:function(Wt,An){function Lt(rn,wn){var kn=$t.texInfo;Gt.call(kn);var Ln=Xt();return typeof rn=="number"?jt(Ln,0|rn,typeof wn=="number"?0|wn:0|rn):rn?(vn(kn,rn),Ut(Ln,rn)):jt(Ln,1,1),kn.genMipmaps&&(Ln.mipmask=(Ln.width<<1)-1),$t.mipmask=Ln.mipmask,xt($t,Ln),$t.internalformat=Ln.internalformat,Lt.width=Ln.width,Lt.height=Ln.height,Yt($t),tn(Ln,3553),Tn(kn,3553),ln(),Qt(Ln),at.profile&&($t.stats.size=d($t.internalformat,$t.type,Ln.width,Ln.height,kn.genMipmaps,!1)),Lt.format=ar[$t.internalformat],Lt.type=Kn[$t.type],Lt.mag=wr[kn.magFilter],Lt.min=Ht[kn.minFilter],Lt.wrapS=sn[kn.wrapS],Lt.wrapT=sn[kn.wrapT],Lt}var $t=new dn(3553);return Nn[$t.id]=$t,je.textureCount++,Lt(Wt,An),Lt.subimage=function(rn,wn,kn,Ln){wn|=0,kn|=0,Ln|=0;var hn=vt();return xt(hn,$t),hn.width=0,hn.height=0,Ct(hn,rn),hn.width=hn.width||($t.width>>Ln)-wn,hn.height=hn.height||($t.height>>Ln)-kn,Yt($t),dt(hn,3553,wn,kn,Ln),ln(),At(hn),Lt},Lt.resize=function(rn,wn){var kn=0|rn,Ln=0|wn||kn;if(kn===$t.width&&Ln===$t.height)return Lt;Lt.width=$t.width=kn,Lt.height=$t.height=Ln,Yt($t);for(var hn=0;$t.mipmask>>hn;++hn){var Jt=kn>>hn,en=Ln>>hn;if(!Jt||!en)break;Ze.texImage2D(3553,hn,$t.format,Jt,en,0,$t.format,$t.type,null)}return ln(),at.profile&&($t.stats.size=d($t.internalformat,$t.type,kn,Ln,!1,!1)),Lt},Lt._reglType="texture2d",Lt._texture=$t,at.profile&&(Lt.stats=$t.stats),Lt.destroy=function(){$t.decRef()},Lt},createCube:function(Wt,An,Lt,$t,rn,wn){function kn(Jt,en,cn,pn,On,Rn){var Wn,Hn=Ln.texInfo;for(Gt.call(Hn),Wn=0;6>Wn;++Wn)hn[Wn]=Xt();if(typeof Jt!="number"&&Jt){if(typeof Jt=="object")if(en)Ut(hn[0],Jt),Ut(hn[1],en),Ut(hn[2],cn),Ut(hn[3],pn),Ut(hn[4],On),Ut(hn[5],Rn);else if(vn(Hn,Jt),yt(Ln,Jt),"faces"in Jt)for(Jt=Jt.faces,Wn=0;6>Wn;++Wn)xt(hn[Wn],Ln),Ut(hn[Wn],Jt[Wn]);else for(Wn=0;6>Wn;++Wn)Ut(hn[Wn],Jt)}else for(Jt=0|Jt||1,Wn=0;6>Wn;++Wn)jt(hn[Wn],Jt,Jt);for(xt(Ln,hn[0]),Ln.mipmask=Hn.genMipmaps?(hn[0].width<<1)-1:hn[0].mipmask,Ln.internalformat=hn[0].internalformat,kn.width=hn[0].width,kn.height=hn[0].height,Yt(Ln),Wn=0;6>Wn;++Wn)tn(hn[Wn],34069+Wn);for(Tn(Hn,34067),ln(),at.profile&&(Ln.stats.size=d(Ln.internalformat,Ln.type,kn.width,kn.height,Hn.genMipmaps,!0)),kn.format=ar[Ln.internalformat],kn.type=Kn[Ln.type],kn.mag=wr[Hn.magFilter],kn.min=Ht[Hn.minFilter],kn.wrapS=sn[Hn.wrapS],kn.wrapT=sn[Hn.wrapT],Wn=0;6>Wn;++Wn)Qt(hn[Wn]);return kn}var Ln=new dn(34067);Nn[Ln.id]=Ln,je.cubeCount++;var hn=Array(6);return kn(Wt,An,Lt,$t,rn,wn),kn.subimage=function(Jt,en,cn,pn,On){cn|=0,pn|=0,On|=0;var Rn=vt();return xt(Rn,Ln),Rn.width=0,Rn.height=0,Ct(Rn,en),Rn.width=Rn.width||(Ln.width>>On)-cn,Rn.height=Rn.height||(Ln.height>>On)-pn,Yt(Ln),dt(Rn,34069+Jt,cn,pn,On),ln(),At(Rn),kn},kn.resize=function(Jt){if((Jt|=0)!==Ln.width){kn.width=Ln.width=Jt,kn.height=Ln.height=Jt,Yt(Ln);for(var en=0;6>en;++en)for(var cn=0;Ln.mipmask>>cn;++cn)Ze.texImage2D(34069+en,cn,Ln.format,Jt>>cn,Jt>>cn,0,Ln.format,Ln.type,null);return ln(),at.profile&&(Ln.stats.size=d(Ln.internalformat,Ln.type,kn.width,kn.height,!1,!0)),kn}},kn._reglType="textureCube",kn._texture=Ln,at.profile&&(kn.stats=Ln.stats),kn.destroy=function(){Ln.decRef()},kn},clear:function(){for(var Wt=0;Wt<jn;++Wt)Ze.activeTexture(33984+Wt),Ze.bindTexture(3553,null),rr[Wt]=null;we(Nn).forEach(nn),je.cubeCount=0,je.textureCount=0},getTexture:function(Wt){return null},restore:function(){for(var Wt=0;Wt<jn;++Wt){var An=rr[Wt];An&&(An.bindCount=0,An.unit=-1,rr[Wt]=null)}we(Nn).forEach(function(Lt){Lt.texture=Ze.createTexture(),Ze.bindTexture(Lt.target,Lt.texture);for(var $t=0;32>$t;++$t)if(Lt.mipmask&1<<$t)if(Lt.target===3553)Ze.texImage2D(3553,$t,Lt.internalformat,Lt.width>>$t,Lt.height>>$t,0,Lt.internalformat,Lt.type,null);else for(var rn=0;6>rn;++rn)Ze.texImage2D(34069+rn,$t,Lt.internalformat,Lt.width>>$t,Lt.height>>$t,0,Lt.internalformat,Lt.type,null);Tn(Lt.texInfo,Lt.target)})},refresh:function(){for(var Wt=0;Wt<jn;++Wt){var An=rr[Wt];An&&(An.bindCount=0,An.unit=-1,rr[Wt]=null),Ze.activeTexture(33984+Wt),Ze.bindTexture(3553,null),Ze.bindTexture(34067,null)}}}}function A(Ze,Qe,st,ft,Be,je){function at(dn,Yt,ln){this.target=dn,this.texture=Yt,this.renderbuffer=ln;var nn=dn=0;Yt?(dn=Yt.width,nn=Yt.height):ln&&(dn=ln.width,nn=ln.height),this.width=dn,this.height=nn}function ot(dn){dn&&(dn.texture&&dn.texture._texture.decRef(),dn.renderbuffer&&dn.renderbuffer._renderbuffer.decRef())}function xt(dn,Yt,ln){dn&&(dn.texture?dn.texture._texture.refCount+=1:dn.renderbuffer._renderbuffer.refCount+=1)}function yt(dn,Yt){Yt&&(Yt.texture?Ze.framebufferTexture2D(36160,dn,Yt.target,Yt.texture._texture.texture,0):Ze.framebufferRenderbuffer(36160,dn,36161,Yt.renderbuffer._renderbuffer.renderbuffer))}function _t(dn){var Yt=3553,ln=null,nn=null,fn=dn;return typeof dn=="object"&&(fn=dn.data,"target"in dn&&(Yt=0|dn.target)),(dn=fn._reglType)==="texture2d"||dn==="textureCube"?ln=fn:dn==="renderbuffer"&&(nn=fn,Yt=36161),new at(Yt,ln,nn)}function gt(dn,Yt,ln,nn,fn){return ln?((dn=ft.create2D({width:dn,height:Yt,format:nn,type:fn}))._texture.refCount=0,new at(3553,dn,null)):((dn=Be.create({width:dn,height:Yt,format:nn}))._renderbuffer.refCount=0,new at(36161,null,dn))}function Ct(dn){return dn&&(dn.texture||dn.renderbuffer)}function dt(dn,Yt,ln){dn&&(dn.texture?dn.texture.resize(Yt,ln):dn.renderbuffer&&dn.renderbuffer.resize(Yt,ln),dn.width=Yt,dn.height=ln)}function vt(){this.id=vn++,Tn[this.id]=this,this.framebuffer=Ze.createFramebuffer(),this.height=this.width=0,this.colorAttachments=[],this.depthStencilAttachment=this.stencilAttachment=this.depthAttachment=null}function At(dn){dn.colorAttachments.forEach(ot),ot(dn.depthAttachment),ot(dn.stencilAttachment),ot(dn.depthStencilAttachment)}function Bt(dn){Ze.deleteFramebuffer(dn.framebuffer),dn.framebuffer=null,je.framebufferCount--,delete Tn[dn.id]}function jt(dn){var Yt;Ze.bindFramebuffer(36160,dn.framebuffer);var ln=dn.colorAttachments;for(Yt=0;Yt<ln.length;++Yt)yt(36064+Yt,ln[Yt]);for(Yt=ln.length;Yt<st.maxColorAttachments;++Yt)Ze.framebufferTexture2D(36160,36064+Yt,3553,null,0);Ze.framebufferTexture2D(36160,33306,3553,null,0),Ze.framebufferTexture2D(36160,36096,3553,null,0),Ze.framebufferTexture2D(36160,36128,3553,null,0),yt(36096,dn.depthAttachment),yt(36128,dn.stencilAttachment),yt(33306,dn.depthStencilAttachment),Ze.checkFramebufferStatus(36160),Ze.isContextLost(),Ze.bindFramebuffer(36160,tn.next?tn.next.framebuffer:null),tn.cur=tn.next,Ze.getError()}function Ut(dn,Yt){function ln(fn,mn){var xn,Pn=0,Dn=0,En=!0,Fn=!0;xn=null;var er=!0,ir="rgba",fr="uint8",ar=1,Kn=null,wr=null,Ht=null,sn=!1;typeof fn=="number"?(Pn=0|fn,Dn=0|mn||Pn):fn?("shape"in fn?(Pn=(Dn=fn.shape)[0],Dn=Dn[1]):("radius"in fn&&(Pn=Dn=fn.radius),"width"in fn&&(Pn=fn.width),"height"in fn&&(Dn=fn.height)),("color"in fn||"colors"in fn)&&(xn=fn.color||fn.colors,Array.isArray(xn)),xn||("colorCount"in fn&&(ar=0|fn.colorCount),"colorTexture"in fn&&(er=!!fn.colorTexture,ir="rgba4"),"colorType"in fn&&(fr=fn.colorType,!er)&&(fr==="half float"||fr==="float16"?ir="rgba16f":fr!=="float"&&fr!=="float32"||(ir="rgba32f")),"colorFormat"in fn&&(ir=fn.colorFormat,0<=Xt.indexOf(ir)?er=!0:0<=Qt.indexOf(ir)&&(er=!1))),("depthTexture"in fn||"depthStencilTexture"in fn)&&(sn=!(!fn.depthTexture&&!fn.depthStencilTexture)),"depth"in fn&&(typeof fn.depth=="boolean"?En=fn.depth:(Kn=fn.depth,Fn=!1)),"stencil"in fn&&(typeof fn.stencil=="boolean"?Fn=fn.stencil:(wr=fn.stencil,En=!1)),"depthStencil"in fn&&(typeof fn.depthStencil=="boolean"?En=Fn=fn.depthStencil:(Ht=fn.depthStencil,Fn=En=!1))):Pn=Dn=1;var gn=null,bn=null,Cn=null,Yn=null;if(Array.isArray(xn))gn=xn.map(_t);else if(xn)gn=[_t(xn)];else for(gn=Array(ar),xn=0;xn<ar;++xn)gn[xn]=gt(Pn,Dn,er,ir,fr);for(Pn=Pn||gn[0].width,Dn=Dn||gn[0].height,Kn?bn=_t(Kn):En&&!Fn&&(bn=gt(Pn,Dn,sn,"depth","uint32")),wr?Cn=_t(wr):Fn&&!En&&(Cn=gt(Pn,Dn,!1,"stencil","uint8")),Ht?Yn=_t(Ht):!Kn&&!wr&&Fn&&En&&(Yn=gt(Pn,Dn,sn,"depth stencil","depth stencil")),En=null,xn=0;xn<gn.length;++xn)xt(gn[xn]),gn[xn]&&gn[xn].texture&&(Fn=wt[gn[xn].texture._texture.format]*ut[gn[xn].texture._texture.type],En===null&&(En=Fn));return xt(bn),xt(Cn),xt(Yn),At(nn),nn.width=Pn,nn.height=Dn,nn.colorAttachments=gn,nn.depthAttachment=bn,nn.stencilAttachment=Cn,nn.depthStencilAttachment=Yn,ln.color=gn.map(Ct),ln.depth=Ct(bn),ln.stencil=Ct(Cn),ln.depthStencil=Ct(Yn),ln.width=nn.width,ln.height=nn.height,jt(nn),ln}var nn=new vt;return je.framebufferCount++,ln(dn,Yt),re(ln,{resize:function(fn,mn){var xn=Math.max(0|fn,1),Pn=Math.max(0|mn||xn,1);if(xn===nn.width&&Pn===nn.height)return ln;for(var Dn=nn.colorAttachments,En=0;En<Dn.length;++En)dt(Dn[En],xn,Pn);return dt(nn.depthAttachment,xn,Pn),dt(nn.stencilAttachment,xn,Pn),dt(nn.depthStencilAttachment,xn,Pn),nn.width=ln.width=xn,nn.height=ln.height=Pn,jt(nn),ln},_reglType:"framebuffer",_framebuffer:nn,destroy:function(){Bt(nn),At(nn)},use:function(fn){tn.setFBO({framebuffer:ln},fn)}})}var tn={cur:null,next:null,dirty:!1,setFBO:null},Xt=["rgba"],Qt=["rgba4","rgb565","rgb5 a1"];Qe.ext_srgb&&Qt.push("srgba"),Qe.ext_color_buffer_half_float&&Qt.push("rgba16f","rgb16f"),Qe.webgl_color_buffer_float&&Qt.push("rgba32f");var Gt=["uint8"];Qe.oes_texture_half_float&&Gt.push("half float","float16"),Qe.oes_texture_float&&Gt.push("float","float32");var vn=0,Tn={};return re(tn,{getFramebuffer:function(dn){return typeof dn=="function"&&dn._reglType==="framebuffer"&&(dn=dn._framebuffer)instanceof vt?dn:null},create:Ut,createCube:function(dn){function Yt(nn){var fn,mn={color:null},xn=0,Pn=null;fn="rgba";var Dn="uint8",En=1;if(typeof nn=="number"?xn=0|nn:nn?("shape"in nn?xn=nn.shape[0]:("radius"in nn&&(xn=0|nn.radius),"width"in nn?xn=0|nn.width:"height"in nn&&(xn=0|nn.height)),("color"in nn||"colors"in nn)&&(Pn=nn.color||nn.colors,Array.isArray(Pn)),Pn||("colorCount"in nn&&(En=0|nn.colorCount),"colorType"in nn&&(Dn=nn.colorType),"colorFormat"in nn&&(fn=nn.colorFormat)),"depth"in nn&&(mn.depth=nn.depth),"stencil"in nn&&(mn.stencil=nn.stencil),"depthStencil"in nn&&(mn.depthStencil=nn.depthStencil)):xn=1,Pn)if(Array.isArray(Pn))for(nn=[],fn=0;fn<Pn.length;++fn)nn[fn]=Pn[fn];else nn=[Pn];else for(nn=Array(En),Pn={radius:xn,format:fn,type:Dn},fn=0;fn<En;++fn)nn[fn]=ft.createCube(Pn);for(mn.color=Array(nn.length),fn=0;fn<nn.length;++fn)En=nn[fn],xn=xn||En.width,mn.color[fn]={target:34069,data:nn[fn]};for(fn=0;6>fn;++fn){for(En=0;En<nn.length;++En)mn.color[En].target=34069+fn;0<fn&&(mn.depth=ln[0].depth,mn.stencil=ln[0].stencil,mn.depthStencil=ln[0].depthStencil),ln[fn]?ln[fn](mn):ln[fn]=Ut(mn)}return re(Yt,{width:xn,height:xn,color:nn})}var ln=Array(6);return Yt(dn),re(Yt,{faces:ln,resize:function(nn){var fn=0|nn;if(fn===Yt.width)return Yt;var mn=Yt.color;for(nn=0;nn<mn.length;++nn)mn[nn].resize(fn);for(nn=0;6>nn;++nn)ln[nn].resize(fn);return Yt.width=Yt.height=fn,Yt},_reglType:"framebufferCube",destroy:function(){ln.forEach(function(nn){nn.destroy()})}})},clear:function(){we(Tn).forEach(Bt)},restore:function(){tn.cur=null,tn.next=null,tn.dirty=!0,we(Tn).forEach(function(dn){dn.framebuffer=Ze.createFramebuffer(),jt(dn)})}})}function C(){this.w=this.z=this.y=this.x=this.state=0,this.buffer=null,this.size=0,this.normalized=!1,this.type=5126,this.divisor=this.stride=this.offset=0}function P(Ze,Qe,st,ft,Be,je,at){function ot(){this.id=++_t,this.attributes=[],this.elements=null,this.ownsElements=!1,this.offset=this.count=0,this.instances=-1,this.primitive=4;var dt=Qe.oes_vertex_array_object;this.vao=dt?dt.createVertexArrayOES():null,gt[this.id]=this,this.buffers=[]}var xt=st.maxAttributes,yt=Array(xt);for(st=0;st<xt;++st)yt[st]=new C;var _t=0,gt={},Ct={Record:C,scope:{},state:yt,currentVAO:null,targetVAO:null,restore:Qe.oes_vertex_array_object?function(){Qe.oes_vertex_array_object&&we(gt).forEach(function(dt){dt.refresh()})}:function(){},createVAO:function(dt){function vt(Bt){var jt;Array.isArray(Bt)?(jt=Bt,At.elements&&At.ownsElements&&At.elements.destroy(),At.elements=null,At.ownsElements=!1,At.offset=0,At.count=0,At.instances=-1,At.primitive=4):(Bt.elements?(jt=Bt.elements,At.ownsElements?(typeof jt=="function"&&jt._reglType==="elements"?At.elements.destroy():At.elements(jt),At.ownsElements=!1):je.getElements(Bt.elements)?(At.elements=Bt.elements,At.ownsElements=!1):(At.elements=je.create(Bt.elements),At.ownsElements=!0)):(At.elements=null,At.ownsElements=!1),jt=Bt.attributes,At.offset=0,At.count=-1,At.instances=-1,At.primitive=4,At.elements&&(At.count=At.elements._elements.vertCount,At.primitive=At.elements._elements.primType),"offset"in Bt&&(At.offset=0|Bt.offset),"count"in Bt&&(At.count=0|Bt.count),"instances"in Bt&&(At.instances=0|Bt.instances),"primitive"in Bt&&(At.primitive=be[Bt.primitive])),Bt={};var Ut=At.attributes;Ut.length=jt.length;for(var tn=0;tn<jt.length;++tn){var Xt,Qt=jt[tn],Gt=Ut[tn]=new C,vn=Qt.data||Qt;Array.isArray(vn)||Se(vn)||t(vn)?(At.buffers[tn]&&(Xt=At.buffers[tn],Se(vn)&&Xt._buffer.byteLength>=vn.byteLength?Xt.subdata(vn):(Xt.destroy(),At.buffers[tn]=null)),At.buffers[tn]||(Xt=At.buffers[tn]=Be.create(Qt,34962,!1,!0)),Gt.buffer=Be.getBuffer(Xt),Gt.size=0|Gt.buffer.dimension,Gt.normalized=!1,Gt.type=Gt.buffer.dtype,Gt.offset=0,Gt.stride=0,Gt.divisor=0,Gt.state=1,Bt[tn]=1):Be.getBuffer(Qt)?(Gt.buffer=Be.getBuffer(Qt),Gt.size=0|Gt.buffer.dimension,Gt.normalized=!1,Gt.type=Gt.buffer.dtype,Gt.offset=0,Gt.stride=0,Gt.divisor=0,Gt.state=1):Be.getBuffer(Qt.buffer)?(Gt.buffer=Be.getBuffer(Qt.buffer),Gt.size=0|(+Qt.size||Gt.buffer.dimension),Gt.normalized=!!Qt.normalized||!1,Gt.type="type"in Qt?Ee[Qt.type]:Gt.buffer.dtype,Gt.offset=0|(Qt.offset||0),Gt.stride=0|(Qt.stride||0),Gt.divisor=0|(Qt.divisor||0),Gt.state=1):"x"in Qt&&(Gt.x=+Qt.x||0,Gt.y=+Qt.y||0,Gt.z=+Qt.z||0,Gt.w=+Qt.w||0,Gt.state=2)}for(Xt=0;Xt<At.buffers.length;++Xt)!Bt[Xt]&&At.buffers[Xt]&&(At.buffers[Xt].destroy(),At.buffers[Xt]=null);return At.refresh(),vt}var At=new ot;return ft.vaoCount+=1,vt.destroy=function(){for(var Bt=0;Bt<At.buffers.length;++Bt)At.buffers[Bt]&&At.buffers[Bt].destroy();At.buffers.length=0,At.ownsElements&&(At.elements.destroy(),At.elements=null,At.ownsElements=!1),At.destroy()},vt._vao=At,vt._reglType="vao",vt(dt)},getVAO:function(dt){return typeof dt=="function"&&dt._vao?dt._vao:null},destroyBuffer:function(dt){for(var vt=0;vt<yt.length;++vt){var At=yt[vt];At.buffer===dt&&(Ze.disableVertexAttribArray(vt),At.buffer=null)}},setVAO:Qe.oes_vertex_array_object?function(dt){if(dt!==Ct.currentVAO){var vt=Qe.oes_vertex_array_object;dt?vt.bindVertexArrayOES(dt.vao):vt.bindVertexArrayOES(null),Ct.currentVAO=dt}}:function(dt){if(dt!==Ct.currentVAO){if(dt)dt.bindAttrs();else{for(var vt=Qe.angle_instanced_arrays,At=0;At<yt.length;++At){var Bt=yt[At];Bt.buffer?(Ze.enableVertexAttribArray(At),Bt.buffer.bind(),Ze.vertexAttribPointer(At,Bt.size,Bt.type,Bt.normalized,Bt.stride,Bt.offfset),vt&&Bt.divisor&&vt.vertexAttribDivisorANGLE(At,Bt.divisor)):(Ze.disableVertexAttribArray(At),Ze.vertexAttrib4f(At,Bt.x,Bt.y,Bt.z,Bt.w))}at.elements?Ze.bindBuffer(34963,at.elements.buffer.buffer):Ze.bindBuffer(34963,null)}Ct.currentVAO=dt}},clear:Qe.oes_vertex_array_object?function(){we(gt).forEach(function(dt){dt.destroy()})}:function(){}};return ot.prototype.bindAttrs=function(){for(var dt=Qe.angle_instanced_arrays,vt=this.attributes,At=0;At<vt.length;++At){var Bt=vt[At];Bt.buffer?(Ze.enableVertexAttribArray(At),Ze.bindBuffer(34962,Bt.buffer.buffer),Ze.vertexAttribPointer(At,Bt.size,Bt.type,Bt.normalized,Bt.stride,Bt.offset),dt&&Bt.divisor&&dt.vertexAttribDivisorANGLE(At,Bt.divisor)):(Ze.disableVertexAttribArray(At),Ze.vertexAttrib4f(At,Bt.x,Bt.y,Bt.z,Bt.w))}for(dt=vt.length;dt<xt;++dt)Ze.disableVertexAttribArray(dt);(dt=je.getElements(this.elements))?Ze.bindBuffer(34963,dt.buffer.buffer):Ze.bindBuffer(34963,null)},ot.prototype.refresh=function(){var dt=Qe.oes_vertex_array_object;dt&&(dt.bindVertexArrayOES(this.vao),this.bindAttrs(),Ct.currentVAO=null,dt.bindVertexArrayOES(null))},ot.prototype.destroy=function(){if(this.vao){var dt=Qe.oes_vertex_array_object;this===Ct.currentVAO&&(Ct.currentVAO=null,dt.bindVertexArrayOES(null)),dt.deleteVertexArrayOES(this.vao),this.vao=null}this.ownsElements&&(this.elements.destroy(),this.elements=null,this.ownsElements=!1),gt[this.id]&&(delete gt[this.id],--ft.vaoCount)},Ct}function O(Ze,Qe,st,ft){function Be(vt,At,Bt,jt){this.name=vt,this.id=At,this.location=Bt,this.info=jt}function je(vt,At){for(var Bt=0;Bt<vt.length;++Bt)if(vt[Bt].id===At.id)return void(vt[Bt].location=At.location);vt.push(At)}function at(vt,At,Bt){if(!(Ut=(Bt=vt===35632?yt:_t)[At])){var jt=Qe.str(At),Ut=Ze.createShader(vt);Ze.shaderSource(Ut,jt),Ze.compileShader(Ut),Bt[At]=Ut}return Ut}function ot(vt,At){this.id=dt++,this.fragId=vt,this.vertId=At,this.program=null,this.uniforms=[],this.attributes=[],this.refCount=1,ft.profile&&(this.stats={uniformsCount:0,attributesCount:0})}function xt(vt,At,Bt){var jt;jt=at(35632,vt.fragId);var Ut=at(35633,vt.vertId);if(At=vt.program=Ze.createProgram(),Ze.attachShader(At,jt),Ze.attachShader(At,Ut),Bt)for(jt=0;jt<Bt.length;++jt)Ut=Bt[jt],Ze.bindAttribLocation(At,Ut[0],Ut[1]);Ze.linkProgram(At),Ut=Ze.getProgramParameter(At,35718),ft.profile&&(vt.stats.uniformsCount=Ut);var tn=vt.uniforms;for(jt=0;jt<Ut;++jt)if(Bt=Ze.getActiveUniform(At,jt))if(1<Bt.size)for(var Xt=0;Xt<Bt.size;++Xt){var Qt=Bt.name.replace("[0]","["+Xt+"]");je(tn,new Be(Qt,Qe.id(Qt),Ze.getUniformLocation(At,Qt),Bt))}else je(tn,new Be(Bt.name,Qe.id(Bt.name),Ze.getUniformLocation(At,Bt.name),Bt));for(Ut=Ze.getProgramParameter(At,35721),ft.profile&&(vt.stats.attributesCount=Ut),vt=vt.attributes,jt=0;jt<Ut;++jt)(Bt=Ze.getActiveAttrib(At,jt))&&je(vt,new Be(Bt.name,Qe.id(Bt.name),Ze.getAttribLocation(At,Bt.name),Bt))}var yt={},_t={},gt={},Ct=[],dt=0;return ft.profile&&(st.getMaxUniformsCount=function(){var vt=0;return Ct.forEach(function(At){At.stats.uniformsCount>vt&&(vt=At.stats.uniformsCount)}),vt},st.getMaxAttributesCount=function(){var vt=0;return Ct.forEach(function(At){At.stats.attributesCount>vt&&(vt=At.stats.attributesCount)}),vt}),{clear:function(){var vt=Ze.deleteShader.bind(Ze);we(yt).forEach(vt),yt={},we(_t).forEach(vt),_t={},Ct.forEach(function(At){Ze.deleteProgram(At.program)}),Ct.length=0,gt={},st.shaderCount=0},program:function(vt,At,Bt,jt){var Ut=gt[At];Ut||(Ut=gt[At]={});var tn=Ut[vt];if(tn&&(tn.refCount++,!jt))return tn;var Xt=new ot(At,vt);return st.shaderCount++,xt(Xt,Bt,jt),tn||(Ut[vt]=Xt),Ct.push(Xt),re(Xt,{destroy:function(){if(Xt.refCount--,0>=Xt.refCount){Ze.deleteProgram(Xt.program);var Qt=Ct.indexOf(Xt);Ct.splice(Qt,1),st.shaderCount--}0>=Ut[Xt.vertId].refCount&&(Ze.deleteShader(_t[Xt.vertId]),delete _t[Xt.vertId],delete gt[Xt.fragId][Xt.vertId]),Object.keys(gt[Xt.fragId]).length||(Ze.deleteShader(yt[Xt.fragId]),delete yt[Xt.fragId],delete gt[Xt.fragId])}})},restore:function(){yt={},_t={};for(var vt=0;vt<Ct.length;++vt)xt(Ct[vt],null,Ct[vt].attributes.map(function(At){return[At.location,At.name]}))},shader:at,frag:-1,vert:-1}}function z(Ze,Qe,st,ft,Be,je,at){function ot(xt){var yt;yt=Qe.next===null?5121:Qe.next.colorAttachments[0].texture._texture.type;var _t=0,gt=0,Ct=ft.framebufferWidth,dt=ft.framebufferHeight,vt=null;return Se(xt)?vt=xt:xt&&(_t=0|xt.x,gt=0|xt.y,Ct=0|(xt.width||ft.framebufferWidth-_t),dt=0|(xt.height||ft.framebufferHeight-gt),vt=xt.data||null),st(),xt=Ct*dt*4,vt||(yt===5121?vt=new Uint8Array(xt):yt===5126&&(vt=vt||new Float32Array(xt))),Ze.pixelStorei(3333,4),Ze.readPixels(_t,gt,Ct,dt,6408,yt,vt),vt}return function(xt){return xt&&"framebuffer"in xt?function(yt){var _t;return Qe.setFBO({framebuffer:yt.framebuffer},function(){_t=ot(yt)}),_t}(xt):ot(xt)}}function B(Ze,Qe){return Ze>>>Qe|Ze<<32-Qe}function Y(Ze,Qe){var st=(65535&Ze)+(65535&Qe);return(Ze>>16)+(Qe>>16)+(st>>16)<<16|65535&st}function D(Ze){return Array.prototype.slice.call(Ze)}function G(Ze){return D(Ze).join("")}function V(Ze){function Qe(){var _t=[],gt=[];return re(function(){_t.push.apply(_t,D(arguments))},{def:function(){var Ct="v"+Be++;return gt.push(Ct),0<arguments.length&&(_t.push(Ct,"="),_t.push.apply(_t,D(arguments)),_t.push(";")),Ct},toString:function(){return G([0<gt.length?"var "+gt.join(",")+";":"",G(_t)])}})}function st(){function _t(At,Bt){Ct(At,Bt,"=",gt.def(At,Bt),";")}var gt=Qe(),Ct=Qe(),dt=gt.toString,vt=Ct.toString;return re(function(){gt.apply(gt,D(arguments))},{def:gt.def,entry:gt,exit:Ct,save:_t,set:function(At,Bt,jt){_t(At,Bt),gt(At,Bt,"=",jt,";")},toString:function(){return dt()+vt()}})}var ft=Ze&&Ze.cache,Be=0,je=[],at=[],ot=[],xt=Qe(),yt={};return{global:xt,link:function(_t,gt){var Ct=gt&>.stable;if(!Ct){for(var dt=0;dt<at.length;++dt)if(at[dt]===_t&&!ot[dt])return je[dt]}return dt="g"+Be++,je.push(dt),at.push(_t),ot.push(Ct),dt},block:Qe,proc:function(_t,gt){function Ct(){var Bt="a"+dt.length;return dt.push(Bt),Bt}var dt=[];gt=gt||0;for(var vt=0;vt<gt;++vt)Ct();var At=(vt=st()).toString;return yt[_t]=re(vt,{arg:Ct,toString:function(){return G(["function(",dt.join(),"){",At(),"}"])}})},scope:st,cond:function(){var _t=G(arguments),gt=st(),Ct=st(),dt=gt.toString,vt=Ct.toString;return re(gt,{then:function(){return gt.apply(gt,D(arguments)),this},else:function(){return Ct.apply(Ct,D(arguments)),this},toString:function(){var At=vt();return At&&(At="else{"+At+"}"),G(["if(",_t,"){",dt(),"}",At])}})},compile:function(){var _t=['"use strict";',xt,"return {"];Object.keys(yt).forEach(function(dt){_t.push('"',dt,'":',yt[dt].toString(),",")}),_t.push("}");var gt,Ct=G(_t).replace(/;/g,`;
|
||
`).replace(/}/g,`}
|
||
`).replace(/{/g,`{
|
||
`);return ft&&(gt=function(dt){for(var vt,At="",Bt=0;Bt<dt.length;Bt++)vt=dt.charCodeAt(Bt),At+="0123456789abcdef".charAt(vt>>>4&15)+"0123456789abcdef".charAt(15&vt);return At}(function(dt){for(var vt=Array(dt.length>>2),At=0;At<vt.length;At++)vt[At]=0;for(At=0;At<8*dt.length;At+=8)vt[At>>5]|=(255&dt.charCodeAt(At/8))<<24-At%32;var Bt,jt,Ut,tn,Xt,Qt,Gt,vn,Tn,dn,Yt,ln=8*dt.length;for(dt=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],At=Array(64),vt[ln>>5]|=128<<24-ln%32,vt[15+(ln+64>>9<<4)]=ln,vn=0;vn<vt.length;vn+=16){for(ln=dt[0],Bt=dt[1],jt=dt[2],Ut=dt[3],tn=dt[4],Xt=dt[5],Qt=dt[6],Gt=dt[7],Tn=0;64>Tn;Tn++){var nn;16>Tn?At[Tn]=vt[Tn+vn]:(dn=Tn,Yt=Y(Yt=B(Yt=At[Tn-2],17)^B(Yt,19)^Yt>>>10,At[Tn-7]),nn=B(nn=At[Tn-15],7)^B(nn,18)^nn>>>3,At[dn]=Y(Y(Yt,nn),At[Tn-16])),dn=Y(Y(Y(Y(Gt,dn=B(dn=tn,6)^B(dn,11)^B(dn,25)),tn&Xt^~tn&Qt),lt[Tn]),At[Tn]),Yt=Y(Gt=B(Gt=ln,2)^B(Gt,13)^B(Gt,22),ln&Bt^ln&jt^Bt&jt),Gt=Qt,Qt=Xt,Xt=tn,tn=Y(Ut,dn),Ut=jt,jt=Bt,Bt=ln,ln=Y(dn,Yt)}dt[0]=Y(ln,dt[0]),dt[1]=Y(Bt,dt[1]),dt[2]=Y(jt,dt[2]),dt[3]=Y(Ut,dt[3]),dt[4]=Y(tn,dt[4]),dt[5]=Y(Xt,dt[5]),dt[6]=Y(Qt,dt[6]),dt[7]=Y(Gt,dt[7])}for(vt="",At=0;At<32*dt.length;At+=8)vt+=String.fromCharCode(dt[At>>5]>>>24-At%32&255);return vt}(function(dt){for(var vt,At,Bt="",jt=-1;++jt<dt.length;)vt=dt.charCodeAt(jt),At=jt+1<dt.length?dt.charCodeAt(jt+1):0,55296<=vt&&56319>=vt&&56320<=At&&57343>=At&&(vt=65536+((1023&vt)<<10)+(1023&At),jt++),127>=vt?Bt+=String.fromCharCode(vt):2047>=vt?Bt+=String.fromCharCode(192|vt>>>6&31,128|63&vt):65535>=vt?Bt+=String.fromCharCode(224|vt>>>12&15,128|vt>>>6&63,128|63&vt):2097151>=vt&&(Bt+=String.fromCharCode(240|vt>>>18&7,128|vt>>>12&63,128|vt>>>6&63,128|63&vt));return Bt}(Ct))),ft[gt])?ft[gt].apply(null,at):(Ct=Function.apply(null,je.concat(Ct)),ft&&(ft[gt]=Ct),Ct.apply(null,at))}}}function j(Ze){return Array.isArray(Ze)||Se(Ze)||t(Ze)}function W(Ze){return Ze.sort(function(Qe,st){return Qe==="viewport"?-1:st==="viewport"?1:Qe<st?-1:1})}function Z(Ze,Qe,st,ft){this.thisDep=Ze,this.contextDep=Qe,this.propDep=st,this.append=ft}function ie(Ze){return Ze&&!(Ze.thisDep||Ze.contextDep||Ze.propDep)}function te(Ze){return new Z(!1,!1,!1,Ze)}function J(Ze,Qe){var st=Ze.type;if(st===0)return new Z(!0,1<=(st=Ze.data.length),2<=st,Qe);if(st===4)return new Z((st=Ze.data).thisDep,st.contextDep,st.propDep,Qe);if(st===5)return new Z(!1,!1,!1,Qe);if(st===6){for(var ft=st=!1,Be=!1,je=0;je<Ze.data.length;++je){var at=Ze.data[je];at.type===1?Be=!0:at.type===2?ft=!0:at.type===3?st=!0:at.type===0?(st=!0,1<=(at=at.data)&&(ft=!0),2<=at&&(Be=!0)):at.type===4&&(st=st||at.data.thisDep,ft=ft||at.data.contextDep,Be=Be||at.data.propDep)}return new Z(st,ft,Be,Qe)}return new Z(st===3,st===2,st===1,Qe)}function X(Ze,Qe,st,ft,Be,je,at,ot,xt,yt,_t,gt,Ct,dt,vt,At){function Bt(Lt){return Lt.replace(".","_")}function jt(Lt,$t,rn){var wn=Bt(Lt);Yn.push(Lt),Cn[wn]=bn[wn]=!!rn,Nn[wn]=$t}function Ut(Lt,$t,rn){var wn=Bt(Lt);Yn.push(Lt),Array.isArray(rn)?(bn[wn]=rn.slice(),Cn[wn]=rn.slice()):bn[wn]=Cn[wn]=rn,jn[wn]=$t}function tn(){var Lt=V({cache:vt}),$t=Lt.link,rn=Lt.global;Lt.id=An++,Lt.batchId="0";var wn=$t(rr),kn=Lt.shared={props:"a0"};Object.keys(rr).forEach(function(cn){kn[cn]=rn.def(wn,".",cn)});var Ln=Lt.next={},hn=Lt.current={};Object.keys(jn).forEach(function(cn){Array.isArray(bn[cn])&&(Ln[cn]=rn.def(kn.next,".",cn),hn[cn]=rn.def(kn.current,".",cn))});var Jt=Lt.constants={};Object.keys(Wt).forEach(function(cn){Jt[cn]=rn.def(JSON.stringify(Wt[cn]))}),Lt.invoke=function(cn,pn){switch(pn.type){case 0:var On=["this",kn.context,kn.props,Lt.batchId];return cn.def($t(pn.data),".call(",On.slice(0,Math.max(pn.data.length+1,4)),")");case 1:return cn.def(kn.props,pn.data);case 2:return cn.def(kn.context,pn.data);case 3:return cn.def("this",pn.data);case 4:return pn.data.append(Lt,cn),pn.data.ref;case 5:return pn.data.toString();case 6:return pn.data.map(function(Rn){return Lt.invoke(cn,Rn)})}},Lt.attribCache={};var en={};return Lt.scopeAttrib=function(cn){if((cn=Qe.id(cn))in en)return en[cn];var pn=yt.scope[cn];return pn||(pn=yt.scope[cn]=new Kn),en[cn]=$t(pn)},Lt}function Xt(Lt,$t){var rn=Lt.static,wn=Lt.dynamic;if("framebuffer"in rn){var kn=rn.framebuffer;return kn?(kn=ot.getFramebuffer(kn),te(function(hn,Jt){var en=hn.link(kn),cn=hn.shared;return Jt.set(cn.framebuffer,".next",en),cn=cn.context,Jt.set(cn,".framebufferWidth",en+".width"),Jt.set(cn,".framebufferHeight",en+".height"),en})):te(function(hn,Jt){var en=hn.shared;return Jt.set(en.framebuffer,".next","null"),en=en.context,Jt.set(en,".framebufferWidth",en+".drawingBufferWidth"),Jt.set(en,".framebufferHeight",en+".drawingBufferHeight"),"null"})}if("framebuffer"in wn){var Ln=wn.framebuffer;return J(Ln,function(hn,Jt){var en=hn.invoke(Jt,Ln),cn=hn.shared,pn=cn.framebuffer;return en=Jt.def(pn,".getFramebuffer(",en,")"),Jt.set(pn,".next",en),cn=cn.context,Jt.set(cn,".framebufferWidth",en+"?"+en+".width:"+cn+".drawingBufferWidth"),Jt.set(cn,".framebufferHeight",en+"?"+en+".height:"+cn+".drawingBufferHeight"),en})}return null}function Qt(Lt,$t,rn){function wn(cn){if(cn in kn){var pn=Qe.id(kn[cn]);return(cn=te(function(){return pn})).id=pn,cn}if(cn in Ln){var On=Ln[cn];return J(On,function(Rn,Wn){var Hn=Rn.invoke(Wn,On);return Wn.def(Rn.shared.strings,".id(",Hn,")")})}return null}var kn=Lt.static,Ln=Lt.dynamic,hn=wn("frag"),Jt=wn("vert"),en=null;return ie(hn)&&ie(Jt)?(en=_t.program(Jt.id,hn.id,null,rn),Lt=te(function(cn,pn){return cn.link(en)})):Lt=new Z(hn&&hn.thisDep||Jt&&Jt.thisDep,hn&&hn.contextDep||Jt&&Jt.contextDep,hn&&hn.propDep||Jt&&Jt.propDep,function(cn,pn){var On,Rn,Wn=cn.shared.shader;return On=hn?hn.append(cn,pn):pn.def(Wn,".","frag"),Rn=Jt?Jt.append(cn,pn):pn.def(Wn,".","vert"),pn.def(Wn+".program("+Rn+","+On+")")}),{frag:hn,vert:Jt,progVar:Lt,program:en}}function Gt(Lt,$t){function rn(Hn,tr){if(Hn in wn){var Xn=0|wn[Hn];return tr?Ln.offset=Xn:Ln.instances=Xn,te(function(or,sr){return tr&&(or.OFFSET=Xn),Xn})}if(Hn in kn){var lr=kn[Hn];return J(lr,function(or,sr){var gr=or.invoke(sr,lr);return tr&&(or.OFFSET=gr),gr})}if(tr){if(en)return te(function(or,sr){return or.OFFSET=0});if(hn)return new Z(Jt.thisDep,Jt.contextDep,Jt.propDep,function(or,sr){return sr.def(or.shared.vao+".currentVAO?"+or.shared.vao+".currentVAO.offset:0")})}else if(hn)return new Z(Jt.thisDep,Jt.contextDep,Jt.propDep,function(or,sr){return sr.def(or.shared.vao+".currentVAO?"+or.shared.vao+".currentVAO.instances:-1")});return null}var wn=Lt.static,kn=Lt.dynamic,Ln={},hn=!1,Jt=function(){if("vao"in wn){var Hn=wn.vao;return Hn!==null&&yt.getVAO(Hn)===null&&(Hn=yt.createVAO(Hn)),hn=!0,Ln.vao=Hn,te(function(Xn){var lr=yt.getVAO(Hn);return lr?Xn.link(lr):"null"})}if("vao"in kn){hn=!0;var tr=kn.vao;return J(tr,function(Xn,lr){var or=Xn.invoke(lr,tr);return lr.def(Xn.shared.vao+".getVAO("+or+")")})}return null}(),en=!1,cn=function(){if("elements"in wn){var Hn=wn.elements;if(Ln.elements=Hn,j(Hn)){var tr=Ln.elements=je.create(Hn,!0);Hn=je.getElements(tr),en=!0}else Hn&&(Hn=je.getElements(Hn),en=!0);return tr=te(function(lr,or){if(Hn){var sr=lr.link(Hn);return lr.ELEMENTS=sr}return lr.ELEMENTS=null}),tr.value=Hn,tr}if("elements"in kn){en=!0;var Xn=kn.elements;return J(Xn,function(lr,or){var sr=(gr=lr.shared).isBufferArgs,gr=gr.elements,vr=lr.invoke(or,Xn),Er=or.def("null");return sr=or.def(sr,"(",vr,")"),vr=lr.cond(sr).then(Er,"=",gr,".createStream(",vr,");").else(Er,"=",gr,".getElements(",vr,");"),or.entry(vr),or.exit(lr.cond(sr).then(gr,".destroyStream(",Er,");")),lr.ELEMENTS=Er})}return hn?new Z(Jt.thisDep,Jt.contextDep,Jt.propDep,function(lr,or){return or.def(lr.shared.vao+".currentVAO?"+lr.shared.elements+".getElements("+lr.shared.vao+".currentVAO.elements):null")}):null}(),pn=rn("offset",!0),On=function(){if("primitive"in wn){var Hn=wn.primitive;return Ln.primitive=Hn,te(function(Xn,lr){return be[Hn]})}if("primitive"in kn){var tr=kn.primitive;return J(tr,function(Xn,lr){var or=Xn.constants.primTypes,sr=Xn.invoke(lr,tr);return lr.def(or,"[",sr,"]")})}return en?ie(cn)?cn.value?te(function(Xn,lr){return lr.def(Xn.ELEMENTS,".primType")}):te(function(){return 4}):new Z(cn.thisDep,cn.contextDep,cn.propDep,function(Xn,lr){var or=Xn.ELEMENTS;return lr.def(or,"?",or,".primType:",4)}):hn?new Z(Jt.thisDep,Jt.contextDep,Jt.propDep,function(Xn,lr){return lr.def(Xn.shared.vao+".currentVAO?"+Xn.shared.vao+".currentVAO.primitive:4")}):null}(),Rn=function(){if("count"in wn){var Hn=0|wn.count;return Ln.count=Hn,te(function(){return Hn})}if("count"in kn){var tr=kn.count;return J(tr,function(Xn,lr){return Xn.invoke(lr,tr)})}return en?ie(cn)?cn?pn?new Z(pn.thisDep,pn.contextDep,pn.propDep,function(Xn,lr){return lr.def(Xn.ELEMENTS,".vertCount-",Xn.OFFSET)}):te(function(Xn,lr){return lr.def(Xn.ELEMENTS,".vertCount")}):te(function(){return-1}):new Z(cn.thisDep||pn.thisDep,cn.contextDep||pn.contextDep,cn.propDep||pn.propDep,function(Xn,lr){var or=Xn.ELEMENTS;return Xn.OFFSET?lr.def(or,"?",or,".vertCount-",Xn.OFFSET,":-1"):lr.def(or,"?",or,".vertCount:-1")}):hn?new Z(Jt.thisDep,Jt.contextDep,Jt.propDep,function(Xn,lr){return lr.def(Xn.shared.vao,".currentVAO?",Xn.shared.vao,".currentVAO.count:-1")}):null}(),Wn=rn("instances",!1);return{elements:cn,primitive:On,count:Rn,instances:Wn,offset:pn,vao:Jt,vaoActive:hn,elementsActive:en,static:Ln}}function vn(Lt,$t){var rn=Lt.static,wn=Lt.dynamic,kn={};return Object.keys(rn).forEach(function(Ln){var hn=rn[Ln],Jt=Qe.id(Ln),en=new Kn;if(j(hn))en.state=1,en.buffer=Be.getBuffer(Be.create(hn,34962,!1,!0)),en.type=0;else if(pn=Be.getBuffer(hn))en.state=1,en.buffer=pn,en.type=0;else if("constant"in hn){var cn=hn.constant;en.buffer="null",en.state=2,typeof cn=="number"?en.x=cn:Tt.forEach(function(Xn,lr){lr<cn.length&&(en[Xn]=cn[lr])})}else{var pn=j(hn.buffer)?Be.getBuffer(Be.create(hn.buffer,34962,!1,!0)):Be.getBuffer(hn.buffer),On=0|hn.offset,Rn=0|hn.stride,Wn=0|hn.size,Hn=!!hn.normalized,tr=0;"type"in hn&&(tr=Ee[hn.type]),hn=0|hn.divisor,en.buffer=pn,en.state=1,en.size=Wn,en.normalized=Hn,en.type=tr||pn.dtype,en.offset=On,en.stride=Rn,en.divisor=hn}kn[Ln]=te(function(Xn,lr){var or=Xn.attribCache;if(Jt in or)return or[Jt];var sr={isStream:!1};return Object.keys(en).forEach(function(gr){sr[gr]=en[gr]}),en.buffer&&(sr.buffer=Xn.link(en.buffer),sr.type=sr.type||sr.buffer+".dtype"),or[Jt]=sr})}),Object.keys(wn).forEach(function(Ln){var hn=wn[Ln];kn[Ln]=J(hn,function(Jt,en){function cn(or){en(Hn[or],"=",pn,".",or,"|0;")}var pn=Jt.invoke(en,hn),On=Jt.shared,Rn=Jt.constants,Wn=On.isBufferArgs,Hn=(On=On.buffer,{isStream:en.def(!1)}),tr=new Kn;tr.state=1,Object.keys(tr).forEach(function(or){Hn[or]=en.def(""+tr[or])});var Xn=Hn.buffer,lr=Hn.type;return en("if(",Wn,"(",pn,")){",Hn.isStream,"=true;",Xn,"=",On,".createStream(",34962,",",pn,");",lr,"=",Xn,".dtype;","}else{",Xn,"=",On,".getBuffer(",pn,");","if(",Xn,"){",lr,"=",Xn,".dtype;",'}else if("constant" in ',pn,"){",Hn.state,"=",2,";","if(typeof "+pn+'.constant === "number"){',Hn[Tt[0]],"=",pn,".constant;",Tt.slice(1).map(function(or){return Hn[or]}).join("="),"=0;","}else{",Tt.map(function(or,sr){return Hn[or]+"="+pn+".constant.length>"+sr+"?"+pn+".constant["+sr+"]:0;"}).join(""),"}}else{","if(",Wn,"(",pn,".buffer)){",Xn,"=",On,".createStream(",34962,",",pn,".buffer);","}else{",Xn,"=",On,".getBuffer(",pn,".buffer);","}",lr,'="type" in ',pn,"?",Rn.glTypes,"[",pn,".type]:",Xn,".dtype;",Hn.normalized,"=!!",pn,".normalized;"),cn("size"),cn("offset"),cn("stride"),cn("divisor"),en("}}"),en.exit("if(",Hn.isStream,"){",On,".destroyStream(",Xn,");","}"),Hn})}),kn}function Tn(Lt,$t,rn,wn,kn){function Ln(tr){var Xn=Jt[tr];Xn&&(cn[tr]=Xn)}var hn=function(tr,Xn){if(typeof(lr=tr.static).frag=="string"&&typeof lr.vert=="string"){if(0<Object.keys(Xn.dynamic).length)return null;var lr=Xn.static,or=Object.keys(lr);if(0<or.length&&typeof lr[or[0]]=="number"){for(var sr=[],gr=0;gr<or.length;++gr)sr.push([0|lr[or[gr]],or[gr]]);return sr}}return null}(Lt,$t),Jt=function(tr,Xn,lr){function or(Er){if(Er in sr){var Jn=sr[Er];Er=!0;var br,zr,ii=0|Jn.x,xi=0|Jn.y;return"width"in Jn?br=0|Jn.width:Er=!1,"height"in Jn?zr=0|Jn.height:Er=!1,new Z(!Er&&Xn&&Xn.thisDep,!Er&&Xn&&Xn.contextDep,!Er&&Xn&&Xn.propDep,function(Ai,ci){var zi=Ai.shared.context,Do=br;"width"in Jn||(Do=ci.def(zi,".","framebufferWidth","-",ii));var Ha=zr;return"height"in Jn||(Ha=ci.def(zi,".","framebufferHeight","-",xi)),[ii,xi,Do,Ha]})}if(Er in gr){var vi=gr[Er];return Er=J(vi,function(Ai,ci){var zi=Ai.invoke(ci,vi),Do=Ai.shared.context,Ha=ci.def(zi,".x|0"),Ko=ci.def(zi,".y|0");return[Ha,Ko,ci.def('"width" in ',zi,"?",zi,".width|0:","(",Do,".","framebufferWidth","-",Ha,")"),zi=ci.def('"height" in ',zi,"?",zi,".height|0:","(",Do,".","framebufferHeight","-",Ko,")")]}),Xn&&(Er.thisDep=Er.thisDep||Xn.thisDep,Er.contextDep=Er.contextDep||Xn.contextDep,Er.propDep=Er.propDep||Xn.propDep),Er}return Xn?new Z(Xn.thisDep,Xn.contextDep,Xn.propDep,function(Ai,ci){var zi=Ai.shared.context;return[0,0,ci.def(zi,".","framebufferWidth"),ci.def(zi,".","framebufferHeight")]}):null}var sr=tr.static,gr=tr.dynamic;if(tr=or("viewport")){var vr=tr;tr=new Z(tr.thisDep,tr.contextDep,tr.propDep,function(Er,Jn){var br=vr.append(Er,Jn),zr=Er.shared.context;return Jn.set(zr,".viewportWidth",br[2]),Jn.set(zr,".viewportHeight",br[3]),br})}return{viewport:tr,scissor_box:or("scissor.box")}}(Lt,On=Xt(Lt)),en=Gt(Lt),cn=function(tr,Xn){var lr=tr.static,or=tr.dynamic,sr={};return Yn.forEach(function(gr){function vr(Jn,br){if(gr in lr){var zr=Jn(lr[gr]);sr[Er]=te(function(){return zr})}else if(gr in or){var ii=or[gr];sr[Er]=J(ii,function(xi,vi){return br(xi,vi,xi.invoke(vi,ii))})}}var Er=Bt(gr);switch(gr){case"cull.enable":case"blend.enable":case"dither":case"stencil.enable":case"depth.enable":case"scissor.enable":case"polygonOffset.enable":case"sample.alpha":case"sample.enable":case"depth.mask":case"lineWidth":return vr(function(Jn){return Jn},function(Jn,br,zr){return zr});case"depth.func":return vr(function(Jn){return Ft[Jn]},function(Jn,br,zr){return br.def(Jn.constants.compareFuncs,"[",zr,"]")});case"depth.range":return vr(function(Jn){return Jn},function(Jn,br,zr){return[br.def("+",zr,"[0]"),br=br.def("+",zr,"[1]")]});case"blend.func":return vr(function(Jn){return[St["srcRGB"in Jn?Jn.srcRGB:Jn.src],St["dstRGB"in Jn?Jn.dstRGB:Jn.dst],St["srcAlpha"in Jn?Jn.srcAlpha:Jn.src],St["dstAlpha"in Jn?Jn.dstAlpha:Jn.dst]]},function(Jn,br,zr){function ii(ci,zi){return br.def('"',ci,zi,'" in ',zr,"?",zr,".",ci,zi,":",zr,".",ci)}Jn=Jn.constants.blendFuncs;var xi=ii("src","RGB"),vi=ii("dst","RGB"),Ai=(xi=br.def(Jn,"[",xi,"]"),br.def(Jn,"[",ii("src","Alpha"),"]"));return[xi,vi=br.def(Jn,"[",vi,"]"),Ai,Jn=br.def(Jn,"[",ii("dst","Alpha"),"]")]});case"blend.equation":return vr(function(Jn){return typeof Jn=="string"?[wr[Jn],wr[Jn]]:typeof Jn=="object"?[wr[Jn.rgb],wr[Jn.alpha]]:void 0},function(Jn,br,zr){var ii=Jn.constants.blendEquations,xi=br.def(),vi=br.def();return(Jn=Jn.cond("typeof ",zr,'==="string"')).then(xi,"=",vi,"=",ii,"[",zr,"];"),Jn.else(xi,"=",ii,"[",zr,".rgb];",vi,"=",ii,"[",zr,".alpha];"),br(Jn),[xi,vi]});case"blend.color":return vr(function(Jn){return y(4,function(br){return+Jn[br]})},function(Jn,br,zr){return y(4,function(ii){return br.def("+",zr,"[",ii,"]")})});case"stencil.mask":return vr(function(Jn){return 0|Jn},function(Jn,br,zr){return br.def(zr,"|0")});case"stencil.func":return vr(function(Jn){return[Ft[Jn.cmp||"keep"],Jn.ref||0,"mask"in Jn?Jn.mask:-1]},function(Jn,br,zr){return[Jn=br.def('"cmp" in ',zr,"?",Jn.constants.compareFuncs,"[",zr,".cmp]",":",7680),br.def(zr,".ref|0"),br=br.def('"mask" in ',zr,"?",zr,".mask|0:-1")]});case"stencil.opFront":case"stencil.opBack":return vr(function(Jn){return[gr==="stencil.opBack"?1029:1028,zt[Jn.fail||"keep"],zt[Jn.zfail||"keep"],zt[Jn.zpass||"keep"]]},function(Jn,br,zr){function ii(vi){return br.def('"',vi,'" in ',zr,"?",xi,"[",zr,".",vi,"]:",7680)}var xi=Jn.constants.stencilOps;return[gr==="stencil.opBack"?1029:1028,ii("fail"),ii("zfail"),ii("zpass")]});case"polygonOffset.offset":return vr(function(Jn){return[0|Jn.factor,0|Jn.units]},function(Jn,br,zr){return[br.def(zr,".factor|0"),br=br.def(zr,".units|0")]});case"cull.face":return vr(function(Jn){var br=0;return Jn==="front"?br=1028:Jn==="back"&&(br=1029),br},function(Jn,br,zr){return br.def(zr,'==="front"?',1028,":",1029)});case"frontFace":return vr(function(Jn){return Je[Jn]},function(Jn,br,zr){return br.def(zr+'==="cw"?2304:2305')});case"colorMask":return vr(function(Jn){return Jn.map(function(br){return!!br})},function(Jn,br,zr){return y(4,function(ii){return"!!"+zr+"["+ii+"]"})});case"sample.coverage":return vr(function(Jn){return["value"in Jn?Jn.value:1,!!Jn.invert]},function(Jn,br,zr){return[br.def('"value" in ',zr,"?+",zr,".value:1"),br=br.def("!!",zr,".invert")]})}}),sr}(Lt),pn=Qt(Lt,0,hn);Ln("viewport"),Ln(Bt("scissor.box"));var On,Rn=0<Object.keys(cn).length;if((On={framebuffer:On,draw:en,shader:pn,state:cn,dirty:Rn,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}}).profile=function(tr){var Xn,lr=tr.static;if(tr=tr.dynamic,"profile"in lr){var or=!!lr.profile;(Xn=te(function(gr,vr){return or})).enable=or}else if("profile"in tr){var sr=tr.profile;Xn=J(sr,function(gr,vr){return gr.invoke(vr,sr)})}return Xn}(Lt),On.uniforms=function(tr,Xn){var lr=tr.static,or=tr.dynamic,sr={};return Object.keys(lr).forEach(function(gr){var vr,Er=lr[gr];if(typeof Er=="number"||typeof Er=="boolean")vr=te(function(){return Er});else if(typeof Er=="function"){var Jn=Er._reglType;Jn==="texture2d"||Jn==="textureCube"?vr=te(function(br){return br.link(Er)}):Jn!=="framebuffer"&&Jn!=="framebufferCube"||(vr=te(function(br){return br.link(Er.color[0])}))}else b(Er)&&(vr=te(function(br){return br.global.def("[",y(Er.length,function(zr){return Er[zr]}),"]")}));vr.value=Er,sr[gr]=vr}),Object.keys(or).forEach(function(gr){var vr=or[gr];sr[gr]=J(vr,function(Er,Jn){return Er.invoke(Jn,vr)})}),sr}(rn),On.drawVAO=On.scopeVAO=en.vao,!On.drawVAO&&pn.program&&!hn&&st.angle_instanced_arrays&&en.static.elements){var Wn=!0;if(Lt=pn.program.attributes.map(function(tr){return tr=$t.static[tr],Wn=Wn&&!!tr,tr}),Wn&&0<Lt.length){var Hn=yt.getVAO(yt.createVAO({attributes:Lt,elements:en.static.elements}));On.drawVAO=new Z(null,null,null,function(tr,Xn){return tr.link(Hn)}),On.useVAO=!0}}return hn?On.useVAO=!0:On.attributes=vn($t),On.context=function(tr){var Xn=tr.static,lr=tr.dynamic,or={};return Object.keys(Xn).forEach(function(sr){var gr=Xn[sr];or[sr]=te(function(vr,Er){return typeof gr=="number"||typeof gr=="boolean"?""+gr:vr.link(gr)})}),Object.keys(lr).forEach(function(sr){var gr=lr[sr];or[sr]=J(gr,function(vr,Er){return vr.invoke(Er,gr)})}),or}(wn),On}function dn(Lt,$t,rn){var wn=Lt.shared.context,kn=Lt.scope();Object.keys(rn).forEach(function(Ln){$t.save(wn,"."+Ln);var hn=rn[Ln].append(Lt,$t);Array.isArray(hn)?kn(wn,".",Ln,"=[",hn.join(),"];"):kn(wn,".",Ln,"=",hn,";")}),$t(kn)}function Yt(Lt,$t,rn,wn){var kn,Ln=(Jt=Lt.shared).gl,hn=Jt.framebuffer;sn&&(kn=$t.def(Jt.extensions,".webgl_draw_buffers"));var Jt=(en=Lt.constants).drawBuffer,en=en.backBuffer;Lt=rn?rn.append(Lt,$t):$t.def(hn,".next"),wn||$t("if(",Lt,"!==",hn,".cur){"),$t("if(",Lt,"){",Ln,".bindFramebuffer(",36160,",",Lt,".framebuffer);"),sn&&$t(kn,".drawBuffersWEBGL(",Jt,"[",Lt,".colorAttachments.length]);"),$t("}else{",Ln,".bindFramebuffer(",36160,",null);"),sn&&$t(kn,".drawBuffersWEBGL(",en,");"),$t("}",hn,".cur=",Lt,";"),wn||$t("}")}function ln(Lt,$t,rn){var wn=Lt.shared,kn=wn.gl,Ln=Lt.current,hn=Lt.next,Jt=wn.current,en=wn.next,cn=Lt.cond(Jt,".dirty");Yn.forEach(function(pn){var On,Rn;if(!((pn=Bt(pn))in rn.state))if(pn in hn){On=hn[pn],Rn=Ln[pn];var Wn=y(bn[pn].length,function(Hn){return cn.def(On,"[",Hn,"]")});cn(Lt.cond(Wn.map(function(Hn,tr){return Hn+"!=="+Rn+"["+tr+"]"}).join("||")).then(kn,".",jn[pn],"(",Wn,");",Wn.map(function(Hn,tr){return Rn+"["+tr+"]="+Hn}).join(";"),";"))}else On=cn.def(en,".",pn),Wn=Lt.cond(On,"!==",Jt,".",pn),cn(Wn),pn in Nn?Wn(Lt.cond(On).then(kn,".enable(",Nn[pn],");").else(kn,".disable(",Nn[pn],");"),Jt,".",pn,"=",On,";"):Wn(kn,".",jn[pn],"(",On,");",Jt,".",pn,"=",On,";")}),Object.keys(rn.state).length===0&&cn(Jt,".dirty=false;"),$t(cn)}function nn(Lt,$t,rn,wn){var kn,Ln=Lt.shared,hn=Lt.current,Jt=Ln.current,en=Ln.gl;W(Object.keys(rn)).forEach(function(cn){var pn=rn[cn];if(!wn||wn(pn)){var On=pn.append(Lt,$t);if(Nn[cn]){var Rn=Nn[cn];ie(pn)?(kn=Lt.link(On,{stable:!0}),$t(Lt.cond(kn).then(en,".enable(",Rn,");").else(en,".disable(",Rn,");")),$t(Jt,".",cn,"=",kn,";")):($t(Lt.cond(On).then(en,".enable(",Rn,");").else(en,".disable(",Rn,");")),$t(Jt,".",cn,"=",On,";"))}else if(b(On)){var Wn=hn[cn];$t(en,".",jn[cn],"(",On,");",On.map(function(Hn,tr){return Wn+"["+tr+"]="+Hn}).join(";"),";")}else ie(pn)?(kn=Lt.link(On,{stable:!0}),$t(en,".",jn[cn],"(",kn,");",Jt,".",cn,"=",kn,";")):$t(en,".",jn[cn],"(",On,");",Jt,".",cn,"=",On,";")}})}function fn(Lt,$t){Ht&&(Lt.instancing=$t.def(Lt.shared.extensions,".angle_instanced_arrays"))}function mn(Lt,$t,rn,wn,kn){function Ln(){return typeof performance>"u"?"Date.now()":"performance.now()"}function hn(tr){tr(cn=$t.def(),"=",Ln(),";"),typeof kn=="string"?tr(Rn,".count+=",kn,";"):tr(Rn,".count++;"),dt&&(wn?tr(pn=$t.def(),"=",Hn,".getNumPendingQueries();"):tr(Hn,".beginQuery(",Rn,");"))}function Jt(tr){tr(Rn,".cpuTime+=",Ln(),"-",cn,";"),dt&&(wn?tr(Hn,".pushScopeStats(",pn,",",Hn,".getNumPendingQueries(),",Rn,");"):tr(Hn,".endQuery();"))}function en(tr){var Xn=$t.def(Wn,".profile");$t(Wn,".profile=",tr,";"),$t.exit(Wn,".profile=",Xn,";")}var cn,pn,On=Lt.shared,Rn=Lt.stats,Wn=On.current,Hn=On.timer;if(rn=rn.profile){if(ie(rn))return void(rn.enable?(hn($t),Jt($t.exit),en("true")):en("false"));en(rn=rn.append(Lt,$t))}else rn=$t.def(Wn,".profile");hn(On=Lt.block()),$t("if(",rn,"){",On,"}"),Jt(Lt=Lt.block()),$t.exit("if(",rn,"){",Lt,"}")}function xn(Lt,$t,rn,wn,kn){function Ln(Jt,en,cn){function pn(){$t("if(!",Hn,".buffer){",Rn,".enableVertexAttribArray(",Wn,");}");var or,sr=cn.type;or=cn.size?$t.def(cn.size,"||",en):en,$t("if(",Hn,".type!==",sr,"||",Hn,".size!==",or,"||",lr.map(function(gr){return Hn+"."+gr+"!=="+cn[gr]}).join("||"),"){",Rn,".bindBuffer(",34962,",",tr,".buffer);",Rn,".vertexAttribPointer(",[Wn,or,sr,cn.normalized,cn.stride,cn.offset],");",Hn,".type=",sr,";",Hn,".size=",or,";",lr.map(function(gr){return Hn+"."+gr+"="+cn[gr]+";"}).join(""),"}"),Ht&&(sr=cn.divisor,$t("if(",Hn,".divisor!==",sr,"){",Lt.instancing,".vertexAttribDivisorANGLE(",[Wn,sr],");",Hn,".divisor=",sr,";}"))}function On(){$t("if(",Hn,".buffer){",Rn,".disableVertexAttribArray(",Wn,");",Hn,".buffer=null;","}if(",Tt.map(function(or,sr){return Hn+"."+or+"!=="+Xn[sr]}).join("||"),"){",Rn,".vertexAttrib4f(",Wn,",",Xn,");",Tt.map(function(or,sr){return Hn+"."+or+"="+Xn[sr]+";"}).join(""),"}")}var Rn=hn.gl,Wn=$t.def(Jt,".location"),Hn=$t.def(hn.attributes,"[",Wn,"]");Jt=cn.state;var tr=cn.buffer,Xn=[cn.x,cn.y,cn.z,cn.w],lr=["buffer","normalized","offset","stride"];Jt===1?pn():Jt===2?On():($t("if(",Jt,"===",1,"){"),pn(),$t("}else{"),On(),$t("}"))}var hn=Lt.shared;wn.forEach(function(Jt){var en,cn=Jt.name,pn=rn.attributes[cn];if(pn){if(!kn(pn))return;en=pn.append(Lt,$t)}else{if(!kn(et))return;var On=Lt.scopeAttrib(cn);en={},Object.keys(new Kn).forEach(function(Rn){en[Rn]=$t.def(On,".",Rn)})}Ln(Lt.link(Jt),function(Rn){switch(Rn){case 35664:case 35667:case 35671:return 2;case 35665:case 35668:case 35672:return 3;case 35666:case 35669:case 35673:return 4;default:return 1}}(Jt.info.type),en)})}function Pn(Lt,$t,rn,wn,kn,Ln){for(var hn,Jt=Lt.shared,en=Jt.gl,cn=0;cn<wn.length;++cn){var pn,On=(Hn=wn[cn]).name,Rn=Hn.info.type,Wn=rn.uniforms[On],Hn=Lt.link(Hn)+".location";if(Wn){if(!kn(Wn))continue;if(ie(Wn)){if(On=Wn.value,Rn===35678||Rn===35680)$t(en,".uniform1i(",Hn,",",(Rn=Lt.link(On._texture||On.color[0]._texture))+".bind());"),$t.exit(Rn,".unbind();");else if(Rn===35674||Rn===35675||Rn===35676)Wn=2,Rn===35675?Wn=3:Rn===35676&&(Wn=4),$t(en,".uniformMatrix",Wn,"fv(",Hn,",false,",On=Lt.global.def("new Float32Array(["+Array.prototype.slice.call(On)+"])"),");");else{switch(Rn){case 5126:hn="1f";break;case 35664:hn="2f";break;case 35665:hn="3f";break;case 35666:hn="4f";break;case 35670:case 5124:hn="1i";break;case 35671:case 35667:hn="2i";break;case 35672:case 35668:hn="3i";break;case 35673:case 35669:hn="4i"}$t(en,".uniform",hn,"(",Hn,",",b(On)?Array.prototype.slice.call(On):On,");")}continue}pn=Wn.append(Lt,$t)}else{if(!kn(et))continue;pn=$t.def(Jt.uniforms,"[",Qe.id(On),"]")}switch(Rn===35678?$t("if(",pn,"&&",pn,'._reglType==="framebuffer"){',pn,"=",pn,".color[0];","}"):Rn===35680&&$t("if(",pn,"&&",pn,'._reglType==="framebufferCube"){',pn,"=",pn,".color[0];","}"),On=1,Rn){case 35678:case 35680:Rn=$t.def(pn,"._texture"),$t(en,".uniform1i(",Hn,",",Rn,".bind());"),$t.exit(Rn,".unbind();");continue;case 5124:case 35670:hn="1i";break;case 35667:case 35671:hn="2i",On=2;break;case 35668:case 35672:hn="3i",On=3;break;case 35669:case 35673:hn="4i",On=4;break;case 5126:hn="1f";break;case 35664:hn="2f",On=2;break;case 35665:hn="3f",On=3;break;case 35666:hn="4f",On=4;break;case 35674:hn="Matrix2fv";break;case 35675:hn="Matrix3fv";break;case 35676:hn="Matrix4fv"}if(hn.charAt(0)==="M"){$t(en,".uniform",hn,"(",Hn,","),Hn=Math.pow(Rn-35674+2,2);var tr=Lt.global.def("new Float32Array(",Hn,")");Array.isArray(pn)?$t("false,(",y(Hn,function(lr){return tr+"["+lr+"]="+pn[lr]}),",",tr,")"):$t("false,(Array.isArray(",pn,")||",pn," instanceof Float32Array)?",pn,":(",y(Hn,function(lr){return tr+"["+lr+"]="+pn+"["+lr+"]"}),",",tr,")"),$t(");")}else{if(1<On){Rn=[];var Xn=[];for(Wn=0;Wn<On;++Wn)Array.isArray(pn)?Xn.push(pn[Wn]):Xn.push($t.def(pn+"["+Wn+"]")),Ln&&Rn.push($t.def());Ln&&$t("if(!",Lt.batchId,"||",Rn.map(function(lr,or){return lr+"!=="+Xn[or]}).join("||"),"){",Rn.map(function(lr,or){return lr+"="+Xn[or]+";"}).join("")),$t(en,".uniform",hn,"(",Hn,",",Xn.join(","),");")}else Ln&&(Rn=$t.def(),$t("if(!",Lt.batchId,"||",Rn,"!==",pn,"){",Rn,"=",pn,";")),$t(en,".uniform",hn,"(",Hn,",",pn,");");Ln&&$t("}")}}}function Dn(Lt,$t,rn,wn){function kn(sr){var gr=Rn[sr];return gr?gr.contextDep&&wn.contextDynamic||gr.propDep?gr.append(Lt,rn):gr.append(Lt,$t):$t.def(On,".",sr)}function Ln(){function sr(){rn(en,".drawElementsInstancedANGLE(",[Hn,Xn,lr,tr+"<<(("+lr+"-5121)>>1)",Jt],");")}function gr(){rn(en,".drawArraysInstancedANGLE(",[Hn,tr,Xn,Jt],");")}Wn&&Wn!=="null"?or?sr():(rn("if(",Wn,"){"),sr(),rn("}else{"),gr(),rn("}")):gr()}function hn(){function sr(){rn(pn+".drawElements("+[Hn,Xn,lr,tr+"<<(("+lr+"-5121)>>1)"]+");")}function gr(){rn(pn+".drawArrays("+[Hn,tr,Xn]+");")}Wn&&Wn!=="null"?or?sr():(rn("if(",Wn,"){"),sr(),rn("}else{"),gr(),rn("}")):gr()}var Jt,en,cn=Lt.shared,pn=cn.gl,On=cn.draw,Rn=wn.draw,Wn=function(){var sr=Rn.elements,gr=$t;return sr?((sr.contextDep&&wn.contextDynamic||sr.propDep)&&(gr=rn),sr=sr.append(Lt,gr),Rn.elementsActive&&gr("if("+sr+")"+pn+".bindBuffer(34963,"+sr+".buffer.buffer);")):(sr=gr.def(),gr(sr,"=",On,".","elements",";","if(",sr,"){",pn,".bindBuffer(",34963,",",sr,".buffer.buffer);}","else if(",cn.vao,".currentVAO){",sr,"=",Lt.shared.elements+".getElements("+cn.vao,".currentVAO.elements);",gn?"":"if("+sr+")"+pn+".bindBuffer(34963,"+sr+".buffer.buffer);","}")),sr}(),Hn=kn("primitive"),tr=kn("offset"),Xn=function(){var sr=Rn.count,gr=$t;return sr?((sr.contextDep&&wn.contextDynamic||sr.propDep)&&(gr=rn),sr=sr.append(Lt,gr)):sr=gr.def(On,".","count"),sr}();if(typeof Xn=="number"){if(Xn===0)return}else rn("if(",Xn,"){"),rn.exit("}");Ht&&(Jt=kn("instances"),en=Lt.instancing);var lr=Wn+".type",or=Rn.elements&&ie(Rn.elements)&&!Rn.vaoActive;Ht&&(typeof Jt!="number"||0<=Jt)?typeof Jt=="string"?(rn("if(",Jt,">0){"),Ln(),rn("}else if(",Jt,"<0){"),hn(),rn("}")):Ln():hn()}function En(Lt,$t,rn,wn,kn){return kn=($t=tn()).proc("body",kn),Ht&&($t.instancing=kn.def($t.shared.extensions,".angle_instanced_arrays")),Lt($t,kn,rn,wn),$t.compile().body}function Fn(Lt,$t,rn,wn){fn(Lt,$t),rn.useVAO?rn.drawVAO?$t(Lt.shared.vao,".setVAO(",rn.drawVAO.append(Lt,$t),");"):$t(Lt.shared.vao,".setVAO(",Lt.shared.vao,".targetVAO);"):($t(Lt.shared.vao,".setVAO(null);"),xn(Lt,$t,rn,wn.attributes,function(){return!0})),Pn(Lt,$t,rn,wn.uniforms,function(){return!0},!1),Dn(Lt,$t,$t,rn)}function er(Lt,$t,rn,wn){function kn(){return!0}Lt.batchId="a1",fn(Lt,$t),xn(Lt,$t,rn,wn.attributes,kn),Pn(Lt,$t,rn,wn.uniforms,kn,!1),Dn(Lt,$t,$t,rn)}function ir(Lt,$t,rn,wn){function kn(On){return On.contextDep&&hn||On.propDep}function Ln(On){return!kn(On)}fn(Lt,$t);var hn=rn.contextDep,Jt=$t.def(),en=$t.def();Lt.shared.props=en,Lt.batchId=Jt;var cn=Lt.scope(),pn=Lt.scope();$t(cn.entry,"for(",Jt,"=0;",Jt,"<","a1",";++",Jt,"){",en,"=","a0","[",Jt,"];",pn,"}",cn.exit),rn.needsContext&&dn(Lt,pn,rn.context),rn.needsFramebuffer&&Yt(Lt,pn,rn.framebuffer),nn(Lt,pn,rn.state,kn),rn.profile&&kn(rn.profile)&&mn(Lt,pn,rn,!1,!0),wn?(rn.useVAO?rn.drawVAO?kn(rn.drawVAO)?pn(Lt.shared.vao,".setVAO(",rn.drawVAO.append(Lt,pn),");"):cn(Lt.shared.vao,".setVAO(",rn.drawVAO.append(Lt,cn),");"):cn(Lt.shared.vao,".setVAO(",Lt.shared.vao,".targetVAO);"):(cn(Lt.shared.vao,".setVAO(null);"),xn(Lt,cn,rn,wn.attributes,Ln),xn(Lt,pn,rn,wn.attributes,kn)),Pn(Lt,cn,rn,wn.uniforms,Ln,!1),Pn(Lt,pn,rn,wn.uniforms,kn,!0),Dn(Lt,cn,pn,rn)):($t=Lt.global.def("{}"),wn=rn.shader.progVar.append(Lt,pn),en=pn.def(wn,".id"),cn=pn.def($t,"[",en,"]"),pn(Lt.shared.gl,".useProgram(",wn,".program);","if(!",cn,"){",cn,"=",$t,"[",en,"]=",Lt.link(function(On){return En(er,Lt,rn,On,2)}),"(",wn,");}",cn,".call(this,a0[",Jt,"],",Jt,");"))}function fr(Lt,$t){function rn(Jt){var en=$t.shader[Jt];en&&(en=en.append(Lt,wn),isNaN(en)?wn.set(kn.shader,"."+Jt,en):wn.set(kn.shader,"."+Jt,Lt.link(en,{stable:!0})))}var wn=Lt.proc("scope",3);Lt.batchId="a2";var kn=Lt.shared,Ln=kn.current;if(dn(Lt,wn,$t.context),$t.framebuffer&&$t.framebuffer.append(Lt,wn),W(Object.keys($t.state)).forEach(function(Jt){var en=$t.state[Jt],cn=en.append(Lt,wn);b(cn)?cn.forEach(function(pn,On){isNaN(pn)?wn.set(Lt.next[Jt],"["+On+"]",pn):wn.set(Lt.next[Jt],"["+On+"]",Lt.link(pn,{stable:!0}))}):ie(en)?wn.set(kn.next,"."+Jt,Lt.link(cn,{stable:!0})):wn.set(kn.next,"."+Jt,cn)}),mn(Lt,wn,$t,!0,!0),["elements","offset","count","instances","primitive"].forEach(function(Jt){var en=$t.draw[Jt];en&&(en=en.append(Lt,wn),isNaN(en)?wn.set(kn.draw,"."+Jt,en):wn.set(kn.draw,"."+Jt,Lt.link(en),{stable:!0}))}),Object.keys($t.uniforms).forEach(function(Jt){var en=$t.uniforms[Jt].append(Lt,wn);Array.isArray(en)&&(en="["+en.map(function(cn){return isNaN(cn)?cn:Lt.link(cn,{stable:!0})})+"]"),wn.set(kn.uniforms,"["+Lt.link(Qe.id(Jt),{stable:!0})+"]",en)}),Object.keys($t.attributes).forEach(function(Jt){var en=$t.attributes[Jt].append(Lt,wn),cn=Lt.scopeAttrib(Jt);Object.keys(new Kn).forEach(function(pn){wn.set(cn,"."+pn,en[pn])})}),$t.scopeVAO){var hn=$t.scopeVAO.append(Lt,wn);isNaN(hn)?wn.set(kn.vao,".targetVAO",hn):wn.set(kn.vao,".targetVAO",Lt.link(hn,{stable:!0}))}rn("vert"),rn("frag"),0<Object.keys($t.state).length&&(wn(Ln,".dirty=true;"),wn.exit(Ln,".dirty=true;")),wn("a1(",Lt.shared.context,",a0,",Lt.batchId,");")}function ar(Lt,$t,rn){var wn=$t.static[rn];if(wn&&function(pn){if(typeof pn=="object"&&!b(pn)){for(var On=Object.keys(pn),Rn=0;Rn<On.length;++Rn)if(ue.isDynamic(pn[On[Rn]]))return!0;return!1}}(wn)){var kn=Lt.global,Ln=Object.keys(wn),hn=!1,Jt=!1,en=!1,cn=Lt.global.def("{}");Ln.forEach(function(pn){var On=wn[pn];if(ue.isDynamic(On))typeof On=="function"&&(On=wn[pn]=ue.unbox(On)),pn=J(On,null),hn=hn||pn.thisDep,en=en||pn.propDep,Jt=Jt||pn.contextDep;else{switch(kn(cn,".",pn,"="),typeof On){case"number":kn(On);break;case"string":kn('"',On,'"');break;case"object":Array.isArray(On)&&kn("[",On.join(),"]");break;default:kn(Lt.link(On))}kn(";")}}),$t.dynamic[rn]=new ue.DynamicVariable(4,{thisDep:hn,contextDep:Jt,propDep:en,ref:cn,append:function(pn,On){Ln.forEach(function(Rn){var Wn=wn[Rn];ue.isDynamic(Wn)&&(Wn=pn.invoke(On,Wn),On(cn,".",Rn,"=",Wn,";"))})}}),delete $t.static[rn]}}var Kn=yt.Record,wr={add:32774,subtract:32778,"reverse subtract":32779};st.ext_blend_minmax&&(wr.min=32775,wr.max=32776);var Ht=st.angle_instanced_arrays,sn=st.webgl_draw_buffers,gn=st.oes_vertex_array_object,bn={dirty:!0,profile:At.profile},Cn={},Yn=[],Nn={},jn={};jt("dither",3024),jt("blend.enable",3042),Ut("blend.color","blendColor",[0,0,0,0]),Ut("blend.equation","blendEquationSeparate",[32774,32774]),Ut("blend.func","blendFuncSeparate",[1,0,1,0]),jt("depth.enable",2929,!0),Ut("depth.func","depthFunc",513),Ut("depth.range","depthRange",[0,1]),Ut("depth.mask","depthMask",!0),Ut("colorMask","colorMask",[!0,!0,!0,!0]),jt("cull.enable",2884),Ut("cull.face","cullFace",1029),Ut("frontFace","frontFace",2305),Ut("lineWidth","lineWidth",1),jt("polygonOffset.enable",32823),Ut("polygonOffset.offset","polygonOffset",[0,0]),jt("sample.alpha",32926),jt("sample.enable",32928),Ut("sample.coverage","sampleCoverage",[1,!1]),jt("stencil.enable",2960),Ut("stencil.mask","stencilMask",-1),Ut("stencil.func","stencilFunc",[519,0,-1]),Ut("stencil.opFront","stencilOpSeparate",[1028,7680,7680,7680]),Ut("stencil.opBack","stencilOpSeparate",[1029,7680,7680,7680]),jt("scissor.enable",3089),Ut("scissor.box","scissor",[0,0,Ze.drawingBufferWidth,Ze.drawingBufferHeight]),Ut("viewport","viewport",[0,0,Ze.drawingBufferWidth,Ze.drawingBufferHeight]);var rr={gl:Ze,context:Ct,strings:Qe,next:Cn,current:bn,draw:gt,elements:je,buffer:Be,shader:_t,attributes:yt.state,vao:yt,uniforms:xt,framebuffer:ot,extensions:st,timer:dt,isBufferArgs:j},Wt={primTypes:be,compareFuncs:Ft,blendFuncs:St,blendEquations:wr,stencilOps:zt,glTypes:Ee,orientationType:Je};sn&&(Wt.backBuffer=[1029],Wt.drawBuffer=y(ft.maxDrawbuffers,function(Lt){return Lt===0?[0]:y(Lt,function($t){return 36064+$t})}));var An=0;return{next:Cn,current:bn,procs:function(){var Lt=tn(),$t=Lt.proc("poll"),rn=Lt.proc("refresh"),wn=Lt.block();$t(wn),rn(wn);var kn,Ln=(en=Lt.shared).gl,hn=en.next,Jt=en.current;wn(Jt,".dirty=false;"),Yt(Lt,$t),Yt(Lt,rn,null,!0),Ht&&(kn=Lt.link(Ht)),st.oes_vertex_array_object&&rn(Lt.link(st.oes_vertex_array_object),".bindVertexArrayOES(null);");var en=rn.def(en.attributes),cn=rn.def(0),pn=Lt.cond(cn,".buffer");pn.then(Ln,".enableVertexAttribArray(i);",Ln,".bindBuffer(",34962,",",cn,".buffer.buffer);",Ln,".vertexAttribPointer(i,",cn,".size,",cn,".type,",cn,".normalized,",cn,".stride,",cn,".offset);").else(Ln,".disableVertexAttribArray(i);",Ln,".vertexAttrib4f(i,",cn,".x,",cn,".y,",cn,".z,",cn,".w);",cn,".buffer=null;");var On=Lt.link(ft.maxAttributes,{stable:!0});return rn("for(var i=0;i<",On,";++i){",cn,"=",en,"[i];",pn,"}"),Ht&&rn("for(var i=0;i<",On,";++i){",kn,".vertexAttribDivisorANGLE(i,",en,"[i].divisor);","}"),rn(Lt.shared.vao,".currentVAO=null;",Lt.shared.vao,".setVAO(",Lt.shared.vao,".targetVAO);"),Object.keys(Nn).forEach(function(Rn){var Wn=Nn[Rn],Hn=wn.def(hn,".",Rn),tr=Lt.block();tr("if(",Hn,"){",Ln,".enable(",Wn,")}else{",Ln,".disable(",Wn,")}",Jt,".",Rn,"=",Hn,";"),rn(tr),$t("if(",Hn,"!==",Jt,".",Rn,"){",tr,"}")}),Object.keys(jn).forEach(function(Rn){var Wn,Hn,tr=jn[Rn],Xn=bn[Rn],lr=Lt.block();lr(Ln,".",tr,"("),b(Xn)?(tr=Xn.length,Wn=Lt.global.def(hn,".",Rn),Hn=Lt.global.def(Jt,".",Rn),lr(y(tr,function(or){return Wn+"["+or+"]"}),");",y(tr,function(or){return Hn+"["+or+"]="+Wn+"["+or+"];"}).join("")),$t("if(",y(tr,function(or){return Wn+"["+or+"]!=="+Hn+"["+or+"]"}).join("||"),"){",lr,"}")):(Wn=wn.def(hn,".",Rn),Hn=wn.def(Jt,".",Rn),lr(Wn,");",Jt,".",Rn,"=",Wn,";"),$t("if(",Wn,"!==",Hn,"){",lr,"}")),rn(lr)}),Lt.compile()}(),compile:function(Lt,$t,rn,wn,kn){var Ln=tn();Ln.stats=Ln.link(kn),Object.keys($t.static).forEach(function(Jt){ar(Ln,$t,Jt)}),Et.forEach(function(Jt){ar(Ln,Lt,Jt)});var hn=Tn(Lt,$t,rn,wn);return hn.shader.program&&(hn.shader.program.attributes.sort(function(Jt,en){return Jt.name<en.name?-1:1}),hn.shader.program.uniforms.sort(function(Jt,en){return Jt.name<en.name?-1:1})),function(Jt,en){var cn=Jt.proc("draw",1);fn(Jt,cn),dn(Jt,cn,en.context),Yt(Jt,cn,en.framebuffer),ln(Jt,cn,en),nn(Jt,cn,en.state),mn(Jt,cn,en,!1,!0);var pn=en.shader.progVar.append(Jt,cn);if(cn(Jt.shared.gl,".useProgram(",pn,".program);"),en.shader.program)Fn(Jt,cn,en,en.shader.program);else{cn(Jt.shared.vao,".setVAO(null);");var On=Jt.global.def("{}"),Rn=cn.def(pn,".id"),Wn=cn.def(On,"[",Rn,"]");cn(Jt.cond(Wn).then(Wn,".call(this,a0);").else(Wn,"=",On,"[",Rn,"]=",Jt.link(function(Hn){return En(Fn,Jt,en,Hn,1)}),"(",pn,");",Wn,".call(this,a0);"))}0<Object.keys(en.state).length&&cn(Jt.shared.current,".dirty=true;"),Jt.shared.vao&&cn(Jt.shared.vao,".setVAO(null);")}(Ln,hn),fr(Ln,hn),function(Jt,en){function cn(Xn){return Xn.contextDep&&On||Xn.propDep}var pn=Jt.proc("batch",2);Jt.batchId="0",fn(Jt,pn);var On=!1,Rn=!0;Object.keys(en.context).forEach(function(Xn){On=On||en.context[Xn].propDep}),On||(dn(Jt,pn,en.context),Rn=!1);var Wn=!1;if((Hn=en.framebuffer)?(Hn.propDep?On=Wn=!0:Hn.contextDep&&On&&(Wn=!0),Wn||Yt(Jt,pn,Hn)):Yt(Jt,pn,null),en.state.viewport&&en.state.viewport.propDep&&(On=!0),ln(Jt,pn,en),nn(Jt,pn,en.state,function(Xn){return!cn(Xn)}),en.profile&&cn(en.profile)||mn(Jt,pn,en,!1,"a1"),en.contextDep=On,en.needsContext=Rn,en.needsFramebuffer=Wn,(Rn=en.shader.progVar).contextDep&&On||Rn.propDep)ir(Jt,pn,en,null);else if(Rn=Rn.append(Jt,pn),pn(Jt.shared.gl,".useProgram(",Rn,".program);"),en.shader.program)ir(Jt,pn,en,en.shader.program);else{pn(Jt.shared.vao,".setVAO(null);");var Hn=Jt.global.def("{}"),tr=(Wn=pn.def(Rn,".id"),pn.def(Hn,"[",Wn,"]"));pn(Jt.cond(tr).then(tr,".call(this,a0,a1);").else(tr,"=",Hn,"[",Wn,"]=",Jt.link(function(Xn){return En(ir,Jt,en,Xn,2)}),"(",Rn,");",tr,".call(this,a0,a1);"))}0<Object.keys(en.state).length&&pn(Jt.shared.current,".dirty=true;"),Jt.shared.vao&&pn(Jt.shared.vao,".setVAO(null);")}(Ln,hn),re(Ln.compile(),{destroy:function(){hn.shader.program.destroy()}})}}}function ee(Ze,Qe){for(var st=0;st<Ze.length;++st)if(Ze[st]===Qe)return st;return-1}var re=function(Ze,Qe){for(var st=Object.keys(Qe),ft=0;ft<st.length;++ft)Ze[st[ft]]=Qe[st[ft]];return Ze},oe=0,ue={DynamicVariable:E,define:function(Ze,Qe){return new E(Ze,w(Qe+""))},isDynamic:function(Ze){return typeof Ze=="function"&&!Ze._reglType||Ze instanceof E},unbox:function Ze(Qe,st){return typeof Qe=="function"?new E(0,Qe):typeof Qe=="number"||typeof Qe=="boolean"?new E(5,Qe):Array.isArray(Qe)?new E(6,Qe.map(function(ft,Be){return Ze(ft)})):Qe instanceof E?Qe:void 0},accessor:w},ce={next:typeof requestAnimationFrame=="function"?function(Ze){return requestAnimationFrame(Ze)}:function(Ze){return setTimeout(Ze,16)},cancel:typeof cancelAnimationFrame=="function"?function(Ze){return cancelAnimationFrame(Ze)}:clearTimeout},de=typeof performance<"u"&&performance.now?function(){return performance.now()}:function(){return+new Date},me=l();me.zero=l();var _e=function(Ze,Qe){var st=1;Qe.ext_texture_filter_anisotropic&&(st=Ze.getParameter(34047));var ft=1,Be=1;Qe.webgl_draw_buffers&&(ft=Ze.getParameter(34852),Be=Ze.getParameter(36063));var je=!!Qe.oes_texture_float;if(je){je=Ze.createTexture(),Ze.bindTexture(3553,je),Ze.texImage2D(3553,0,6408,1,1,0,6408,5126,null);var at=Ze.createFramebuffer();if(Ze.bindFramebuffer(36160,at),Ze.framebufferTexture2D(36160,36064,3553,je,0),Ze.bindTexture(3553,null),Ze.checkFramebufferStatus(36160)!==36053)je=!1;else{Ze.viewport(0,0,1,1),Ze.clearColor(1,0,0,1),Ze.clear(16384);var ot=me.allocType(5126,4);Ze.readPixels(0,0,1,1,6408,5126,ot),Ze.getError()?je=!1:(Ze.deleteFramebuffer(at),Ze.deleteTexture(je),je=ot[0]===1),me.freeType(ot)}}return ot=!0,typeof navigator<"u"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent))||(ot=Ze.createTexture(),at=me.allocType(5121,36),Ze.activeTexture(33984),Ze.bindTexture(34067,ot),Ze.texImage2D(34069,0,6408,3,3,0,6408,5121,at),me.freeType(at),Ze.bindTexture(34067,null),Ze.deleteTexture(ot),ot=!Ze.getError()),{colorBits:[Ze.getParameter(3410),Ze.getParameter(3411),Ze.getParameter(3412),Ze.getParameter(3413)],depthBits:Ze.getParameter(3414),stencilBits:Ze.getParameter(3415),subpixelBits:Ze.getParameter(3408),extensions:Object.keys(Qe).filter(function(xt){return!!Qe[xt]}),maxAnisotropic:st,maxDrawbuffers:ft,maxColorAttachments:Be,pointSizeDims:Ze.getParameter(33901),lineWidthDims:Ze.getParameter(33902),maxViewportDims:Ze.getParameter(3386),maxCombinedTextureUnits:Ze.getParameter(35661),maxCubeMapSize:Ze.getParameter(34076),maxRenderbufferSize:Ze.getParameter(34024),maxTextureUnits:Ze.getParameter(34930),maxTextureSize:Ze.getParameter(3379),maxAttributes:Ze.getParameter(34921),maxVertexUniforms:Ze.getParameter(36347),maxVertexTextureUnits:Ze.getParameter(35660),maxVaryingVectors:Ze.getParameter(36348),maxFragmentUniforms:Ze.getParameter(36349),glsl:Ze.getParameter(35724),renderer:Ze.getParameter(7937),vendor:Ze.getParameter(7936),version:Ze.getParameter(7938),readFloat:je,npotTextureCube:ot}},Se=function(Ze){return Ze instanceof Uint8Array||Ze instanceof Uint16Array||Ze instanceof Uint32Array||Ze instanceof Int8Array||Ze instanceof Int16Array||Ze instanceof Int32Array||Ze instanceof Float32Array||Ze instanceof Float64Array||Ze instanceof Uint8ClampedArray},we=function(Ze){return Object.keys(Ze).map(function(Qe){return Ze[Qe]})},xe={shape:function(Ze){for(var Qe=[];Ze.length;Ze=Ze[0])Qe.push(Ze.length);return Qe},flatten:function(Ze,Qe,st,ft){var Be=1;if(Qe.length)for(var je=0;je<Qe.length;++je)Be*=Qe[je];else Be=0;switch(st=ft||me.allocType(st,Be),Qe.length){case 0:break;case 1:for(ft=Qe[0],Qe=0;Qe<ft;++Qe)st[Qe]=Ze[Qe];break;case 2:for(ft=Qe[0],Qe=Qe[1],je=Be=0;je<ft;++je)for(var at=Ze[je],ot=0;ot<Qe;++ot)st[Be++]=at[ot];break;case 3:o(Ze,Qe[0],Qe[1],Qe[2],st,0);break;default:r(Ze,Qe,0,st,0)}return st}},De={"[object Int8Array]":5120,"[object Int16Array]":5122,"[object Int32Array]":5124,"[object Uint8Array]":5121,"[object Uint8ClampedArray]":5121,"[object Uint16Array]":5123,"[object Uint32Array]":5125,"[object Float32Array]":5126,"[object Float64Array]":5121,"[object ArrayBuffer]":5121},Ee={int8:5120,int16:5122,int32:5124,uint8:5121,uint16:5123,uint32:5125,float:5126,float32:5126},Me={dynamic:35048,stream:35040,static:35044},he=xe.flatten,fe=xe.shape,ae=[];ae[5120]=1,ae[5122]=2,ae[5124]=4,ae[5121]=1,ae[5123]=2,ae[5125]=4,ae[5126]=4;var be={points:0,point:0,lines:1,line:1,triangles:4,triangle:4,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},Ie=new Float32Array(1),Te=new Uint32Array(Ie.buffer),Ne=[9984,9986,9985,9987],qe=[0,6409,6410,6407,6408],ve={};ve[6409]=ve[6406]=ve[6402]=1,ve[34041]=ve[6410]=2,ve[6407]=ve[35904]=3,ve[6408]=ve[35906]=4;var Ce=g("HTMLCanvasElement"),Ae=g("OffscreenCanvas"),ze=g("CanvasRenderingContext2D"),Ue=g("ImageBitmap"),Ve=g("HTMLImageElement"),Ye=g("HTMLVideoElement"),$e=Object.keys(De).concat([Ce,Ae,ze,Ue,Ve,Ye]),rt=[];rt[5121]=1,rt[5126]=4,rt[36193]=2,rt[5123]=2,rt[5125]=4;var ht=[];ht[32854]=2,ht[32855]=2,ht[36194]=2,ht[34041]=4,ht[33776]=.5,ht[33777]=.5,ht[33778]=1,ht[33779]=1,ht[35986]=.5,ht[35987]=1,ht[34798]=1,ht[35840]=.5,ht[35841]=.25,ht[35842]=.5,ht[35843]=.25,ht[36196]=.5;var nt=[];nt[32854]=2,nt[32855]=2,nt[36194]=2,nt[33189]=2,nt[36168]=1,nt[34041]=4,nt[35907]=4,nt[34836]=16,nt[34842]=8,nt[34843]=6;var bt=function(Ze,Qe,st,ft,Be){function je(gt){this.id=yt++,this.refCount=1,this.renderbuffer=gt,this.format=32854,this.height=this.width=0,Be.profile&&(this.stats={size:0})}function at(gt){var Ct=gt.renderbuffer;Ze.bindRenderbuffer(36161,null),Ze.deleteRenderbuffer(Ct),gt.renderbuffer=null,gt.refCount=0,delete _t[gt.id],ft.renderbufferCount--}var ot={rgba4:32854,rgb565:36194,"rgb5 a1":32855,depth:33189,stencil:36168,"depth stencil":34041};Qe.ext_srgb&&(ot.srgba=35907),Qe.ext_color_buffer_half_float&&(ot.rgba16f=34842,ot.rgb16f=34843),Qe.webgl_color_buffer_float&&(ot.rgba32f=34836);var xt=[];Object.keys(ot).forEach(function(gt){xt[ot[gt]]=gt});var yt=0,_t={};return je.prototype.decRef=function(){0>=--this.refCount&&at(this)},Be.profile&&(ft.getTotalRenderbufferSize=function(){var gt=0;return Object.keys(_t).forEach(function(Ct){gt+=_t[Ct].stats.size}),gt}),{create:function(gt,Ct){function dt(At,Bt){var jt=0,Ut=0,tn=32854;if(typeof At=="object"&&At?("shape"in At?(jt=0|(Ut=At.shape)[0],Ut=0|Ut[1]):("radius"in At&&(jt=Ut=0|At.radius),"width"in At&&(jt=0|At.width),"height"in At&&(Ut=0|At.height)),"format"in At&&(tn=ot[At.format])):typeof At=="number"?(jt=0|At,Ut=typeof Bt=="number"?0|Bt:jt):At||(jt=Ut=1),jt!==vt.width||Ut!==vt.height||tn!==vt.format)return dt.width=vt.width=jt,dt.height=vt.height=Ut,vt.format=tn,Ze.bindRenderbuffer(36161,vt.renderbuffer),Ze.renderbufferStorage(36161,tn,jt,Ut),Be.profile&&(vt.stats.size=nt[vt.format]*vt.width*vt.height),dt.format=xt[vt.format],dt}var vt=new je(Ze.createRenderbuffer());return _t[vt.id]=vt,ft.renderbufferCount++,dt(gt,Ct),dt.resize=function(At,Bt){var jt=0|At,Ut=0|Bt||jt;return jt===vt.width&&Ut===vt.height||(dt.width=vt.width=jt,dt.height=vt.height=Ut,Ze.bindRenderbuffer(36161,vt.renderbuffer),Ze.renderbufferStorage(36161,vt.format,jt,Ut),Be.profile&&(vt.stats.size=nt[vt.format]*vt.width*vt.height)),dt},dt._reglType="renderbuffer",dt._renderbuffer=vt,Be.profile&&(dt.stats=vt.stats),dt.destroy=function(){vt.decRef()},dt},clear:function(){we(_t).forEach(at)},restore:function(){we(_t).forEach(function(gt){gt.renderbuffer=Ze.createRenderbuffer(),Ze.bindRenderbuffer(36161,gt.renderbuffer),Ze.renderbufferStorage(36161,gt.format,gt.width,gt.height)}),Ze.bindRenderbuffer(36161,null)}}},wt=[];wt[6408]=4,wt[6407]=3;var ut=[];ut[5121]=1,ut[5126]=4,ut[36193]=2;var lt=[1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998],Tt=["x","y","z","w"],Et="blend.func blend.equation stencil.func stencil.opFront stencil.opBack sample.coverage viewport scissor.box polygonOffset.offset".split(" "),St={0:0,1:1,zero:0,one:1,"src color":768,"one minus src color":769,"src alpha":770,"one minus src alpha":771,"dst color":774,"one minus dst color":775,"dst alpha":772,"one minus dst alpha":773,"constant color":32769,"one minus constant color":32770,"constant alpha":32771,"one minus constant alpha":32772,"src alpha saturate":776},Ft={never:512,less:513,"<":513,equal:514,"=":514,"==":514,"===":514,lequal:515,"<=":515,greater:516,">":516,notequal:517,"!=":517,"!==":517,gequal:518,">=":518,always:519},zt={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Je={cw:2304,ccw:2305},et=new Z(!1,!1,!1,function(){});return function(Ze){function Qe(){if(er.length===0)Xt&&Xt.update(),Kn=null;else{Kn=ce.next(Qe),_t();for(var Ht=er.length-1;0<=Ht;--Ht){var sn=er[Ht];sn&&sn(Tn,null,0)}dt.flush(),Xt&&Xt.update()}}function st(){!Kn&&0<er.length&&(Kn=ce.next(Qe))}function ft(){Kn&&(ce.cancel(Qe),Kn=null)}function Be(Ht){Ht.preventDefault(),ft(),ir.forEach(function(sn){sn()})}function je(Ht){dt.getError(),At.restore(),fn.restore(),Yt.restore(),mn.restore(),xn.restore(),Pn.restore(),nn.restore(),Xt&&Xt.restore(),Dn.procs.refresh(),st(),fr.forEach(function(sn){sn()})}function at(Ht){function sn(Lt,$t){var rn={},wn={};return Object.keys(Lt).forEach(function(kn){var Ln=Lt[kn];if(ue.isDynamic(Ln))wn[kn]=ue.unbox(Ln,kn);else{if($t&&Array.isArray(Ln)){for(var hn=0;hn<Ln.length;++hn)if(ue.isDynamic(Ln[hn]))return void(wn[kn]=ue.unbox(Ln,kn))}rn[kn]=Ln}}),{dynamic:wn,static:rn}}var gn=sn(Ht.context||{},!0),bn=sn(Ht.uniforms||{},!0),Cn=sn(Ht.attributes||{},!1);Ht=sn(function(Lt){function $t(wn){if(wn in rn){var kn=rn[wn];delete rn[wn],Object.keys(kn).forEach(function(Ln){rn[wn+"."+Ln]=kn[Ln]})}}var rn=re({},Lt);return delete rn.uniforms,delete rn.attributes,delete rn.context,delete rn.vao,"stencil"in rn&&rn.stencil.op&&(rn.stencil.opBack=rn.stencil.opFront=rn.stencil.op,delete rn.stencil.op),$t("blend"),$t("depth"),$t("cull"),$t("stencil"),$t("polygonOffset"),$t("scissor"),$t("sample"),"vao"in Lt&&(rn.vao=Lt.vao),rn}(Ht),!1);var Yn={gpuTime:0,cpuTime:0,count:0},Nn=Dn.compile(Ht,Cn,bn,gn,Yn),jn=Nn.draw,rr=Nn.batch,Wt=Nn.scope,An=[];return re(function(Lt,$t){var rn;if(typeof Lt=="function")return Wt.call(this,null,Lt,0);if(typeof $t=="function")if(typeof Lt=="number")for(rn=0;rn<Lt;++rn)Wt.call(this,null,$t,rn);else{if(!Array.isArray(Lt))return Wt.call(this,Lt,$t,0);for(rn=0;rn<Lt.length;++rn)Wt.call(this,Lt[rn],$t,rn)}else if(typeof Lt=="number"){if(0<Lt)return rr.call(this,function(wn){for(;An.length<wn;)An.push(null);return An}(0|Lt),0|Lt)}else{if(!Array.isArray(Lt))return jn.call(this,Lt);if(Lt.length)return rr.call(this,Lt,Lt.length)}},{stats:Yn,destroy:function(){Nn.destroy()}})}function ot(Ht,sn){var gn=0;Dn.procs.poll();var bn=sn.color;bn&&(dt.clearColor(+bn[0]||0,+bn[1]||0,+bn[2]||0,+bn[3]||0),gn|=16384),"depth"in sn&&(dt.clearDepth(+sn.depth),gn|=256),"stencil"in sn&&(dt.clearStencil(0|sn.stencil),gn|=1024),dt.clear(gn)}function xt(Ht){return er.push(Ht),st(),{cancel:function(){var sn=ee(er,Ht);er[sn]=function gn(){var bn=ee(er,gn);er[bn]=er[er.length-1],--er.length,0>=er.length&&ft()}}}}function yt(){var Ht=En.viewport,sn=En.scissor_box;Ht[0]=Ht[1]=sn[0]=sn[1]=0,Tn.viewportWidth=Tn.framebufferWidth=Tn.drawingBufferWidth=Ht[2]=sn[2]=dt.drawingBufferWidth,Tn.viewportHeight=Tn.framebufferHeight=Tn.drawingBufferHeight=Ht[3]=sn[3]=dt.drawingBufferHeight}function _t(){Tn.tick+=1,Tn.time=Ct(),yt(),Dn.procs.poll()}function gt(){mn.refresh(),yt(),Dn.procs.refresh(),Xt&&Xt.update()}function Ct(){return(de()-Qt)/1e3}if(!(Ze=_(Ze)))return null;var dt=Ze.gl,vt=dt.getContextAttributes();dt.isContextLost();var At=function(Ht,sn){function gn(Nn){var jn;Nn=Nn.toLowerCase();try{jn=bn[Nn]=Ht.getExtension(Nn)}catch{}return!!jn}for(var bn={},Cn=0;Cn<sn.extensions.length;++Cn){var Yn=sn.extensions[Cn];if(!gn(Yn))return sn.onDestroy(),sn.onDone('"'+Yn+'" extension is not supported by the current WebGL context, try upgrading your system or a different browser'),null}return sn.optionalExtensions.forEach(gn),{extensions:bn,restore:function(){Object.keys(bn).forEach(function(Nn){if(bn[Nn]&&!gn(Nn))throw Error("(regl): error restoring extension "+Nn)})}}}(dt,Ze);if(!At)return null;var Bt=function(){var Ht={"":0},sn=[""];return{id:function(gn){var bn=Ht[gn];return bn||(bn=Ht[gn]=sn.length,sn.push(gn),bn)},str:function(gn){return sn[gn]}}}(),jt={vaoCount:0,bufferCount:0,elementsCount:0,framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0},Ut=Ze.cachedCode||{},tn=At.extensions,Xt=function(Ht,sn){function gn(){this.endQueryIndex=this.startQueryIndex=-1,this.sum=0,this.stats=null}function bn(An,Lt,$t){var rn=Nn.pop()||new gn;rn.startQueryIndex=An,rn.endQueryIndex=Lt,rn.sum=0,rn.stats=$t,jn.push(rn)}if(!sn.ext_disjoint_timer_query)return null;var Cn=[],Yn=[],Nn=[],jn=[],rr=[],Wt=[];return{beginQuery:function(An){var Lt=Cn.pop()||sn.ext_disjoint_timer_query.createQueryEXT();sn.ext_disjoint_timer_query.beginQueryEXT(35007,Lt),Yn.push(Lt),bn(Yn.length-1,Yn.length,An)},endQuery:function(){sn.ext_disjoint_timer_query.endQueryEXT(35007)},pushScopeStats:bn,update:function(){var An,Lt;if((An=Yn.length)!==0){Wt.length=Math.max(Wt.length,An+1),rr.length=Math.max(rr.length,An+1),rr[0]=0;var $t=Wt[0]=0;for(Lt=An=0;Lt<Yn.length;++Lt){var rn=Yn[Lt];sn.ext_disjoint_timer_query.getQueryObjectEXT(rn,34919)?($t+=sn.ext_disjoint_timer_query.getQueryObjectEXT(rn,34918),Cn.push(rn)):Yn[An++]=rn,rr[Lt+1]=$t,Wt[Lt+1]=An}for(Yn.length=An,Lt=An=0;Lt<jn.length;++Lt){var wn=($t=jn[Lt]).startQueryIndex;rn=$t.endQueryIndex,$t.sum+=rr[rn]-rr[wn],wn=Wt[wn],(rn=Wt[rn])===wn?($t.stats.gpuTime+=$t.sum/1e6,Nn.push($t)):($t.startQueryIndex=wn,$t.endQueryIndex=rn,jn[An++]=$t)}jn.length=An}},getNumPendingQueries:function(){return Yn.length},clear:function(){Cn.push.apply(Cn,Yn);for(var An=0;An<Cn.length;An++)sn.ext_disjoint_timer_query.deleteQueryEXT(Cn[An]);Yn.length=0,Cn.length=0},restore:function(){Yn.length=0,Cn.length=0}}}(0,tn),Qt=de(),Gt=dt.drawingBufferWidth,vn=dt.drawingBufferHeight,Tn={tick:0,time:0,viewportWidth:Gt,viewportHeight:vn,framebufferWidth:Gt,framebufferHeight:vn,drawingBufferWidth:Gt,drawingBufferHeight:vn,pixelRatio:Ze.pixelRatio},dn=(Gt={elements:null,primitive:4,count:-1,offset:0,instances:-1},_e(dt,tn)),Yt=u(dt,jt,Ze,function(Ht){return nn.destroyBuffer(Ht)}),ln=p(dt,tn,Yt,jt),nn=P(dt,tn,dn,jt,Yt,ln,Gt),fn=O(dt,Bt,jt,Ze),mn=M(dt,tn,dn,function(){Dn.procs.poll()},Tn,jt,Ze),xn=bt(dt,tn,0,jt,Ze),Pn=A(dt,tn,dn,mn,xn,jt),Dn=X(dt,Bt,tn,dn,Yt,ln,0,Pn,{},nn,fn,Gt,Tn,Xt,Ut,Ze),En=(Bt=z(dt,Pn,Dn.procs.poll,Tn),Dn.next),Fn=dt.canvas,er=[],ir=[],fr=[],ar=[Ze.onDestroy],Kn=null;Fn&&(Fn.addEventListener("webglcontextlost",Be,!1),Fn.addEventListener("webglcontextrestored",je,!1));var wr=Pn.setFBO=at({framebuffer:ue.define.call(null,1,"framebuffer")});return gt(),vt=re(at,{clear:function(Ht){if("framebuffer"in Ht)if(Ht.framebuffer&&Ht.framebuffer_reglType==="framebufferCube")for(var sn=0;6>sn;++sn)wr(re({framebuffer:Ht.framebuffer.faces[sn]},Ht),ot);else wr(Ht,ot);else ot(0,Ht)},prop:ue.define.bind(null,1),context:ue.define.bind(null,2),this:ue.define.bind(null,3),draw:at({}),buffer:function(Ht){return Yt.create(Ht,34962,!1,!1)},elements:function(Ht){return ln.create(Ht,!1)},texture:mn.create2D,cube:mn.createCube,renderbuffer:xn.create,framebuffer:Pn.create,framebufferCube:Pn.createCube,vao:nn.createVAO,attributes:vt,frame:xt,on:function(Ht,sn){var gn;switch(Ht){case"frame":return xt(sn);case"lost":gn=ir;break;case"restore":gn=fr;break;case"destroy":gn=ar}return gn.push(sn),{cancel:function(){for(var bn=0;bn<gn.length;++bn)if(gn[bn]===sn){gn[bn]=gn[gn.length-1],gn.pop();break}}}},limits:dn,hasExtension:function(Ht){return 0<=dn.extensions.indexOf(Ht.toLowerCase())},read:Bt,destroy:function(){er.length=0,ft(),Fn&&(Fn.removeEventListener("webglcontextlost",Be),Fn.removeEventListener("webglcontextrestored",je)),fn.clear(),Pn.clear(),xn.clear(),nn.clear(),mn.clear(),ln.clear(),Yt.clear(),Xt&&Xt.clear(),ar.forEach(function(Ht){Ht()})},_gl:dt,_refresh:gt,poll:function(){_t(),Xt&&Xt.update()},now:Ct,stats:jt,getCachedCode:function(){return Ut},preloadCachedCode:function(Ht){Object.entries(Ht).forEach(function(sn){Ut[sn[0]]=sn[1]})}}),Ze.onDone(null,vt),vt}}()},71665:function(R,E,e){var w=e(12856),k=w.Buffer;function i(y,h){for(var l in y)h[l]=y[l]}function _(y,h,l){return k(y,h,l)}k.from&&k.alloc&&k.allocUnsafe&&k.allocUnsafeSlow?R.exports=w:(i(w,E),E.Buffer=_),_.prototype=Object.create(k.prototype),i(k,_),_.from=function(y,h,l){if(typeof y=="number")throw new TypeError("Argument must not be a number");return k(y,h,l)},_.alloc=function(y,h,l){if(typeof y!="number")throw new TypeError("Argument must be a number");var t=k(y);return h!==void 0?typeof l=="string"?t.fill(h,l):t.fill(h):t.fill(0),t},_.allocUnsafe=function(y){if(typeof y!="number")throw new TypeError("Argument must be a number");return k(y)},_.allocUnsafeSlow=function(y){if(typeof y!="number")throw new TypeError("Argument must be a number");return w.SlowBuffer(y)}},21630:function(R,E,e){R.exports=k;var w=e(15398).EventEmitter;function k(){w.call(this)}e(42018)(k,w),k.Readable=e(40410),k.Writable=e(37493),k.Duplex=e(37865),k.Transform=e(74308),k.PassThrough=e(66897),k.finished=e(12726),k.pipeline=e(10168),k.Stream=k,k.prototype.pipe=function(i,_){var y=this;function h(s){i.writable&&i.write(s)===!1&&y.pause&&y.pause()}function l(){y.readable&&y.resume&&y.resume()}y.on("data",h),i.on("drain",l),i._isStdio||_&&_.end===!1||(y.on("end",o),y.on("close",r));var t=!1;function o(){t||(t=!0,i.end())}function r(){t||(t=!0,typeof i.destroy=="function"&&i.destroy())}function n(s){if(a(),w.listenerCount(this,"error")===0)throw s}function a(){y.removeListener("data",h),i.removeListener("drain",l),y.removeListener("end",o),y.removeListener("close",r),y.removeListener("error",n),i.removeListener("error",n),y.removeListener("end",a),y.removeListener("close",a),i.removeListener("close",a)}return y.on("error",n),i.on("error",n),y.on("end",a),y.on("close",a),i.on("close",a),i.emit("pipe",y),i}},74322:function(R){var E={};function e(k,i,_){_||(_=Error);var y=function(h){var l,t;function o(r,n,a){return h.call(this,function(s,u,p){return typeof i=="string"?i:i(s,u,p)}(r,n,a))||this}return t=h,(l=o).prototype=Object.create(t.prototype),l.prototype.constructor=l,l.__proto__=t,o}(_);y.prototype.name=_.name,y.prototype.code=k,E[k]=y}function w(k,i){if(Array.isArray(k)){var _=k.length;return k=k.map(function(y){return String(y)}),_>2?"one of ".concat(i," ").concat(k.slice(0,_-1).join(", "),", or ")+k[_-1]:_===2?"one of ".concat(i," ").concat(k[0]," or ").concat(k[1]):"of ".concat(i," ").concat(k[0])}return"of ".concat(i," ").concat(String(k))}e("ERR_INVALID_OPT_VALUE",function(k,i){return'The value "'+i+'" is invalid for option "'+k+'"'},TypeError),e("ERR_INVALID_ARG_TYPE",function(k,i,_){var y,h,l,t,o;if(typeof i=="string"&&(h="not ",i.substr(0,4)===h)?(y="must not be",i=i.replace(/^not /,"")):y="must be",function(n,a,s){return(s===void 0||s>n.length)&&(s=n.length),n.substring(s-9,s)===a}(k," argument"))l="The ".concat(k," ").concat(y," ").concat(w(i,"type"));else{var r=(typeof o!="number"&&(o=0),o+1>(t=k).length||t.indexOf(".",o)===-1?"argument":"property");l='The "'.concat(k,'" ').concat(r," ").concat(y," ").concat(w(i,"type"))}return l+". Received type ".concat(typeof _)},TypeError),e("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),e("ERR_METHOD_NOT_IMPLEMENTED",function(k){return"The "+k+" method is not implemented"}),e("ERR_STREAM_PREMATURE_CLOSE","Premature close"),e("ERR_STREAM_DESTROYED",function(k){return"Cannot call "+k+" after a stream was destroyed"}),e("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),e("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),e("ERR_STREAM_WRITE_AFTER_END","write after end"),e("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),e("ERR_UNKNOWN_ENCODING",function(k){return"Unknown encoding: "+k},TypeError),e("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),R.exports.q=E},37865:function(R,E,e){var w=e(90386),k=Object.keys||function(n){var a=[];for(var s in n)a.push(s);return a};R.exports=t;var i=e(40410),_=e(37493);e(42018)(t,i);for(var y=k(_.prototype),h=0;h<y.length;h++){var l=y[h];t.prototype[l]||(t.prototype[l]=_.prototype[l])}function t(n){if(!(this instanceof t))return new t(n);i.call(this,n),_.call(this,n),this.allowHalfOpen=!0,n&&(n.readable===!1&&(this.readable=!1),n.writable===!1&&(this.writable=!1),n.allowHalfOpen===!1&&(this.allowHalfOpen=!1,this.once("end",o)))}function o(){this._writableState.ended||w.nextTick(r,this)}function r(n){n.end()}Object.defineProperty(t.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(t.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(t.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(t.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState!==void 0&&this._writableState!==void 0&&this._readableState.destroyed&&this._writableState.destroyed},set:function(n){this._readableState!==void 0&&this._writableState!==void 0&&(this._readableState.destroyed=n,this._writableState.destroyed=n)}})},66897:function(R,E,e){R.exports=k;var w=e(74308);function k(i){if(!(this instanceof k))return new k(i);w.call(this,i)}e(42018)(k,w),k.prototype._transform=function(i,_,y){y(null,i)}},40410:function(R,E,e){var w,k=e(90386);R.exports=T,T.ReadableState=x,e(15398).EventEmitter;var i,_=function(te,J){return te.listeners(J).length},y=e(71405),h=e(12856).Buffer,l=e.g.Uint8Array||function(){},t=e(40964);i=t&&t.debuglog?t.debuglog("stream"):function(){};var o,r,n,a=e(31125),s=e(65756),u=e(56306).getHighWaterMark,p=e(74322).q,c=p.ERR_INVALID_ARG_TYPE,b=p.ERR_STREAM_PUSH_AFTER_EOF,g=p.ERR_METHOD_NOT_IMPLEMENTED,f=p.ERR_STREAM_UNSHIFT_AFTER_END_EVENT;e(42018)(T,y);var v=s.errorOrDestroy,m=["error","close","destroy","pause","resume"];function x(te,J,X){w=w||e(37865),te=te||{},typeof X!="boolean"&&(X=J instanceof w),this.objectMode=!!te.objectMode,X&&(this.objectMode=this.objectMode||!!te.readableObjectMode),this.highWaterMark=u(this,te,"readableHighWaterMark",X),this.buffer=new a,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=te.emitClose!==!1,this.autoDestroy=!!te.autoDestroy,this.destroyed=!1,this.defaultEncoding=te.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,te.encoding&&(o||(o=e(68019).s),this.decoder=new o(te.encoding),this.encoding=te.encoding)}function T(te){if(w=w||e(37865),!(this instanceof T))return new T(te);var J=this instanceof w;this._readableState=new x(te,this,J),this.readable=!0,te&&(typeof te.read=="function"&&(this._read=te.read),typeof te.destroy=="function"&&(this._destroy=te.destroy)),y.call(this)}function d(te,J,X,ee,re){i("readableAddChunk",J);var oe,ue=te._readableState;if(J===null)ue.reading=!1,function(ce,de){if(i("onEofChunk"),!de.ended){if(de.decoder){var me=de.decoder.end();me&&me.length&&(de.buffer.push(me),de.length+=de.objectMode?1:me.length)}de.ended=!0,de.sync?P(ce):(de.needReadable=!1,de.emittedReadable||(de.emittedReadable=!0,O(ce)))}}(te,ue);else if(re||(oe=function(ce,de){var me,_e;return _e=de,h.isBuffer(_e)||_e instanceof l||typeof de=="string"||de===void 0||ce.objectMode||(me=new c("chunk",["string","Buffer","Uint8Array"],de)),me}(ue,J)),oe)v(te,oe);else if(ue.objectMode||J&&J.length>0)if(typeof J=="string"||ue.objectMode||Object.getPrototypeOf(J)===h.prototype||(J=function(ce){return h.from(ce)}(J)),ee)ue.endEmitted?v(te,new f):M(te,ue,J,!0);else if(ue.ended)v(te,new b);else{if(ue.destroyed)return!1;ue.reading=!1,ue.decoder&&!X?(J=ue.decoder.write(J),ue.objectMode||J.length!==0?M(te,ue,J,!1):z(te,ue)):M(te,ue,J,!1)}else ee||(ue.reading=!1,z(te,ue));return!ue.ended&&(ue.length<ue.highWaterMark||ue.length===0)}function M(te,J,X,ee){J.flowing&&J.length===0&&!J.sync?(J.awaitDrain=0,te.emit("data",X)):(J.length+=J.objectMode?1:X.length,ee?J.buffer.unshift(X):J.buffer.push(X),J.needReadable&&P(te)),z(te,J)}Object.defineProperty(T.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState!==void 0&&this._readableState.destroyed},set:function(te){this._readableState&&(this._readableState.destroyed=te)}}),T.prototype.destroy=s.destroy,T.prototype._undestroy=s.undestroy,T.prototype._destroy=function(te,J){J(te)},T.prototype.push=function(te,J){var X,ee=this._readableState;return ee.objectMode?X=!0:typeof te=="string"&&((J=J||ee.defaultEncoding)!==ee.encoding&&(te=h.from(te,J),J=""),X=!0),d(this,te,J,!1,X)},T.prototype.unshift=function(te){return d(this,te,null,!0,!1)},T.prototype.isPaused=function(){return this._readableState.flowing===!1},T.prototype.setEncoding=function(te){o||(o=e(68019).s);var J=new o(te);this._readableState.decoder=J,this._readableState.encoding=this._readableState.decoder.encoding;for(var X=this._readableState.buffer.head,ee="";X!==null;)ee+=J.write(X.data),X=X.next;return this._readableState.buffer.clear(),ee!==""&&this._readableState.buffer.push(ee),this._readableState.length=ee.length,this};var A=1073741824;function C(te,J){return te<=0||J.length===0&&J.ended?0:J.objectMode?1:te!=te?J.flowing&&J.length?J.buffer.head.data.length:J.length:(te>J.highWaterMark&&(J.highWaterMark=function(X){return X>=A?X=A:(X--,X|=X>>>1,X|=X>>>2,X|=X>>>4,X|=X>>>8,X|=X>>>16,X++),X}(te)),te<=J.length?te:J.ended?J.length:(J.needReadable=!0,0))}function P(te){var J=te._readableState;i("emitReadable",J.needReadable,J.emittedReadable),J.needReadable=!1,J.emittedReadable||(i("emitReadable",J.flowing),J.emittedReadable=!0,k.nextTick(O,te))}function O(te){var J=te._readableState;i("emitReadable_",J.destroyed,J.length,J.ended),J.destroyed||!J.length&&!J.ended||(te.emit("readable"),J.emittedReadable=!1),J.needReadable=!J.flowing&&!J.ended&&J.length<=J.highWaterMark,V(te)}function z(te,J){J.readingMore||(J.readingMore=!0,k.nextTick(B,te,J))}function B(te,J){for(;!J.reading&&!J.ended&&(J.length<J.highWaterMark||J.flowing&&J.length===0);){var X=J.length;if(i("maybeReadMore read 0"),te.read(0),X===J.length)break}J.readingMore=!1}function Y(te){var J=te._readableState;J.readableListening=te.listenerCount("readable")>0,J.resumeScheduled&&!J.paused?J.flowing=!0:te.listenerCount("data")>0&&te.resume()}function D(te){i("readable nexttick read 0"),te.read(0)}function G(te,J){i("resume",J.reading),J.reading||te.read(0),J.resumeScheduled=!1,te.emit("resume"),V(te),J.flowing&&!J.reading&&te.read(0)}function V(te){var J=te._readableState;for(i("flow",J.flowing);J.flowing&&te.read()!==null;);}function j(te,J){return J.length===0?null:(J.objectMode?X=J.buffer.shift():!te||te>=J.length?(X=J.decoder?J.buffer.join(""):J.buffer.length===1?J.buffer.first():J.buffer.concat(J.length),J.buffer.clear()):X=J.buffer.consume(te,J.decoder),X);var X}function W(te){var J=te._readableState;i("endReadable",J.endEmitted),J.endEmitted||(J.ended=!0,k.nextTick(Z,J,te))}function Z(te,J){if(i("endReadableNT",te.endEmitted,te.length),!te.endEmitted&&te.length===0&&(te.endEmitted=!0,J.readable=!1,J.emit("end"),te.autoDestroy)){var X=J._writableState;(!X||X.autoDestroy&&X.finished)&&J.destroy()}}function ie(te,J){for(var X=0,ee=te.length;X<ee;X++)if(te[X]===J)return X;return-1}T.prototype.read=function(te){i("read",te),te=parseInt(te,10);var J=this._readableState,X=te;if(te!==0&&(J.emittedReadable=!1),te===0&&J.needReadable&&((J.highWaterMark!==0?J.length>=J.highWaterMark:J.length>0)||J.ended))return i("read: emitReadable",J.length,J.ended),J.length===0&&J.ended?W(this):P(this),null;if((te=C(te,J))===0&&J.ended)return J.length===0&&W(this),null;var ee,re=J.needReadable;return i("need readable",re),(J.length===0||J.length-te<J.highWaterMark)&&i("length less than watermark",re=!0),J.ended||J.reading?i("reading or ended",re=!1):re&&(i("do read"),J.reading=!0,J.sync=!0,J.length===0&&(J.needReadable=!0),this._read(J.highWaterMark),J.sync=!1,J.reading||(te=C(X,J))),(ee=te>0?j(te,J):null)===null?(J.needReadable=J.length<=J.highWaterMark,te=0):(J.length-=te,J.awaitDrain=0),J.length===0&&(J.ended||(J.needReadable=!0),X!==te&&J.ended&&W(this)),ee!==null&&this.emit("data",ee),ee},T.prototype._read=function(te){v(this,new g("_read()"))},T.prototype.pipe=function(te,J){var X=this,ee=this._readableState;switch(ee.pipesCount){case 0:ee.pipes=te;break;case 1:ee.pipes=[ee.pipes,te];break;default:ee.pipes.push(te)}ee.pipesCount+=1,i("pipe count=%d opts=%j",ee.pipesCount,J);var re=J&&J.end===!1||te===k.stdout||te===k.stderr?we:oe;function oe(){i("onend"),te.end()}ee.endEmitted?k.nextTick(re):X.once("end",re),te.on("unpipe",function xe(De,Ee){i("onunpipe"),De===X&&Ee&&Ee.hasUnpiped===!1&&(Ee.hasUnpiped=!0,i("cleanup"),te.removeListener("close",_e),te.removeListener("finish",Se),te.removeListener("drain",ue),te.removeListener("error",me),te.removeListener("unpipe",xe),X.removeListener("end",oe),X.removeListener("end",we),X.removeListener("data",de),ce=!0,!ee.awaitDrain||te._writableState&&!te._writableState.needDrain||ue())});var ue=function(xe){return function(){var De=xe._readableState;i("pipeOnDrain",De.awaitDrain),De.awaitDrain&&De.awaitDrain--,De.awaitDrain===0&&_(xe,"data")&&(De.flowing=!0,V(xe))}}(X);te.on("drain",ue);var ce=!1;function de(xe){i("ondata");var De=te.write(xe);i("dest.write",De),De===!1&&((ee.pipesCount===1&&ee.pipes===te||ee.pipesCount>1&&ie(ee.pipes,te)!==-1)&&!ce&&(i("false write response, pause",ee.awaitDrain),ee.awaitDrain++),X.pause())}function me(xe){i("onerror",xe),we(),te.removeListener("error",me),_(te,"error")===0&&v(te,xe)}function _e(){te.removeListener("finish",Se),we()}function Se(){i("onfinish"),te.removeListener("close",_e),we()}function we(){i("unpipe"),X.unpipe(te)}return X.on("data",de),function(xe,De,Ee){if(typeof xe.prependListener=="function")return xe.prependListener(De,Ee);xe._events&&xe._events[De]?Array.isArray(xe._events[De])?xe._events[De].unshift(Ee):xe._events[De]=[Ee,xe._events[De]]:xe.on(De,Ee)}(te,"error",me),te.once("close",_e),te.once("finish",Se),te.emit("pipe",X),ee.flowing||(i("pipe resume"),X.resume()),te},T.prototype.unpipe=function(te){var J=this._readableState,X={hasUnpiped:!1};if(J.pipesCount===0)return this;if(J.pipesCount===1)return te&&te!==J.pipes||(te||(te=J.pipes),J.pipes=null,J.pipesCount=0,J.flowing=!1,te&&te.emit("unpipe",this,X)),this;if(!te){var ee=J.pipes,re=J.pipesCount;J.pipes=null,J.pipesCount=0,J.flowing=!1;for(var oe=0;oe<re;oe++)ee[oe].emit("unpipe",this,{hasUnpiped:!1});return this}var ue=ie(J.pipes,te);return ue===-1||(J.pipes.splice(ue,1),J.pipesCount-=1,J.pipesCount===1&&(J.pipes=J.pipes[0]),te.emit("unpipe",this,X)),this},T.prototype.on=function(te,J){var X=y.prototype.on.call(this,te,J),ee=this._readableState;return te==="data"?(ee.readableListening=this.listenerCount("readable")>0,ee.flowing!==!1&&this.resume()):te==="readable"&&(ee.endEmitted||ee.readableListening||(ee.readableListening=ee.needReadable=!0,ee.flowing=!1,ee.emittedReadable=!1,i("on readable",ee.length,ee.reading),ee.length?P(this):ee.reading||k.nextTick(D,this))),X},T.prototype.addListener=T.prototype.on,T.prototype.removeListener=function(te,J){var X=y.prototype.removeListener.call(this,te,J);return te==="readable"&&k.nextTick(Y,this),X},T.prototype.removeAllListeners=function(te){var J=y.prototype.removeAllListeners.apply(this,arguments);return te!=="readable"&&te!==void 0||k.nextTick(Y,this),J},T.prototype.resume=function(){var te=this._readableState;return te.flowing||(i("resume"),te.flowing=!te.readableListening,function(J,X){X.resumeScheduled||(X.resumeScheduled=!0,k.nextTick(G,J,X))}(this,te)),te.paused=!1,this},T.prototype.pause=function(){return i("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(i("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this},T.prototype.wrap=function(te){var J=this,X=this._readableState,ee=!1;for(var re in te.on("end",function(){if(i("wrapped end"),X.decoder&&!X.ended){var ue=X.decoder.end();ue&&ue.length&&J.push(ue)}J.push(null)}),te.on("data",function(ue){i("wrapped data"),X.decoder&&(ue=X.decoder.write(ue)),X.objectMode&&ue==null||(X.objectMode||ue&&ue.length)&&(J.push(ue)||(ee=!0,te.pause()))}),te)this[re]===void 0&&typeof te[re]=="function"&&(this[re]=function(ue){return function(){return te[ue].apply(te,arguments)}}(re));for(var oe=0;oe<m.length;oe++)te.on(m[oe],this.emit.bind(this,m[oe]));return this._read=function(ue){i("wrapped _read",ue),ee&&(ee=!1,te.resume())},this},typeof Symbol=="function"&&(T.prototype[Symbol.asyncIterator]=function(){return r===void 0&&(r=e(68221)),r(this)}),Object.defineProperty(T.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),Object.defineProperty(T.prototype,"readableBuffer",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}}),Object.defineProperty(T.prototype,"readableFlowing",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(te){this._readableState&&(this._readableState.flowing=te)}}),T._fromList=j,Object.defineProperty(T.prototype,"readableLength",{enumerable:!1,get:function(){return this._readableState.length}}),typeof Symbol=="function"&&(T.from=function(te,J){return n===void 0&&(n=e(31748)),n(T,te,J)})},74308:function(R,E,e){R.exports=t;var w=e(74322).q,k=w.ERR_METHOD_NOT_IMPLEMENTED,i=w.ERR_MULTIPLE_CALLBACK,_=w.ERR_TRANSFORM_ALREADY_TRANSFORMING,y=w.ERR_TRANSFORM_WITH_LENGTH_0,h=e(37865);function l(n,a){var s=this._transformState;s.transforming=!1;var u=s.writecb;if(u===null)return this.emit("error",new i);s.writechunk=null,s.writecb=null,a!=null&&this.push(a),u(n);var p=this._readableState;p.reading=!1,(p.needReadable||p.length<p.highWaterMark)&&this._read(p.highWaterMark)}function t(n){if(!(this instanceof t))return new t(n);h.call(this,n),this._transformState={afterTransform:l.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,n&&(typeof n.transform=="function"&&(this._transform=n.transform),typeof n.flush=="function"&&(this._flush=n.flush)),this.on("prefinish",o)}function o(){var n=this;typeof this._flush!="function"||this._readableState.destroyed?r(this,null,null):this._flush(function(a,s){r(n,a,s)})}function r(n,a,s){if(a)return n.emit("error",a);if(s!=null&&n.push(s),n._writableState.length)throw new y;if(n._transformState.transforming)throw new _;return n.push(null)}e(42018)(t,h),t.prototype.push=function(n,a){return this._transformState.needTransform=!1,h.prototype.push.call(this,n,a)},t.prototype._transform=function(n,a,s){s(new k("_transform()"))},t.prototype._write=function(n,a,s){var u=this._transformState;if(u.writecb=s,u.writechunk=n,u.writeencoding=a,!u.transforming){var p=this._readableState;(u.needTransform||p.needReadable||p.length<p.highWaterMark)&&this._read(p.highWaterMark)}},t.prototype._read=function(n){var a=this._transformState;a.writechunk===null||a.transforming?a.needTransform=!0:(a.transforming=!0,this._transform(a.writechunk,a.writeencoding,a.afterTransform))},t.prototype._destroy=function(n,a){h.prototype._destroy.call(this,n,function(s){a(s)})}},37493:function(R,E,e){var w,k=e(90386);function i(z){var B=this;this.next=null,this.entry=null,this.finish=function(){(function(Y,D,G){var V=Y.entry;for(Y.entry=null;V;){var j=V.callback;D.pendingcb--,j(void 0),V=V.next}D.corkedRequestsFree.next=Y})(B,z)}}R.exports=T,T.WritableState=x;var _,y={deprecate:e(20588)},h=e(71405),l=e(12856).Buffer,t=e.g.Uint8Array||function(){},o=e(65756),r=e(56306).getHighWaterMark,n=e(74322).q,a=n.ERR_INVALID_ARG_TYPE,s=n.ERR_METHOD_NOT_IMPLEMENTED,u=n.ERR_MULTIPLE_CALLBACK,p=n.ERR_STREAM_CANNOT_PIPE,c=n.ERR_STREAM_DESTROYED,b=n.ERR_STREAM_NULL_VALUES,g=n.ERR_STREAM_WRITE_AFTER_END,f=n.ERR_UNKNOWN_ENCODING,v=o.errorOrDestroy;function m(){}function x(z,B,Y){w=w||e(37865),z=z||{},typeof Y!="boolean"&&(Y=B instanceof w),this.objectMode=!!z.objectMode,Y&&(this.objectMode=this.objectMode||!!z.writableObjectMode),this.highWaterMark=r(this,z,"writableHighWaterMark",Y),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var D=z.decodeStrings===!1;this.decodeStrings=!D,this.defaultEncoding=z.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(G){(function(V,j){var W=V._writableState,Z=W.sync,ie=W.writecb;if(typeof ie!="function")throw new u;if(function(J){J.writing=!1,J.writecb=null,J.length-=J.writelen,J.writelen=0}(W),j)(function(J,X,ee,re,oe){--X.pendingcb,ee?(k.nextTick(oe,re),k.nextTick(O,J,X),J._writableState.errorEmitted=!0,v(J,re)):(oe(re),J._writableState.errorEmitted=!0,v(J,re),O(J,X))})(V,W,Z,j,ie);else{var te=C(W)||V.destroyed;te||W.corked||W.bufferProcessing||!W.bufferedRequest||A(V,W),Z?k.nextTick(M,V,W,te,ie):M(V,W,te,ie)}})(B,G)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=z.emitClose!==!1,this.autoDestroy=!!z.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new i(this)}function T(z){var B=this instanceof(w=w||e(37865));if(!B&&!_.call(T,this))return new T(z);this._writableState=new x(z,this,B),this.writable=!0,z&&(typeof z.write=="function"&&(this._write=z.write),typeof z.writev=="function"&&(this._writev=z.writev),typeof z.destroy=="function"&&(this._destroy=z.destroy),typeof z.final=="function"&&(this._final=z.final)),h.call(this)}function d(z,B,Y,D,G,V,j){B.writelen=D,B.writecb=j,B.writing=!0,B.sync=!0,B.destroyed?B.onwrite(new c("write")):Y?z._writev(G,B.onwrite):z._write(G,V,B.onwrite),B.sync=!1}function M(z,B,Y,D){Y||function(G,V){V.length===0&&V.needDrain&&(V.needDrain=!1,G.emit("drain"))}(z,B),B.pendingcb--,D(),O(z,B)}function A(z,B){B.bufferProcessing=!0;var Y=B.bufferedRequest;if(z._writev&&Y&&Y.next){var D=B.bufferedRequestCount,G=new Array(D),V=B.corkedRequestsFree;V.entry=Y;for(var j=0,W=!0;Y;)G[j]=Y,Y.isBuf||(W=!1),Y=Y.next,j+=1;G.allBuffers=W,d(z,B,!0,B.length,G,"",V.finish),B.pendingcb++,B.lastBufferedRequest=null,V.next?(B.corkedRequestsFree=V.next,V.next=null):B.corkedRequestsFree=new i(B),B.bufferedRequestCount=0}else{for(;Y;){var Z=Y.chunk,ie=Y.encoding,te=Y.callback;if(d(z,B,!1,B.objectMode?1:Z.length,Z,ie,te),Y=Y.next,B.bufferedRequestCount--,B.writing)break}Y===null&&(B.lastBufferedRequest=null)}B.bufferedRequest=Y,B.bufferProcessing=!1}function C(z){return z.ending&&z.length===0&&z.bufferedRequest===null&&!z.finished&&!z.writing}function P(z,B){z._final(function(Y){B.pendingcb--,Y&&v(z,Y),B.prefinished=!0,z.emit("prefinish"),O(z,B)})}function O(z,B){var Y=C(B);if(Y&&(function(G,V){V.prefinished||V.finalCalled||(typeof G._final!="function"||V.destroyed?(V.prefinished=!0,G.emit("prefinish")):(V.pendingcb++,V.finalCalled=!0,k.nextTick(P,G,V)))}(z,B),B.pendingcb===0&&(B.finished=!0,z.emit("finish"),B.autoDestroy))){var D=z._readableState;(!D||D.autoDestroy&&D.endEmitted)&&z.destroy()}return Y}e(42018)(T,h),x.prototype.getBuffer=function(){for(var z=this.bufferedRequest,B=[];z;)B.push(z),z=z.next;return B},function(){try{Object.defineProperty(x.prototype,"buffer",{get:y.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}}(),typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(_=Function.prototype[Symbol.hasInstance],Object.defineProperty(T,Symbol.hasInstance,{value:function(z){return!!_.call(this,z)||this===T&&z&&z._writableState instanceof x}})):_=function(z){return z instanceof this},T.prototype.pipe=function(){v(this,new p)},T.prototype.write=function(z,B,Y){var D,G=this._writableState,V=!1,j=!G.objectMode&&(D=z,l.isBuffer(D)||D instanceof t);return j&&!l.isBuffer(z)&&(z=function(W){return l.from(W)}(z)),typeof B=="function"&&(Y=B,B=null),j?B="buffer":B||(B=G.defaultEncoding),typeof Y!="function"&&(Y=m),G.ending?function(W,Z){var ie=new g;v(W,ie),k.nextTick(Z,ie)}(this,Y):(j||function(W,Z,ie,te){var J;return ie===null?J=new b:typeof ie=="string"||Z.objectMode||(J=new a("chunk",["string","Buffer"],ie)),!J||(v(W,J),k.nextTick(te,J),!1)}(this,G,z,Y))&&(G.pendingcb++,V=function(W,Z,ie,te,J,X){if(!ie){var ee=function(ce,de,me){return ce.objectMode||ce.decodeStrings===!1||typeof de!="string"||(de=l.from(de,me)),de}(Z,te,J);te!==ee&&(ie=!0,J="buffer",te=ee)}var re=Z.objectMode?1:te.length;Z.length+=re;var oe=Z.length<Z.highWaterMark;if(oe||(Z.needDrain=!0),Z.writing||Z.corked){var ue=Z.lastBufferedRequest;Z.lastBufferedRequest={chunk:te,encoding:J,isBuf:ie,callback:X,next:null},ue?ue.next=Z.lastBufferedRequest:Z.bufferedRequest=Z.lastBufferedRequest,Z.bufferedRequestCount+=1}else d(W,Z,!1,re,te,J,X);return oe}(this,G,j,z,B,Y)),V},T.prototype.cork=function(){this._writableState.corked++},T.prototype.uncork=function(){var z=this._writableState;z.corked&&(z.corked--,z.writing||z.corked||z.bufferProcessing||!z.bufferedRequest||A(this,z))},T.prototype.setDefaultEncoding=function(z){if(typeof z=="string"&&(z=z.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((z+"").toLowerCase())>-1))throw new f(z);return this._writableState.defaultEncoding=z,this},Object.defineProperty(T.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(T.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),T.prototype._write=function(z,B,Y){Y(new s("_write()"))},T.prototype._writev=null,T.prototype.end=function(z,B,Y){var D=this._writableState;return typeof z=="function"?(Y=z,z=null,B=null):typeof B=="function"&&(Y=B,B=null),z!=null&&this.write(z,B),D.corked&&(D.corked=1,this.uncork()),D.ending||function(G,V,j){V.ending=!0,O(G,V),j&&(V.finished?k.nextTick(j):G.once("finish",j)),V.ended=!0,G.writable=!1}(this,D,Y),this},Object.defineProperty(T.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}}),Object.defineProperty(T.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState!==void 0&&this._writableState.destroyed},set:function(z){this._writableState&&(this._writableState.destroyed=z)}}),T.prototype.destroy=o.destroy,T.prototype._undestroy=o.undestroy,T.prototype._destroy=function(z,B){B(z)}},68221:function(R,E,e){var w,k=e(90386);function i(b,g,f){return g in b?Object.defineProperty(b,g,{value:f,enumerable:!0,configurable:!0,writable:!0}):b[g]=f,b}var _=e(12726),y=Symbol("lastResolve"),h=Symbol("lastReject"),l=Symbol("error"),t=Symbol("ended"),o=Symbol("lastPromise"),r=Symbol("handlePromise"),n=Symbol("stream");function a(b,g){return{value:b,done:g}}function s(b){var g=b[y];if(g!==null){var f=b[n].read();f!==null&&(b[o]=null,b[y]=null,b[h]=null,g(a(f,!1)))}}function u(b){k.nextTick(s,b)}var p=Object.getPrototypeOf(function(){}),c=Object.setPrototypeOf((i(w={get stream(){return this[n]},next:function(){var b=this,g=this[l];if(g!==null)return Promise.reject(g);if(this[t])return Promise.resolve(a(void 0,!0));if(this[n].destroyed)return new Promise(function(x,T){k.nextTick(function(){b[l]?T(b[l]):x(a(void 0,!0))})});var f,v=this[o];if(v)f=new Promise(function(x,T){return function(d,M){x.then(function(){T[t]?d(a(void 0,!0)):T[r](d,M)},M)}}(v,this));else{var m=this[n].read();if(m!==null)return Promise.resolve(a(m,!1));f=new Promise(this[r])}return this[o]=f,f}},Symbol.asyncIterator,function(){return this}),i(w,"return",function(){var b=this;return new Promise(function(g,f){b[n].destroy(null,function(v){v?f(v):g(a(void 0,!0))})})}),w),p);R.exports=function(b){var g,f=Object.create(c,(i(g={},n,{value:b,writable:!0}),i(g,y,{value:null,writable:!0}),i(g,h,{value:null,writable:!0}),i(g,l,{value:null,writable:!0}),i(g,t,{value:b._readableState.endEmitted,writable:!0}),i(g,r,{value:function(v,m){var x=f[n].read();x?(f[o]=null,f[y]=null,f[h]=null,v(a(x,!1))):(f[y]=v,f[h]=m)},writable:!0}),g));return f[o]=null,_(b,function(v){if(v&&v.code!=="ERR_STREAM_PREMATURE_CLOSE"){var m=f[h];return m!==null&&(f[o]=null,f[y]=null,f[h]=null,m(v)),void(f[l]=v)}var x=f[y];x!==null&&(f[o]=null,f[y]=null,f[h]=null,x(a(void 0,!0))),f[t]=!0}),b.on("readable",u.bind(null,f)),f}},31125:function(R,E,e){function w(l,t){var o=Object.keys(l);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(l);t&&(r=r.filter(function(n){return Object.getOwnPropertyDescriptor(l,n).enumerable})),o.push.apply(o,r)}return o}function k(l,t,o){return t in l?Object.defineProperty(l,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):l[t]=o,l}function i(l,t){for(var o=0;o<t.length;o++){var r=t[o];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(l,r.key,r)}}var _=e(12856).Buffer,y=e(69862).inspect,h=y&&y.custom||"inspect";R.exports=function(){function l(){(function(r,n){if(!(r instanceof n))throw new TypeError("Cannot call a class as a function")})(this,l),this.head=null,this.tail=null,this.length=0}var t,o;return t=l,o=[{key:"push",value:function(r){var n={data:r,next:null};this.length>0?this.tail.next=n:this.head=n,this.tail=n,++this.length}},{key:"unshift",value:function(r){var n={data:r,next:this.head};this.length===0&&(this.tail=n),this.head=n,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var n=this.head,a=""+n.data;n=n.next;)a+=r+n.data;return a}},{key:"concat",value:function(r){if(this.length===0)return _.alloc(0);for(var n,a,s,u=_.allocUnsafe(r>>>0),p=this.head,c=0;p;)n=p.data,a=u,s=c,_.prototype.copy.call(n,a,s),c+=p.data.length,p=p.next;return u}},{key:"consume",value:function(r,n){var a;return r<this.head.data.length?(a=this.head.data.slice(0,r),this.head.data=this.head.data.slice(r)):a=r===this.head.data.length?this.shift():n?this._getString(r):this._getBuffer(r),a}},{key:"first",value:function(){return this.head.data}},{key:"_getString",value:function(r){var n=this.head,a=1,s=n.data;for(r-=s.length;n=n.next;){var u=n.data,p=r>u.length?u.length:r;if(p===u.length?s+=u:s+=u.slice(0,r),(r-=p)==0){p===u.length?(++a,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=u.slice(p));break}++a}return this.length-=a,s}},{key:"_getBuffer",value:function(r){var n=_.allocUnsafe(r),a=this.head,s=1;for(a.data.copy(n),r-=a.data.length;a=a.next;){var u=a.data,p=r>u.length?u.length:r;if(u.copy(n,n.length-r,0,p),(r-=p)==0){p===u.length?(++s,a.next?this.head=a.next:this.head=this.tail=null):(this.head=a,a.data=u.slice(p));break}++s}return this.length-=s,n}},{key:h,value:function(r,n){return y(this,function(a){for(var s=1;s<arguments.length;s++){var u=arguments[s]!=null?arguments[s]:{};s%2?w(Object(u),!0).forEach(function(p){k(a,p,u[p])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(u)):w(Object(u)).forEach(function(p){Object.defineProperty(a,p,Object.getOwnPropertyDescriptor(u,p))})}return a}({},n,{depth:0,customInspect:!1}))}}],o&&i(t.prototype,o),l}()},65756:function(R,E,e){var w=e(90386);function k(y,h){_(y,h),i(y)}function i(y){y._writableState&&!y._writableState.emitClose||y._readableState&&!y._readableState.emitClose||y.emit("close")}function _(y,h){y.emit("error",h)}R.exports={destroy:function(y,h){var l=this,t=this._readableState&&this._readableState.destroyed,o=this._writableState&&this._writableState.destroyed;return t||o?(h?h(y):y&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,w.nextTick(_,this,y)):w.nextTick(_,this,y)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(y||null,function(r){!h&&r?l._writableState?l._writableState.errorEmitted?w.nextTick(i,l):(l._writableState.errorEmitted=!0,w.nextTick(k,l,r)):w.nextTick(k,l,r):h?(w.nextTick(i,l),h(r)):w.nextTick(i,l)}),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)},errorOrDestroy:function(y,h){var l=y._readableState,t=y._writableState;l&&l.autoDestroy||t&&t.autoDestroy?y.destroy(h):y.emit("error",h)}}},12726:function(R,E,e){var w=e(74322).q.ERR_STREAM_PREMATURE_CLOSE;function k(){}R.exports=function i(_,y,h){if(typeof y=="function")return i(_,null,y);y||(y={}),h=function(b){var g=!1;return function(){if(!g){g=!0;for(var f=arguments.length,v=new Array(f),m=0;m<f;m++)v[m]=arguments[m];b.apply(this,v)}}}(h||k);var l=y.readable||y.readable!==!1&&_.readable,t=y.writable||y.writable!==!1&&_.writable,o=function(){_.writable||n()},r=_._writableState&&_._writableState.finished,n=function(){t=!1,r=!0,l||h.call(_)},a=_._readableState&&_._readableState.endEmitted,s=function(){l=!1,a=!0,t||h.call(_)},u=function(b){h.call(_,b)},p=function(){var b;return l&&!a?(_._readableState&&_._readableState.ended||(b=new w),h.call(_,b)):t&&!r?(_._writableState&&_._writableState.ended||(b=new w),h.call(_,b)):void 0},c=function(){_.req.on("finish",n)};return function(b){return b.setHeader&&typeof b.abort=="function"}(_)?(_.on("complete",n),_.on("abort",p),_.req?c():_.on("request",c)):t&&!_._writableState&&(_.on("end",o),_.on("close",o)),_.on("end",s),_.on("finish",n),y.error!==!1&&_.on("error",u),_.on("close",p),function(){_.removeListener("complete",n),_.removeListener("abort",p),_.removeListener("request",c),_.req&&_.req.removeListener("finish",n),_.removeListener("end",o),_.removeListener("close",o),_.removeListener("finish",n),_.removeListener("end",s),_.removeListener("error",u),_.removeListener("close",p)}}},31748:function(R){R.exports=function(){throw new Error("Readable.from is not available in the browser")}},10168:function(R,E,e){var w,k=e(74322).q,i=k.ERR_MISSING_ARGS,_=k.ERR_STREAM_DESTROYED;function y(t){if(t)throw t}function h(t){t()}function l(t,o){return t.pipe(o)}R.exports=function(){for(var t=arguments.length,o=new Array(t),r=0;r<t;r++)o[r]=arguments[r];var n,a=function(u){return u.length?typeof u[u.length-1]!="function"?y:u.pop():y}(o);if(Array.isArray(o[0])&&(o=o[0]),o.length<2)throw new i("streams");var s=o.map(function(u,p){var c=p<o.length-1;return function(b,g,f,v){v=function(T){var d=!1;return function(){d||(d=!0,T.apply(void 0,arguments))}}(v);var m=!1;b.on("close",function(){m=!0}),w===void 0&&(w=e(12726)),w(b,{readable:g,writable:f},function(T){if(T)return v(T);m=!0,v()});var x=!1;return function(T){if(!m&&!x)return x=!0,function(d){return d.setHeader&&typeof d.abort=="function"}(b)?b.abort():typeof b.destroy=="function"?b.destroy():void v(T||new _("pipe"))}}(u,c,p>0,function(b){n||(n=b),b&&s.forEach(h),c||(s.forEach(h),a(n))})});return o.reduce(l)}},56306:function(R,E,e){var w=e(74322).q.ERR_INVALID_OPT_VALUE;R.exports={getHighWaterMark:function(k,i,_,y){var h=function(l,t,o){return l.highWaterMark!=null?l.highWaterMark:t?l[o]:null}(i,y,_);if(h!=null){if(!isFinite(h)||Math.floor(h)!==h||h<0)throw new w(y?_:"highWaterMark",h);return Math.floor(h)}return k.objectMode?16:16384}}},71405:function(R,E,e){R.exports=e(15398).EventEmitter},68019:function(R,E,e){var w=e(71665).Buffer,k=w.isEncoding||function(a){switch((a=""+a)&&a.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function i(a){var s;switch(this.encoding=function(u){var p=function(c){if(!c)return"utf8";for(var b;;)switch(c){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return c;default:if(b)return;c=(""+c).toLowerCase(),b=!0}}(u);if(typeof p!="string"&&(w.isEncoding===k||!k(u)))throw new Error("Unknown encoding: "+u);return p||u}(a),this.encoding){case"utf16le":this.text=h,this.end=l,s=4;break;case"utf8":this.fillLast=y,s=4;break;case"base64":this.text=t,this.end=o,s=3;break;default:return this.write=r,void(this.end=n)}this.lastNeed=0,this.lastTotal=0,this.lastChar=w.allocUnsafe(s)}function _(a){return a<=127?0:a>>5==6?2:a>>4==14?3:a>>3==30?4:a>>6==2?-1:-2}function y(a){var s=this.lastTotal-this.lastNeed,u=function(p,c,b){if((192&c[0])!=128)return p.lastNeed=0,"<22>";if(p.lastNeed>1&&c.length>1){if((192&c[1])!=128)return p.lastNeed=1,"<22>";if(p.lastNeed>2&&c.length>2&&(192&c[2])!=128)return p.lastNeed=2,"<22>"}}(this,a);return u!==void 0?u:this.lastNeed<=a.length?(a.copy(this.lastChar,s,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(a.copy(this.lastChar,s,0,a.length),void(this.lastNeed-=a.length))}function h(a,s){if((a.length-s)%2==0){var u=a.toString("utf16le",s);if(u){var p=u.charCodeAt(u.length-1);if(p>=55296&&p<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=a[a.length-2],this.lastChar[1]=a[a.length-1],u.slice(0,-1)}return u}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=a[a.length-1],a.toString("utf16le",s,a.length-1)}function l(a){var s=a&&a.length?this.write(a):"";if(this.lastNeed){var u=this.lastTotal-this.lastNeed;return s+this.lastChar.toString("utf16le",0,u)}return s}function t(a,s){var u=(a.length-s)%3;return u===0?a.toString("base64",s):(this.lastNeed=3-u,this.lastTotal=3,u===1?this.lastChar[0]=a[a.length-1]:(this.lastChar[0]=a[a.length-2],this.lastChar[1]=a[a.length-1]),a.toString("base64",s,a.length-u))}function o(a){var s=a&&a.length?this.write(a):"";return this.lastNeed?s+this.lastChar.toString("base64",0,3-this.lastNeed):s}function r(a){return a.toString(this.encoding)}function n(a){return a&&a.length?this.write(a):""}E.s=i,i.prototype.write=function(a){if(a.length===0)return"";var s,u;if(this.lastNeed){if((s=this.fillLast(a))===void 0)return"";u=this.lastNeed,this.lastNeed=0}else u=0;return u<a.length?s?s+this.text(a,u):this.text(a,u):s||""},i.prototype.end=function(a){var s=a&&a.length?this.write(a):"";return this.lastNeed?s+"<22>":s},i.prototype.text=function(a,s){var u=function(c,b,g){var f=b.length-1;if(f<g)return 0;var v=_(b[f]);return v>=0?(v>0&&(c.lastNeed=v-1),v):--f<g||v===-2?0:(v=_(b[f]))>=0?(v>0&&(c.lastNeed=v-2),v):--f<g||v===-2?0:(v=_(b[f]))>=0?(v>0&&(v===2?v=0:c.lastNeed=v-3),v):0}(this,a,s);if(!this.lastNeed)return a.toString("utf8",s);this.lastTotal=u;var p=a.length-(u-this.lastNeed);return a.copy(this.lastChar,0,p),a.toString("utf8",s,p)},i.prototype.fillLast=function(a){if(this.lastNeed<=a.length)return a.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);a.copy(this.lastChar,this.lastTotal-this.lastNeed,0,a.length),this.lastNeed-=a.length}},90715:function(R,E,e){var w=e(32791),k=e(41633)("stream-parser");R.exports=function(c){var b=c&&typeof c._transform=="function",g=c&&typeof c._write=="function";if(!b&&!g)throw new Error("must pass a Writable or Transform stream in");k("extending Parser into stream"),c._bytes=t,c._skipBytes=o,b&&(c._passthrough=r),b?c._transform=a:c._write=n};var i=-1,_=0,y=1,h=2;function l(c){k("initializing parser stream"),c._parserBytesLeft=0,c._parserBuffers=[],c._parserBuffered=0,c._parserState=i,c._parserCallback=null,typeof c.push=="function"&&(c._parserOutput=c.push.bind(c)),c._parserInit=!0}function t(c,b){w(!this._parserCallback,'there is already a "callback" set!'),w(isFinite(c)&&c>0,'can only buffer a finite number of bytes > 0, got "'+c+'"'),this._parserInit||l(this),k("buffering %o bytes",c),this._parserBytesLeft=c,this._parserCallback=b,this._parserState=_}function o(c,b){w(!this._parserCallback,'there is already a "callback" set!'),w(c>0,'can only skip > 0 bytes, got "'+c+'"'),this._parserInit||l(this),k("skipping %o bytes",c),this._parserBytesLeft=c,this._parserCallback=b,this._parserState=y}function r(c,b){w(!this._parserCallback,'There is already a "callback" set!'),w(c>0,'can only pass through > 0 bytes, got "'+c+'"'),this._parserInit||l(this),k("passing through %o bytes",c),this._parserBytesLeft=c,this._parserCallback=b,this._parserState=h}function n(c,b,g){this._parserInit||l(this),k("write(%o bytes)",c.length),typeof b=="function"&&(g=b),u(this,c,null,g)}function a(c,b,g){this._parserInit||l(this),k("transform(%o bytes)",c.length),typeof b!="function"&&(b=this._parserOutput),u(this,c,b,g)}function s(c,b,g,f){if(c._parserBytesLeft-=b.length,k("%o bytes left for stream piece",c._parserBytesLeft),c._parserState===_?(c._parserBuffers.push(b),c._parserBuffered+=b.length):c._parserState===h&&g(b),c._parserBytesLeft!==0)return f;var v=c._parserCallback;if(v&&c._parserState===_&&c._parserBuffers.length>1&&(b=Buffer.concat(c._parserBuffers,c._parserBuffered)),c._parserState!==_&&(b=null),c._parserCallback=null,c._parserBuffered=0,c._parserState=i,c._parserBuffers.splice(0),v){var m=[];b&&m.push(b),g&&m.push(g);var x=v.length>m.length;x&&m.push(p(f));var T=v.apply(c,m);if(!x||f===T)return f}}var u=p(function c(b,g,f,v){return b._parserBytesLeft<=0?v(new Error("got data but not currently parsing anything")):g.length<=b._parserBytesLeft?function(){return s(b,g,f,v)}:function(){var m=g.slice(0,b._parserBytesLeft);return s(b,m,f,function(x){return x?v(x):g.length>m.length?function(){return c(b,g.slice(m.length),f,v)}:void 0})}});function p(c){return function(){for(var b=c.apply(this,arguments);typeof b=="function";)b=b();return b}}},41633:function(R,E,e){var w=e(90386);function k(){var i;try{i=E.storage.debug}catch{}return!i&&w!==void 0&&"env"in w&&(i=w.env.DEBUG),i}(E=R.exports=e(74469)).log=function(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)},E.formatArgs=function(i){var _=this.useColors;if(i[0]=(_?"%c":"")+this.namespace+(_?" %c":" ")+i[0]+(_?"%c ":" ")+"+"+E.humanize(this.diff),_){var y="color: "+this.color;i.splice(1,0,y,"color: inherit");var h=0,l=0;i[0].replace(/%[a-zA-Z%]/g,function(t){t!=="%%"&&(h++,t==="%c"&&(l=h))}),i.splice(l,0,y)}},E.save=function(i){try{i==null?E.storage.removeItem("debug"):E.storage.debug=i}catch{}},E.load=k,E.useColors=function(){return!(typeof window>"u"||!window.process||window.process.type!=="renderer")||typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},E.storage=typeof chrome<"u"&&chrome.storage!==void 0?chrome.storage.local:function(){try{return window.localStorage}catch{}}(),E.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"],E.formatters.j=function(i){try{return JSON.stringify(i)}catch(_){return"[UnexpectedJSONParseError]: "+_.message}},E.enable(k())},74469:function(R,E,e){var w;function k(i){function _(){if(_.enabled){var y=_,h=+new Date,l=h-(w||h);y.diff=l,y.prev=w,y.curr=h,w=h;for(var t=new Array(arguments.length),o=0;o<t.length;o++)t[o]=arguments[o];t[0]=E.coerce(t[0]),typeof t[0]!="string"&&t.unshift("%O");var r=0;t[0]=t[0].replace(/%([a-zA-Z%])/g,function(n,a){if(n==="%%")return n;r++;var s=E.formatters[a];if(typeof s=="function"){var u=t[r];n=s.call(y,u),t.splice(r,1),r--}return n}),E.formatArgs.call(y,t),(_.log||E.log||console.log.bind(console)).apply(y,t)}}return _.namespace=i,_.enabled=E.enabled(i),_.useColors=E.useColors(),_.color=function(y){var h,l=0;for(h in y)l=(l<<5)-l+y.charCodeAt(h),l|=0;return E.colors[Math.abs(l)%E.colors.length]}(i),typeof E.init=="function"&&E.init(_),_}(E=R.exports=k.debug=k.default=k).coerce=function(i){return i instanceof Error?i.stack||i.message:i},E.disable=function(){E.enable("")},E.enable=function(i){E.save(i),E.names=[],E.skips=[];for(var _=(typeof i=="string"?i:"").split(/[\s,]+/),y=_.length,h=0;h<y;h++)_[h]&&((i=_[h].replace(/\*/g,".*?"))[0]==="-"?E.skips.push(new RegExp("^"+i.substr(1)+"$")):E.names.push(new RegExp("^"+i+"$")))},E.enabled=function(i){var _,y;for(_=0,y=E.skips.length;_<y;_++)if(E.skips[_].test(i))return!1;for(_=0,y=E.names.length;_<y;_++)if(E.names[_].test(i))return!0;return!1},E.humanize=e(11375),E.names=[],E.skips=[],E.formatters={}},11375:function(R){var E=1e3,e=60*E,w=60*e,k=24*w;function i(_,y,h){if(!(_<y))return _<1.5*y?Math.floor(_/y)+" "+h:Math.ceil(_/y)+" "+h+"s"}R.exports=function(_,y){y=y||{};var h,l=typeof _;if(l==="string"&&_.length>0)return function(t){if(!((t=String(t)).length>100)){var o=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(t);if(o){var r=parseFloat(o[1]);switch((o[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*r;case"days":case"day":case"d":return r*k;case"hours":case"hour":case"hrs":case"hr":case"h":return r*w;case"minutes":case"minute":case"mins":case"min":case"m":return r*e;case"seconds":case"second":case"secs":case"sec":case"s":return r*E;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}(_);if(l==="number"&&isNaN(_)===!1)return y.long?i(h=_,k,"day")||i(h,w,"hour")||i(h,e,"minute")||i(h,E,"second")||h+" ms":function(t){return t>=k?Math.round(t/k)+"d":t>=w?Math.round(t/w)+"h":t>=e?Math.round(t/e)+"m":t>=E?Math.round(t/E)+"s":t+"ms"}(_);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(_))}},99011:function(R,E,e){var w=e(88641);R.exports=function(k,i,_){if(k==null)throw Error("First argument should be a string");if(i==null)throw Error("Separator should be a string or a RegExp");_?(typeof _=="string"||Array.isArray(_))&&(_={ignore:_}):_={},_.escape==null&&(_.escape=!0),_.ignore==null?_.ignore=["[]","()","{}","<>",'""',"''","``","“”","«»"]:(typeof _.ignore=="string"&&(_.ignore=[_.ignore]),_.ignore=_.ignore.map(function(n){return n.length===1&&(n+=n),n}));var y=w.parse(k,{flat:!0,brackets:_.ignore}),h=y[0].split(i);if(_.escape){for(var l=[],t=0;t<h.length;t++){var o=h[t],r=h[t+1];o[o.length-1]==="\\"&&o[o.length-2]!=="\\"?(l.push(o+i+r),t++):l.push(o)}h=l}for(t=0;t<h.length;t++)y[0]=h[t],h[t]=w.stringify(y,{flat:!0});return h}},68664:function(R){R.exports=function(E){for(var e=E.length,w=new Array(e),k=new Array(e),i=new Array(e),_=new Array(e),y=new Array(e),h=new Array(e),l=0;l<e;++l)w[l]=-1,k[l]=0,i[l]=!1,_[l]=0,y[l]=-1,h[l]=[];var t,o=0,r=[],n=[];function a(p){var c=[p],b=[p];for(w[p]=k[p]=o,i[p]=!0,o+=1;b.length>0;){p=b[b.length-1];var g=E[p];if(_[p]<g.length){for(var f=_[p];f<g.length;++f){var v=g[f];if(w[v]<0){w[v]=k[v]=o,i[v]=!0,o+=1,c.push(v),b.push(v);break}i[v]&&(k[p]=0|Math.min(k[p],k[v])),y[v]>=0&&h[p].push(y[v])}_[p]=f}else{if(k[p]===w[p]){var m=[],x=[],T=0;for(f=c.length-1;f>=0;--f){var d=c[f];if(i[d]=!1,m.push(d),x.push(h[d]),T+=h[d].length,y[d]=r.length,d===p){c.length=f;break}}r.push(m);var M=new Array(T);for(f=0;f<x.length;f++)for(var A=0;A<x[f].length;A++)M[--T]=x[f][A];n.push(M)}b.pop()}}}for(l=0;l<e;++l)w[l]<0&&a(l);for(l=0;l<n.length;l++){var s=n[l];if(s.length!==0){s.sort(function(p,c){return p-c}),t=[s[0]];for(var u=1;u<s.length;u++)s[u]!==s[u-1]&&t.push(s[u]);n[l]=t}}return{components:r,adjacencyList:n}}},7095:function(R,E,e){e.r(E);var w=2*Math.PI,k=function(y,h,l,t,o,r,n){var a=y.x,s=y.y;return{x:t*(a*=h)-o*(s*=l)+r,y:o*a+t*s+n}},i=function(y,h){var l=h===1.5707963267948966?.551915024494:h===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(h/4),t=Math.cos(y),o=Math.sin(y),r=Math.cos(y+h),n=Math.sin(y+h);return[{x:t-o*l,y:o+t*l},{x:r+n*l,y:n-r*l},{x:r,y:n}]},_=function(y,h,l,t){var o=y*l+h*t;return o>1&&(o=1),o<-1&&(o=-1),(y*t-h*l<0?-1:1)*Math.acos(o)};E.default=function(y){var h=y.px,l=y.py,t=y.cx,o=y.cy,r=y.rx,n=y.ry,a=y.xAxisRotation,s=a===void 0?0:a,u=y.largeArcFlag,p=u===void 0?0:u,c=y.sweepFlag,b=c===void 0?0:c,g=[];if(r===0||n===0)return[];var f=Math.sin(s*w/360),v=Math.cos(s*w/360),m=v*(h-t)/2+f*(l-o)/2,x=-f*(h-t)/2+v*(l-o)/2;if(m===0&&x===0)return[];r=Math.abs(r),n=Math.abs(n);var T=Math.pow(m,2)/Math.pow(r,2)+Math.pow(x,2)/Math.pow(n,2);T>1&&(r*=Math.sqrt(T),n*=Math.sqrt(T));var d=function(D,G,V,j,W,Z,ie,te,J,X,ee,re){var oe=Math.pow(W,2),ue=Math.pow(Z,2),ce=Math.pow(ee,2),de=Math.pow(re,2),me=oe*ue-oe*de-ue*ce;me<0&&(me=0),me/=oe*de+ue*ce;var _e=(me=Math.sqrt(me)*(ie===te?-1:1))*W/Z*re,Se=me*-Z/W*ee,we=X*_e-J*Se+(D+V)/2,xe=J*_e+X*Se+(G+j)/2,De=(ee-_e)/W,Ee=(re-Se)/Z,Me=(-ee-_e)/W,he=(-re-Se)/Z,fe=_(1,0,De,Ee),ae=_(De,Ee,Me,he);return te===0&&ae>0&&(ae-=w),te===1&&ae<0&&(ae+=w),[we,xe,fe,ae]}(h,l,t,o,r,n,p,b,f,v,m,x),M=function(D,G){if(Array.isArray(D))return D;if(Symbol.iterator in Object(D))return function(V,j){var W=[],Z=!0,ie=!1,te=void 0;try{for(var J,X=V[Symbol.iterator]();!(Z=(J=X.next()).done)&&(W.push(J.value),!j||W.length!==j);Z=!0);}catch(ee){ie=!0,te=ee}finally{try{!Z&&X.return&&X.return()}finally{if(ie)throw te}}return W}(D,G);throw new TypeError("Invalid attempt to destructure non-iterable instance")}(d,4),A=M[0],C=M[1],P=M[2],O=M[3],z=Math.abs(O)/(w/4);Math.abs(1-z)<1e-7&&(z=1);var B=Math.max(Math.ceil(z),1);O/=B;for(var Y=0;Y<B;Y++)g.push(i(P,O)),P+=O;return g.map(function(D){var G=k(D[0],r,n,v,f,A,C),V=G.x,j=G.y,W=k(D[1],r,n,v,f,A,C),Z=W.x,ie=W.y,te=k(D[2],r,n,v,f,A,C);return{x1:V,y1:j,x2:Z,y2:ie,x:te.x,y:te.y}})}},1750:function(R,E,e){var w=e(95616),k=e(65185),i=e(29988),_=e(89546),y=e(32791);R.exports=function(h){if(Array.isArray(h)&&h.length===1&&typeof h[0]=="string"&&(h=h[0]),typeof h=="string"&&(y(_(h),"String is not an SVG path."),h=w(h)),y(Array.isArray(h),"Argument should be a string or an array of path segments."),h=k(h),!(h=i(h)).length)return[0,0,0,0];for(var l=[1/0,1/0,-1/0,-1/0],t=0,o=h.length;t<o;t++)for(var r=h[t].slice(1),n=0;n<r.length;n+=2)r[n+0]<l[0]&&(l[0]=r[n+0]),r[n+1]<l[1]&&(l[1]=r[n+1]),r[n+0]>l[2]&&(l[2]=r[n+0]),r[n+1]>l[3]&&(l[3]=r[n+1]);return l}},29988:function(R,E,e){R.exports=function(_){for(var y,h=[],l=0,t=0,o=0,r=0,n=null,a=null,s=0,u=0,p=0,c=_.length;p<c;p++){var b=_[p],g=b[0];switch(g){case"M":o=b[1],r=b[2];break;case"A":var f=w({px:s,py:u,cx:b[6],cy:b[7],rx:b[1],ry:b[2],xAxisRotation:b[3],largeArcFlag:b[4],sweepFlag:b[5]});if(!f.length)continue;for(var v,m=0;m<f.length;m++)b=["C",(v=f[m]).x1,v.y1,v.x2,v.y2,v.x,v.y],m<f.length-1&&h.push(b);break;case"S":var x=s,T=u;y!="C"&&y!="S"||(x+=x-l,T+=T-t),b=["C",x,T,b[1],b[2],b[3],b[4]];break;case"T":y=="Q"||y=="T"?(n=2*s-n,a=2*u-a):(n=s,a=u),b=i(s,u,n,a,b[1],b[2]);break;case"Q":n=b[1],a=b[2],b=i(s,u,b[1],b[2],b[3],b[4]);break;case"L":b=k(s,u,b[1],b[2]);break;case"H":b=k(s,u,b[1],u);break;case"V":b=k(s,u,s,b[1]);break;case"Z":b=k(s,u,o,r)}y=g,s=b[b.length-2],u=b[b.length-1],b.length>4?(l=b[b.length-4],t=b[b.length-3]):(l=s,t=u),h.push(b)}return h};var w=e(7095);function k(_,y,h,l){return["C",_,y,h,l,h,l]}function i(_,y,h,l,t,o){return["C",_/3+.6666666666666666*h,y/3+.6666666666666666*l,t/3+.6666666666666666*h,o/3+.6666666666666666*l,t,o]}},82019:function(R,E,e){var w,k=e(1750),i=e(95616),_=e(31457),y=e(89546),h=e(44781),l=document.createElement("canvas"),t=l.getContext("2d");R.exports=function(o,r){if(!y(o))throw Error("Argument should be valid svg path string");var n,a;r||(r={}),r.shape?(n=r.shape[0],a=r.shape[1]):(n=l.width=r.w||r.width||200,a=l.height=r.h||r.height||200);var s=Math.min(n,a),u=r.stroke||0,p=r.viewbox||r.viewBox||k(o),c=[n/(p[2]-p[0]),a/(p[3]-p[1])],b=Math.min(c[0]||0,c[1]||0)/2;if(t.fillStyle="black",t.fillRect(0,0,n,a),t.fillStyle="white",u&&(typeof u!="number"&&(u=1),t.strokeStyle=u>0?"white":"black",t.lineWidth=Math.abs(u)),t.translate(.5*n,.5*a),t.scale(b,b),function(){if(w!=null)return w;var v=document.createElement("canvas").getContext("2d");if(v.canvas.width=v.canvas.height=1,!window.Path2D)return w=!1;var m=new Path2D("M0,0h1v1h-1v-1Z");v.fillStyle="black",v.fill(m);var x=v.getImageData(0,0,1,1);return w=x&&x.data&&x.data[3]===255}()){var g=new Path2D(o);t.fill(g),u&&t.stroke(g)}else{var f=i(o);_(t,f),t.fill(),u&&t.stroke()}return t.setTransform(1,0,0,1,0,0),h(t,{cutoff:r.cutoff!=null?r.cutoff:.5,radius:r.radius!=null?r.radius:.5*s})}},84267:function(R,E,e){var w;(function(k){var i=/^\s+/,_=/\s+$/,y=0,h=k.round,l=k.min,t=k.max,o=k.random;function r(ee,re){if(re=re||{},(ee=ee||"")instanceof r)return ee;if(!(this instanceof r))return new r(ee,re);var oe=function(ue){var ce,de,me,_e={r:0,g:0,b:0},Se=1,we=null,xe=null,De=null,Ee=!1,Me=!1;return typeof ue=="string"&&(ue=function(he){he=he.replace(i,"").replace(_,"").toLowerCase();var fe,ae=!1;if(P[he])he=P[he],ae=!0;else if(he=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};return(fe=J.rgb.exec(he))?{r:fe[1],g:fe[2],b:fe[3]}:(fe=J.rgba.exec(he))?{r:fe[1],g:fe[2],b:fe[3],a:fe[4]}:(fe=J.hsl.exec(he))?{h:fe[1],s:fe[2],l:fe[3]}:(fe=J.hsla.exec(he))?{h:fe[1],s:fe[2],l:fe[3],a:fe[4]}:(fe=J.hsv.exec(he))?{h:fe[1],s:fe[2],v:fe[3]}:(fe=J.hsva.exec(he))?{h:fe[1],s:fe[2],v:fe[3],a:fe[4]}:(fe=J.hex8.exec(he))?{r:D(fe[1]),g:D(fe[2]),b:D(fe[3]),a:W(fe[4]),format:ae?"name":"hex8"}:(fe=J.hex6.exec(he))?{r:D(fe[1]),g:D(fe[2]),b:D(fe[3]),format:ae?"name":"hex"}:(fe=J.hex4.exec(he))?{r:D(fe[1]+""+fe[1]),g:D(fe[2]+""+fe[2]),b:D(fe[3]+""+fe[3]),a:W(fe[4]+""+fe[4]),format:ae?"name":"hex8"}:!!(fe=J.hex3.exec(he))&&{r:D(fe[1]+""+fe[1]),g:D(fe[2]+""+fe[2]),b:D(fe[3]+""+fe[3]),format:ae?"name":"hex"}}(ue)),typeof ue=="object"&&(X(ue.r)&&X(ue.g)&&X(ue.b)?(ce=ue.r,de=ue.g,me=ue.b,_e={r:255*B(ce,255),g:255*B(de,255),b:255*B(me,255)},Ee=!0,Me=String(ue.r).substr(-1)==="%"?"prgb":"rgb"):X(ue.h)&&X(ue.s)&&X(ue.v)?(we=V(ue.s),xe=V(ue.v),_e=function(he,fe,ae){he=6*B(he,360),fe=B(fe,100),ae=B(ae,100);var be=k.floor(he),Ie=he-be,Te=ae*(1-fe),Ne=ae*(1-Ie*fe),qe=ae*(1-(1-Ie)*fe),ve=be%6;return{r:255*[ae,Ne,Te,Te,qe,ae][ve],g:255*[qe,ae,ae,Ne,Te,Te][ve],b:255*[Te,Te,qe,ae,ae,Ne][ve]}}(ue.h,we,xe),Ee=!0,Me="hsv"):X(ue.h)&&X(ue.s)&&X(ue.l)&&(we=V(ue.s),De=V(ue.l),_e=function(he,fe,ae){var be,Ie,Te;function Ne(Ce,Ae,ze){return ze<0&&(ze+=1),ze>1&&(ze-=1),ze<1/6?Ce+6*(Ae-Ce)*ze:ze<.5?Ae:ze<2/3?Ce+(Ae-Ce)*(2/3-ze)*6:Ce}if(he=B(he,360),fe=B(fe,100),ae=B(ae,100),fe===0)be=Ie=Te=ae;else{var qe=ae<.5?ae*(1+fe):ae+fe-ae*fe,ve=2*ae-qe;be=Ne(ve,qe,he+1/3),Ie=Ne(ve,qe,he),Te=Ne(ve,qe,he-1/3)}return{r:255*be,g:255*Ie,b:255*Te}}(ue.h,we,De),Ee=!0,Me="hsl"),ue.hasOwnProperty("a")&&(Se=ue.a)),Se=z(Se),{ok:Ee,format:ue.format||Me,r:l(255,t(_e.r,0)),g:l(255,t(_e.g,0)),b:l(255,t(_e.b,0)),a:Se}}(ee);this._originalInput=ee,this._r=oe.r,this._g=oe.g,this._b=oe.b,this._a=oe.a,this._roundA=h(100*this._a)/100,this._format=re.format||oe.format,this._gradientType=re.gradientType,this._r<1&&(this._r=h(this._r)),this._g<1&&(this._g=h(this._g)),this._b<1&&(this._b=h(this._b)),this._ok=oe.ok,this._tc_id=y++}function n(ee,re,oe){ee=B(ee,255),re=B(re,255),oe=B(oe,255);var ue,ce,de=t(ee,re,oe),me=l(ee,re,oe),_e=(de+me)/2;if(de==me)ue=ce=0;else{var Se=de-me;switch(ce=_e>.5?Se/(2-de-me):Se/(de+me),de){case ee:ue=(re-oe)/Se+(re<oe?6:0);break;case re:ue=(oe-ee)/Se+2;break;case oe:ue=(ee-re)/Se+4}ue/=6}return{h:ue,s:ce,l:_e}}function a(ee,re,oe){ee=B(ee,255),re=B(re,255),oe=B(oe,255);var ue,ce,de=t(ee,re,oe),me=l(ee,re,oe),_e=de,Se=de-me;if(ce=de===0?0:Se/de,de==me)ue=0;else{switch(de){case ee:ue=(re-oe)/Se+(re<oe?6:0);break;case re:ue=(oe-ee)/Se+2;break;case oe:ue=(ee-re)/Se+4}ue/=6}return{h:ue,s:ce,v:_e}}function s(ee,re,oe,ue){var ce=[G(h(ee).toString(16)),G(h(re).toString(16)),G(h(oe).toString(16))];return ue&&ce[0].charAt(0)==ce[0].charAt(1)&&ce[1].charAt(0)==ce[1].charAt(1)&&ce[2].charAt(0)==ce[2].charAt(1)?ce[0].charAt(0)+ce[1].charAt(0)+ce[2].charAt(0):ce.join("")}function u(ee,re,oe,ue){return[G(j(ue)),G(h(ee).toString(16)),G(h(re).toString(16)),G(h(oe).toString(16))].join("")}function p(ee,re){re=re===0?0:re||10;var oe=r(ee).toHsl();return oe.s-=re/100,oe.s=Y(oe.s),r(oe)}function c(ee,re){re=re===0?0:re||10;var oe=r(ee).toHsl();return oe.s+=re/100,oe.s=Y(oe.s),r(oe)}function b(ee){return r(ee).desaturate(100)}function g(ee,re){re=re===0?0:re||10;var oe=r(ee).toHsl();return oe.l+=re/100,oe.l=Y(oe.l),r(oe)}function f(ee,re){re=re===0?0:re||10;var oe=r(ee).toRgb();return oe.r=t(0,l(255,oe.r-h(-re/100*255))),oe.g=t(0,l(255,oe.g-h(-re/100*255))),oe.b=t(0,l(255,oe.b-h(-re/100*255))),r(oe)}function v(ee,re){re=re===0?0:re||10;var oe=r(ee).toHsl();return oe.l-=re/100,oe.l=Y(oe.l),r(oe)}function m(ee,re){var oe=r(ee).toHsl(),ue=(oe.h+re)%360;return oe.h=ue<0?360+ue:ue,r(oe)}function x(ee){var re=r(ee).toHsl();return re.h=(re.h+180)%360,r(re)}function T(ee){var re=r(ee).toHsl(),oe=re.h;return[r(ee),r({h:(oe+120)%360,s:re.s,l:re.l}),r({h:(oe+240)%360,s:re.s,l:re.l})]}function d(ee){var re=r(ee).toHsl(),oe=re.h;return[r(ee),r({h:(oe+90)%360,s:re.s,l:re.l}),r({h:(oe+180)%360,s:re.s,l:re.l}),r({h:(oe+270)%360,s:re.s,l:re.l})]}function M(ee){var re=r(ee).toHsl(),oe=re.h;return[r(ee),r({h:(oe+72)%360,s:re.s,l:re.l}),r({h:(oe+216)%360,s:re.s,l:re.l})]}function A(ee,re,oe){re=re||6,oe=oe||30;var ue=r(ee).toHsl(),ce=360/oe,de=[r(ee)];for(ue.h=(ue.h-(ce*re>>1)+720)%360;--re;)ue.h=(ue.h+ce)%360,de.push(r(ue));return de}function C(ee,re){re=re||6;for(var oe=r(ee).toHsv(),ue=oe.h,ce=oe.s,de=oe.v,me=[],_e=1/re;re--;)me.push(r({h:ue,s:ce,v:de})),de=(de+_e)%1;return me}r.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 ee=this.toRgb();return(299*ee.r+587*ee.g+114*ee.b)/1e3},getLuminance:function(){var ee,re,oe,ue=this.toRgb();return ee=ue.r/255,re=ue.g/255,oe=ue.b/255,.2126*(ee<=.03928?ee/12.92:k.pow((ee+.055)/1.055,2.4))+.7152*(re<=.03928?re/12.92:k.pow((re+.055)/1.055,2.4))+.0722*(oe<=.03928?oe/12.92:k.pow((oe+.055)/1.055,2.4))},setAlpha:function(ee){return this._a=z(ee),this._roundA=h(100*this._a)/100,this},toHsv:function(){var ee=a(this._r,this._g,this._b);return{h:360*ee.h,s:ee.s,v:ee.v,a:this._a}},toHsvString:function(){var ee=a(this._r,this._g,this._b),re=h(360*ee.h),oe=h(100*ee.s),ue=h(100*ee.v);return this._a==1?"hsv("+re+", "+oe+"%, "+ue+"%)":"hsva("+re+", "+oe+"%, "+ue+"%, "+this._roundA+")"},toHsl:function(){var ee=n(this._r,this._g,this._b);return{h:360*ee.h,s:ee.s,l:ee.l,a:this._a}},toHslString:function(){var ee=n(this._r,this._g,this._b),re=h(360*ee.h),oe=h(100*ee.s),ue=h(100*ee.l);return this._a==1?"hsl("+re+", "+oe+"%, "+ue+"%)":"hsla("+re+", "+oe+"%, "+ue+"%, "+this._roundA+")"},toHex:function(ee){return s(this._r,this._g,this._b,ee)},toHexString:function(ee){return"#"+this.toHex(ee)},toHex8:function(ee){return function(re,oe,ue,ce,de){var me=[G(h(re).toString(16)),G(h(oe).toString(16)),G(h(ue).toString(16)),G(j(ce))];return de&&me[0].charAt(0)==me[0].charAt(1)&&me[1].charAt(0)==me[1].charAt(1)&&me[2].charAt(0)==me[2].charAt(1)&&me[3].charAt(0)==me[3].charAt(1)?me[0].charAt(0)+me[1].charAt(0)+me[2].charAt(0)+me[3].charAt(0):me.join("")}(this._r,this._g,this._b,this._a,ee)},toHex8String:function(ee){return"#"+this.toHex8(ee)},toRgb:function(){return{r:h(this._r),g:h(this._g),b:h(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+h(this._r)+", "+h(this._g)+", "+h(this._b)+")":"rgba("+h(this._r)+", "+h(this._g)+", "+h(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:h(100*B(this._r,255))+"%",g:h(100*B(this._g,255))+"%",b:h(100*B(this._b,255))+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+h(100*B(this._r,255))+"%, "+h(100*B(this._g,255))+"%, "+h(100*B(this._b,255))+"%)":"rgba("+h(100*B(this._r,255))+"%, "+h(100*B(this._g,255))+"%, "+h(100*B(this._b,255))+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":!(this._a<1)&&(O[s(this._r,this._g,this._b,!0)]||!1)},toFilter:function(ee){var re="#"+u(this._r,this._g,this._b,this._a),oe=re,ue=this._gradientType?"GradientType = 1, ":"";if(ee){var ce=r(ee);oe="#"+u(ce._r,ce._g,ce._b,ce._a)}return"progid:DXImageTransform.Microsoft.gradient("+ue+"startColorstr="+re+",endColorstr="+oe+")"},toString:function(ee){var re=!!ee;ee=ee||this._format;var oe=!1,ue=this._a<1&&this._a>=0;return re||!ue||ee!=="hex"&&ee!=="hex6"&&ee!=="hex3"&&ee!=="hex4"&&ee!=="hex8"&&ee!=="name"?(ee==="rgb"&&(oe=this.toRgbString()),ee==="prgb"&&(oe=this.toPercentageRgbString()),ee!=="hex"&&ee!=="hex6"||(oe=this.toHexString()),ee==="hex3"&&(oe=this.toHexString(!0)),ee==="hex4"&&(oe=this.toHex8String(!0)),ee==="hex8"&&(oe=this.toHex8String()),ee==="name"&&(oe=this.toName()),ee==="hsl"&&(oe=this.toHslString()),ee==="hsv"&&(oe=this.toHsvString()),oe||this.toHexString()):ee==="name"&&this._a===0?this.toName():this.toRgbString()},clone:function(){return r(this.toString())},_applyModification:function(ee,re){var oe=ee.apply(null,[this].concat([].slice.call(re)));return this._r=oe._r,this._g=oe._g,this._b=oe._b,this.setAlpha(oe._a),this},lighten:function(){return this._applyModification(g,arguments)},brighten:function(){return this._applyModification(f,arguments)},darken:function(){return this._applyModification(v,arguments)},desaturate:function(){return this._applyModification(p,arguments)},saturate:function(){return this._applyModification(c,arguments)},greyscale:function(){return this._applyModification(b,arguments)},spin:function(){return this._applyModification(m,arguments)},_applyCombination:function(ee,re){return ee.apply(null,[this].concat([].slice.call(re)))},analogous:function(){return this._applyCombination(A,arguments)},complement:function(){return this._applyCombination(x,arguments)},monochromatic:function(){return this._applyCombination(C,arguments)},splitcomplement:function(){return this._applyCombination(M,arguments)},triad:function(){return this._applyCombination(T,arguments)},tetrad:function(){return this._applyCombination(d,arguments)}},r.fromRatio=function(ee,re){if(typeof ee=="object"){var oe={};for(var ue in ee)ee.hasOwnProperty(ue)&&(oe[ue]=ue==="a"?ee[ue]:V(ee[ue]));ee=oe}return r(ee,re)},r.equals=function(ee,re){return!(!ee||!re)&&r(ee).toRgbString()==r(re).toRgbString()},r.random=function(){return r.fromRatio({r:o(),g:o(),b:o()})},r.mix=function(ee,re,oe){oe=oe===0?0:oe||50;var ue=r(ee).toRgb(),ce=r(re).toRgb(),de=oe/100;return r({r:(ce.r-ue.r)*de+ue.r,g:(ce.g-ue.g)*de+ue.g,b:(ce.b-ue.b)*de+ue.b,a:(ce.a-ue.a)*de+ue.a})},r.readability=function(ee,re){var oe=r(ee),ue=r(re);return(k.max(oe.getLuminance(),ue.getLuminance())+.05)/(k.min(oe.getLuminance(),ue.getLuminance())+.05)},r.isReadable=function(ee,re,oe){var ue,ce,de,me,_e,Se=r.readability(ee,re);switch(ce=!1,(de=oe,(me=((de=de||{level:"AA",size:"small"}).level||"AA").toUpperCase())!=="AA"&&me!=="AAA"&&(me="AA"),(_e=(de.size||"small").toLowerCase())!=="small"&&_e!=="large"&&(_e="small"),ue={level:me,size:_e}).level+ue.size){case"AAsmall":case"AAAlarge":ce=Se>=4.5;break;case"AAlarge":ce=Se>=3;break;case"AAAsmall":ce=Se>=7}return ce},r.mostReadable=function(ee,re,oe){var ue,ce,de,me,_e=null,Se=0;ce=(oe=oe||{}).includeFallbackColors,de=oe.level,me=oe.size;for(var we=0;we<re.length;we++)(ue=r.readability(ee,re[we]))>Se&&(Se=ue,_e=r(re[we]));return r.isReadable(ee,_e,{level:de,size:me})||!ce?_e:(oe.includeFallbackColors=!1,r.mostReadable(ee,["#fff","#000"],oe))};var P=r.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"},O=r.hexNames=function(ee){var re={};for(var oe in ee)ee.hasOwnProperty(oe)&&(re[ee[oe]]=oe);return re}(P);function z(ee){return ee=parseFloat(ee),(isNaN(ee)||ee<0||ee>1)&&(ee=1),ee}function B(ee,re){(function(ue){return typeof ue=="string"&&ue.indexOf(".")!=-1&&parseFloat(ue)===1})(ee)&&(ee="100%");var oe=function(ue){return typeof ue=="string"&&ue.indexOf("%")!=-1}(ee);return ee=l(re,t(0,parseFloat(ee))),oe&&(ee=parseInt(ee*re,10)/100),k.abs(ee-re)<1e-6?1:ee%re/parseFloat(re)}function Y(ee){return l(1,t(0,ee))}function D(ee){return parseInt(ee,16)}function G(ee){return ee.length==1?"0"+ee:""+ee}function V(ee){return ee<=1&&(ee=100*ee+"%"),ee}function j(ee){return k.round(255*parseFloat(ee)).toString(16)}function W(ee){return D(ee)/255}var Z,ie,te,J=(ie="[\\s|\\(]+("+(Z="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)")+")[,|\\s]+("+Z+")[,|\\s]+("+Z+")\\s*\\)?",te="[\\s|\\(]+("+Z+")[,|\\s]+("+Z+")[,|\\s]+("+Z+")[,|\\s]+("+Z+")\\s*\\)?",{CSS_UNIT:new RegExp(Z),rgb:new RegExp("rgb"+ie),rgba:new RegExp("rgba"+te),hsl:new RegExp("hsl"+ie),hsla:new RegExp("hsla"+te),hsv:new RegExp("hsv"+ie),hsva:new RegExp("hsva"+te),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 X(ee){return!!J.CSS_UNIT.exec(ee)}R.exports?R.exports=r:(w=function(){return r}.call(E,e,E,R))===void 0||(R.exports=w)})(Math)},57060:function(R){R.exports=e,R.exports.float32=R.exports.float=e,R.exports.fract32=R.exports.fract=function(w,k){if(w.length){if(w instanceof Float32Array)return new Float32Array(w.length);k instanceof Float32Array||(k=e(w));for(var i=0,_=k.length;i<_;i++)k[i]=w[i]-k[i];return k}return e(w-e(w))};var E=new Float32Array(1);function e(w){return w.length?w instanceof Float32Array?w:new Float32Array(w):(E[0]=w,E[0])}},75686:function(R,E,e){var w=e(25677);R.exports=_;var k=96;function i(y,h){var l=w(getComputedStyle(y).getPropertyValue(h));return l[0]*_(l[1],y)}function _(y,h){switch(h=h||document.body,y=(y||"px").trim().toLowerCase(),h!==window&&h!==document||(h=document.body),y){case"%":return h.clientHeight/100;case"ch":case"ex":return function(l,t){var o=document.createElement("div");o.style["font-size"]="128"+l,t.appendChild(o);var r=i(o,"font-size")/128;return t.removeChild(o),r}(y,h);case"em":return i(h,"font-size");case"rem":return i(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 k;case"cm":return k/2.54;case"mm":return k/25.4;case"pt":return k/72;case"pc":return k/6}return 1}},96892:function(R,E,e){function w(_){return _}function k(_,y){return typeof y=="string"&&(y=_.objects[y]),y.type==="GeometryCollection"?{type:"FeatureCollection",features:y.geometries.map(function(h){return i(_,h)})}:i(_,y)}function i(_,y){var h=y.id,l=y.bbox,t=y.properties==null?{}:y.properties,o=function(r,n){var a=function(f){if(f==null)return w;var v,m,x=f.scale[0],T=f.scale[1],d=f.translate[0],M=f.translate[1];return function(A,C){C||(v=m=0);var P=2,O=A.length,z=new Array(O);for(z[0]=(v+=A[0])*x+d,z[1]=(m+=A[1])*T+M;P<O;)z[P]=A[P],++P;return z}}(r.transform),s=r.arcs;function u(f,v){v.length&&v.pop();for(var m=s[f<0?~f:f],x=0,T=m.length;x<T;++x)v.push(a(m[x],x));f<0&&function(d,M){for(var A,C=d.length,P=C-M;P<--C;)A=d[P],d[P++]=d[C],d[C]=A}(v,T)}function p(f){return a(f)}function c(f){for(var v=[],m=0,x=f.length;m<x;++m)u(f[m],v);return v.length<2&&v.push(v[0]),v}function b(f){for(var v=c(f);v.length<4;)v.push(v[0]);return v}function g(f){return f.map(b)}return function f(v){var m,x=v.type;switch(x){case"GeometryCollection":return{type:x,geometries:v.geometries.map(f)};case"Point":m=p(v.coordinates);break;case"MultiPoint":m=v.coordinates.map(p);break;case"LineString":m=c(v.arcs);break;case"MultiLineString":m=v.arcs.map(c);break;case"Polygon":m=g(v.arcs);break;case"MultiPolygon":m=v.arcs.map(g);break;default:return null}return{type:x,coordinates:m}}(n)}(_,y);return h==null&&l==null?{type:"Feature",properties:t,geometry:o}:l==null?{type:"Feature",id:h,properties:t,geometry:o}:{type:"Feature",id:h,bbox:l,properties:t,geometry:o}}e.d(E,{zL:function(){return k}})},73116:function(R,E,e){var w=e(24511);R.exports=function(k){if(typeof k!="function"||!hasOwnProperty.call(k,"length"))return!1;try{if(typeof k.length!="number"||typeof k.call!="function"||typeof k.apply!="function")return!1}catch{return!1}return!w(k)}},69190:function(R,E,e){var w=e(24582),k=e(47403),i=e(9234),_=e(6048),y=function(h,l){return h.replace("%v",_(l))};R.exports=function(h,l,t){if(!k(t))throw new TypeError(y(l,h));if(!w(h)){if("default"in t)return t.default;if(t.isOptional)return null}var o=i(t.errorMessage);throw w(o)||(o=l),new TypeError(y(o,h))}},18497:function(R){R.exports=function(E){try{return E.toString()}catch{try{return String(E)}catch{return null}}}},6048:function(R,E,e){var w=e(18497),k=/[\n\r\u2028\u2029]/g;R.exports=function(i){var _=w(i);return _===null?"<Non-coercible to string value>":(_.length>100&&(_=_.slice(0,99)+"…"),_=_.replace(k,function(y){switch(y){case`
|
||
`:return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}}))}},47403:function(R,E,e){var w=e(24582),k={object:!0,function:!0,undefined:!0};R.exports=function(i){return!!w(i)&&hasOwnProperty.call(k,typeof i)}},82527:function(R,E,e){var w=e(69190),k=e(84985);R.exports=function(i){return k(i)?i:w(i,"%v is not a plain function",arguments[1])}},84985:function(R,E,e){var w=e(73116),k=/^\s*class[\s{/}]/,i=Function.prototype.toString;R.exports=function(_){return!!w(_)&&!k.test(i.call(_))}},24511:function(R,E,e){var w=e(47403);R.exports=function(k){if(!w(k))return!1;try{return!!k.constructor&&k.constructor.prototype===k}catch{return!1}}},9234:function(R,E,e){var w=e(24582),k=e(47403),i=Object.prototype.toString;R.exports=function(_){if(!w(_))return null;if(k(_)){var y=_.toString;if(typeof y!="function"||y===i)return null}try{return""+_}catch{return null}}},10424:function(R,E,e){var w=e(69190),k=e(24582);R.exports=function(i){return k(i)?i:w(i,"Cannot use %v",arguments[1])}},24582:function(R){R.exports=function(E){return E!=null}},58404:function(R,E,e){var w=e(13547),k=e(12129),i=e(12856).Buffer;e.g.__TYPEDARRAY_POOL||(e.g.__TYPEDARRAY_POOL={UINT8:k([32,0]),UINT16:k([32,0]),UINT32:k([32,0]),BIGUINT64:k([32,0]),INT8:k([32,0]),INT16:k([32,0]),INT32:k([32,0]),BIGINT64:k([32,0]),FLOAT:k([32,0]),DOUBLE:k([32,0]),DATA:k([32,0]),UINT8C:k([32,0]),BUFFER:k([32,0])});var _=typeof Uint8ClampedArray<"u",y=typeof BigUint64Array<"u",h=typeof BigInt64Array<"u",l=e.g.__TYPEDARRAY_POOL;l.UINT8C||(l.UINT8C=k([32,0])),l.BIGUINT64||(l.BIGUINT64=k([32,0])),l.BIGINT64||(l.BIGINT64=k([32,0])),l.BUFFER||(l.BUFFER=k([32,0]));var t=l.DATA,o=l.BUFFER;function r(M){if(M){var A=M.length||M.byteLength,C=w.log2(A);t[C].push(M)}}function n(M){M=w.nextPow2(M);var A=w.log2(M),C=t[A];return C.length>0?C.pop():new ArrayBuffer(M)}function a(M){return new Uint8Array(n(M),0,M)}function s(M){return new Uint16Array(n(2*M),0,M)}function u(M){return new Uint32Array(n(4*M),0,M)}function p(M){return new Int8Array(n(M),0,M)}function c(M){return new Int16Array(n(2*M),0,M)}function b(M){return new Int32Array(n(4*M),0,M)}function g(M){return new Float32Array(n(4*M),0,M)}function f(M){return new Float64Array(n(8*M),0,M)}function v(M){return _?new Uint8ClampedArray(n(M),0,M):a(M)}function m(M){return y?new BigUint64Array(n(8*M),0,M):null}function x(M){return h?new BigInt64Array(n(8*M),0,M):null}function T(M){return new DataView(n(M),0,M)}function d(M){M=w.nextPow2(M);var A=w.log2(M),C=o[A];return C.length>0?C.pop():new i(M)}E.free=function(M){if(i.isBuffer(M))o[w.log2(M.length)].push(M);else{if(Object.prototype.toString.call(M)!=="[object ArrayBuffer]"&&(M=M.buffer),!M)return;var A=M.length||M.byteLength,C=0|w.log2(A);t[C].push(M)}},E.freeUint8=E.freeUint16=E.freeUint32=E.freeBigUint64=E.freeInt8=E.freeInt16=E.freeInt32=E.freeBigInt64=E.freeFloat32=E.freeFloat=E.freeFloat64=E.freeDouble=E.freeUint8Clamped=E.freeDataView=function(M){r(M.buffer)},E.freeArrayBuffer=r,E.freeBuffer=function(M){o[w.log2(M.length)].push(M)},E.malloc=function(M,A){if(A===void 0||A==="arraybuffer")return n(M);switch(A){case"uint8":return a(M);case"uint16":return s(M);case"uint32":return u(M);case"int8":return p(M);case"int16":return c(M);case"int32":return b(M);case"float":case"float32":return g(M);case"double":case"float64":return f(M);case"uint8_clamped":return v(M);case"bigint64":return x(M);case"biguint64":return m(M);case"buffer":return d(M);case"data":case"dataview":return T(M);default:return null}return null},E.mallocArrayBuffer=n,E.mallocUint8=a,E.mallocUint16=s,E.mallocUint32=u,E.mallocInt8=p,E.mallocInt16=c,E.mallocInt32=b,E.mallocFloat32=E.mallocFloat=g,E.mallocFloat64=E.mallocDouble=f,E.mallocUint8Clamped=v,E.mallocBigUint64=m,E.mallocBigInt64=x,E.mallocDataView=T,E.mallocBuffer=d,E.clearCache=function(){for(var M=0;M<32;++M)l.UINT8[M].length=0,l.UINT16[M].length=0,l.UINT32[M].length=0,l.INT8[M].length=0,l.INT16[M].length=0,l.INT32[M].length=0,l.FLOAT[M].length=0,l.DOUBLE[M].length=0,l.BIGUINT64[M].length=0,l.BIGINT64[M].length=0,l.UINT8C[M].length=0,t[M].length=0,o[M].length=0}},90448:function(R){var E=/[\'\"]/;R.exports=function(e){return e?(E.test(e.charAt(0))&&(e=e.substr(1)),E.test(e.charAt(e.length-1))&&(e=e.substr(0,e.length-1)),e):""}},93447:function(R){R.exports=function(E,e,w){Array.isArray(w)||(w=[].slice.call(arguments,2));for(var k=0,i=w.length;k<i;k++){var _=w[k];for(var y in _)if((e[y]===void 0||Array.isArray(e[y])||E[y]!==e[y])&&y in e){var h;if(_[y]===!0)h=e[y];else if(_[y]===!1||typeof _[y]=="function"&&(h=_[y](e[y],E,e))===void 0)continue;E[y]=h}}return E}},20588:function(R,E,e){function w(k){try{if(!e.g.localStorage)return!1}catch{return!1}var i=e.g.localStorage[k];return i!=null&&String(i).toLowerCase()==="true"}R.exports=function(k,i){if(w("noDeprecation"))return k;var _=!1;return function(){if(!_){if(w("throwDeprecation"))throw new Error(i);w("traceDeprecation")?console.trace(i):console.warn(i),_=!0}return k.apply(this,arguments)}}},45920:function(R){R.exports=function(E){return E&&typeof E=="object"&&typeof E.copy=="function"&&typeof E.fill=="function"&&typeof E.readUInt8=="function"}},4936:function(R,E,e){var w=e(47216),k=e(65481),i=e(21099),_=e(9187);function y(B){return B.call.bind(B)}var h=typeof BigInt<"u",l=typeof Symbol<"u",t=y(Object.prototype.toString),o=y(Number.prototype.valueOf),r=y(String.prototype.valueOf),n=y(Boolean.prototype.valueOf);if(h)var a=y(BigInt.prototype.valueOf);if(l)var s=y(Symbol.prototype.valueOf);function u(B,Y){if(typeof B!="object")return!1;try{return Y(B),!0}catch{return!1}}function p(B){return t(B)==="[object Map]"}function c(B){return t(B)==="[object Set]"}function b(B){return t(B)==="[object WeakMap]"}function g(B){return t(B)==="[object WeakSet]"}function f(B){return t(B)==="[object ArrayBuffer]"}function v(B){return typeof ArrayBuffer<"u"&&(f.working?f(B):B instanceof ArrayBuffer)}function m(B){return t(B)==="[object DataView]"}function x(B){return typeof DataView<"u"&&(m.working?m(B):B instanceof DataView)}E.isArgumentsObject=w,E.isGeneratorFunction=k,E.isTypedArray=_,E.isPromise=function(B){return typeof Promise<"u"&&B instanceof Promise||B!==null&&typeof B=="object"&&typeof B.then=="function"&&typeof B.catch=="function"},E.isArrayBufferView=function(B){return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?ArrayBuffer.isView(B):_(B)||x(B)},E.isUint8Array=function(B){return i(B)==="Uint8Array"},E.isUint8ClampedArray=function(B){return i(B)==="Uint8ClampedArray"},E.isUint16Array=function(B){return i(B)==="Uint16Array"},E.isUint32Array=function(B){return i(B)==="Uint32Array"},E.isInt8Array=function(B){return i(B)==="Int8Array"},E.isInt16Array=function(B){return i(B)==="Int16Array"},E.isInt32Array=function(B){return i(B)==="Int32Array"},E.isFloat32Array=function(B){return i(B)==="Float32Array"},E.isFloat64Array=function(B){return i(B)==="Float64Array"},E.isBigInt64Array=function(B){return i(B)==="BigInt64Array"},E.isBigUint64Array=function(B){return i(B)==="BigUint64Array"},p.working=typeof Map<"u"&&p(new Map),E.isMap=function(B){return typeof Map<"u"&&(p.working?p(B):B instanceof Map)},c.working=typeof Set<"u"&&c(new Set),E.isSet=function(B){return typeof Set<"u"&&(c.working?c(B):B instanceof Set)},b.working=typeof WeakMap<"u"&&b(new WeakMap),E.isWeakMap=function(B){return typeof WeakMap<"u"&&(b.working?b(B):B instanceof WeakMap)},g.working=typeof WeakSet<"u"&&g(new WeakSet),E.isWeakSet=function(B){return g(B)},f.working=typeof ArrayBuffer<"u"&&f(new ArrayBuffer),E.isArrayBuffer=v,m.working=typeof ArrayBuffer<"u"&&typeof DataView<"u"&&m(new DataView(new ArrayBuffer(1),0,1)),E.isDataView=x;var T=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:void 0;function d(B){return t(B)==="[object SharedArrayBuffer]"}function M(B){return T!==void 0&&(d.working===void 0&&(d.working=d(new T)),d.working?d(B):B instanceof T)}function A(B){return u(B,o)}function C(B){return u(B,r)}function P(B){return u(B,n)}function O(B){return h&&u(B,a)}function z(B){return l&&u(B,s)}E.isSharedArrayBuffer=M,E.isAsyncFunction=function(B){return t(B)==="[object AsyncFunction]"},E.isMapIterator=function(B){return t(B)==="[object Map Iterator]"},E.isSetIterator=function(B){return t(B)==="[object Set Iterator]"},E.isGeneratorObject=function(B){return t(B)==="[object Generator]"},E.isWebAssemblyCompiledModule=function(B){return t(B)==="[object WebAssembly.Module]"},E.isNumberObject=A,E.isStringObject=C,E.isBooleanObject=P,E.isBigIntObject=O,E.isSymbolObject=z,E.isBoxedPrimitive=function(B){return A(B)||C(B)||P(B)||O(B)||z(B)},E.isAnyArrayBuffer=function(B){return typeof Uint8Array<"u"&&(v(B)||M(B))},["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(B){Object.defineProperty(E,B,{enumerable:!1,value:function(){throw new Error(B+" is not supported in userland")}})})},43827:function(R,E,e){var w=e(90386),k=Object.getOwnPropertyDescriptors||function(z){for(var B=Object.keys(z),Y={},D=0;D<B.length;D++)Y[B[D]]=Object.getOwnPropertyDescriptor(z,B[D]);return Y},i=/%[sdj%]/g;E.format=function(z){if(!b(z)){for(var B=[],Y=0;Y<arguments.length;Y++)B.push(l(arguments[Y]));return B.join(" ")}Y=1;for(var D=arguments,G=D.length,V=String(z).replace(i,function(W){if(W==="%%")return"%";if(Y>=G)return W;switch(W){case"%s":return String(D[Y++]);case"%d":return Number(D[Y++]);case"%j":try{return JSON.stringify(D[Y++])}catch{return"[Circular]"}default:return W}}),j=D[Y];Y<G;j=D[++Y])p(j)||!v(j)?V+=" "+j:V+=" "+l(j);return V},E.deprecate=function(z,B){if(w!==void 0&&w.noDeprecation===!0)return z;if(w===void 0)return function(){return E.deprecate(z,B).apply(this,arguments)};var Y=!1;return function(){if(!Y){if(w.throwDeprecation)throw new Error(B);w.traceDeprecation?console.trace(B):console.error(B),Y=!0}return z.apply(this,arguments)}};var _={},y=/^$/;if(w.env.NODE_DEBUG){var h=w.env.NODE_DEBUG;h=h.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),y=new RegExp("^"+h+"$","i")}function l(z,B){var Y={seen:[],stylize:o};return arguments.length>=3&&(Y.depth=arguments[2]),arguments.length>=4&&(Y.colors=arguments[3]),u(B)?Y.showHidden=B:B&&E._extend(Y,B),g(Y.showHidden)&&(Y.showHidden=!1),g(Y.depth)&&(Y.depth=2),g(Y.colors)&&(Y.colors=!1),g(Y.customInspect)&&(Y.customInspect=!0),Y.colors&&(Y.stylize=t),r(Y,z,Y.depth)}function t(z,B){var Y=l.styles[B];return Y?"\x1B["+l.colors[Y][0]+"m"+z+"\x1B["+l.colors[Y][1]+"m":z}function o(z,B){return z}function r(z,B,Y){if(z.customInspect&&B&&T(B.inspect)&&B.inspect!==E.inspect&&(!B.constructor||B.constructor.prototype!==B)){var D=B.inspect(Y,z);return b(D)||(D=r(z,D,Y)),D}var G=function(X,ee){if(g(ee))return X.stylize("undefined","undefined");if(b(ee)){var re="'"+JSON.stringify(ee).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return X.stylize(re,"string")}return c(ee)?X.stylize(""+ee,"number"):u(ee)?X.stylize(""+ee,"boolean"):p(ee)?X.stylize("null","null"):void 0}(z,B);if(G)return G;var V=Object.keys(B),j=function(X){var ee={};return X.forEach(function(re,oe){ee[re]=!0}),ee}(V);if(z.showHidden&&(V=Object.getOwnPropertyNames(B)),x(B)&&(V.indexOf("message")>=0||V.indexOf("description")>=0))return n(B);if(V.length===0){if(T(B)){var W=B.name?": "+B.name:"";return z.stylize("[Function"+W+"]","special")}if(f(B))return z.stylize(RegExp.prototype.toString.call(B),"regexp");if(m(B))return z.stylize(Date.prototype.toString.call(B),"date");if(x(B))return n(B)}var Z,ie="",te=!1,J=["{","}"];return s(B)&&(te=!0,J=["[","]"]),T(B)&&(ie=" [Function"+(B.name?": "+B.name:"")+"]"),f(B)&&(ie=" "+RegExp.prototype.toString.call(B)),m(B)&&(ie=" "+Date.prototype.toUTCString.call(B)),x(B)&&(ie=" "+n(B)),V.length!==0||te&&B.length!=0?Y<0?f(B)?z.stylize(RegExp.prototype.toString.call(B),"regexp"):z.stylize("[Object]","special"):(z.seen.push(B),Z=te?function(X,ee,re,oe,ue){for(var ce=[],de=0,me=ee.length;de<me;++de)C(ee,String(de))?ce.push(a(X,ee,re,oe,String(de),!0)):ce.push("");return ue.forEach(function(_e){_e.match(/^\d+$/)||ce.push(a(X,ee,re,oe,_e,!0))}),ce}(z,B,Y,j,V):V.map(function(X){return a(z,B,Y,j,X,te)}),z.seen.pop(),function(X,ee,re){return X.reduce(function(oe,ue){return ue.indexOf(`
|
||
`),oe+ue.replace(/\u001b\[\d\d?m/g,"").length+1},0)>60?re[0]+(ee===""?"":ee+`
|
||
`)+" "+X.join(`,
|
||
`)+" "+re[1]:re[0]+ee+" "+X.join(", ")+" "+re[1]}(Z,ie,J)):J[0]+ie+J[1]}function n(z){return"["+Error.prototype.toString.call(z)+"]"}function a(z,B,Y,D,G,V){var j,W,Z;if((Z=Object.getOwnPropertyDescriptor(B,G)||{value:B[G]}).get?W=Z.set?z.stylize("[Getter/Setter]","special"):z.stylize("[Getter]","special"):Z.set&&(W=z.stylize("[Setter]","special")),C(D,G)||(j="["+G+"]"),W||(z.seen.indexOf(Z.value)<0?(W=p(Y)?r(z,Z.value,null):r(z,Z.value,Y-1)).indexOf(`
|
||
`)>-1&&(W=V?W.split(`
|
||
`).map(function(ie){return" "+ie}).join(`
|
||
`).slice(2):`
|
||
`+W.split(`
|
||
`).map(function(ie){return" "+ie}).join(`
|
||
`)):W=z.stylize("[Circular]","special")),g(j)){if(V&&G.match(/^\d+$/))return W;(j=JSON.stringify(""+G)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(j=j.slice(1,-1),j=z.stylize(j,"name")):(j=j.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),j=z.stylize(j,"string"))}return j+": "+W}function s(z){return Array.isArray(z)}function u(z){return typeof z=="boolean"}function p(z){return z===null}function c(z){return typeof z=="number"}function b(z){return typeof z=="string"}function g(z){return z===void 0}function f(z){return v(z)&&d(z)==="[object RegExp]"}function v(z){return typeof z=="object"&&z!==null}function m(z){return v(z)&&d(z)==="[object Date]"}function x(z){return v(z)&&(d(z)==="[object Error]"||z instanceof Error)}function T(z){return typeof z=="function"}function d(z){return Object.prototype.toString.call(z)}function M(z){return z<10?"0"+z.toString(10):z.toString(10)}E.debuglog=function(z){if(z=z.toUpperCase(),!_[z])if(y.test(z)){var B=w.pid;_[z]=function(){var Y=E.format.apply(E,arguments);console.error("%s %d: %s",z,B,Y)}}else _[z]=function(){};return _[z]},E.inspect=l,l.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},l.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},E.types=e(4936),E.isArray=s,E.isBoolean=u,E.isNull=p,E.isNullOrUndefined=function(z){return z==null},E.isNumber=c,E.isString=b,E.isSymbol=function(z){return typeof z=="symbol"},E.isUndefined=g,E.isRegExp=f,E.types.isRegExp=f,E.isObject=v,E.isDate=m,E.types.isDate=m,E.isError=x,E.types.isNativeError=x,E.isFunction=T,E.isPrimitive=function(z){return z===null||typeof z=="boolean"||typeof z=="number"||typeof z=="string"||typeof z=="symbol"||z===void 0},E.isBuffer=e(45920);var A=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function C(z,B){return Object.prototype.hasOwnProperty.call(z,B)}E.log=function(){var z,B;console.log("%s - %s",(B=[M((z=new Date).getHours()),M(z.getMinutes()),M(z.getSeconds())].join(":"),[z.getDate(),A[z.getMonth()],B].join(" ")),E.format.apply(E,arguments))},E.inherits=e(42018),E._extend=function(z,B){if(!B||!v(B))return z;for(var Y=Object.keys(B),D=Y.length;D--;)z[Y[D]]=B[Y[D]];return z};var P=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;function O(z,B){if(!z){var Y=new Error("Promise was rejected with a falsy value");Y.reason=z,z=Y}return B(z)}E.promisify=function(z){if(typeof z!="function")throw new TypeError('The "original" argument must be of type Function');if(P&&z[P]){var B;if(typeof(B=z[P])!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(B,P,{value:B,enumerable:!1,writable:!1,configurable:!0}),B}function B(){for(var Y,D,G=new Promise(function(W,Z){Y=W,D=Z}),V=[],j=0;j<arguments.length;j++)V.push(arguments[j]);V.push(function(W,Z){W?D(W):Y(Z)});try{z.apply(this,V)}catch(W){D(W)}return G}return Object.setPrototypeOf(B,Object.getPrototypeOf(z)),P&&Object.defineProperty(B,P,{value:B,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(B,k(z))},E.promisify.custom=P,E.callbackify=function(z){if(typeof z!="function")throw new TypeError('The "original" argument must be of type Function');function B(){for(var Y=[],D=0;D<arguments.length;D++)Y.push(arguments[D]);var G=Y.pop();if(typeof G!="function")throw new TypeError("The last argument must be of type Function");var V=this,j=function(){return G.apply(V,arguments)};z.apply(this,Y).then(function(W){w.nextTick(j.bind(null,null,W))},function(W){w.nextTick(O.bind(null,W,j))})}return Object.setPrototypeOf(B,Object.getPrototypeOf(z)),Object.defineProperties(B,k(z)),B}},40372:function(R,E,e){var w=e(86249);R.exports=function(k){return w("webgl",k)}},21099:function(R,E,e){var w=e(31353),k=e(72077),i=e(6614),_=e(40383),y=i("Object.prototype.toString"),h=e(84543)(),l=typeof globalThis>"u"?e.g:globalThis,t=k(),o=i("String.prototype.slice"),r={},n=Object.getPrototypeOf;h&&_&&n&&w(t,function(s){if(typeof l[s]=="function"){var u=new l[s];if(Symbol.toStringTag in u){var p=n(u),c=_(p,Symbol.toStringTag);if(!c){var b=n(p);c=_(b,Symbol.toStringTag)}r[s]=c.get}}});var a=e(9187);R.exports=function(s){return!!a(s)&&(h&&Symbol.toStringTag in s?function(u){var p=!1;return w(r,function(c,b){if(!p)try{var g=c.call(u);g===b&&(p=g)}catch{}}),p}(s):o(y(s),8,-1))}},3961:function(R,E,e){var w=e(63489),k=e(56131),i=w.instance();function _(n){this.local=this.regionalOptions[n||""]||this.regionalOptions[""]}_.prototype=new w.baseCalendar,k(_.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(n,a){if(typeof n=="string"){var s=n.match(h);return s?s[0]:""}var u=this._validateYear(n),p=n.month(),c=""+this.toChineseMonth(u,p);return a&&c.length<2&&(c="0"+c),this.isIntercalaryMonth(u,p)&&(c+="i"),c},monthNames:function(n){if(typeof n=="string"){var a=n.match(l);return a?a[0]:""}var s=this._validateYear(n),u=n.month(),p=["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"][this.toChineseMonth(s,u)-1];return this.isIntercalaryMonth(s,u)&&(p="闰"+p),p},monthNamesShort:function(n){if(typeof n=="string"){var a=n.match(t);return a?a[0]:""}var s=this._validateYear(n),u=n.month(),p=["一","二","三","四","五","六","七","八","九","十","十一","十二"][this.toChineseMonth(s,u)-1];return this.isIntercalaryMonth(s,u)&&(p="闰"+p),p},parseMonth:function(n,a){n=this._validateYear(n);var s,u=parseInt(a);if(isNaN(u))a[0]==="闰"&&(s=!0,a=a.substring(1)),a[a.length-1]==="月"&&(a=a.substring(0,a.length-1)),u=1+["一","二","三","四","五","六","七","八","九","十","十一","十二"].indexOf(a);else{var p=a[a.length-1];s=p==="i"||p==="I"}return this.toMonthIndex(n,u,s)},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(n,a){if(n.year&&(n=n.year()),typeof n!="number"||n<1888||n>2111)throw a.replace(/\{0\}/,this.local.name);return n},toMonthIndex:function(n,a,s){var u=this.intercalaryMonth(n);if(s&&a!==u||a<1||a>12)throw w.local.invalidMonth.replace(/\{0\}/,this.local.name);return u?!s&&a<=u?a-1:a:a-1},toChineseMonth:function(n,a){n.year&&(a=(n=n.year()).month());var s=this.intercalaryMonth(n);if(a<0||a>(s?12:11))throw w.local.invalidMonth.replace(/\{0\}/,this.local.name);return s?a<s?a+1:a:a+1},intercalaryMonth:function(n){return n=this._validateYear(n),o[n-o[0]]>>13},isIntercalaryMonth:function(n,a){n.year&&(a=(n=n.year()).month());var s=this.intercalaryMonth(n);return!!s&&s===a},leapYear:function(n){return this.intercalaryMonth(n)!==0},weekOfYear:function(n,a,s){var u,p=this._validateYear(n,w.local.invalidyear),c=r[p-r[0]],b=c>>9&4095,g=c>>5&15,f=31&c;(u=i.newDate(b,g,f)).add(4-(u.dayOfWeek()||7),"d");var v=this.toJD(n,a,s)-u.toJD();return 1+Math.floor(v/7)},monthsInYear:function(n){return this.leapYear(n)?13:12},daysInMonth:function(n,a){n.year&&(a=n.month(),n=n.year()),n=this._validateYear(n);var s=o[n-o[0]];if(a>(s>>13?12:11))throw w.local.invalidMonth.replace(/\{0\}/,this.local.name);return s&1<<12-a?30:29},weekDay:function(n,a,s){return(this.dayOfWeek(n,a,s)||7)<6},toJD:function(n,a,s){var u=this._validate(n,c,s,w.local.invalidDate);n=this._validateYear(u.year()),a=u.month(),s=u.day();var p=this.isIntercalaryMonth(n,a),c=this.toChineseMonth(n,a),b=function(g,f,v,m,x){var T,d,M;if(typeof g=="object")d=g,T=f||{};else{var A;if(!(typeof g=="number"&&g>=1888&&g<=2111))throw new Error("Lunar year outside range 1888-2111");if(!(typeof f=="number"&&f>=1&&f<=12))throw new Error("Lunar month outside range 1 - 12");if(!(typeof v=="number"&&v>=1&&v<=30))throw new Error("Lunar day outside range 1 - 30");typeof m=="object"?(A=!1,T=m):(A=!!m,T={}),d={year:g,month:f,day:v,isIntercalary:A}}M=d.day-1;var C,P=o[d.year-o[0]],O=P>>13;C=O&&(d.month>O||d.isIntercalary)?d.month:d.month-1;for(var z=0;z<C;z++)M+=P&1<<12-z?30:29;var B=r[d.year-r[0]],Y=new Date(B>>9&4095,(B>>5&15)-1,(31&B)+M);return T.year=Y.getFullYear(),T.month=1+Y.getMonth(),T.day=Y.getDate(),T}(n,c,s,p);return i.toJD(b.year,b.month,b.day)},fromJD:function(n){var a=i.fromJD(n),s=function(p,c,b,g){var f,v;if(typeof p=="object")f=p,v=c||{};else{if(!(typeof p=="number"&&p>=1888&&p<=2111))throw new Error("Solar year outside range 1888-2111");if(!(typeof c=="number"&&c>=1&&c<=12))throw new Error("Solar month outside range 1 - 12");if(!(typeof b=="number"&&b>=1&&b<=31))throw new Error("Solar day outside range 1 - 31");f={year:p,month:c,day:b},v={}}var m=r[f.year-r[0]],x=f.year<<9|f.month<<5|f.day;v.year=x>=m?f.year:f.year-1,m=r[v.year-r[0]];var T,d=new Date(m>>9&4095,(m>>5&15)-1,31&m),M=new Date(f.year,f.month-1,f.day);T=Math.round((M-d)/864e5);var A,C=o[v.year-o[0]];for(A=0;A<13;A++){var P=C&1<<12-A?30:29;if(T<P)break;T-=P}var O=C>>13;return!O||A<O?(v.isIntercalary=!1,v.month=1+A):A===O?(v.isIntercalary=!0,v.month=A):(v.isIntercalary=!1,v.month=A),v.day=1+T,v}(a.year(),a.month(),a.day()),u=this.toMonthIndex(s.year,s.month,s.isIntercalary);return this.newDate(s.year,u,s.day)},fromString:function(n){var a=n.match(y),s=this._validateYear(+a[1]),u=+a[2],p=!!a[3],c=this.toMonthIndex(s,u,p),b=+a[4];return this.newDate(s,c,b)},add:function(n,a,s){var u=n.year(),p=n.month(),c=this.isIntercalaryMonth(u,p),b=this.toChineseMonth(u,p),g=Object.getPrototypeOf(_.prototype).add.call(this,n,a,s);if(s==="y"){var f=g.year(),v=g.month(),m=this.isIntercalaryMonth(f,b),x=c&&m?this.toMonthIndex(f,b,!0):this.toMonthIndex(f,b,!1);x!==v&&g.month(x)}return g}});var y=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,h=/^\d?\d[iI]?/m,l=/^闰?十?[一二三四五六七八九]?月/m,t=/^闰?十?[一二三四五六七八九]?/m;w.calendars.chinese=_;var o=[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],r=[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]},38751:function(R,E,e){var w=e(63489),k=e(56131);function i(_){this.local=this.regionalOptions[_||""]||this.regionalOptions[""]}i.prototype=new w.baseCalendar,k(i.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(_){var y=this._validate(_,this.minMonth,this.minDay,w.local.invalidYear);return(_=y.year()+(y.year()<0?1:0))%4==3||_%4==-1},monthsInYear:function(_){return this._validate(_,this.minMonth,this.minDay,w.local.invalidYear||w.regionalOptions[""].invalidYear),13},weekOfYear:function(_,y,h){var l=this.newDate(_,y,h);return l.add(-l.dayOfWeek(),"d"),Math.floor((l.dayOfYear()-1)/7)+1},daysInMonth:function(_,y){var h=this._validate(_,y,this.minDay,w.local.invalidMonth);return this.daysPerMonth[h.month()-1]+(h.month()===13&&this.leapYear(h.year())?1:0)},weekDay:function(_,y,h){return(this.dayOfWeek(_,y,h)||7)<6},toJD:function(_,y,h){var l=this._validate(_,y,h,w.local.invalidDate);return(_=l.year())<0&&_++,l.day()+30*(l.month()-1)+365*(_-1)+Math.floor(_/4)+this.jdEpoch-1},fromJD:function(_){var y=Math.floor(_)+.5-this.jdEpoch,h=Math.floor((y-Math.floor((y+366)/1461))/365)+1;h<=0&&h--,y=Math.floor(_)+.5-this.newDate(h,1,1).toJD();var l=Math.floor(y/30)+1,t=y-30*(l-1)+1;return this.newDate(h,l,t)}}),w.calendars.coptic=i},86825:function(R,E,e){var w=e(63489),k=e(56131);function i(y){this.local=this.regionalOptions[y||""]||this.regionalOptions[""]}i.prototype=new w.baseCalendar,k(i.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(y){return this._validate(y,this.minMonth,this.minDay,w.local.invalidYear),!1},monthsInYear:function(y){return this._validate(y,this.minMonth,this.minDay,w.local.invalidYear),13},daysInYear:function(y){return this._validate(y,this.minMonth,this.minDay,w.local.invalidYear),400},weekOfYear:function(y,h,l){var t=this.newDate(y,h,l);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/8)+1},daysInMonth:function(y,h){var l=this._validate(y,h,this.minDay,w.local.invalidMonth);return this.daysPerMonth[l.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(y,h,l){return(this._validate(y,h,l,w.local.invalidDate).day()+1)%8},weekDay:function(y,h,l){var t=this.dayOfWeek(y,h,l);return t>=2&&t<=6},extraInfo:function(y,h,l){var t=this._validate(y,h,l,w.local.invalidDate);return{century:_[Math.floor((t.year()-1)/100)+1]||""}},toJD:function(y,h,l){var t=this._validate(y,h,l,w.local.invalidDate);return y=t.year()+(t.year()<0?1:0),h=t.month(),(l=t.day())+(h>1?16:0)+(h>2?32*(h-2):0)+400*(y-1)+this.jdEpoch-1},fromJD:function(y){y=Math.floor(y+.5)-Math.floor(this.jdEpoch)-1;var h=Math.floor(y/400)+1;y-=400*(h-1),y+=y>15?16:0;var l=Math.floor(y/32)+1,t=y-32*(l-1)+1;return this.newDate(h<=0?h-1:h,l,t)}});var _={20:"Fruitbat",21:"Anchovy"};w.calendars.discworld=i},37715:function(R,E,e){var w=e(63489),k=e(56131);function i(_){this.local=this.regionalOptions[_||""]||this.regionalOptions[""]}i.prototype=new w.baseCalendar,k(i.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(_){var y=this._validate(_,this.minMonth,this.minDay,w.local.invalidYear);return(_=y.year()+(y.year()<0?1:0))%4==3||_%4==-1},monthsInYear:function(_){return this._validate(_,this.minMonth,this.minDay,w.local.invalidYear||w.regionalOptions[""].invalidYear),13},weekOfYear:function(_,y,h){var l=this.newDate(_,y,h);return l.add(-l.dayOfWeek(),"d"),Math.floor((l.dayOfYear()-1)/7)+1},daysInMonth:function(_,y){var h=this._validate(_,y,this.minDay,w.local.invalidMonth);return this.daysPerMonth[h.month()-1]+(h.month()===13&&this.leapYear(h.year())?1:0)},weekDay:function(_,y,h){return(this.dayOfWeek(_,y,h)||7)<6},toJD:function(_,y,h){var l=this._validate(_,y,h,w.local.invalidDate);return(_=l.year())<0&&_++,l.day()+30*(l.month()-1)+365*(_-1)+Math.floor(_/4)+this.jdEpoch-1},fromJD:function(_){var y=Math.floor(_)+.5-this.jdEpoch,h=Math.floor((y-Math.floor((y+366)/1461))/365)+1;h<=0&&h--,y=Math.floor(_)+.5-this.newDate(h,1,1).toJD();var l=Math.floor(y/30)+1,t=y-30*(l-1)+1;return this.newDate(h,l,t)}}),w.calendars.ethiopian=i},99384:function(R,E,e){var w=e(63489),k=e(56131);function i(y){this.local=this.regionalOptions[y||""]||this.regionalOptions[""]}function _(y,h){return y-h*Math.floor(y/h)}i.prototype=new w.baseCalendar,k(i.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(y){var h=this._validate(y,this.minMonth,this.minDay,w.local.invalidYear);return this._leapYear(h.year())},_leapYear:function(y){return _(7*(y=y<0?y+1:y)+1,19)<7},monthsInYear:function(y){return this._validate(y,this.minMonth,this.minDay,w.local.invalidYear),this._leapYear(y.year?y.year():y)?13:12},weekOfYear:function(y,h,l){var t=this.newDate(y,h,l);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInYear:function(y){return y=this._validate(y,this.minMonth,this.minDay,w.local.invalidYear).year(),this.toJD(y===-1?1:y+1,7,1)-this.toJD(y,7,1)},daysInMonth:function(y,h){return y.year&&(h=y.month(),y=y.year()),this._validate(y,h,this.minDay,w.local.invalidMonth),h===12&&this.leapYear(y)||h===8&&_(this.daysInYear(y),10)===5?30:h===9&&_(this.daysInYear(y),10)===3?29:this.daysPerMonth[h-1]},weekDay:function(y,h,l){return this.dayOfWeek(y,h,l)!==6},extraInfo:function(y,h,l){var t=this._validate(y,h,l,w.local.invalidDate);return{yearType:(this.leapYear(t)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(t)%10-3]}},toJD:function(y,h,l){var t=this._validate(y,h,l,w.local.invalidDate);y=t.year(),h=t.month(),l=t.day();var o=y<=0?y+1:y,r=this.jdEpoch+this._delay1(o)+this._delay2(o)+l+1;if(h<7){for(var n=7;n<=this.monthsInYear(y);n++)r+=this.daysInMonth(y,n);for(n=1;n<h;n++)r+=this.daysInMonth(y,n)}else for(n=7;n<h;n++)r+=this.daysInMonth(y,n);return r},_delay1:function(y){var h=Math.floor((235*y-234)/19),l=12084+13753*h,t=29*h+Math.floor(l/25920);return _(3*(t+1),7)<3&&t++,t},_delay2:function(y){var h=this._delay1(y-1),l=this._delay1(y);return this._delay1(y+1)-l==356?2:l-h==382?1:0},fromJD:function(y){y=Math.floor(y)+.5;for(var h=Math.floor(98496*(y-this.jdEpoch)/35975351)-1;y>=this.toJD(h===-1?1:h+1,7,1);)h++;for(var l=y<this.toJD(h,1,1)?7:1;y>this.toJD(h,l,this.daysInMonth(h,l));)l++;var t=y-this.toJD(h,l,1)+1;return this.newDate(h,l,t)}}),w.calendars.hebrew=i},43805:function(R,E,e){var w=e(63489),k=e(56131);function i(_){this.local=this.regionalOptions[_||""]||this.regionalOptions[""]}i.prototype=new w.baseCalendar,k(i.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īs","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(_){return(11*this._validate(_,this.minMonth,this.minDay,w.local.invalidYear).year()+14)%30<11},weekOfYear:function(_,y,h){var l=this.newDate(_,y,h);return l.add(-l.dayOfWeek(),"d"),Math.floor((l.dayOfYear()-1)/7)+1},daysInYear:function(_){return this.leapYear(_)?355:354},daysInMonth:function(_,y){var h=this._validate(_,y,this.minDay,w.local.invalidMonth);return this.daysPerMonth[h.month()-1]+(h.month()===12&&this.leapYear(h.year())?1:0)},weekDay:function(_,y,h){return this.dayOfWeek(_,y,h)!==5},toJD:function(_,y,h){var l=this._validate(_,y,h,w.local.invalidDate);return _=l.year(),y=l.month(),_=_<=0?_+1:_,(h=l.day())+Math.ceil(29.5*(y-1))+354*(_-1)+Math.floor((3+11*_)/30)+this.jdEpoch-1},fromJD:function(_){_=Math.floor(_)+.5;var y=Math.floor((30*(_-this.jdEpoch)+10646)/10631);y=y<=0?y-1:y;var h=Math.min(12,Math.ceil((_-29-this.toJD(y,1,1))/29.5)+1),l=_-this.toJD(y,h,1)+1;return this.newDate(y,h,l)}}),w.calendars.islamic=i},88874:function(R,E,e){var w=e(63489),k=e(56131);function i(_){this.local=this.regionalOptions[_||""]||this.regionalOptions[""]}i.prototype=new w.baseCalendar,k(i.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(_){var y=this._validate(_,this.minMonth,this.minDay,w.local.invalidYear);return(_=y.year()<0?y.year()+1:y.year())%4==0},weekOfYear:function(_,y,h){var l=this.newDate(_,y,h);return l.add(4-(l.dayOfWeek()||7),"d"),Math.floor((l.dayOfYear()-1)/7)+1},daysInMonth:function(_,y){var h=this._validate(_,y,this.minDay,w.local.invalidMonth);return this.daysPerMonth[h.month()-1]+(h.month()===2&&this.leapYear(h.year())?1:0)},weekDay:function(_,y,h){return(this.dayOfWeek(_,y,h)||7)<6},toJD:function(_,y,h){var l=this._validate(_,y,h,w.local.invalidDate);return _=l.year(),y=l.month(),h=l.day(),_<0&&_++,y<=2&&(_--,y+=12),Math.floor(365.25*(_+4716))+Math.floor(30.6001*(y+1))+h-1524.5},fromJD:function(_){var y=Math.floor(_+.5)+1524,h=Math.floor((y-122.1)/365.25),l=Math.floor(365.25*h),t=Math.floor((y-l)/30.6001),o=t-Math.floor(t<14?1:13),r=h-Math.floor(o>2?4716:4715),n=y-l-Math.floor(30.6001*t);return r<=0&&r--,this.newDate(r,o,n)}}),w.calendars.julian=i},83290:function(R,E,e){var w=e(63489),k=e(56131);function i(h){this.local=this.regionalOptions[h||""]||this.regionalOptions[""]}function _(h,l){return h-l*Math.floor(h/l)}function y(h,l){return _(h-1,l)+1}i.prototype=new w.baseCalendar,k(i.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(h){return this._validate(h,this.minMonth,this.minDay,w.local.invalidYear),!1},formatYear:function(h){h=this._validate(h,this.minMonth,this.minDay,w.local.invalidYear).year();var l=Math.floor(h/400);return h%=400,h+=h<0?400:0,l+"."+Math.floor(h/20)+"."+h%20},forYear:function(h){if((h=h.split(".")).length<3)throw"Invalid Mayan year";for(var l=0,t=0;t<h.length;t++){var o=parseInt(h[t],10);if(Math.abs(o)>19||t>0&&o<0)throw"Invalid Mayan year";l=20*l+o}return l},monthsInYear:function(h){return this._validate(h,this.minMonth,this.minDay,w.local.invalidYear),18},weekOfYear:function(h,l,t){return this._validate(h,l,t,w.local.invalidDate),0},daysInYear:function(h){return this._validate(h,this.minMonth,this.minDay,w.local.invalidYear),360},daysInMonth:function(h,l){return this._validate(h,l,this.minDay,w.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(h,l,t){return this._validate(h,l,t,w.local.invalidDate).day()},weekDay:function(h,l,t){return this._validate(h,l,t,w.local.invalidDate),!0},extraInfo:function(h,l,t){var o=this._validate(h,l,t,w.local.invalidDate).toJD(),r=this._toHaab(o),n=this._toTzolkin(o);return{haabMonthName:this.local.haabMonths[r[0]-1],haabMonth:r[0],haabDay:r[1],tzolkinDayName:this.local.tzolkinMonths[n[0]-1],tzolkinDay:n[0],tzolkinTrecena:n[1]}},_toHaab:function(h){var l=_(8+(h-=this.jdEpoch)+340,365);return[Math.floor(l/20)+1,_(l,20)]},_toTzolkin:function(h){return[y(20+(h-=this.jdEpoch),20),y(h+4,13)]},toJD:function(h,l,t){var o=this._validate(h,l,t,w.local.invalidDate);return o.day()+20*o.month()+360*o.year()+this.jdEpoch},fromJD:function(h){h=Math.floor(h)+.5-this.jdEpoch;var l=Math.floor(h/360);h%=360,h+=h<0?360:0;var t=Math.floor(h/20),o=h%20;return this.newDate(l,t,o)}}),w.calendars.mayan=i},29108:function(R,E,e){var w=e(63489),k=e(56131);function i(y){this.local=this.regionalOptions[y||""]||this.regionalOptions[""]}i.prototype=new w.baseCalendar;var _=w.instance("gregorian");k(i.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(y){var h=this._validate(y,this.minMonth,this.minDay,w.local.invalidYear||w.regionalOptions[""].invalidYear);return _.leapYear(h.year()+(h.year()<1?1:0)+1469)},weekOfYear:function(y,h,l){var t=this.newDate(y,h,l);return t.add(1-(t.dayOfWeek()||7),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInMonth:function(y,h){var l=this._validate(y,h,this.minDay,w.local.invalidMonth);return this.daysPerMonth[l.month()-1]+(l.month()===12&&this.leapYear(l.year())?1:0)},weekDay:function(y,h,l){return(this.dayOfWeek(y,h,l)||7)<6},toJD:function(y,h,l){var t=this._validate(y,h,l,w.local.invalidMonth);(y=t.year())<0&&y++;for(var o=t.day(),r=1;r<t.month();r++)o+=this.daysPerMonth[r-1];return o+_.toJD(y+1468,3,13)},fromJD:function(y){y=Math.floor(y+.5);for(var h=Math.floor((y-(this.jdEpoch-1))/366);y>=this.toJD(h+1,1,1);)h++;for(var l=y-Math.floor(this.toJD(h,1,1)+.5)+1,t=1;l>this.daysInMonth(h,t);)l-=this.daysInMonth(h,t),t++;return this.newDate(h,t,l)}}),w.calendars.nanakshahi=i},55422:function(R,E,e){var w=e(63489),k=e(56131);function i(_){this.local=this.regionalOptions[_||""]||this.regionalOptions[""]}i.prototype=new w.baseCalendar,k(i.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(_){return this.daysInYear(_)!==this.daysPerYear},weekOfYear:function(_,y,h){var l=this.newDate(_,y,h);return l.add(-l.dayOfWeek(),"d"),Math.floor((l.dayOfYear()-1)/7)+1},daysInYear:function(_){if(_=this._validate(_,this.minMonth,this.minDay,w.local.invalidYear).year(),this.NEPALI_CALENDAR_DATA[_]===void 0)return this.daysPerYear;for(var y=0,h=this.minMonth;h<=12;h++)y+=this.NEPALI_CALENDAR_DATA[_][h];return y},daysInMonth:function(_,y){return _.year&&(y=_.month(),_=_.year()),this._validate(_,y,this.minDay,w.local.invalidMonth),this.NEPALI_CALENDAR_DATA[_]===void 0?this.daysPerMonth[y-1]:this.NEPALI_CALENDAR_DATA[_][y]},weekDay:function(_,y,h){return this.dayOfWeek(_,y,h)!==6},toJD:function(_,y,h){var l=this._validate(_,y,h,w.local.invalidDate);_=l.year(),y=l.month(),h=l.day();var t=w.instance(),o=0,r=y,n=_;this._createMissingCalendarData(_);var a=_-(r>9||r===9&&h>=this.NEPALI_CALENDAR_DATA[n][0]?56:57);for(y!==9&&(o=h,r--);r!==9;)r<=0&&(r=12,n--),o+=this.NEPALI_CALENDAR_DATA[n][r],r--;return y===9?(o+=h-this.NEPALI_CALENDAR_DATA[n][0])<0&&(o+=t.daysInYear(a)):o+=this.NEPALI_CALENDAR_DATA[n][9]-this.NEPALI_CALENDAR_DATA[n][0],t.newDate(a,1,1).add(o,"d").toJD()},fromJD:function(_){var y=w.instance().fromJD(_),h=y.year(),l=y.dayOfYear(),t=h+56;this._createMissingCalendarData(t);for(var o=9,r=this.NEPALI_CALENDAR_DATA[t][0],n=this.NEPALI_CALENDAR_DATA[t][o]-r+1;l>n;)++o>12&&(o=1,t++),n+=this.NEPALI_CALENDAR_DATA[t][o];var a=this.NEPALI_CALENDAR_DATA[t][o]-(n-l);return this.newDate(t,o,a)},_createMissingCalendarData:function(_){var y=this.daysPerMonth.slice(0);y.unshift(17);for(var h=_-1;h<_+2;h++)this.NEPALI_CALENDAR_DATA[h]===void 0&&(this.NEPALI_CALENDAR_DATA[h]=y)},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]}}),w.calendars.nepali=i},94320:function(R,E,e){var w=e(63489),k=e(56131);function i(y){this.local=this.regionalOptions[y||""]||this.regionalOptions[""]}function _(y,h){return y-h*Math.floor(y/h)}i.prototype=new w.baseCalendar,k(i.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æharshambe","Panjshambe","Jom'e","Shambe"],dayNamesShort:["Yek","Do","Se","Chæ","Panj","Jom","Sha"],dayNamesMin:["Ye","Do","Se","Ch","Pa","Jo","Sh"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(y){var h=this._validate(y,this.minMonth,this.minDay,w.local.invalidYear);return 682*((h.year()-(h.year()>0?474:473))%2820+474+38)%2816<682},weekOfYear:function(y,h,l){var t=this.newDate(y,h,l);return t.add(-(t.dayOfWeek()+1)%7,"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInMonth:function(y,h){var l=this._validate(y,h,this.minDay,w.local.invalidMonth);return this.daysPerMonth[l.month()-1]+(l.month()===12&&this.leapYear(l.year())?1:0)},weekDay:function(y,h,l){return this.dayOfWeek(y,h,l)!==5},toJD:function(y,h,l){var t=this._validate(y,h,l,w.local.invalidDate);y=t.year(),h=t.month(),l=t.day();var o=y-(y>=0?474:473),r=474+_(o,2820);return l+(h<=7?31*(h-1):30*(h-1)+6)+Math.floor((682*r-110)/2816)+365*(r-1)+1029983*Math.floor(o/2820)+this.jdEpoch-1},fromJD:function(y){var h=(y=Math.floor(y)+.5)-this.toJD(475,1,1),l=Math.floor(h/1029983),t=_(h,1029983),o=2820;if(t!==1029982){var r=Math.floor(t/366),n=_(t,366);o=Math.floor((2134*r+2816*n+2815)/1028522)+r+1}var a=o+2820*l+474;a=a<=0?a-1:a;var s=y-this.toJD(a,1,1)+1,u=s<=186?Math.ceil(s/31):Math.ceil((s-6)/30),p=y-this.toJD(a,u,1)+1;return this.newDate(a,u,p)}}),w.calendars.persian=i,w.calendars.jalali=i},31320:function(R,E,e){var w=e(63489),k=e(56131),i=w.instance();function _(y){this.local=this.regionalOptions[y||""]||this.regionalOptions[""]}_.prototype=new w.baseCalendar,k(_.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(y){var h=this._validate(y,this.minMonth,this.minDay,w.local.invalidYear);return y=this._t2gYear(h.year()),i.leapYear(y)},weekOfYear:function(y,h,l){var t=this._validate(y,this.minMonth,this.minDay,w.local.invalidYear);return y=this._t2gYear(t.year()),i.weekOfYear(y,t.month(),t.day())},daysInMonth:function(y,h){var l=this._validate(y,h,this.minDay,w.local.invalidMonth);return this.daysPerMonth[l.month()-1]+(l.month()===2&&this.leapYear(l.year())?1:0)},weekDay:function(y,h,l){return(this.dayOfWeek(y,h,l)||7)<6},toJD:function(y,h,l){var t=this._validate(y,h,l,w.local.invalidDate);return y=this._t2gYear(t.year()),i.toJD(y,t.month(),t.day())},fromJD:function(y){var h=i.fromJD(y),l=this._g2tYear(h.year());return this.newDate(l,h.month(),h.day())},_t2gYear:function(y){return y+this.yearsOffset+(y>=-this.yearsOffset&&y<=-1?1:0)},_g2tYear:function(y){return y-this.yearsOffset-(y>=1&&y<=this.yearsOffset?1:0)}}),w.calendars.taiwan=_},51367:function(R,E,e){var w=e(63489),k=e(56131),i=w.instance();function _(y){this.local=this.regionalOptions[y||""]||this.regionalOptions[""]}_.prototype=new w.baseCalendar,k(_.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(y){var h=this._validate(y,this.minMonth,this.minDay,w.local.invalidYear);return y=this._t2gYear(h.year()),i.leapYear(y)},weekOfYear:function(y,h,l){var t=this._validate(y,this.minMonth,this.minDay,w.local.invalidYear);return y=this._t2gYear(t.year()),i.weekOfYear(y,t.month(),t.day())},daysInMonth:function(y,h){var l=this._validate(y,h,this.minDay,w.local.invalidMonth);return this.daysPerMonth[l.month()-1]+(l.month()===2&&this.leapYear(l.year())?1:0)},weekDay:function(y,h,l){return(this.dayOfWeek(y,h,l)||7)<6},toJD:function(y,h,l){var t=this._validate(y,h,l,w.local.invalidDate);return y=this._t2gYear(t.year()),i.toJD(y,t.month(),t.day())},fromJD:function(y){var h=i.fromJD(y),l=this._g2tYear(h.year());return this.newDate(l,h.month(),h.day())},_t2gYear:function(y){return y-this.yearsOffset-(y>=1&&y<=this.yearsOffset?1:0)},_g2tYear:function(y){return y+this.yearsOffset+(y>=-this.yearsOffset&&y<=-1?1:0)}}),w.calendars.thai=_},21457:function(R,E,e){var w=e(63489),k=e(56131);function i(y){this.local=this.regionalOptions[y||""]||this.regionalOptions[""]}i.prototype=new w.baseCalendar,k(i.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āthā’","Yawm al-Arba‘ā’","Yawm al-Khamīs","Yawm al-Jum‘a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(y){var h=this._validate(y,this.minMonth,this.minDay,w.local.invalidYear);return this.daysInYear(h.year())===355},weekOfYear:function(y,h,l){var t=this.newDate(y,h,l);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInYear:function(y){for(var h=0,l=1;l<=12;l++)h+=this.daysInMonth(y,l);return h},daysInMonth:function(y,h){for(var l=this._validate(y,h,this.minDay,w.local.invalidMonth).toJD()-24e5+.5,t=0,o=0;o<_.length;o++){if(_[o]>l)return _[t]-_[t-1];t++}return 30},weekDay:function(y,h,l){return this.dayOfWeek(y,h,l)!==5},toJD:function(y,h,l){var t=this._validate(y,h,l,w.local.invalidDate),o=12*(t.year()-1)+t.month()-15292;return t.day()+_[o-1]-1+24e5-.5},fromJD:function(y){for(var h=y-24e5+.5,l=0,t=0;t<_.length&&!(_[t]>h);t++)l++;var o=l+15292,r=Math.floor((o-1)/12),n=r+1,a=o-12*r,s=h-_[l-1]+1;return this.newDate(n,a,s)},isValid:function(y,h,l){var t=w.baseCalendar.prototype.isValid.apply(this,arguments);return t&&(t=(y=y.year!=null?y.year:y)>=1276&&y<=1500),t},_validate:function(y,h,l,t){var o=w.baseCalendar.prototype._validate.apply(this,arguments);if(o.year<1276||o.year>1500)throw t.replace(/\{0\}/,this.local.name);return o}}),w.calendars.ummalqura=i;var _=[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]},63489:function(R,E,e){var w=e(56131);function k(){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={}}function i(t,o,r,n){if(this._calendar=t,this._year=o,this._month=r,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(l.local.invalidDate||l.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function _(t,o){return"000000".substring(0,o-(t=""+t).length)+t}function y(){this.shortYearCutoff="+10"}function h(t){this.local=this.regionalOptions[t]||this.regionalOptions[""]}w(k.prototype,{instance:function(t,o){t=(t||"gregorian").toLowerCase(),o=o||"";var r=this._localCals[t+"-"+o];if(!r&&this.calendars[t]&&(r=new this.calendars[t](o),this._localCals[t+"-"+o]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,t);return r},newDate:function(t,o,r,n,a){return(n=(t!=null&&t.year?t.calendar():typeof n=="string"?this.instance(n,a):n)||this.instance()).newDate(t,o,r)},substituteDigits:function(t){return function(o){return(o+"").replace(/[0-9]/g,function(r){return t[r]})}},substituteChineseDigits:function(t,o){return function(r){for(var n="",a=0;r>0;){var s=r%10;n=(s===0?"":t[s]+o[a])+n,a++,r=Math.floor(r/10)}return n.indexOf(t[1]+o[1])===0&&(n=n.substr(1)),n||t[0]}}}),w(i.prototype,{newDate:function(t,o,r){return this._calendar.newDate(t??this,o,r)},year:function(t){return arguments.length===0?this._year:this.set(t,"y")},month:function(t){return arguments.length===0?this._month:this.set(t,"m")},day:function(t){return arguments.length===0?this._day:this.set(t,"d")},date:function(t,o,r){if(!this._calendar.isValid(t,o,r))throw(l.local.invalidDate||l.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=t,this._month=o,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(t,o){return this._calendar.add(this,t,o)},set:function(t,o){return this._calendar.set(this,t,o)},compareTo:function(t){if(this._calendar.name!==t._calendar.name)throw(l.local.differentCalendars||l.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,t._calendar.local.name);var o=this._year!==t._year?this._year-t._year:this._month!==t._month?this.monthOfYear()-t.monthOfYear():this._day-t._day;return o===0?0:o<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(t){return this._calendar.fromJD(t)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(t){return this._calendar.fromJSDate(t)},toString:function(){return(this.year()<0?"-":"")+_(Math.abs(this.year()),4)+"-"+_(this.month(),2)+"-"+_(this.day(),2)}}),w(y.prototype,{_validateLevel:0,newDate:function(t,o,r){return t==null?this.today():(t.year&&(this._validate(t,o,r,l.local.invalidDate||l.regionalOptions[""].invalidDate),r=t.day(),o=t.month(),t=t.year()),new i(this,t,o,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(t){return this._validate(t,this.minMonth,this.minDay,l.local.invalidYear||l.regionalOptions[""].invalidYear).year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(t){var o=this._validate(t,this.minMonth,this.minDay,l.local.invalidYear||l.regionalOptions[""].invalidYear);return(o.year()<0?"-":"")+_(Math.abs(o.year()),4)},monthsInYear:function(t){return this._validate(t,this.minMonth,this.minDay,l.local.invalidYear||l.regionalOptions[""].invalidYear),12},monthOfYear:function(t,o){var r=this._validate(t,o,this.minDay,l.local.invalidMonth||l.regionalOptions[""].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(t,o){var r=(o+this.firstMonth-2*this.minMonth)%this.monthsInYear(t)+this.minMonth;return this._validate(t,r,this.minDay,l.local.invalidMonth||l.regionalOptions[""].invalidMonth),r},daysInYear:function(t){var o=this._validate(t,this.minMonth,this.minDay,l.local.invalidYear||l.regionalOptions[""].invalidYear);return this.leapYear(o)?366:365},dayOfYear:function(t,o,r){var n=this._validate(t,o,r,l.local.invalidDate||l.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(t,o,r){var n=this._validate(t,o,r,l.local.invalidDate||l.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(t,o,r){return this._validate(t,o,r,l.local.invalidDate||l.regionalOptions[""].invalidDate),{}},add:function(t,o,r){return this._validate(t,this.minMonth,this.minDay,l.local.invalidDate||l.regionalOptions[""].invalidDate),this._correctAdd(t,this._add(t,o,r),o,r)},_add:function(t,o,r){if(this._validateLevel++,r==="d"||r==="w"){var n=t.toJD()+o*(r==="w"?this.daysInWeek():1),a=t.calendar().fromJD(n);return this._validateLevel--,[a.year(),a.month(),a.day()]}try{var s=t.year()+(r==="y"?o:0),u=t.monthOfYear()+(r==="m"?o:0);a=t.day(),r==="y"?(t.month()!==this.fromMonthOfYear(s,u)&&(u=this.newDate(s,t.month(),this.minDay).monthOfYear()),u=Math.min(u,this.monthsInYear(s)),a=Math.min(a,this.daysInMonth(s,this.fromMonthOfYear(s,u)))):r==="m"&&(function(c){for(;u<c.minMonth;)s--,u+=c.monthsInYear(s);for(var b=c.monthsInYear(s);u>b-1+c.minMonth;)s++,u-=b,b=c.monthsInYear(s)}(this),a=Math.min(a,this.daysInMonth(s,this.fromMonthOfYear(s,u))));var p=[s,this.fromMonthOfYear(s,u),a];return this._validateLevel--,p}catch(c){throw this._validateLevel--,c}},_correctAdd:function(t,o,r,n){if(!(this.hasYearZero||n!=="y"&&n!=="m"||o[0]!==0&&t.year()>0==o[0]>0)){var a={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],s=r<0?-1:1;o=this._add(t,r*a[0]+s*a[1],a[2])}return t.date(o[0],o[1],o[2])},set:function(t,o,r){this._validate(t,this.minMonth,this.minDay,l.local.invalidDate||l.regionalOptions[""].invalidDate);var n=r==="y"?o:t.year(),a=r==="m"?o:t.month(),s=r==="d"?o:t.day();return r!=="y"&&r!=="m"||(s=Math.min(s,this.daysInMonth(n,a))),t.date(n,a,s)},isValid:function(t,o,r){this._validateLevel++;var n=this.hasYearZero||t!==0;if(n){var a=this.newDate(t,o,this.minDay);n=o>=this.minMonth&&o-this.minMonth<this.monthsInYear(a)&&r>=this.minDay&&r-this.minDay<this.daysInMonth(a)}return this._validateLevel--,n},toJSDate:function(t,o,r){var n=this._validate(t,o,r,l.local.invalidDate||l.regionalOptions[""].invalidDate);return l.instance().fromJD(this.toJD(n)).toJSDate()},fromJSDate:function(t){return this.fromJD(l.instance().fromJSDate(t).toJD())},_validate:function(t,o,r,n){if(t.year){if(this._validateLevel===0&&this.name!==t.calendar().name)throw(l.local.differentCalendars||l.regionalOptions[""].differentCalendars).replace(/\{0\}/,this.local.name).replace(/\{1\}/,t.calendar().local.name);return t}try{if(this._validateLevel++,this._validateLevel===1&&!this.isValid(t,o,r))throw n.replace(/\{0\}/,this.local.name);var a=this.newDate(t,o,r);return this._validateLevel--,a}catch(s){throw this._validateLevel--,s}}}),h.prototype=new y,w(h.prototype,{name:"Gregorian",jdEpoch:17214255e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Gregorian",epochs:["BCE","CE"],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(t){var o=this._validate(t,this.minMonth,this.minDay,l.local.invalidYear||l.regionalOptions[""].invalidYear);return(t=o.year()+(o.year()<0?1:0))%4==0&&(t%100!=0||t%400==0)},weekOfYear:function(t,o,r){var n=this.newDate(t,o,r);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(t,o){var r=this._validate(t,o,this.minDay,l.local.invalidMonth||l.regionalOptions[""].invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(t,o,r){return(this.dayOfWeek(t,o,r)||7)<6},toJD:function(t,o,r){var n=this._validate(t,o,r,l.local.invalidDate||l.regionalOptions[""].invalidDate);t=n.year(),o=n.month(),r=n.day(),t<0&&t++,o<3&&(o+=12,t--);var a=Math.floor(t/100),s=2-a+Math.floor(a/4);return Math.floor(365.25*(t+4716))+Math.floor(30.6001*(o+1))+r+s-1524.5},fromJD:function(t){var o=Math.floor(t+.5),r=Math.floor((o-186721625e-2)/36524.25),n=1524+(r=o+1+r-Math.floor(r/4)),a=Math.floor((n-122.1)/365.25),s=Math.floor(365.25*a),u=Math.floor((n-s)/30.6001),p=n-s-Math.floor(30.6001*u),c=u-(u>13.5?13:1),b=a-(c>2.5?4716:4715);return b<=0&&b--,this.newDate(b,c,p)},toJSDate:function(t,o,r){var n=this._validate(t,o,r,l.local.invalidDate||l.regionalOptions[""].invalidDate),a=new Date(n.year(),n.month()-1,n.day());return a.setHours(0),a.setMinutes(0),a.setSeconds(0),a.setMilliseconds(0),a.setHours(a.getHours()>12?a.getHours()+2:0),a},fromJSDate:function(t){return this.newDate(t.getFullYear(),t.getMonth()+1,t.getDate())}});var l=R.exports=new k;l.cdate=i,l.baseCalendar=y,l.calendars.gregorian=h},94338:function(R,E,e){var w=e(56131),k=e(63489);w(k.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"}),k.local=k.regionalOptions[""],w(k.cdate.prototype,{formatDate:function(i,_){return typeof i!="string"&&(_=i,i=""),this._calendar.formatDate(i||"",this,_)}}),w(k.baseCalendar.prototype,{UNIX_EPOCH:k.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:86400,TICKS_EPOCH:k.instance().jdEpoch,TICKS_PER_DAY:864e9,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(i,_,y){if(typeof i!="string"&&(y=_,_=i,i=""),!_)return"";if(_.calendar()!==this)throw k.local.invalidFormat||k.regionalOptions[""].invalidFormat;i=i||this.local.dateFormat;for(var h,l,t,o=(y=y||{}).dayNamesShort||this.local.dayNamesShort,r=y.dayNames||this.local.dayNames,n=y.monthNumbers||this.local.monthNumbers,a=y.monthNamesShort||this.local.monthNamesShort,s=y.monthNames||this.local.monthNames,u=(y.calculateWeek||this.local.calculateWeek,function(d,M){for(var A=1;T+A<i.length&&i.charAt(T+A)===d;)A++;return T+=A-1,Math.floor(A/(M||1))>1}),p=function(d,M,A,C){var P=""+M;if(u(d,C))for(;P.length<A;)P="0"+P;return P},c=this,b=function(d){return typeof n=="function"?n.call(c,d,u("m")):v(p("m",d.month(),2))},g=function(d,M){return M?typeof s=="function"?s.call(c,d):s[d.month()-c.minMonth]:typeof a=="function"?a.call(c,d):a[d.month()-c.minMonth]},f=this.local.digits,v=function(d){return y.localNumbers&&f?f(d):d},m="",x=!1,T=0;T<i.length;T++)if(x)i.charAt(T)!=="'"||u("'")?m+=i.charAt(T):x=!1;else switch(i.charAt(T)){case"d":m+=v(p("d",_.day(),2));break;case"D":m+=(h=_.dayOfWeek(),l=o,t=r,u("D")?t[h]:l[h]);break;case"o":m+=p("o",_.dayOfYear(),3);break;case"w":m+=p("w",_.weekOfYear(),2);break;case"m":m+=b(_);break;case"M":m+=g(_,u("M"));break;case"y":m+=u("y",2)?_.year():(_.year()%100<10?"0":"")+_.year()%100;break;case"Y":u("Y",2),m+=_.formatYear();break;case"J":m+=_.toJD();break;case"@":m+=(_.toJD()-this.UNIX_EPOCH)*this.SECS_PER_DAY;break;case"!":m+=(_.toJD()-this.TICKS_EPOCH)*this.TICKS_PER_DAY;break;case"'":u("'")?m+="'":x=!0;break;default:m+=i.charAt(T)}return m},parseDate:function(i,_,y){if(_==null)throw k.local.invalidArguments||k.regionalOptions[""].invalidArguments;if((_=typeof _=="object"?_.toString():_+"")==="")return null;i=i||this.local.dateFormat;var h=(y=y||{}).shortYearCutoff||this.shortYearCutoff;h=typeof h!="string"?h:this.today().year()%100+parseInt(h,10);for(var l=y.dayNamesShort||this.local.dayNamesShort,t=y.dayNames||this.local.dayNames,o=y.parseMonth||this.local.parseMonth,r=y.monthNumbers||this.local.monthNumbers,n=y.monthNamesShort||this.local.monthNamesShort,a=y.monthNames||this.local.monthNames,s=-1,u=-1,p=-1,c=-1,b=-1,g=!1,f=!1,v=function(B,Y){for(var D=1;P+D<i.length&&i.charAt(P+D)===B;)D++;return P+=D-1,Math.floor(D/(Y||1))>1},m=function(B,Y){var D=v(B,Y),G=[2,3,D?4:2,D?4:2,10,11,20]["oyYJ@!".indexOf(B)+1],V=new RegExp("^-?\\d{1,"+G+"}"),j=_.substring(C).match(V);if(!j)throw(k.local.missingNumberAt||k.regionalOptions[""].missingNumberAt).replace(/\{0\}/,C);return C+=j[0].length,parseInt(j[0],10)},x=this,T=function(){if(typeof r=="function"){v("m");var B=r.call(x,_.substring(C));return C+=B.length,B}return m("m")},d=function(B,Y,D,G){for(var V=v(B,G)?D:Y,j=0;j<V.length;j++)if(_.substr(C,V[j].length).toLowerCase()===V[j].toLowerCase())return C+=V[j].length,j+x.minMonth;throw(k.local.unknownNameAt||k.regionalOptions[""].unknownNameAt).replace(/\{0\}/,C)},M=function(){if(typeof a=="function"){var B=v("M")?a.call(x,_.substring(C)):n.call(x,_.substring(C));return C+=B.length,B}return d("M",n,a)},A=function(){if(_.charAt(C)!==i.charAt(P))throw(k.local.unexpectedLiteralAt||k.regionalOptions[""].unexpectedLiteralAt).replace(/\{0\}/,C);C++},C=0,P=0;P<i.length;P++)if(f)i.charAt(P)!=="'"||v("'")?A():f=!1;else switch(i.charAt(P)){case"d":c=m("d");break;case"D":d("D",l,t);break;case"o":b=m("o");break;case"w":m("w");break;case"m":p=T();break;case"M":p=M();break;case"y":var O=P;g=!v("y",2),P=O,u=m("y",2);break;case"Y":u=m("Y",2);break;case"J":s=m("J")+.5,_.charAt(C)==="."&&(C++,m("J"));break;case"@":s=m("@")/this.SECS_PER_DAY+this.UNIX_EPOCH;break;case"!":s=m("!")/this.TICKS_PER_DAY+this.TICKS_EPOCH;break;case"*":C=_.length;break;case"'":v("'")?A():f=!0;break;default:A()}if(C<_.length)throw k.local.unexpectedText||k.regionalOptions[""].unexpectedText;if(u===-1?u=this.today().year():u<100&&g&&(u+=h===-1?1900:this.today().year()-this.today().year()%100-(u<=h?0:100)),typeof p=="string"&&(p=o.call(this,u,p)),b>-1){p=1,c=b;for(var z=this.daysInMonth(u,p);c>z;z=this.daysInMonth(u,p))p++,c-=z}return s>-1?this.fromJD(s):this.newDate(u,p,c)},determineDate:function(i,_,y,h,l){y&&typeof y!="object"&&(l=h,h=y,y=null),typeof h!="string"&&(l=h,h="");var t=this;return _=_?_.newDate():null,i==null?_:typeof i=="string"?function(o){try{return t.parseDate(h,o,l)}catch{}for(var r=((o=o.toLowerCase()).match(/^c/)&&y?y.newDate():null)||t.today(),n=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,a=n.exec(o);a;)r.add(parseInt(a[1],10),a[2]||"d"),a=n.exec(o);return r}(i):typeof i=="number"?isNaN(i)||i===1/0||i===-1/0?_:t.today().add(i,"d"):t.newDate(i)}})},69862:function(){},40964:function(){},72077:function(R,E,e){var w=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],k=typeof globalThis>"u"?e.g:globalThis;R.exports=function(){for(var i=[],_=0;_<w.length;_++)typeof k[w[_]]=="function"&&(i[i.length]=w[_]);return i}},81684:function(R,E,e){function w(me,_e,Se){me.prototype=_e.prototype=Se,Se.constructor=me}function k(me,_e){var Se=Object.create(me.prototype);for(var we in _e)Se[we]=_e[we];return Se}function i(){}e.d(E,{sX:function(){return de},k4:function(){return te}});var _=.7,y=1/_,h="\\s*([+-]?\\d+)\\s*",l="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",t="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",o=/^#([0-9a-f]{3,8})$/,r=new RegExp("^rgb\\(".concat(h,",").concat(h,",").concat(h,"\\)$")),n=new RegExp("^rgb\\(".concat(t,",").concat(t,",").concat(t,"\\)$")),a=new RegExp("^rgba\\(".concat(h,",").concat(h,",").concat(h,",").concat(l,"\\)$")),s=new RegExp("^rgba\\(".concat(t,",").concat(t,",").concat(t,",").concat(l,"\\)$")),u=new RegExp("^hsl\\(".concat(l,",").concat(t,",").concat(t,"\\)$")),p=new RegExp("^hsla\\(".concat(l,",").concat(t,",").concat(t,",").concat(l,"\\)$")),c={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};function b(){return this.rgb().formatHex()}function g(){return this.rgb().formatRgb()}function f(me){var _e,Se;return me=(me+"").trim().toLowerCase(),(_e=o.exec(me))?(Se=_e[1].length,_e=parseInt(_e[1],16),Se===6?v(_e):Se===3?new T(_e>>8&15|_e>>4&240,_e>>4&15|240&_e,(15&_e)<<4|15&_e,1):Se===8?m(_e>>24&255,_e>>16&255,_e>>8&255,(255&_e)/255):Se===4?m(_e>>12&15|_e>>8&240,_e>>8&15|_e>>4&240,_e>>4&15|240&_e,((15&_e)<<4|15&_e)/255):null):(_e=r.exec(me))?new T(_e[1],_e[2],_e[3],1):(_e=n.exec(me))?new T(255*_e[1]/100,255*_e[2]/100,255*_e[3]/100,1):(_e=a.exec(me))?m(_e[1],_e[2],_e[3],_e[4]):(_e=s.exec(me))?m(255*_e[1]/100,255*_e[2]/100,255*_e[3]/100,_e[4]):(_e=u.exec(me))?O(_e[1],_e[2]/100,_e[3]/100,1):(_e=p.exec(me))?O(_e[1],_e[2]/100,_e[3]/100,_e[4]):c.hasOwnProperty(me)?v(c[me]):me==="transparent"?new T(NaN,NaN,NaN,0):null}function v(me){return new T(me>>16&255,me>>8&255,255&me,1)}function m(me,_e,Se,we){return we<=0&&(me=_e=Se=NaN),new T(me,_e,Se,we)}function x(me,_e,Se,we){return arguments.length===1?((xe=me)instanceof i||(xe=f(xe)),xe?new T((xe=xe.rgb()).r,xe.g,xe.b,xe.opacity):new T):new T(me,_e,Se,we??1);var xe}function T(me,_e,Se,we){this.r=+me,this.g=+_e,this.b=+Se,this.opacity=+we}function d(){return"#".concat(P(this.r)).concat(P(this.g)).concat(P(this.b))}function M(){var me=A(this.opacity);return"".concat(me===1?"rgb(":"rgba(").concat(C(this.r),", ").concat(C(this.g),", ").concat(C(this.b)).concat(me===1?")":", ".concat(me,")"))}function A(me){return isNaN(me)?1:Math.max(0,Math.min(1,me))}function C(me){return Math.max(0,Math.min(255,Math.round(me)||0))}function P(me){return((me=C(me))<16?"0":"")+me.toString(16)}function O(me,_e,Se,we){return we<=0?me=_e=Se=NaN:Se<=0||Se>=1?me=_e=NaN:_e<=0&&(me=NaN),new B(me,_e,Se,we)}function z(me){if(me instanceof B)return new B(me.h,me.s,me.l,me.opacity);if(me instanceof i||(me=f(me)),!me)return new B;if(me instanceof B)return me;var _e=(me=me.rgb()).r/255,Se=me.g/255,we=me.b/255,xe=Math.min(_e,Se,we),De=Math.max(_e,Se,we),Ee=NaN,Me=De-xe,he=(De+xe)/2;return Me?(Ee=_e===De?(Se-we)/Me+6*(Se<we):Se===De?(we-_e)/Me+2:(_e-Se)/Me+4,Me/=he<.5?De+xe:2-De-xe,Ee*=60):Me=he>0&&he<1?0:Ee,new B(Ee,Me,he,me.opacity)}function B(me,_e,Se,we){this.h=+me,this.s=+_e,this.l=+Se,this.opacity=+we}function Y(me){return(me=(me||0)%360)<0?me+360:me}function D(me){return Math.max(0,Math.min(1,me||0))}function G(me,_e,Se){return 255*(me<60?_e+(Se-_e)*me/60:me<180?Se:me<240?_e+(Se-_e)*(240-me)/60:_e)}w(i,f,{copy:function(me){return Object.assign(new this.constructor,this,me)},displayable:function(){return this.rgb().displayable()},hex:b,formatHex:b,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return z(this).formatHsl()},formatRgb:g,toString:g}),w(T,x,k(i,{brighter:function(me){return me=me==null?y:Math.pow(y,me),new T(this.r*me,this.g*me,this.b*me,this.opacity)},darker:function(me){return me=me==null?_:Math.pow(_,me),new T(this.r*me,this.g*me,this.b*me,this.opacity)},rgb:function(){return this},clamp:function(){return new T(C(this.r),C(this.g),C(this.b),A(this.opacity))},displayable:function(){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:d,formatHex:d,formatHex8:function(){return"#".concat(P(this.r)).concat(P(this.g)).concat(P(this.b)).concat(P(255*(isNaN(this.opacity)?1:this.opacity)))},formatRgb:M,toString:M})),w(B,function(me,_e,Se,we){return arguments.length===1?z(me):new B(me,_e,Se,we??1)},k(i,{brighter:function(me){return me=me==null?y:Math.pow(y,me),new B(this.h,this.s,this.l*me,this.opacity)},darker:function(me){return me=me==null?_:Math.pow(_,me),new B(this.h,this.s,this.l*me,this.opacity)},rgb:function(){var me=this.h%360+360*(this.h<0),_e=isNaN(me)||isNaN(this.s)?0:this.s,Se=this.l,we=Se+(Se<.5?Se:1-Se)*_e,xe=2*Se-we;return new T(G(me>=240?me-240:me+120,xe,we),G(me,xe,we),G(me<120?me+240:me-120,xe,we),this.opacity)},clamp:function(){return new B(Y(this.h),D(this.s),D(this.l),A(this.opacity))},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl:function(){var me=A(this.opacity);return"".concat(me===1?"hsl(":"hsla(").concat(Y(this.h),", ").concat(100*D(this.s),"%, ").concat(100*D(this.l),"%").concat(me===1?")":", ".concat(me,")"))}}));var V=function(me){return function(){return me}};function j(me,_e){var Se=_e-me;return Se?function(we,xe){return function(De){return we+De*xe}}(me,Se):V(isNaN(me)?_e:me)}var W=function me(_e){var Se=function(xe){return(xe=+xe)==1?j:function(De,Ee){return Ee-De?function(Me,he,fe){return Me=Math.pow(Me,fe),he=Math.pow(he,fe)-Me,fe=1/fe,function(ae){return Math.pow(Me+ae*he,fe)}}(De,Ee,xe):V(isNaN(De)?Ee:De)}}(_e);function we(xe,De){var Ee=Se((xe=x(xe)).r,(De=x(De)).r),Me=Se(xe.g,De.g),he=Se(xe.b,De.b),fe=j(xe.opacity,De.opacity);return function(ae){return xe.r=Ee(ae),xe.g=Me(ae),xe.b=he(ae),xe.opacity=fe(ae),xe+""}}return we.gamma=me,we}(1);function Z(me,_e){var Se,we=_e?_e.length:0,xe=me?Math.min(we,me.length):0,De=new Array(xe),Ee=new Array(we);for(Se=0;Se<xe;++Se)De[Se]=de(me[Se],_e[Se]);for(;Se<we;++Se)Ee[Se]=_e[Se];return function(Me){for(Se=0;Se<xe;++Se)Ee[Se]=De[Se](Me);return Ee}}function ie(me,_e){var Se=new Date;return me=+me,_e=+_e,function(we){return Se.setTime(me*(1-we)+_e*we),Se}}function te(me,_e){return me=+me,_e=+_e,function(Se){return me*(1-Se)+_e*Se}}function J(me){return J=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(_e){return typeof _e}:function(_e){return _e&&typeof Symbol=="function"&&_e.constructor===Symbol&&_e!==Symbol.prototype?"symbol":typeof _e},J(me)}function X(me,_e){var Se,we={},xe={};for(Se in me!==null&&J(me)==="object"||(me={}),_e!==null&&J(_e)==="object"||(_e={}),_e)Se in me?we[Se]=de(me[Se],_e[Se]):xe[Se]=_e[Se];return function(De){for(Se in we)xe[Se]=we[Se](De);return xe}}var ee=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,re=new RegExp(ee.source,"g");function oe(me,_e){var Se,we,xe,De=ee.lastIndex=re.lastIndex=0,Ee=-1,Me=[],he=[];for(me+="",_e+="";(Se=ee.exec(me))&&(we=re.exec(_e));)(xe=we.index)>De&&(xe=_e.slice(De,xe),Me[Ee]?Me[Ee]+=xe:Me[++Ee]=xe),(Se=Se[0])===(we=we[0])?Me[Ee]?Me[Ee]+=we:Me[++Ee]=we:(Me[++Ee]=null,he.push({i:Ee,x:te(Se,we)})),De=re.lastIndex;return De<_e.length&&(xe=_e.slice(De),Me[Ee]?Me[Ee]+=xe:Me[++Ee]=xe),Me.length<2?he[0]?function(fe){return function(ae){return fe(ae)+""}}(he[0].x):function(fe){return function(){return fe}}(_e):(_e=he.length,function(fe){for(var ae,be=0;be<_e;++be)Me[(ae=he[be]).i]=ae.x(fe);return Me.join("")})}function ue(me,_e){_e||(_e=[]);var Se,we=me?Math.min(_e.length,me.length):0,xe=_e.slice();return function(De){for(Se=0;Se<we;++Se)xe[Se]=me[Se]*(1-De)+_e[Se]*De;return xe}}function ce(me){return ce=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(_e){return typeof _e}:function(_e){return _e&&typeof Symbol=="function"&&_e.constructor===Symbol&&_e!==Symbol.prototype?"symbol":typeof _e},ce(me)}function de(me,_e){var Se,we,xe=ce(_e);return _e==null||xe==="boolean"?V(_e):(xe==="number"?te:xe==="string"?(Se=f(_e))?(_e=Se,W):oe:_e instanceof f?W:_e instanceof Date?ie:(we=_e,!ArrayBuffer.isView(we)||we instanceof DataView?Array.isArray(_e)?Z:typeof _e.valueOf!="function"&&typeof _e.toString!="function"||isNaN(_e)?X:te:ue))(me,_e)}},40402:function(R){R.exports=JSON.parse('["xx-small","x-small","small","medium","large","x-large","xx-large","larger","smaller"]')},83794:function(R){R.exports=JSON.parse('["normal","condensed","semi-condensed","extra-condensed","ultra-condensed","expanded","semi-expanded","extra-expanded","ultra-expanded"]')},96209:function(R){R.exports=JSON.parse('["normal","italic","oblique"]')},15659:function(R){R.exports=JSON.parse('["normal","bold","bolder","lighter","100","200","300","400","500","600","700","800","900"]')},38732:function(R){R.exports=JSON.parse('["inherit","initial","unset"]')},41901:function(R){R.exports=JSON.parse('["caption","icon","menu","message-box","small-caption","status-bar"]')}},se={};function Pe(R){var E=se[R];if(E!==void 0)return E.exports;var e=se[R]={exports:{}};return $[R].call(e.exports,e,e.exports,Pe),e.exports}return Pe.n=function(R){var E=R&&R.__esModule?function(){return R.default}:function(){return R};return Pe.d(E,{a:E}),E},Pe.d=function(R,E){for(var e in E)Pe.o(E,e)&&!Pe.o(R,e)&&Object.defineProperty(R,e,{enumerable:!0,get:E[e]})},Pe.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),Pe.o=function(R,E){return Object.prototype.hasOwnProperty.call(R,E)},Pe.r=function(R){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(R,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(R,"__esModule",{value:!0})},Pe(27909)}()})})(v5);var ds=v5.exports;const O7=ld(ds),I7=S_({__proto__:null,default:O7},[ds]);var m5={},y5={exports:{}},R7="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",z7=R7,D7=z7;function x5(){}function b5(){}b5.resetWarningCache=x5;var F7=function(){function L(se,Pe,R,E,e,w){if(w!==D7){var k=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw k.name="Invariant Violation",k}}L.isRequired=L;function I(){return L}var $={array:L,bigint:L,bool:L,func:L,number:L,object:L,string:L,symbol:L,any:L,arrayOf:I,element:L,elementType:L,instanceOf:I,node:L,objectOf:I,oneOf:I,oneOfType:I,shape:I,exact:I,checkPropTypes:b5,resetWarningCache:x5};return $.PropTypes=$,$};y5.exports=F7();var B7=y5.exports;(function(L){function I(u){"@babel/helpers - typeof";return I=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(p){return typeof p}:function(p){return p&&typeof Symbol=="function"&&p.constructor===Symbol&&p!==Symbol.prototype?"symbol":typeof p},I(u)}Object.defineProperty(L,"__esModule",{value:!0}),L.default=s;var $=E(In),se=Pe(B7);function Pe(u){return u&&u.__esModule?u:{default:u}}function R(u){if(typeof WeakMap!="function")return null;var p=new WeakMap,c=new WeakMap;return(R=function(g){return g?c:p})(u)}function E(u,p){if(!p&&u&&u.__esModule)return u;if(u===null||I(u)!=="object"&&typeof u!="function")return{default:u};var c=R(p);if(c&&c.has(u))return c.get(u);var b={},g=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var f in u)if(f!=="default"&&Object.prototype.hasOwnProperty.call(u,f)){var v=g?Object.getOwnPropertyDescriptor(u,f):null;v&&(v.get||v.set)?Object.defineProperty(b,f,v):b[f]=u[f]}return b.default=u,c&&c.set(u,b),b}function e(u,p){if(!(u instanceof p))throw new TypeError("Cannot call a class as a function")}function w(u,p){for(var c=0;c<p.length;c++){var b=p[c];b.enumerable=b.enumerable||!1,b.configurable=!0,"value"in b&&(b.writable=!0),Object.defineProperty(u,b.key,b)}}function k(u,p,c){return p&&w(u.prototype,p),c&&w(u,c),Object.defineProperty(u,"prototype",{writable:!1}),u}function i(u,p){if(typeof p!="function"&&p!==null)throw new TypeError("Super expression must either be null or a function");u.prototype=Object.create(p&&p.prototype,{constructor:{value:u,writable:!0,configurable:!0}}),Object.defineProperty(u,"prototype",{writable:!1}),p&&_(u,p)}function _(u,p){return _=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(b,g){return b.__proto__=g,b},_(u,p)}function y(u){var p=t();return function(){var b=o(u),g;if(p){var f=o(this).constructor;g=Reflect.construct(b,arguments,f)}else g=b.apply(this,arguments);return h(this,g)}}function h(u,p){if(p&&(I(p)==="object"||typeof p=="function"))return p;if(p!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return l(u)}function l(u){if(u===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return u}function t(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function o(u){return o=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(c){return c.__proto__||Object.getPrototypeOf(c)},o(u)}var r=["AfterExport","AfterPlot","Animated","AnimatingFrame","AnimationInterrupted","AutoSize","BeforeExport","BeforeHover","ButtonClicked","Click","ClickAnnotation","Deselect","DoubleClick","Framework","Hover","LegendClick","LegendDoubleClick","Relayout","Relayouting","Restyle","Redraw","Selected","Selecting","SliderChange","SliderEnd","SliderStart","SunburstClick","Transitioning","TransitionInterrupted","Unhover","WebGlContextLost"],n=["plotly_restyle","plotly_redraw","plotly_relayout","plotly_relayouting","plotly_doubleclick","plotly_animated","plotly_sunburstclick"],a=typeof window<"u";function s(u){var p=function(c){i(g,c);var b=y(g);function g(f){var v;return e(this,g),v=b.call(this,f),v.p=Promise.resolve(),v.resizeHandler=null,v.handlers={},v.syncWindowResize=v.syncWindowResize.bind(l(v)),v.syncEventHandlers=v.syncEventHandlers.bind(l(v)),v.attachUpdateEvents=v.attachUpdateEvents.bind(l(v)),v.getRef=v.getRef.bind(l(v)),v.handleUpdate=v.handleUpdate.bind(l(v)),v.figureCallback=v.figureCallback.bind(l(v)),v.updatePlotly=v.updatePlotly.bind(l(v)),v}return k(g,[{key:"updatePlotly",value:function(v,m,x){var T=this;this.p=this.p.then(function(){if(!T.unmounting){if(!T.el)throw new Error("Missing element reference");return u.react(T.el,{data:T.props.data,layout:T.props.layout,config:T.props.config,frames:T.props.frames})}}).then(function(){T.unmounting||(T.syncWindowResize(v),T.syncEventHandlers(),T.figureCallback(m),x&&T.attachUpdateEvents())}).catch(function(d){T.props.onError&&T.props.onError(d)})}},{key:"componentDidMount",value:function(){this.unmounting=!1,this.updatePlotly(!0,this.props.onInitialized,!0)}},{key:"componentDidUpdate",value:function(v){this.unmounting=!1;var m=v.frames&&v.frames.length?v.frames.length:0,x=this.props.frames&&this.props.frames.length?this.props.frames.length:0,T=!(v.layout===this.props.layout&&v.data===this.props.data&&v.config===this.props.config&&x===m),d=v.revision!==void 0,M=v.revision!==this.props.revision;!T&&(!d||d&&!M)||this.updatePlotly(!1,this.props.onUpdate,!1)}},{key:"componentWillUnmount",value:function(){this.unmounting=!0,this.figureCallback(this.props.onPurge),this.resizeHandler&&a&&(window.removeEventListener("resize",this.resizeHandler),this.resizeHandler=null),this.removeUpdateEvents(),u.purge(this.el)}},{key:"attachUpdateEvents",value:function(){var v=this;!this.el||!this.el.removeListener||n.forEach(function(m){v.el.on(m,v.handleUpdate)})}},{key:"removeUpdateEvents",value:function(){var v=this;!this.el||!this.el.removeListener||n.forEach(function(m){v.el.removeListener(m,v.handleUpdate)})}},{key:"handleUpdate",value:function(){this.figureCallback(this.props.onUpdate)}},{key:"figureCallback",value:function(v){if(typeof v=="function"){var m=this.el,x=m.data,T=m.layout,d=this.el._transitionData?this.el._transitionData._frames:null,M={data:x,layout:T,frames:d};v(M,this.el)}}},{key:"syncWindowResize",value:function(v){var m=this;a&&(this.props.useResizeHandler&&!this.resizeHandler?(this.resizeHandler=function(){return u.Plots.resize(m.el)},window.addEventListener("resize",this.resizeHandler),v&&this.resizeHandler()):!this.props.useResizeHandler&&this.resizeHandler&&(window.removeEventListener("resize",this.resizeHandler),this.resizeHandler=null))}},{key:"getRef",value:function(v){this.el=v,this.props.debug&&a&&(window.gd=this.el)}},{key:"syncEventHandlers",value:function(){var v=this;r.forEach(function(m){var x=v.props["on"+m],T=v.handlers[m],d=!!T;x&&!d?v.addEventHandler(m,x):!x&&d?v.removeEventHandler(m):x&&d&&x!==T&&(v.removeEventHandler(m),v.addEventHandler(m,x))})}},{key:"addEventHandler",value:function(v,m){this.handlers[v]=m,this.el.on(this.getPlotlyEventName(v),this.handlers[v])}},{key:"removeEventHandler",value:function(v){this.el.removeListener(this.getPlotlyEventName(v),this.handlers[v]),delete this.handlers[v]}},{key:"getPlotlyEventName",value:function(v){return"plotly_"+v.toLowerCase()}},{key:"render",value:function(){return $.default.createElement("div",{id:this.props.divId,style:this.props.style,ref:this.getRef,className:this.props.className})}}]),g}($.Component);return p.propTypes={data:se.default.arrayOf(se.default.object),config:se.default.object,layout:se.default.object,frames:se.default.arrayOf(se.default.object),revision:se.default.number,onInitialized:se.default.func,onPurge:se.default.func,onError:se.default.func,onUpdate:se.default.func,debug:se.default.bool,style:se.default.object,className:se.default.string,useResizeHandler:se.default.bool,divId:se.default.string},r.forEach(function(c){p.propTypes["on"+c]=se.default.func}),p.defaultProps={debug:!1,useResizeHandler:!1,data:[],style:{position:"relative",display:"inline-block"}},p}})(m5);const N7=ld(m5);function j7({plotData:L,popup_data:I,current_text:$}){var w;let se=I.x,Pe=I.y,R=I.yref,E=((w=L==null?void 0:L.layout)==null?void 0:w.annotations)||[],e=-1;for(let k=0;k<E.length;k++)if(E[k].x==se&&E[k].y==Pe&&E[k].text==$){e=k;break}if(I.high!=null&&(Pe=I.yanchor=="above"?I.high:I.low),e==-1){let k={x:se,y:Pe,xref:"x",yref:R,xanchor:"center",text:I.text,showarrow:!0,arrowhead:2,arrowsize:1,arrowwidth:2,ax:se,ay:Pe+I.yshift,ayref:R,axref:"x",bordercolor:I.bordercolor,bgcolor:"#000000",borderwidth:2,borderpad:4,opacity:.8,font:{color:I.color,size:I.size},clicktoshow:"onoff",captureevents:!0,high:I.high||void 0,low:I.low||void 0};E.push(k)}else E[e].y=Pe,E[e].text=I.text,E[e].font.color=I.color,E[e].font.size=I.size,E[e].ay=Pe+I.yshift,E[e].bordercolor=I.bordercolor,E[e].high=I.high||void 0,E[e].low=I.low||void 0;return{annotations:E,annotation:E[e]}}function a_({plotData:L,popup_data:I,current_text:$}){console.log("plot_text: current_text",$);let se,Pe=I.yref.replace("y","yaxis"),R=L.layout[Pe].range,E=(R[1]-R[0])*.2;I.yanchor=="below"&&(E=-E),I.yshift=E,se=j7({plotData:L,popup_data:I,current_text:$});let e={annotations:se.annotations,dragmode:"pan"};return e[Pe+".type"]="linear",{update:e,annotation:se.annotation}}function U7({plotData:L,popupData:I,setPlotData:$,setModal:se,setOnAnnotationClick:Pe,setAnnotations:R,onAnnotationClick:E,ohlcAnnotation:e,setOhlcAnnotation:w,annotations:k,plotDiv:i}){if(I.text!=null&&I.text!=""){let _=function(l){var u,p,c,b,g,f;console.log("plotly_click",l);let t=l.points[0].x,o=l.points[0].fullData.yaxis,r=0,n,a;l.points[0].y!=null?r=l.points[0].y:l.points[0].low!=null&&(n=l.points[0].high,a=l.points[0].low,(y==null?void 0:y.yanchor)=="below"?r=l.points[0].low:r=l.points[0].high),y={x:((u=E==null?void 0:E.annotation)==null?void 0:u.x)??t,y:((p=E==null?void 0:E.annotation)==null?void 0:p.y)??r,yref:((c=E==null?void 0:E.annotation)==null?void 0:c.yref)??o,high:((b=E==null?void 0:E.annotation)==null?void 0:b.high)??n,low:((g=E==null?void 0:E.annotation)==null?void 0:g.low)??a,...I},n!=null&&(e.push(y),w(e),console.log("ohlcAnnotation",e));let s=a_({plotData:L,popup_data:y,current_text:(f=E==null?void 0:E.annotation)==null?void 0:f.text});R([...k,s.annotation].filter(v=>v!=null)),L.layout.dragmode="pan",$({...L,...s.update}),i.removeAllListeners("plotly_click")};I.text=I.text.replace(/\n/g,"<br>");let y,h=!1;if(I.annotation){console.log("data",I),y={x:I.annotation.x,y:I.annotation.y,yref:I.annotation.yref,yanchor:I.annotation.y<I.annotation.ay?"above":"below",...I},I.annotation.high!=null&&(h=!0),console.log("popup_data",y);let l=a_({plotData:L,popup_data:y,current_text:I.annotation.text});if(h){let t=e.findIndex(o=>o.x==I.annotation.x&&o.y==I.annotation.y&&o.yref==I.annotation.yref);console.log("ohlcAnnotationIndex",t),t==-1?w([...e,l.annotation]):(e[t]=l.annotation,w(e))}R([...k,l.annotation].filter(t=>t!=null)),L.layout.dragmode="pan",$({...L,...l.update}),Pe({});return}i.on("plotly_clickannotation",l=>{console.log("plotly_clickannotation",l);let t=l.annotation;if(t.text==null){console.log("annotation.text is undefined");return}console.log("annotation.text",t.text),t.text=t.text.replace(/<br>/g,`
|
||
`);let o={x:t.x,y:t.y,high:(t==null?void 0:t.high)??void 0,low:(t==null?void 0:t.low)??void 0,yanchor:t.y<t.ay?"above":"below",text:t.text,color:t.font.color,size:t.font.size,bordercolor:t.bordercolor,annotation:t};console.log("popup_data_clickannotation",o),Pe(o),se({name:"textDialog",data:o}),Pe({})}),L.layout.dragmode="select",$({...L}),i.on("plotly_click",_)}}var _5={exports:{}};(function(L){(function(I){var $=a(),se=s(),Pe=u(),R=p(),E={imagePlaceholder:void 0,cacheBust:!1},e={toSvg:w,toPng:i,toJpeg:_,toBlob:y,toPixelData:k,impl:{fontFaces:Pe,images:R,util:$,inliner:se,options:{}}};L.exports=e;function w(c,b){return b=b||{},h(b),Promise.resolve(c).then(function(f){return t(f,b.filter,!0)}).then(o).then(r).then(g).then(function(f){return n(f,b.width||$.width(c),b.height||$.height(c))});function g(f){return b.bgcolor&&(f.style.backgroundColor=b.bgcolor),b.width&&(f.style.width=b.width+"px"),b.height&&(f.style.height=b.height+"px"),b.style&&Object.keys(b.style).forEach(function(v){f.style[v]=b.style[v]}),f}}function k(c,b){return l(c,b||{}).then(function(g){return g.getContext("2d").getImageData(0,0,$.width(c),$.height(c)).data})}function i(c,b){return l(c,b||{}).then(function(g){return g.toDataURL()})}function _(c,b){return b=b||{},l(c,b).then(function(g){return g.toDataURL("image/jpeg",b.quality||1)})}function y(c,b){return l(c,b||{}).then($.canvasToBlob)}function h(c){typeof c.imagePlaceholder>"u"?e.impl.options.imagePlaceholder=E.imagePlaceholder:e.impl.options.imagePlaceholder=c.imagePlaceholder,typeof c.cacheBust>"u"?e.impl.options.cacheBust=E.cacheBust:e.impl.options.cacheBust=c.cacheBust}function l(c,b){return w(c,b).then($.makeImage).then($.delay(100)).then(function(f){var v=g(c);return v.getContext("2d").drawImage(f,0,0),v});function g(f){var v=document.createElement("canvas");if(v.width=b.width||$.width(f),v.height=b.height||$.height(f),b.bgcolor){var m=v.getContext("2d");m.fillStyle=b.bgcolor,m.fillRect(0,0,v.width,v.height)}return v}}function t(c,b,g){if(!g&&b&&!b(c))return Promise.resolve();return Promise.resolve(c).then(f).then(function(x){return v(c,x,b)}).then(function(x){return m(c,x)});function f(x){return x instanceof HTMLCanvasElement?$.makeImage(x.toDataURL()):x.cloneNode(!1)}function v(x,T,d){var M=x.childNodes;if(M.length===0)return Promise.resolve(T);return A(T,$.asArray(M),d).then(function(){return T});function A(C,P,O){var z=Promise.resolve();return P.forEach(function(B){z=z.then(function(){return t(B,O)}).then(function(Y){Y&&C.appendChild(Y)})}),z}}function m(x,T){if(!(T instanceof Element))return T;return Promise.resolve().then(d).then(M).then(A).then(C).then(function(){return T});function d(){P(window.getComputedStyle(x),T.style);function P(O,z){O.cssText?z.cssText=O.cssText:B(O,z);function B(Y,D){$.asArray(Y).forEach(function(G){D.setProperty(G,Y.getPropertyValue(G),Y.getPropertyPriority(G))})}}}function M(){[":before",":after"].forEach(function(O){P(O)});function P(O){var z=window.getComputedStyle(x,O),B=z.getPropertyValue("content");if(B===""||B==="none")return;var Y=$.uid();T.className=T.className+" "+Y;var D=document.createElement("style");D.appendChild(G(Y,O,z)),T.appendChild(D);function G(V,j,W){var Z="."+V+":"+j,ie=W.cssText?te(W):J(W);return document.createTextNode(Z+"{"+ie+"}");function te(X){var ee=X.getPropertyValue("content");return X.cssText+" content: "+ee+";"}function J(X){return $.asArray(X).map(ee).join("; ")+";";function ee(re){return re+": "+X.getPropertyValue(re)+(X.getPropertyPriority(re)?" !important":"")}}}}}function A(){x instanceof HTMLTextAreaElement&&(T.innerHTML=x.value),x instanceof HTMLInputElement&&T.setAttribute("value",x.value)}function C(){T instanceof SVGElement&&(T.setAttribute("xmlns","http://www.w3.org/2000/svg"),T instanceof SVGRectElement&&["width","height"].forEach(function(P){var O=T.getAttribute(P);O&&T.style.setProperty(P,O)}))}}}function o(c){return Pe.resolveAll().then(function(b){var g=document.createElement("style");return c.appendChild(g),g.appendChild(document.createTextNode(b)),c})}function r(c){return R.inlineAll(c).then(function(){return c})}function n(c,b,g){return Promise.resolve(c).then(function(f){return f.setAttribute("xmlns","http://www.w3.org/1999/xhtml"),new XMLSerializer().serializeToString(f)}).then($.escapeXhtml).then(function(f){return'<foreignObject x="0" y="0" width="100%" height="100%">'+f+"</foreignObject>"}).then(function(f){return'<svg xmlns="http://www.w3.org/2000/svg" width="'+b+'" height="'+g+'">'+f+"</svg>"}).then(function(f){return"data:image/svg+xml;charset=utf-8,"+f})}function a(){return{escape:C,parseExtension:b,mimeType:g,dataAsUrl:A,isDataUrl:f,canvasToBlob:m,resolveUrl:x,getAndEncode:M,uid:T(),delay:P,asArray:O,escapeXhtml:z,makeImage:d,width:B,height:Y};function c(){var G="application/font-woff",V="image/jpeg";return{woff:G,woff2:G,ttf:"application/font-truetype",eot:"application/vnd.ms-fontobject",png:"image/png",jpg:V,jpeg:V,gif:"image/gif",tiff:"image/tiff",svg:"image/svg+xml"}}function b(G){var V=/\.([^\.\/]*?)$/g.exec(G);return V?V[1]:""}function g(G){var V=b(G).toLowerCase();return c()[V]||""}function f(G){return G.search(/^(data:)/)!==-1}function v(G){return new Promise(function(V){for(var j=window.atob(G.toDataURL().split(",")[1]),W=j.length,Z=new Uint8Array(W),ie=0;ie<W;ie++)Z[ie]=j.charCodeAt(ie);V(new Blob([Z],{type:"image/png"}))})}function m(G){return G.toBlob?new Promise(function(V){G.toBlob(V)}):v(G)}function x(G,V){var j=document.implementation.createHTMLDocument(),W=j.createElement("base");j.head.appendChild(W);var Z=j.createElement("a");return j.body.appendChild(Z),W.href=V,Z.href=G,Z.href}function T(){var G=0;return function(){return"u"+V()+G++;function V(){return("0000"+(Math.random()*Math.pow(36,4)<<0).toString(36)).slice(-4)}}}function d(G){return new Promise(function(V,j){var W=new Image;W.onload=function(){V(W)},W.onerror=j,W.src=G})}function M(G){var V=3e4;return e.impl.options.cacheBust&&(G+=(/\?/.test(G)?"&":"?")+new Date().getTime()),new Promise(function(j){var W=new XMLHttpRequest;W.onreadystatechange=te,W.ontimeout=J,W.responseType="blob",W.timeout=V,W.open("GET",G,!0),W.send();var Z;if(e.impl.options.imagePlaceholder){var ie=e.impl.options.imagePlaceholder.split(/,/);ie&&ie[1]&&(Z=ie[1])}function te(){if(W.readyState===4){if(W.status!==200){Z?j(Z):X("cannot fetch resource: "+G+", status: "+W.status);return}var ee=new FileReader;ee.onloadend=function(){var re=ee.result.split(/,/)[1];j(re)},ee.readAsDataURL(W.response)}}function J(){Z?j(Z):X("timeout of "+V+"ms occured while fetching resource: "+G)}function X(ee){console.error(ee),j("")}})}function A(G,V){return"data:"+V+";base64,"+G}function C(G){return G.replace(/([.*+?^${}()|\[\]\/\\])/g,"\\$1")}function P(G){return function(V){return new Promise(function(j){setTimeout(function(){j(V)},G)})}}function O(G){for(var V=[],j=G.length,W=0;W<j;W++)V.push(G[W]);return V}function z(G){return G.replace(/#/g,"%23").replace(/\n/g,"%0A")}function B(G){var V=D(G,"border-left-width"),j=D(G,"border-right-width");return G.scrollWidth+V+j}function Y(G){var V=D(G,"border-top-width"),j=D(G,"border-bottom-width");return G.scrollHeight+V+j}function D(G,V){var j=window.getComputedStyle(G).getPropertyValue(V);return parseFloat(j.replace("px",""))}}function s(){var c=/url\(['"]?([^'"]+?)['"]?\)/g;return{inlineAll:v,shouldProcess:b,impl:{readUrls:g,inline:f}};function b(m){return m.search(c)!==-1}function g(m){for(var x=[],T;(T=c.exec(m))!==null;)x.push(T[1]);return x.filter(function(d){return!$.isDataUrl(d)})}function f(m,x,T,d){return Promise.resolve(x).then(function(A){return T?$.resolveUrl(A,T):A}).then(d||$.getAndEncode).then(function(A){return $.dataAsUrl(A,$.mimeType(x))}).then(function(A){return m.replace(M(x),"$1"+A+"$3")});function M(A){return new RegExp(`(url\\(['"]?)(`+$.escape(A)+`)(['"]?\\))`,"g")}}function v(m,x,T){if(d())return Promise.resolve(m);return Promise.resolve(m).then(g).then(function(M){var A=Promise.resolve(m);return M.forEach(function(C){A=A.then(function(P){return f(P,C,x,T)})}),A});function d(){return!b(m)}}}function u(){return{resolveAll:c,impl:{readAll:b}};function c(){return b().then(function(g){return Promise.all(g.map(function(f){return f.resolve()}))}).then(function(g){return g.join(`
|
||
`)})}function b(){return Promise.resolve($.asArray(document.styleSheets)).then(f).then(g).then(function(m){return m.map(v)});function g(m){return m.filter(function(x){return x.type===CSSRule.FONT_FACE_RULE}).filter(function(x){return se.shouldProcess(x.style.getPropertyValue("src"))})}function f(m){var x=[];return m.forEach(function(T){try{$.asArray(T.cssRules||[]).forEach(x.push.bind(x))}catch(d){console.log("Error while reading CSS rules from "+T.href,d.toString())}}),x}function v(m){return{resolve:function(){var T=(m.parentStyleSheet||{}).href;return se.inlineAll(m.cssText,T)},src:function(){return m.style.getPropertyValue("src")}}}}}function p(){return{inlineAll:b,impl:{newImage:c}};function c(g){return{inline:f};function f(v){return $.isDataUrl(g.src)?Promise.resolve():Promise.resolve(g.src).then(v||$.getAndEncode).then(function(m){return $.dataAsUrl(m,$.mimeType(g.src))}).then(function(m){return new Promise(function(x,T){g.onload=x,g.onerror=T,g.src=m})})}}function b(g){if(!(g instanceof Element))return Promise.resolve(g);return f(g).then(function(){return g instanceof HTMLImageElement?c(g).inline():Promise.all($.asArray(g.childNodes).map(function(v){return b(v)}))});function f(v){var m=v.style.getPropertyValue("background");return m?se.inlineAll(m).then(function(x){v.style.setProperty("background",x,v.style.getPropertyPriority("background"))}).then(function(){return v}):Promise.resolve(v)}}}})()})(_5);var V7=_5.exports;const w5=ld(V7),H7=async({fileHandle:L,blob:I})=>{if(L)return q7({fileHandle:L,blob:I})},q7=async({fileHandle:L,blob:I})=>{const $=await L.createWritable();await $.write(I),await $.close()},G7=[{description:"PNG Image",accept:{"image/png":[".png"]}},{description:"JPEG Image",accept:{"image/jpeg":[".jpeg"]}},{description:"SVG Image",accept:{"image/svg+xml":[".svg"]}}],k5=({filename:L,is_image:I})=>{try{if("showSaveFilePicker"in window){const $={suggestedName:L,types:I?G7:[{description:"CSV File",accept:{"image/csv":[".csv"]}}],excludeAcceptAllOption:!0};return showSaveFilePicker($)}}catch($){console.error($)}return new Promise($=>{$(null)})},Dy=(L,I,$)=>{try{if($===null)throw new Error("Cannot access filesystem");return H7({fileHandle:$,blob:L})}catch(se){console.error("oops, something went wrong!",se);const Pe=URL.createObjectURL(L),R=document.createElement("a");R.setAttribute("href",Pe),R.setAttribute("download",I),R.style.visibility="hidden",document.body.appendChild(R),R.click(),document.body.removeChild(R)}return new Promise(se=>{se(!0)})};async function o_(L,I){const $=L.data;let se=[];const Pe=[],R="title"in L.layout.xaxis&&L.layout.xaxis.title.text!==void 0?L.layout.xaxis.title.text:"x",E="title"in L.layout.yaxis&&L.layout.yaxis.title.text!==void 0?L.layout.yaxis.title.text:"y";return $.forEach(function(e){e.type==="candlestick"&&(se.length===0&&(se=["Date","Open","High","Low","Close"]),e.x.forEach(function(w,k){Pe.push([w,e.open[k],e.high[k],e.low[k],e.close[k]])})),["scatter","bar"].includes(e.type)&&(se.length===0&&se.push(R),se.push(e.name!==void 0?e.name:E),e.x.forEach(function(w,k){Pe[k]===void 0&&(Pe[k]=[w]),Pe[k].push(e.y[k])}))}),await W7(se,Pe,I)}async function W7(L,I,$){const se=L,Pe=I.map(k=>k.map(i=>i==null?"":typeof i=="object"?JSON.stringify(i):i.toString().replace(/"/g,'""'))),E=[se,...Pe].map(k=>k.join(",")).join(`
|
||
`),e=new Blob([E],{type:"text/csv;charset=utf-8;"}),w=`${window.title}.csv`;try{const k=await k5({filename:w});await od("Saving CSV"),Sh(async function(){Dy(e,w,k).then(async function(){await new Promise(i=>setTimeout(i,1500)),k||$(!0),await od("",!0)})},2)()}catch(k){console.error(k)}}function od(L,I){const $=window.document.getElementById("loading"),se=window.document.getElementById("loading_text");return new Promise(Pe=>{I?$.classList.remove("show"):(se.innerHTML=L,$.classList.add("show"));const R=setInterval(function(){(I?!$.classList.contains("show"):$.classList.contains("show"))&&(clearInterval(R),Pe(!0))},.01)})}const Sh=(L,I)=>{let $;return function(){const se=this,Pe=arguments;clearTimeout($),$=setTimeout(()=>L.apply(se,Pe),I)}},Z7={yref:"paper",xref:"paper",x:1,y:0,text:"OpenBB Terminal",font_size:17,font_color:"gray",opacity:.5,xanchor:"right",yanchor:"bottom",yshift:-80,xshift:40};async function s_(L,I,$=!1){const se=document.getElementById("plotlyChart");$&&(se.layout.annotations.push(Z7),se.globals.cmd_idx!==void 0&&se.globals.cmd_src!==void 0&&(se.layout.annotations[se.globals.cmd_idx].text=se.globals.cmd_src),ds.relayout(se,{"title.text":se.globals.title,margin:se.globals.old_margin})),$||(se.globals.cmd_idx!==void 0&&se.globals.cmd_src!==void 0&&(se.layout.annotations[se.globals.cmd_idx].text=""),se.layout.annotations.splice(I,1),ds.relayout(se,{"title.text":"",margin:L}))}async function T5(L,I,$){const se=document.getElementById(L);if(["svg","pdf"].includes($)){const Pe=document.getElementById("plotlyChart"),R=Pe.layout.margin,E=Pe.layout.annotations.length;await s_(R,E,!0),ds.downloadImage(Pe,{format:"svg",height:Pe.clientHeight,width:Pe.clientWidth,filename:window.title}),await s_(R,E,!1),await od("",!0);return}Sh(async function(){w5.toBlob(se).then(function(Pe){Dy(Pe,I,null)})},2)()}async function l_(L,I,$,se){const Pe=document.getElementById(L),R=`${window.title}.png`;try{$(!0);const E=await k5({filename:R,is_image:!0});let e="png";if(E!==null&&(e=E.name.split(".").pop()),await od(`Saving ${e.toUpperCase()}`),["svg","pdf"].includes(e)){await T5(L,R,e),I(!1),$(!1),E||se(!0);return}Sh(async function(){w5.toBlob(Pe).then(function(w){Dy(w,R,E).then(async function(){await od("",!0),I(!1),$(!1),E||se(!0)})})},2)()}catch(E){console.error(E),I(!1),$(!1)}$(!1)}async function u_(L,I){try{if(L["xaxis.range[0]"]!==void 0){const $=L["xaxis.range[0]"],se=L["xaxis.range[1]"],Pe={},R=[];let E,e;const w=I.data.filter(_=>_.yaxis!==void 0),k=[...new Set(w.map(_=>_.yaxis||_.y!==void 0||_.type==="candlestick"))],i=_=>I.data.filter(y=>y.yaxis===_&&(y.y||y.type==="candlestick"));return k.forEach(_=>{if(typeof _!="string")return;const y=`yaxis${_.replace("y","")}`;let h=[],l=[],t=I.layout[y].type==="log";i(_).forEach(n=>{const a=n.x;t=I.layout[y].type==="log";let s=n.y!==void 0?n.y:[],u=n.type==="candlestick"?n.low:[],p=n.type==="candlestick"?n.high:[];t&&(s=s.map(Math.log10),n.type==="candlestick"&&(u=n.low.map(Math.log10),p=n.high.map(Math.log10)));const c=a.map((b,g)=>{let f=null;return b>=$&&b<=se&&(n.y!==void 0&&(f=s[g]),n.type==="candlestick"&&(h.push(u[g]),h.push(p[g]))),f});l=l.concat(c)}),l=l.filter(n=>n!=null),E=Math.min(...l),e=Math.max(...l),h.length>0&&(h=h.filter(n=>n!=null),E=Math.min(...h),e=Math.max(...h));const o=e,r=I.layout[y].fixedrange!==void 0&&y!=="yaxis"&&I.layout[y].fixedrange===!0;if(E!==void 0&&e!==void 0){const n=e-E;let a=.15;if(h.length>0&&(a=.3),E-=n*a,e+=n*a,r){if(I.layout[y].tickvals!==void 0){const u=o;let p=-3,c=Math.round(u*.2,p);const b=[2,5,6,7,8,9,10],g=[1,4,5,6,7,8,9];for(let m=0;m<b.length;m++)String(u).length>b[m]&&(p=-g[m],c=Math.round(u*.2,p));const f=[Math.floor(c),Math.floor(c*2),Math.floor(c*3),Math.floor(c*4)],v=[0,Math.floor(u*7)];Pe[`${y}.tickvals`]=f,Pe[`${y}.range`]=v,Pe[`${y}.tickformat`]=".2s";return}E=0,e=I.layout[y].range[1]}Pe[`${y}.range`]=[E,e],Pe[`${y}.fixedrange`]=!0,R.push(y)}}),{to_update:Pe,yaxis_fixedrange:R}}}catch($){console.log(`Error in AutoScaling: ${$}`)}return{to_update:{},yaxis_fixedrange:[]}}function Y7({open:L,onColorChange:I}){const[$,se]=In.useState(!1);function Pe(R){I(R)}return L&&!$&&se(!0),!L&&$&&se(!1),In.useEffect(()=>{if($){let R=function(e){let w=0,k=0,i=0,_=0;document.getElementById(e.id+"_header")?document.getElementById(e.id+"_header").onmousedown=y:e.onmousedown=y;function y(t){t=t||window.event,t.preventDefault(),i=t.clientX,_=t.clientY,document.onmouseup=l,document.onmousemove=h}function h(t){t=t||window.event,t.preventDefault(),w=i-t.clientX,k=_-t.clientY,i=t.clientX,_=t.clientY,e.style.top=e.offsetTop-k+"px",e.style.left=e.offsetLeft-w+"px"}function l(){document.onmouseup=null,document.onmousemove=null}},E=document.getElementById("changecolor");E.style.display="block",E.style.width=null,R(E)}else document.getElementById("changecolor").style.display="none"},[$]),hr("div",{id:"changecolor",children:hr("div",{id:"changecolor_header",children:hr("input",{type:"color",id:"picked_color",value:"#00ACFF",onChange:R=>{let E=R.target.value;Pe(E)}})})})}const qu={sunIcon:{viewBox:"0 0 16 16",width:16,height:16,path:"M8 12a4 4 0 1 0 0-8 4 4 0 0 0 0 8zM8 0a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 0zm0 13a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 13zm8-5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5zM3 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2A.5.5 0 0 1 3 8zm10.657-5.657a.5.5 0 0 1 0 .707l-1.414 1.415a.5.5 0 1 1-.707-.708l1.414-1.414a.5.5 0 0 1 .707 0zm-9.193 9.193a.5.5 0 0 1 0 .707L3.05 13.657a.5.5 0 0 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0zm9.193 2.121a.5.5 0 0 1-.707 0l-1.414-1.414a.5.5 0 0 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .707zM4.464 4.465a.5.5 0 0 1-.707 0L2.343 3.05a.5.5 0 1 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .708z"},moonIcon:{viewBox:"0 0 25 25",width:25,height:25,path:"M21.752 15.002A9.718 9.718 0 0118 15.75c-5.385 0-9.75-4.365-9.75-9.75 0-1.33.266-2.597.748-3.752A9.753 9.753 0 003 11.25C3 16.635 7.365 21 12.75 21a9.753 9.753 0 009.002-5.998z"},plotCsv:{width:900,height:900,path:"M170.666667 106.666667l0.192 736H906.666667v64H149.546667c-23.552 0-42.666667-19.093333-42.666667-42.666667L106.666667 106.666667h64z m686.506666 454.144l13.653334 16.362666a21.333333 21.333333 0 0 1-2.666667 30.058667l-171.157333 143.146667a21.333333 21.333333 0 0 1-21.546667 3.477333l-229.973333-91.285333-113.834667 94.997333a21.333333 21.333333 0 0 1-30.037333-2.709333l-13.653334-16.362667a21.333333 21.333333 0 0 1 2.688-30.058667l133.312-111.274666a21.333333 21.333333 0 0 1 21.546667-3.456l229.930667 91.264 151.68-126.826667a21.333333 21.333333 0 0 1 30.037333 2.666667z m-1.621333-417.962667l16.896 13.013333a21.333333 21.333333 0 0 1 3.925333 29.888L685.802667 433.706667a21.333333 21.333333 0 0 1-20.202667 8.085333l-226.794667-35.413333-150.186666 222.357333a21.333333 21.333333 0 0 1-27.477334 7.018667l-2.133333-1.28-17.685333-11.946667a21.333333 21.333333 0 0 1-5.738667-29.610667l165.354667-244.821333a21.333333 21.333333 0 0 1 20.992-9.130667L650.453333 374.613333l175.146667-227.882666a21.333333 21.333333 0 0 1 29.930667-3.904z"},addText:{path:"M896 928H128a32 32 0 0 1-32-32V128a32 32 0 0 1 32-32h768a32 32 0 0 1 32 32v768a32 32 0 0 1-32 32z m-736-64h704v-704h-704z M704 352H320a32 32 0 0 1 0-64h384a32 32 0 0 1 0 64z M512 736a32 32 0 0 1-32-32V320a32 32 0 0 1 64 0v384a32 32 0 0 1-32 32z",width:950,height:950},changeTitle:{path:"M122.368 165.888h778.24c-9.216 0-16.384-7.168-16.384-16.384v713.728c0-9.216 7.168-16.384 16.384-16.384h-778.24c9.216 0 16.384 7.168 16.384 16.384V150.016c0 8.192-6.656 15.872-16.384 15.872z m-32.768 684.544c0 26.112 20.992 47.104 47.104 47.104h750.08c26.112 0 47.104-20.992 47.104-47.104V162.304c0-26.112-20.992-47.104-47.104-47.104H136.704c-26.112 0-47.104 20.992-47.104 47.104v688.128z M244.736 656.896h534.016v62.464H244.736z M373.76 358.4H307.2v219.136h-45.568V358.4H192v-41.472H373.76V358.4zM403.968 316.928h44.032v50.176h-44.032v-50.176z m0 67.072h44.032v194.048h-44.032V384zM576.512 541.184l8.704 31.744c-13.312 5.12-26.624 8.192-38.912 8.704-32.768 1.024-48.64-15.36-48.128-48.128V422.912h-26.624V384h26.624v-46.592l44.032-21.504V384h36.352v38.912h-36.352V532.48c-1.024 10.24 3.072 14.848 11.264 13.824 5.12 0 12.8-1.536 23.04-5.12zM619.008 316.928h44.032v260.608h-44.032V316.928zM813.056 509.952l41.472 12.8c-11.776 40.96-37.888 61.44-78.336 60.416-52.736-1.536-80.384-34.304-81.92-98.304 2.56-67.072 29.696-102.4 81.92-105.984 52.224 1.536 78.336 36.864 79.36 105.984v13.824h-117.248c3.584 30.208 15.872 45.568 37.888 46.592 19.968 0.512 32.256-11.264 36.864-35.328z m-72.704-51.712h70.656c-1.024-25.088-12.288-38.4-33.792-38.912-21.504 0.512-33.792 13.824-36.864 38.912z",width:920,height:900},changeColor:{path:"M8 3C5.79 3 4 4.79 4 7V14C4 15.1 4.9 16 6 16H9V20C9 21.1 9.9 22 11 22H13C14.1 22 15 21.1 15 20V16H18C19.1 16 20 15.1 20 14V3H8M8 5H12V7H14V5H15V9H17V5H18V10H6V7C6 5.9 6.9 5 8 5M6 14V12H18V14H6Z",width:22,height:22},uploadImage:{path:"M3 16.5v2.25A2.25 2.25 0 005.25 21h13.5A2.25 2.25 0 0021 18.75V16.5m-13.5-9L12 3m0 0l4.5 4.5M12 3v13.5",width:1024,height:1024},downloadCsv:{path:`M486.2,196.121h-13.164V132.59c0-0.399-0.064-0.795-0.116-1.2c-0.021-2.52-0.824-5-2.551-6.96L364.656,3.677
|
||
c-0.031-0.034-0.064-0.044-0.085-0.075c-0.629-0.707-1.364-1.292-2.141-1.796c-0.231-0.157-0.462-0.286-0.704-0.419
|
||
c-0.672-0.365-1.386-0.672-2.121-0.893c-0.199-0.052-0.377-0.134-0.576-0.188C358.229,0.118,357.4,0,356.562,0H96.757
|
||
C84.893,0,75.256,9.649,75.256,21.502v174.613H62.093c-16.972,0-30.733,13.756-30.733,30.73v159.81
|
||
c0,16.966,13.761,30.736,30.733,30.736h13.163V526.79c0,11.854,9.637,21.501,21.501,21.501h354.777
|
||
c11.853,0,21.502-9.647,21.502-21.501V417.392H486.2c16.966,0,30.729-13.764,30.729-30.731v-159.81
|
||
C516.93,209.872,503.166,196.121,486.2,196.121z M96.757,21.502h249.053v110.006c0,5.94,4.818,10.751,10.751,10.751h94.973v53.861
|
||
H96.757V21.502z M258.618,313.18c-26.68-9.291-44.063-24.053-44.063-47.389c0-27.404,22.861-48.368,60.733-48.368
|
||
c18.107,0,31.447,3.811,40.968,8.107l-8.09,29.3c-6.43-3.107-17.862-7.632-33.59-7.632c-15.717,0-23.339,7.149-23.339,15.485
|
||
c0,10.247,9.047,14.769,29.78,22.632c28.341,10.479,41.681,25.239,41.681,47.874c0,26.909-20.721,49.786-64.792,49.786
|
||
c-18.338,0-36.449-4.776-45.497-9.77l7.38-30.016c9.772,5.014,24.775,10.006,40.264,10.006c16.671,0,25.488-6.908,25.488-17.396
|
||
C285.536,325.789,277.909,320.078,258.618,313.18z M69.474,302.692c0-54.781,39.074-85.269,87.654-85.269
|
||
c18.822,0,33.113,3.811,39.549,7.149l-7.392,28.816c-7.38-3.084-17.632-5.939-30.491-5.939c-28.822,0-51.206,17.375-51.206,53.099
|
||
c0,32.158,19.051,52.4,51.456,52.4c10.947,0,23.097-2.378,30.241-5.238l5.483,28.346c-6.672,3.34-21.674,6.919-41.208,6.919
|
||
C98.06,382.976,69.474,348.424,69.474,302.692z M451.534,520.962H96.757v-103.57h354.777V520.962z M427.518,380.583h-42.399
|
||
l-51.45-160.536h39.787l19.526,67.894c5.479,19.046,10.479,37.386,14.299,57.397h0.709c4.048-19.298,9.045-38.352,14.526-56.693
|
||
l20.487-68.598h38.599L427.518,380.583z`,width:550,height:550,transform:"translate(4, 0)"},downloadImage:{path:"M22.71,6.29a1,1,0,0,0-1.42,0L20,7.59V2a1,1,0,0,0-2,0V7.59l-1.29-1.3a1,1,0,0,0-1.42,1.42l3,3a1,1,0,0,0,.33.21.94.94,0,0,0,.76,0,1,1,0,0,0,.33-.21l3-3A1,1,0,0,0,22.71,6.29ZM19,13a1,1,0,0,0-1,1v.38L16.52,12.9a2.79,2.79,0,0,0-3.93,0l-.7.7L9.41,11.12a2.85,2.85,0,0,0-3.93,0L4,12.6V7A1,1,0,0,1,5,6h8a1,1,0,0,0,0-2H5A3,3,0,0,0,2,7V19a3,3,0,0,0,3,3H17a3,3,0,0,0,3-3V14A1,1,0,0,0,19,13ZM5,20a1,1,0,0,1-1-1V15.43l2.9-2.9a.79.79,0,0,1,1.09,0l3.17,3.17,0,0L15.46,20Zm13-1a.89.89,0,0,1-.18.53L13.31,15l.7-.7a.77.77,0,0,1,1.1,0L18,17.21Z",width:21,height:21,transform:"translate(-2, -2)"}},X7={data:{candlestick:[{decreasing:{fillcolor:"#e4003a",line:{color:"#e4003a"}},increasing:{fillcolor:"#00ACFF",line:{color:"#00ACFF"}},type:"candlestick"}]},layout:{annotationdefaults:{showarrow:!1},autotypenumbers:"strict",colorway:["#ffed00","#ef7d00","#e4003a","#c13246","#822661","#48277c","#005ca9","#00aaff","#9b30d9","#af005f","#5f00af","#af87ff"],dragmode:"pan",font:{family:"Fira Code",size:18},hoverlabel:{align:"left"},mapbox:{style:"dark"},hovermode:"x",legend:{bgcolor:"rgba(0, 0, 0, 0)",x:.01,xanchor:"left",y:.99,yanchor:"top",font:{size:15}},paper_bgcolor:"#000000",plot_bgcolor:"#000000",xaxis:{automargin:!0,autorange:!0,rangeslider:{visible:!1},showgrid:!0,showline:!0,tickfont:{size:14},zeroline:!1,tick0:1,title:{standoff:20},linecolor:"#F5EFF3",mirror:!0,ticks:"outside"},yaxis:{anchor:"x",automargin:!0,fixedrange:!1,zeroline:!1,showgrid:!0,showline:!0,side:"right",tick0:.5,title:{standoff:20},gridcolor:"#283442",linecolor:"#F5EFF3",mirror:!0,ticks:"outside"}}},$7={data:{barpolar:[{marker:{line:{color:"white",width:.5},pattern:{fillmode:"overlay",size:10,solidity:.2}},type:"barpolar"}],bar:[{error_x:{color:"#2a3f5f"},error_y:{color:"#2a3f5f"},marker:{line:{color:"white",width:.5},pattern:{fillmode:"overlay",size:10,solidity:.2}},type:"bar"}],carpet:[{aaxis:{endlinecolor:"#2a3f5f",gridcolor:"#C8D4E3",linecolor:"#C8D4E3",minorgridcolor:"#C8D4E3",startlinecolor:"#2a3f5f"},baxis:{endlinecolor:"#2a3f5f",gridcolor:"#C8D4E3",linecolor:"#C8D4E3",minorgridcolor:"#C8D4E3",startlinecolor:"#2a3f5f"},type:"carpet"}],choropleth:[{colorbar:{outlinewidth:0,ticks:""},type:"choropleth"}],contourcarpet:[{colorbar:{outlinewidth:0,ticks:""},type:"contourcarpet"}],contour:[{colorbar:{outlinewidth:0,ticks:""},colorscale:[[0,"#0d0887"],[.1111111111111111,"#46039f"],[.2222222222222222,"#7201a8"],[.3333333333333333,"#9c179e"],[.4444444444444444,"#bd3786"],[.5555555555555556,"#d8576b"],[.6666666666666666,"#ed7953"],[.7777777777777778,"#fb9f3a"],[.8888888888888888,"#fdca26"],[1,"#f0f921"]],type:"contour"}],heatmapgl:[{colorbar:{outlinewidth:0,ticks:""},colorscale:[[0,"#0d0887"],[.1111111111111111,"#46039f"],[.2222222222222222,"#7201a8"],[.3333333333333333,"#9c179e"],[.4444444444444444,"#bd3786"],[.5555555555555556,"#d8576b"],[.6666666666666666,"#ed7953"],[.7777777777777778,"#fb9f3a"],[.8888888888888888,"#fdca26"],[1,"#f0f921"]],type:"heatmapgl"}],heatmap:[{colorbar:{outlinewidth:0,ticks:""},colorscale:[[0,"#0d0887"],[.1111111111111111,"#46039f"],[.2222222222222222,"#7201a8"],[.3333333333333333,"#9c179e"],[.4444444444444444,"#bd3786"],[.5555555555555556,"#d8576b"],[.6666666666666666,"#ed7953"],[.7777777777777778,"#fb9f3a"],[.8888888888888888,"#fdca26"],[1,"#f0f921"]],type:"heatmap"}],histogram2dcontour:[{colorbar:{outlinewidth:0,ticks:""},colorscale:[[0,"#0d0887"],[.1111111111111111,"#46039f"],[.2222222222222222,"#7201a8"],[.3333333333333333,"#9c179e"],[.4444444444444444,"#bd3786"],[.5555555555555556,"#d8576b"],[.6666666666666666,"#ed7953"],[.7777777777777778,"#fb9f3a"],[.8888888888888888,"#fdca26"],[1,"#f0f921"]],type:"histogram2dcontour"}],histogram2d:[{colorbar:{outlinewidth:0,ticks:""},colorscale:[[0,"#0d0887"],[.1111111111111111,"#46039f"],[.2222222222222222,"#7201a8"],[.3333333333333333,"#9c179e"],[.4444444444444444,"#bd3786"],[.5555555555555556,"#d8576b"],[.6666666666666666,"#ed7953"],[.7777777777777778,"#fb9f3a"],[.8888888888888888,"#fdca26"],[1,"#f0f921"]],type:"histogram2d"}],histogram:[{marker:{pattern:{fillmode:"overlay",size:10,solidity:.2}},type:"histogram"}],mesh3d:[{colorbar:{outlinewidth:0,ticks:""},type:"mesh3d"}],parcoords:[{line:{colorbar:{outlinewidth:0,ticks:""}},type:"parcoords"}],pie:[{automargin:!0,type:"pie"}],scatter3d:[{line:{colorbar:{outlinewidth:0,ticks:""}},marker:{colorbar:{outlinewidth:0,ticks:""}},type:"scatter3d"}],scattercarpet:[{marker:{colorbar:{outlinewidth:0,ticks:""}},type:"scattercarpet"}],scattergeo:[{marker:{colorbar:{outlinewidth:0,ticks:""}},type:"scattergeo"}],scattergl:[{marker:{colorbar:{outlinewidth:0,ticks:""}},type:"scattergl"}],scattermapbox:[{marker:{colorbar:{outlinewidth:0,ticks:""}},type:"scattermapbox"}],scatterpolargl:[{marker:{colorbar:{outlinewidth:0,ticks:""}},type:"scatterpolargl"}],scatterpolar:[{marker:{colorbar:{outlinewidth:0,ticks:""}},type:"scatterpolar"}],scatter:[{fillpattern:{fillmode:"overlay",size:10,solidity:.2},type:"scatter"}],scatterternary:[{marker:{colorbar:{outlinewidth:0,ticks:""}},type:"scatterternary"}],surface:[{colorbar:{outlinewidth:0,ticks:""},colorscale:[[0,"#0d0887"],[.1111111111111111,"#46039f"],[.2222222222222222,"#7201a8"],[.3333333333333333,"#9c179e"],[.4444444444444444,"#bd3786"],[.5555555555555556,"#d8576b"],[.6666666666666666,"#ed7953"],[.7777777777777778,"#fb9f3a"],[.8888888888888888,"#fdca26"],[1,"#f0f921"]],type:"surface"}],table:[{cells:{fill:{color:"#EBF0F8"},line:{color:"white"}},header:{fill:{color:"#C8D4E3"},line:{color:"white"}},type:"table"}],candlestick:[{decreasing:{fillcolor:"#c80000",line:{color:"#990000"}},increasing:{fillcolor:"#009600",line:{color:"#007500"}},type:"candlestick"}]},layout:{annotationdefaults:{arrowcolor:"#2a3f5f",arrowhead:0,arrowwidth:1,showarrow:!1},autotypenumbers:"strict",coloraxis:{colorbar:{outlinewidth:0,ticks:""}},colorscale:{diverging:[[0,"#8e0152"],[.1,"#c51b7d"],[.2,"#de77ae"],[.3,"#f1b6da"],[.4,"#fde0ef"],[.5,"#f7f7f7"],[.6,"#e6f5d0"],[.7,"#b8e186"],[.8,"#7fbc41"],[.9,"#4d9221"],[1,"#276419"]],sequential:[[0,"#0d0887"],[.1111111111111111,"#46039f"],[.2222222222222222,"#7201a8"],[.3333333333333333,"#9c179e"],[.4444444444444444,"#bd3786"],[.5555555555555556,"#d8576b"],[.6666666666666666,"#ed7953"],[.7777777777777778,"#fb9f3a"],[.8888888888888888,"#fdca26"],[1,"#f0f921"]],sequentialminus:[[0,"#0d0887"],[.1111111111111111,"#46039f"],[.2222222222222222,"#7201a8"],[.3333333333333333,"#9c179e"],[.4444444444444444,"#bd3786"],[.5555555555555556,"#d8576b"],[.6666666666666666,"#ed7953"],[.7777777777777778,"#fb9f3a"],[.8888888888888888,"#fdca26"],[1,"#f0f921"]]},colorway:["#254495","#c13246","#48277c","#e4003a","#ef7d00","#822661","#ffed00","#00aaff","#9b30d9","#af005f","#5f00af","#af87ff"],font:{color:"#2a3f5f"},geo:{bgcolor:"white",lakecolor:"white",landcolor:"white",showlakes:!0,showland:!0,subunitcolor:"#C8D4E3"},hoverlabel:{align:"left"},hovermode:"x",mapbox:{style:"light"},paper_bgcolor:"white",plot_bgcolor:"white",polar:{angularaxis:{gridcolor:"#EBF0F8",linecolor:"#EBF0F8",ticks:""},bgcolor:"white",radialaxis:{gridcolor:"#EBF0F8",linecolor:"#EBF0F8",ticks:""}},scene:{xaxis:{backgroundcolor:"white",gridcolor:"#DFE8F3",gridwidth:2,linecolor:"#EBF0F8",showbackground:!0,ticks:"",zerolinecolor:"#EBF0F8"},yaxis:{backgroundcolor:"white",gridcolor:"#DFE8F3",gridwidth:2,linecolor:"#EBF0F8",showbackground:!0,ticks:"",zerolinecolor:"#EBF0F8"},zaxis:{backgroundcolor:"white",gridcolor:"#DFE8F3",gridwidth:2,linecolor:"#EBF0F8",showbackground:!0,ticks:"",zerolinecolor:"#EBF0F8"}},shapedefaults:{line:{color:"#2a3f5f"}},ternary:{aaxis:{gridcolor:"#DFE8F3",linecolor:"#A2B1C6",ticks:""},baxis:{gridcolor:"#DFE8F3",linecolor:"#A2B1C6",ticks:""},bgcolor:"white",caxis:{gridcolor:"#DFE8F3",linecolor:"#A2B1C6",ticks:""}},title:{x:.05},xaxis:{automargin:!0,ticks:"outside",zerolinewidth:2,rangeslider:{visible:!1},showgrid:!0,showline:!0,tickfont:{size:15},title:{standoff:20},mirror:!0,zeroline:!1},yaxis:{automargin:!0,ticks:"outside",tickfont:{size:15},zerolinewidth:2,fixedrange:!1,title:{standoff:20},nticks:8,showgrid:!0,showline:!0,side:"right",mirror:!0,zeroline:!1},dragmode:"pan",legend:{bgcolor:"rgba(0, 0, 0, 0)",x:1.03,xanchor:"left",y:.99,yanchor:"top"}}};function zo(){return zo=Object.assign?Object.assign.bind():function(L){for(var I=1;I<arguments.length;I++){var $=arguments[I];for(var se in $)Object.prototype.hasOwnProperty.call($,se)&&(L[se]=$[se])}return L},zo.apply(this,arguments)}function wf(L,I,{checkForDefaultPrevented:$=!0}={}){return function(Pe){if(L==null||L(Pe),$===!1||!Pe.defaultPrevented)return I==null?void 0:I(Pe)}}function K7(L,I){typeof L=="function"?L(I):L!=null&&(L.current=I)}function A5(...L){return I=>L.forEach($=>K7($,I))}function dd(...L){return In.useCallback(A5(...L),L)}function J7(L,I=[]){let $=[];function se(R,E){const e=In.createContext(E),w=$.length;$=[...$,E];function k(_){const{scope:y,children:h,...l}=_,t=(y==null?void 0:y[L][w])||e,o=In.useMemo(()=>l,Object.values(l));return In.createElement(t.Provider,{value:o},h)}function i(_,y){const h=(y==null?void 0:y[L][w])||e,l=In.useContext(h);if(l)return l;if(E!==void 0)return E;throw new Error(`\`${_}\` must be used within \`${R}\``)}return k.displayName=R+"Provider",[k,i]}const Pe=()=>{const R=$.map(E=>In.createContext(E));return function(e){const w=(e==null?void 0:e[L])||R;return In.useMemo(()=>({[`__scope${L}`]:{...e,[L]:w}}),[e,w])}};return Pe.scopeName=L,[se,Q7(Pe,...I)]}function Q7(...L){const I=L[0];if(L.length===1)return I;const $=()=>{const se=L.map(Pe=>({useScope:Pe(),scopeName:Pe.scopeName}));return function(R){const E=se.reduce((e,{useScope:w,scopeName:k})=>{const _=w(R)[`__scope${k}`];return{...e,..._}},{});return In.useMemo(()=>({[`__scope${I.scopeName}`]:E}),[E])}};return $.scopeName=I.scopeName,$}const Tm=globalThis!=null&&globalThis.document?In.useLayoutEffect:()=>{},eA=G6["useId".toString()]||(()=>{});let tA=0;function sv(L){const[I,$]=In.useState(eA());return Tm(()=>{L||$(se=>se??String(tA++))},[L]),L||(I?`radix-${I}`:"")}function Cf(L){const I=In.useRef(L);return In.useEffect(()=>{I.current=L}),In.useMemo(()=>(...$)=>{var se;return(se=I.current)===null||se===void 0?void 0:se.call(I,...$)},[])}function nA({prop:L,defaultProp:I,onChange:$=()=>{}}){const[se,Pe]=rA({defaultProp:I,onChange:$}),R=L!==void 0,E=R?L:se,e=Cf($),w=In.useCallback(k=>{if(R){const _=typeof k=="function"?k(L):k;_!==L&&e(_)}else Pe(k)},[R,L,Pe,e]);return[E,w]}function rA({defaultProp:L,onChange:I}){const $=In.useState(L),[se]=$,Pe=In.useRef(se),R=Cf(I);return In.useEffect(()=>{Pe.current!==se&&(R(se),Pe.current=se)},[se,Pe,R]),$}const Fy=In.forwardRef((L,I)=>{const{children:$,...se}=L,Pe=In.Children.toArray($),R=Pe.find(aA);if(R){const E=R.props.children,e=Pe.map(w=>w===R?In.Children.count(E)>1?In.Children.only(null):In.isValidElement(E)?E.props.children:null:w);return In.createElement(Am,zo({},se,{ref:I}),In.isValidElement(E)?In.cloneElement(E,void 0,e):null)}return In.createElement(Am,zo({},se,{ref:I}),$)});Fy.displayName="Slot";const Am=In.forwardRef((L,I)=>{const{children:$,...se}=L;return In.isValidElement($)?In.cloneElement($,{...oA(se,$.props),ref:I?A5(I,$.ref):$.ref}):In.Children.count($)>1?In.Children.only(null):null});Am.displayName="SlotClone";const iA=({children:L})=>In.createElement(In.Fragment,null,L);function aA(L){return In.isValidElement(L)&&L.type===iA}function oA(L,I){const $={...I};for(const se in I){const Pe=L[se],R=I[se];/^on[A-Z]/.test(se)?Pe&&R?$[se]=(...e)=>{R(...e),Pe(...e)}:Pe&&($[se]=Pe):se==="style"?$[se]={...Pe,...R}:se==="className"&&($[se]=[Pe,R].filter(Boolean).join(" "))}return{...L,...$}}const sA=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],Nh=sA.reduce((L,I)=>{const $=In.forwardRef((se,Pe)=>{const{asChild:R,...E}=se,e=R?Fy:I;return In.useEffect(()=>{window[Symbol.for("radix-ui")]=!0},[]),In.createElement(e,zo({},E,{ref:Pe}))});return $.displayName=`Primitive.${I}`,{...L,[I]:$}},{});function lA(L,I){L&&Ay.flushSync(()=>L.dispatchEvent(I))}function uA(L,I=globalThis==null?void 0:globalThis.document){const $=Cf(L);In.useEffect(()=>{const se=Pe=>{Pe.key==="Escape"&&$(Pe)};return I.addEventListener("keydown",se),()=>I.removeEventListener("keydown",se)},[$,I])}const Mm="dismissableLayer.update",cA="dismissableLayer.pointerDownOutside",fA="dismissableLayer.focusOutside";let c_;const hA=In.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),pA=In.forwardRef((L,I)=>{var $;const{disableOutsidePointerEvents:se=!1,onEscapeKeyDown:Pe,onPointerDownOutside:R,onFocusOutside:E,onInteractOutside:e,onDismiss:w,...k}=L,i=In.useContext(hA),[_,y]=In.useState(null),h=($=_==null?void 0:_.ownerDocument)!==null&&$!==void 0?$:globalThis==null?void 0:globalThis.document,[,l]=In.useState({}),t=dd(I,b=>y(b)),o=Array.from(i.layers),[r]=[...i.layersWithOutsidePointerEventsDisabled].slice(-1),n=o.indexOf(r),a=_?o.indexOf(_):-1,s=i.layersWithOutsidePointerEventsDisabled.size>0,u=a>=n,p=dA(b=>{const g=b.target,f=[...i.branches].some(v=>v.contains(g));!u||f||(R==null||R(b),e==null||e(b),b.defaultPrevented||w==null||w())},h),c=gA(b=>{const g=b.target;[...i.branches].some(v=>v.contains(g))||(E==null||E(b),e==null||e(b),b.defaultPrevented||w==null||w())},h);return uA(b=>{a===i.layers.size-1&&(Pe==null||Pe(b),!b.defaultPrevented&&w&&(b.preventDefault(),w()))},h),In.useEffect(()=>{if(_)return se&&(i.layersWithOutsidePointerEventsDisabled.size===0&&(c_=h.body.style.pointerEvents,h.body.style.pointerEvents="none"),i.layersWithOutsidePointerEventsDisabled.add(_)),i.layers.add(_),f_(),()=>{se&&i.layersWithOutsidePointerEventsDisabled.size===1&&(h.body.style.pointerEvents=c_)}},[_,h,se,i]),In.useEffect(()=>()=>{_&&(i.layers.delete(_),i.layersWithOutsidePointerEventsDisabled.delete(_),f_())},[_,i]),In.useEffect(()=>{const b=()=>l({});return document.addEventListener(Mm,b),()=>document.removeEventListener(Mm,b)},[]),In.createElement(Nh.div,zo({},k,{ref:t,style:{pointerEvents:s?u?"auto":"none":void 0,...L.style},onFocusCapture:wf(L.onFocusCapture,c.onFocusCapture),onBlurCapture:wf(L.onBlurCapture,c.onBlurCapture),onPointerDownCapture:wf(L.onPointerDownCapture,p.onPointerDownCapture)}))});function dA(L,I=globalThis==null?void 0:globalThis.document){const $=Cf(L),se=In.useRef(!1),Pe=In.useRef(()=>{});return In.useEffect(()=>{const R=e=>{if(e.target&&!se.current){let i=function(){M5(cA,$,k,{discrete:!0})};var w=i;const k={originalEvent:e};e.pointerType==="touch"?(I.removeEventListener("click",Pe.current),Pe.current=i,I.addEventListener("click",Pe.current,{once:!0})):i()}se.current=!1},E=window.setTimeout(()=>{I.addEventListener("pointerdown",R)},0);return()=>{window.clearTimeout(E),I.removeEventListener("pointerdown",R),I.removeEventListener("click",Pe.current)}},[I,$]),{onPointerDownCapture:()=>se.current=!0}}function gA(L,I=globalThis==null?void 0:globalThis.document){const $=Cf(L),se=In.useRef(!1);return In.useEffect(()=>{const Pe=R=>{R.target&&!se.current&&M5(fA,$,{originalEvent:R},{discrete:!1})};return I.addEventListener("focusin",Pe),()=>I.removeEventListener("focusin",Pe)},[I,$]),{onFocusCapture:()=>se.current=!0,onBlurCapture:()=>se.current=!1}}function f_(){const L=new CustomEvent(Mm);document.dispatchEvent(L)}function M5(L,I,$,{discrete:se}){const Pe=$.originalEvent.target,R=new CustomEvent(L,{bubbles:!1,cancelable:!0,detail:$});I&&Pe.addEventListener(L,I,{once:!0}),se?lA(Pe,R):Pe.dispatchEvent(R)}const lv="focusScope.autoFocusOnMount",uv="focusScope.autoFocusOnUnmount",h_={bubbles:!1,cancelable:!0},vA=In.forwardRef((L,I)=>{const{loop:$=!1,trapped:se=!1,onMountAutoFocus:Pe,onUnmountAutoFocus:R,...E}=L,[e,w]=In.useState(null),k=Cf(Pe),i=Cf(R),_=In.useRef(null),y=dd(I,t=>w(t)),h=In.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;In.useEffect(()=>{if(se){let n=function(p){if(h.paused||!e)return;const c=p.target;e.contains(c)?_.current=c:kc(_.current,{select:!0})},a=function(p){if(h.paused||!e)return;const c=p.relatedTarget;c!==null&&(e.contains(c)||kc(_.current,{select:!0}))},s=function(p){const c=document.activeElement;for(const b of p)b.removedNodes.length>0&&(e!=null&&e.contains(c)||kc(e))};var t=n,o=a,r=s;document.addEventListener("focusin",n),document.addEventListener("focusout",a);const u=new MutationObserver(s);return e&&u.observe(e,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",n),document.removeEventListener("focusout",a),u.disconnect()}}},[se,e,h.paused]),In.useEffect(()=>{if(e){d_.add(h);const t=document.activeElement;if(!e.contains(t)){const r=new CustomEvent(lv,h_);e.addEventListener(lv,k),e.dispatchEvent(r),r.defaultPrevented||(mA(wA(S5(e)),{select:!0}),document.activeElement===t&&kc(e))}return()=>{e.removeEventListener(lv,k),setTimeout(()=>{const r=new CustomEvent(uv,h_);e.addEventListener(uv,i),e.dispatchEvent(r),r.defaultPrevented||kc(t??document.body,{select:!0}),e.removeEventListener(uv,i),d_.remove(h)},0)}}},[e,k,i,h]);const l=In.useCallback(t=>{if(!$&&!se||h.paused)return;const o=t.key==="Tab"&&!t.altKey&&!t.ctrlKey&&!t.metaKey,r=document.activeElement;if(o&&r){const n=t.currentTarget,[a,s]=yA(n);a&&s?!t.shiftKey&&r===s?(t.preventDefault(),$&&kc(a,{select:!0})):t.shiftKey&&r===a&&(t.preventDefault(),$&&kc(s,{select:!0})):r===n&&t.preventDefault()}},[$,se,h.paused]);return In.createElement(Nh.div,zo({tabIndex:-1},E,{ref:y,onKeyDown:l}))});function mA(L,{select:I=!1}={}){const $=document.activeElement;for(const se of L)if(kc(se,{select:I}),document.activeElement!==$)return}function yA(L){const I=S5(L),$=p_(I,L),se=p_(I.reverse(),L);return[$,se]}function S5(L){const I=[],$=document.createTreeWalker(L,NodeFilter.SHOW_ELEMENT,{acceptNode:se=>{const Pe=se.tagName==="INPUT"&&se.type==="hidden";return se.disabled||se.hidden||Pe?NodeFilter.FILTER_SKIP:se.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;$.nextNode();)I.push($.currentNode);return I}function p_(L,I){for(const $ of L)if(!xA($,{upTo:I}))return $}function xA(L,{upTo:I}){if(getComputedStyle(L).visibility==="hidden")return!0;for(;L;){if(I!==void 0&&L===I)return!1;if(getComputedStyle(L).display==="none")return!0;L=L.parentElement}return!1}function bA(L){return L instanceof HTMLInputElement&&"select"in L}function kc(L,{select:I=!1}={}){if(L&&L.focus){const $=document.activeElement;L.focus({preventScroll:!0}),L!==$&&bA(L)&&I&&L.select()}}const d_=_A();function _A(){let L=[];return{add(I){const $=L[0];I!==$&&($==null||$.pause()),L=g_(L,I),L.unshift(I)},remove(I){var $;L=g_(L,I),($=L[0])===null||$===void 0||$.resume()}}}function g_(L,I){const $=[...L],se=$.indexOf(I);return se!==-1&&$.splice(se,1),$}function wA(L){return L.filter(I=>I.tagName!=="A")}function kA(L,I){return In.useReducer(($,se)=>{const Pe=I[$][se];return Pe??$},L)}const By=L=>{const{present:I,children:$}=L,se=TA(I),Pe=typeof $=="function"?$({present:se.isPresent}):In.Children.only($),R=dd(se.ref,Pe.ref);return typeof $=="function"||se.isPresent?In.cloneElement(Pe,{ref:R}):null};By.displayName="Presence";function TA(L){const[I,$]=In.useState(),se=In.useRef({}),Pe=In.useRef(L),R=In.useRef("none"),E=L?"mounted":"unmounted",[e,w]=kA(E,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return In.useEffect(()=>{const k=_0(se.current);R.current=e==="mounted"?k:"none"},[e]),Tm(()=>{const k=se.current,i=Pe.current;if(i!==L){const y=R.current,h=_0(k);L?w("MOUNT"):h==="none"||(k==null?void 0:k.display)==="none"?w("UNMOUNT"):w(i&&y!==h?"ANIMATION_OUT":"UNMOUNT"),Pe.current=L}},[L,w]),Tm(()=>{if(I){const k=_=>{const h=_0(se.current).includes(_.animationName);_.target===I&&h&&Ay.flushSync(()=>w("ANIMATION_END"))},i=_=>{_.target===I&&(R.current=_0(se.current))};return I.addEventListener("animationstart",i),I.addEventListener("animationcancel",k),I.addEventListener("animationend",k),()=>{I.removeEventListener("animationstart",i),I.removeEventListener("animationcancel",k),I.removeEventListener("animationend",k)}}else w("ANIMATION_END")},[I,w]),{isPresent:["mounted","unmountSuspended"].includes(e),ref:In.useCallback(k=>{k&&(se.current=getComputedStyle(k)),$(k)},[])}}function _0(L){return(L==null?void 0:L.animationName)||"none"}let cv=0;function AA(){In.useEffect(()=>{var L,I;const $=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",(L=$[0])!==null&&L!==void 0?L:v_()),document.body.insertAdjacentElement("beforeend",(I=$[1])!==null&&I!==void 0?I:v_()),cv++,()=>{cv===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(se=>se.remove()),cv--}},[])}function v_(){const L=document.createElement("span");return L.setAttribute("data-radix-focus-guard",""),L.tabIndex=0,L.style.cssText="outline: none; opacity: 0; position: fixed; pointer-events: none",L}var ku=function(){return ku=Object.assign||function(I){for(var $,se=1,Pe=arguments.length;se<Pe;se++){$=arguments[se];for(var R in $)Object.prototype.hasOwnProperty.call($,R)&&(I[R]=$[R])}return I},ku.apply(this,arguments)};function E5(L,I){var $={};for(var se in L)Object.prototype.hasOwnProperty.call(L,se)&&I.indexOf(se)<0&&($[se]=L[se]);if(L!=null&&typeof Object.getOwnPropertySymbols=="function")for(var Pe=0,se=Object.getOwnPropertySymbols(L);Pe<se.length;Pe++)I.indexOf(se[Pe])<0&&Object.prototype.propertyIsEnumerable.call(L,se[Pe])&&($[se[Pe]]=L[se[Pe]]);return $}function MA(L,I,$){if($||arguments.length===2)for(var se=0,Pe=I.length,R;se<Pe;se++)(R||!(se in I))&&(R||(R=Array.prototype.slice.call(I,0,se)),R[se]=I[se]);return L.concat(R||Array.prototype.slice.call(I))}var q0="right-scroll-bar-position",G0="width-before-scroll-bar",SA="with-scroll-bars-hidden",EA="--removed-body-scroll-bar-size";function CA(L,I){return typeof L=="function"?L(I):L&&(L.current=I),L}function LA(L,I){var $=In.useState(function(){return{value:L,callback:I,facade:{get current(){return $.value},set current(se){var Pe=$.value;Pe!==se&&($.value=se,$.callback(se,Pe))}}}})[0];return $.callback=I,$.facade}function PA(L,I){return LA(I||null,function($){return L.forEach(function(se){return CA(se,$)})})}function OA(L){return L}function IA(L,I){I===void 0&&(I=OA);var $=[],se=!1,Pe={read:function(){if(se)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return $.length?$[$.length-1]:L},useMedium:function(R){var E=I(R,se);return $.push(E),function(){$=$.filter(function(e){return e!==E})}},assignSyncMedium:function(R){for(se=!0;$.length;){var E=$;$=[],E.forEach(R)}$={push:function(e){return R(e)},filter:function(){return $}}},assignMedium:function(R){se=!0;var E=[];if($.length){var e=$;$=[],e.forEach(R),E=$}var w=function(){var i=E;E=[],i.forEach(R)},k=function(){return Promise.resolve().then(w)};k(),$={push:function(i){E.push(i),k()},filter:function(i){return E=E.filter(i),$}}}};return Pe}function RA(L){L===void 0&&(L={});var I=IA(null);return I.options=ku({async:!0,ssr:!1},L),I}var C5=function(L){var I=L.sideCar,$=E5(L,["sideCar"]);if(!I)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var se=I.read();if(!se)throw new Error("Sidecar medium not found");return In.createElement(se,ku({},$))};C5.isSideCarExport=!0;function zA(L,I){return L.useMedium(I),C5}var L5=RA(),fv=function(){},B1=In.forwardRef(function(L,I){var $=In.useRef(null),se=In.useState({onScrollCapture:fv,onWheelCapture:fv,onTouchMoveCapture:fv}),Pe=se[0],R=se[1],E=L.forwardProps,e=L.children,w=L.className,k=L.removeScrollBar,i=L.enabled,_=L.shards,y=L.sideCar,h=L.noIsolation,l=L.inert,t=L.allowPinchZoom,o=L.as,r=o===void 0?"div":o,n=E5(L,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as"]),a=y,s=PA([$,I]),u=ku(ku({},n),Pe);return In.createElement(In.Fragment,null,i&&In.createElement(a,{sideCar:L5,removeScrollBar:k,shards:_,noIsolation:h,inert:l,setCallbacks:R,allowPinchZoom:!!t,lockRef:$}),E?In.cloneElement(In.Children.only(e),ku(ku({},u),{ref:s})):In.createElement(r,ku({},u,{className:w,ref:s}),e))});B1.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};B1.classNames={fullWidth:G0,zeroRight:q0};var m_,DA=function(){if(m_)return m_;if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function FA(){if(!document)return null;var L=document.createElement("style");L.type="text/css";var I=DA();return I&&L.setAttribute("nonce",I),L}function BA(L,I){L.styleSheet?L.styleSheet.cssText=I:L.appendChild(document.createTextNode(I))}function NA(L){var I=document.head||document.getElementsByTagName("head")[0];I.appendChild(L)}var jA=function(){var L=0,I=null;return{add:function($){L==0&&(I=FA())&&(BA(I,$),NA(I)),L++},remove:function(){L--,!L&&I&&(I.parentNode&&I.parentNode.removeChild(I),I=null)}}},UA=function(){var L=jA();return function(I,$){In.useEffect(function(){return L.add(I),function(){L.remove()}},[I&&$])}},P5=function(){var L=UA(),I=function($){var se=$.styles,Pe=$.dynamic;return L(se,Pe),null};return I},VA={left:0,top:0,right:0,gap:0},hv=function(L){return parseInt(L||"",10)||0},HA=function(L){var I=window.getComputedStyle(document.body),$=I[L==="padding"?"paddingLeft":"marginLeft"],se=I[L==="padding"?"paddingTop":"marginTop"],Pe=I[L==="padding"?"paddingRight":"marginRight"];return[hv($),hv(se),hv(Pe)]},qA=function(L){if(L===void 0&&(L="margin"),typeof window>"u")return VA;var I=HA(L),$=document.documentElement.clientWidth,se=window.innerWidth;return{left:I[0],top:I[1],right:I[2],gap:Math.max(0,se-$+I[2]-I[0])}},GA=P5(),WA=function(L,I,$,se){var Pe=L.left,R=L.top,E=L.right,e=L.gap;return $===void 0&&($="margin"),`
|
||
.`.concat(SA,` {
|
||
overflow: hidden `).concat(se,`;
|
||
padding-right: `).concat(e,"px ").concat(se,`;
|
||
}
|
||
body {
|
||
overflow: hidden `).concat(se,`;
|
||
overscroll-behavior: contain;
|
||
`).concat([I&&"position: relative ".concat(se,";"),$==="margin"&&`
|
||
padding-left: `.concat(Pe,`px;
|
||
padding-top: `).concat(R,`px;
|
||
padding-right: `).concat(E,`px;
|
||
margin-left:0;
|
||
margin-top:0;
|
||
margin-right: `).concat(e,"px ").concat(se,`;
|
||
`),$==="padding"&&"padding-right: ".concat(e,"px ").concat(se,";")].filter(Boolean).join(""),`
|
||
}
|
||
|
||
.`).concat(q0,` {
|
||
right: `).concat(e,"px ").concat(se,`;
|
||
}
|
||
|
||
.`).concat(G0,` {
|
||
margin-right: `).concat(e,"px ").concat(se,`;
|
||
}
|
||
|
||
.`).concat(q0," .").concat(q0,` {
|
||
right: 0 `).concat(se,`;
|
||
}
|
||
|
||
.`).concat(G0," .").concat(G0,` {
|
||
margin-right: 0 `).concat(se,`;
|
||
}
|
||
|
||
body {
|
||
`).concat(EA,": ").concat(e,`px;
|
||
}
|
||
`)},ZA=function(L){var I=L.noRelative,$=L.noImportant,se=L.gapMode,Pe=se===void 0?"margin":se,R=In.useMemo(function(){return qA(Pe)},[Pe]);return In.createElement(GA,{styles:WA(R,!I,Pe,$?"":"!important")})},Sm=!1;if(typeof window<"u")try{var w0=Object.defineProperty({},"passive",{get:function(){return Sm=!0,!0}});window.addEventListener("test",w0,w0),window.removeEventListener("test",w0,w0)}catch{Sm=!1}var rh=Sm?{passive:!1}:!1,YA=function(L){return L.tagName==="TEXTAREA"},O5=function(L,I){var $=window.getComputedStyle(L);return $[I]!=="hidden"&&!($.overflowY===$.overflowX&&!YA(L)&&$[I]==="visible")},XA=function(L){return O5(L,"overflowY")},$A=function(L){return O5(L,"overflowX")},y_=function(L,I){var $=I;do{typeof ShadowRoot<"u"&&$ instanceof ShadowRoot&&($=$.host);var se=I5(L,$);if(se){var Pe=R5(L,$),R=Pe[1],E=Pe[2];if(R>E)return!0}$=$.parentNode}while($&&$!==document.body);return!1},KA=function(L){var I=L.scrollTop,$=L.scrollHeight,se=L.clientHeight;return[I,$,se]},JA=function(L){var I=L.scrollLeft,$=L.scrollWidth,se=L.clientWidth;return[I,$,se]},I5=function(L,I){return L==="v"?XA(I):$A(I)},R5=function(L,I){return L==="v"?KA(I):JA(I)},QA=function(L,I){return L==="h"&&I==="rtl"?-1:1},e9=function(L,I,$,se,Pe){var R=QA(L,window.getComputedStyle(I).direction),E=R*se,e=$.target,w=I.contains(e),k=!1,i=E>0,_=0,y=0;do{var h=R5(L,e),l=h[0],t=h[1],o=h[2],r=t-o-R*l;(l||r)&&I5(L,e)&&(_+=r,y+=l),e=e.parentNode}while(!w&&e!==document.body||w&&(I.contains(e)||I===e));return(i&&(Pe&&_===0||!Pe&&E>_)||!i&&(Pe&&y===0||!Pe&&-E>y))&&(k=!0),k},k0=function(L){return"changedTouches"in L?[L.changedTouches[0].clientX,L.changedTouches[0].clientY]:[0,0]},x_=function(L){return[L.deltaX,L.deltaY]},b_=function(L){return L&&"current"in L?L.current:L},t9=function(L,I){return L[0]===I[0]&&L[1]===I[1]},n9=function(L){return`
|
||
.block-interactivity-`.concat(L,` {pointer-events: none;}
|
||
.allow-interactivity-`).concat(L,` {pointer-events: all;}
|
||
`)},r9=0,ih=[];function i9(L){var I=In.useRef([]),$=In.useRef([0,0]),se=In.useRef(),Pe=In.useState(r9++)[0],R=In.useState(function(){return P5()})[0],E=In.useRef(L);In.useEffect(function(){E.current=L},[L]),In.useEffect(function(){if(L.inert){document.body.classList.add("block-interactivity-".concat(Pe));var t=MA([L.lockRef.current],(L.shards||[]).map(b_),!0).filter(Boolean);return t.forEach(function(o){return o.classList.add("allow-interactivity-".concat(Pe))}),function(){document.body.classList.remove("block-interactivity-".concat(Pe)),t.forEach(function(o){return o.classList.remove("allow-interactivity-".concat(Pe))})}}},[L.inert,L.lockRef.current,L.shards]);var e=In.useCallback(function(t,o){if("touches"in t&&t.touches.length===2)return!E.current.allowPinchZoom;var r=k0(t),n=$.current,a="deltaX"in t?t.deltaX:n[0]-r[0],s="deltaY"in t?t.deltaY:n[1]-r[1],u,p=t.target,c=Math.abs(a)>Math.abs(s)?"h":"v";if("touches"in t&&c==="h"&&p.type==="range")return!1;var b=y_(c,p);if(!b)return!0;if(b?u=c:(u=c==="v"?"h":"v",b=y_(c,p)),!b)return!1;if(!se.current&&"changedTouches"in t&&(a||s)&&(se.current=u),!u)return!0;var g=se.current||u;return e9(g,o,t,g==="h"?a:s,!0)},[]),w=In.useCallback(function(t){var o=t;if(!(!ih.length||ih[ih.length-1]!==R)){var r="deltaY"in o?x_(o):k0(o),n=I.current.filter(function(u){return u.name===o.type&&u.target===o.target&&t9(u.delta,r)})[0];if(n&&n.should){o.cancelable&&o.preventDefault();return}if(!n){var a=(E.current.shards||[]).map(b_).filter(Boolean).filter(function(u){return u.contains(o.target)}),s=a.length>0?e(o,a[0]):!E.current.noIsolation;s&&o.cancelable&&o.preventDefault()}}},[]),k=In.useCallback(function(t,o,r,n){var a={name:t,delta:o,target:r,should:n};I.current.push(a),setTimeout(function(){I.current=I.current.filter(function(s){return s!==a})},1)},[]),i=In.useCallback(function(t){$.current=k0(t),se.current=void 0},[]),_=In.useCallback(function(t){k(t.type,x_(t),t.target,e(t,L.lockRef.current))},[]),y=In.useCallback(function(t){k(t.type,k0(t),t.target,e(t,L.lockRef.current))},[]);In.useEffect(function(){return ih.push(R),L.setCallbacks({onScrollCapture:_,onWheelCapture:_,onTouchMoveCapture:y}),document.addEventListener("wheel",w,rh),document.addEventListener("touchmove",w,rh),document.addEventListener("touchstart",i,rh),function(){ih=ih.filter(function(t){return t!==R}),document.removeEventListener("wheel",w,rh),document.removeEventListener("touchmove",w,rh),document.removeEventListener("touchstart",i,rh)}},[]);var h=L.removeScrollBar,l=L.inert;return In.createElement(In.Fragment,null,l?In.createElement(R,{styles:n9(Pe)}):null,h?In.createElement(ZA,{gapMode:"margin"}):null)}const a9=zA(L5,i9);var z5=In.forwardRef(function(L,I){return In.createElement(B1,ku({},L,{ref:I,sideCar:a9}))});z5.classNames=B1.classNames;const o9=z5;var s9=function(L){if(typeof document>"u")return null;var I=Array.isArray(L)?L[0]:L;return I.ownerDocument.body},ah=new WeakMap,T0=new WeakMap,A0={},pv=0,D5=function(L){return L&&(L.host||D5(L.parentNode))},l9=function(L,I){return I.map(function($){if(L.contains($))return $;var se=D5($);return se&&L.contains(se)?se:(console.error("aria-hidden",$,"in not contained inside",L,". Doing nothing"),null)}).filter(function($){return!!$})},u9=function(L,I,$,se){var Pe=l9(I,Array.isArray(L)?L:[L]);A0[$]||(A0[$]=new WeakMap);var R=A0[$],E=[],e=new Set,w=new Set(Pe),k=function(_){!_||e.has(_)||(e.add(_),k(_.parentNode))};Pe.forEach(k);var i=function(_){!_||w.has(_)||Array.prototype.forEach.call(_.children,function(y){if(e.has(y))i(y);else{var h=y.getAttribute(se),l=h!==null&&h!=="false",t=(ah.get(y)||0)+1,o=(R.get(y)||0)+1;ah.set(y,t),R.set(y,o),E.push(y),t===1&&l&&T0.set(y,!0),o===1&&y.setAttribute($,"true"),l||y.setAttribute(se,"true")}})};return i(I),e.clear(),pv++,function(){E.forEach(function(_){var y=ah.get(_)-1,h=R.get(_)-1;ah.set(_,y),R.set(_,h),y||(T0.has(_)||_.removeAttribute(se),T0.delete(_)),h||_.removeAttribute($)}),pv--,pv||(ah=new WeakMap,ah=new WeakMap,T0=new WeakMap,A0={})}},c9=function(L,I,$){$===void 0&&($="data-aria-hidden");var se=Array.from(Array.isArray(L)?L:[L]),Pe=I||s9(L);return Pe?(se.push.apply(se,Array.from(Pe.querySelectorAll("[aria-live]"))),u9(se,Pe,$,"aria-hidden")):function(){return null}};const F5="Dialog",[B5,nM]=J7(F5),[f9,ic]=B5(F5),h9=L=>{const{__scopeDialog:I,children:$,open:se,defaultOpen:Pe,onOpenChange:R,modal:E=!0}=L,e=In.useRef(null),w=In.useRef(null),[k=!1,i]=nA({prop:se,defaultProp:Pe,onChange:R});return In.createElement(f9,{scope:I,triggerRef:e,contentRef:w,contentId:sv(),titleId:sv(),descriptionId:sv(),open:k,onOpenChange:i,onOpenToggle:In.useCallback(()=>i(_=>!_),[i]),modal:E},$)},p9="DialogPortal",[rM,N5]=B5(p9,{forceMount:void 0}),Em="DialogOverlay",d9=In.forwardRef((L,I)=>{const $=N5(Em,L.__scopeDialog),{forceMount:se=$.forceMount,...Pe}=L,R=ic(Em,L.__scopeDialog);return R.modal?In.createElement(By,{present:se||R.open},In.createElement(g9,zo({},Pe,{ref:I}))):null}),g9=In.forwardRef((L,I)=>{const{__scopeDialog:$,...se}=L,Pe=ic(Em,$);return In.createElement(o9,{as:Fy,allowPinchZoom:!0,shards:[Pe.contentRef]},In.createElement(Nh.div,zo({"data-state":U5(Pe.open)},se,{ref:I,style:{pointerEvents:"auto",...se.style}})))}),sd="DialogContent",v9=In.forwardRef((L,I)=>{const $=N5(sd,L.__scopeDialog),{forceMount:se=$.forceMount,...Pe}=L,R=ic(sd,L.__scopeDialog);return In.createElement(By,{present:se||R.open},R.modal?In.createElement(m9,zo({},Pe,{ref:I})):In.createElement(y9,zo({},Pe,{ref:I})))}),m9=In.forwardRef((L,I)=>{const $=ic(sd,L.__scopeDialog),se=In.useRef(null),Pe=dd(I,$.contentRef,se);return In.useEffect(()=>{const R=se.current;if(R)return c9(R)},[]),In.createElement(j5,zo({},L,{ref:Pe,trapFocus:$.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:wf(L.onCloseAutoFocus,R=>{var E;R.preventDefault(),(E=$.triggerRef.current)===null||E===void 0||E.focus()}),onPointerDownOutside:wf(L.onPointerDownOutside,R=>{const E=R.detail.originalEvent,e=E.button===0&&E.ctrlKey===!0;(E.button===2||e)&&R.preventDefault()}),onFocusOutside:wf(L.onFocusOutside,R=>R.preventDefault())}))}),y9=In.forwardRef((L,I)=>{const $=ic(sd,L.__scopeDialog),se=In.useRef(!1),Pe=In.useRef(!1);return In.createElement(j5,zo({},L,{ref:I,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:R=>{var E;if((E=L.onCloseAutoFocus)===null||E===void 0||E.call(L,R),!R.defaultPrevented){var e;se.current||(e=$.triggerRef.current)===null||e===void 0||e.focus(),R.preventDefault()}se.current=!1,Pe.current=!1},onInteractOutside:R=>{var E,e;(E=L.onInteractOutside)===null||E===void 0||E.call(L,R),R.defaultPrevented||(se.current=!0,R.detail.originalEvent.type==="pointerdown"&&(Pe.current=!0));const w=R.target;((e=$.triggerRef.current)===null||e===void 0?void 0:e.contains(w))&&R.preventDefault(),R.detail.originalEvent.type==="focusin"&&Pe.current&&R.preventDefault()}}))}),j5=In.forwardRef((L,I)=>{const{__scopeDialog:$,trapFocus:se,onOpenAutoFocus:Pe,onCloseAutoFocus:R,...E}=L,e=ic(sd,$),w=In.useRef(null),k=dd(I,w);return AA(),In.createElement(In.Fragment,null,In.createElement(vA,{asChild:!0,loop:!0,trapped:se,onMountAutoFocus:Pe,onUnmountAutoFocus:R},In.createElement(pA,zo({role:"dialog",id:e.contentId,"aria-describedby":e.descriptionId,"aria-labelledby":e.titleId,"data-state":U5(e.open)},E,{ref:k,onDismiss:()=>e.onOpenChange(!1)}))),!1)}),x9="DialogTitle",b9=In.forwardRef((L,I)=>{const{__scopeDialog:$,...se}=L,Pe=ic(x9,$);return In.createElement(Nh.h2,zo({id:Pe.titleId},se,{ref:I}))}),_9="DialogDescription",w9=In.forwardRef((L,I)=>{const{__scopeDialog:$,...se}=L,Pe=ic(_9,$);return In.createElement(Nh.p,zo({id:Pe.descriptionId},se,{ref:I}))}),k9="DialogClose",T9=In.forwardRef((L,I)=>{const{__scopeDialog:$,...se}=L,Pe=ic(k9,$);return In.createElement(Nh.button,zo({type:"button"},se,{ref:I,onClick:wf(L.onClick,()=>Pe.onOpenChange(!1))}))});function U5(L){return L?"open":"closed"}const A9=h9,M9=d9,S9=v9,E9=b9,C9=w9,__=T9,w_=({title:L,titleId:I,...$})=>hr("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:1.5,...$,children:hr("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M6 18L18 6M6 6l12 12"})}),V5={margin:"2px 0px 2px 10px",padding:"5px 2px 2px 5px"};function gd({open:L,close:I,title:$,description:se,children:Pe}){return Xr(A9,{open:L,onOpenChange:I,children:[hr(M9,{onClick:I,className:"_modal-overlay"}),Xr(S9,{className:"_modal",children:[hr(E9,{className:"_modal-title",children:$}),hr(C9,{className:"_modal_description",children:se}),hr(__,{children:hr(w_,{})}),Pe,hr(__,{className:"_modal-close",onClick:I,children:hr(w_,{className:"w-6 h-6"})})]})]})}function L9({title:L,content:I,open:$,close:se}){return hr(gd,{title:L,description:"",open:$,close:se,children:Xr("div",{id:"popup_title",className:"popup_content",style:{padding:"0px 2px 2px 5px",marginTop:5},children:[hr("div",{style:{display:"flex",flexDirection:"column",gap:0},children:hr("div",{children:hr("label",{htmlFor:"title_text",children:I})})}),hr("div",{style:{float:"right",marginTop:20},children:hr("button",{type:"button",className:"_btn",style:{padding:"8px 16px",width:"100%"},onClick:se,children:"Close"})})]})})}function P9({open:L,close:I}){const $=window.download_path||"~/OpenBBUserData/exports";return hr(gd,{title:"Success",description:"",open:L,close:I,children:Xr("div",{id:"popup_title",className:"popup_content",style:{padding:"0px 2px 2px 5px",marginTop:5},children:[hr("div",{style:{display:"flex",flexDirection:"column",gap:0},children:hr("div",{children:Xr("label",{htmlFor:"title_text",children:[hr("b",{children:window.title})," has been downloaded to",hr("br",{}),hr("br",{}),hr("a",{style:{color:"#FFDD00",marginTop:15},href:`${$}`,onClick:se=>{se.preventDefault(),window.pywry.open_file($)},children:$})]})})}),hr("div",{style:{float:"right",marginTop:20},children:hr("button",{className:"_btn",style:{padding:"8px 16px",width:"100%"},onClick:I,children:"Close"})})]})})}const k_=new FileReader,O9={overlaying:"y",side:"left",tickfont:{size:12},tickpadding:5,showgrid:!1,showline:!1,showticklabels:!0,showlegend:!0,zeroline:!1,anchor:"x",type:"linear",autorange:!0};function I9({open:L,close:I,setLoading:$,addOverlay:se,plotlyData:Pe}){const[R,E]=In.useState("scatter"),[e,w]=In.useState("#FFDD00"),[k,i]=In.useState("#00ACFF"),[_,y]=In.useState("#FF0000"),[h,l]=In.useState(""),[t,o]=In.useState([]),[r,n]=In.useState([]),[a,s]=In.useState({}),u=["x","open","high","low","close"],p={scatter:"Scatter (Line)",candlestick:"Candlestick",bar:"Bar"},[c,b]=In.useState({});function g(){I(),E("scatter"),l(""),o([]),n([]),b({})}function f(){var m,x;if(t.length==0){(m=document.getElementById("csv_file"))==null||m.focus(),(x=document.getElementById("csv_file"))==null||x.style.setProperty("border","1px solid red"),document.getElementById("csv_file_warning").style.display="block";return}const v=R9({csvData:t,plotlyData:Pe,yaxisOptions:a,traceType:R,traceColor:e,traceName:h,options:c,increasingColor:k,decreasingColor:_});se(v),g()}return hr(gd,{title:"Overlay Chart",description:"Upload a CSV file to overlay a chart on the main chart.",open:L,close:I,children:Xr("div",{id:"popup_csv",className:"popup_content",children:[Xr("div",{children:[Xr("label",{htmlFor:"csv_file",children:[hr("b",{children:"CSV file:"}),hr("div",{id:"csv_file_warning",className:"popup_warning",style:{marginLeft:"80px",marginBottom:"10px"},children:"CSV file is required."})]}),hr("input",{onChange:v=>{var m,x;if(v.target.files){if(v.target.files[0].type!=="text/csv"){(m=document.getElementById("csv_file"))==null||m.focus(),(x=document.getElementById("csv_file"))==null||x.style.setProperty("border","1px solid red"),document.getElementById("csv_file_warning").style.display="block";return}}else return;r.length>0&&(n([]),b({}),E("scatter")),k_.onload=T=>{var Y;if(!((Y=T.target)!=null&&Y.result)||typeof T.target.result!="string")return;const d=T.target.result.split(`
|
||
`).map(D=>D.replace(/\r/g,"")),M=d[0].split(","),A=M.map(D=>D.trim().toLowerCase()),C={};M.length>1&&(C.x=M[0],C.y=M[1]);for(let D=0;D<u.length;D++)A.includes(u[D])?C[u[D]]=M[A.indexOf(u[D])]:u[D]==="x"&&A.includes("date")&&(C[u[D]]=M[A.indexOf("date")]);const P=["open","high","low","close"];P.every(D=>A.includes(D))?E("candlestick"):A.length>=5&&P.forEach(D=>{C[D]=M[P.indexOf(D)+1]}),A.includes("close")&&(b({...c,y:M[A.indexOf("close")]}),C.y=M[A.indexOf("close")]);const z=[];for(let D=1;D<d.length;D++){const G={},V=d[D].split(",");for(let j=0;j<M.length;j++)G[M[j]]=V[j];z.push(G)}let B=v.target.files[0].name.split(".")[0];try{if(B.includes("_")){const D=B.replace(/_{2,}/g,"_").split("_"),G=new RegExp("^[0-9]{8}$");D.length>2&&(G.test(D[0])?D.splice(0,2):G.test(D[D.length-2])&&D.splice(D.length-2,2),B=D.join("_").replace(/openbb_/g,""))}}catch(D){console.log(D)}l(B),b(C),n(M),o(z)},k_.readAsText(v.target.files[0])},type:"file",id:"csv_file",accept:".csv",style:{marginLeft:10}})]}),Xr("div",{style:{marginTop:15},children:[hr("label",{htmlFor:"csv_trace_type",children:hr("b",{children:"Display data type:"})}),Xr("select",{onChange:v=>{E(v.target.value)},id:"csv_trace_type",style:V5,defaultValue:p[R],children:[R&&hr("option",{value:R,children:p[R]},R),Object.keys(p).map(v=>R!==v&&hr("option",{value:v,children:p[v]},v))]})]}),Xr("div",{style:{marginTop:12},children:[hr("label",{htmlFor:"csv_name",children:hr("b",{children:"Trace Name:"})}),hr("textarea",{id:"csv_name",value:h,onChange:v=>{l(v.target.value)},style:{padding:"5px 2px 2px 5px",width:"100%",maxWidth:"100%",maxHeight:200,marginTop:2},rows:2,cols:20,placeholder:"Enter a name to give this trace"})]}),r.length>0&&Xr(Mg,{children:[["scatter","bar"].includes(R)&&hr("div",{style:{marginTop:15,marginBottom:10},id:"csv_columns",className:"csv_column_container",children:["x","y"].map(v=>Xr("div",{style:{marginTop:10,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[Xr("label",{htmlFor:`csv_${v}`,style:{width:"100px"},children:[v.toUpperCase()," Axis"]}),hr("select",{onChange:m=>{b({...c,[v]:m.target.value})},id:`csv_${v}`,style:{width:"100%"},defaultValue:c[v],children:r.map(m=>hr("option",{value:m,children:m},m))})]},v))}),R==="candlestick"&&hr("div",{id:"csv_columns",className:"csv_column_container",style:{marginTop:15},children:["x","open","high","low","close"].map(v=>Xr("div",{style:{marginTop:10,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[hr("label",{htmlFor:`csv_${v}`,style:{width:"100px"},children:v.charAt(0).toUpperCase()+v.slice(1)}),hr("select",{onChange:m=>{b({...c,[v]:m.target.value})},id:`csv_${v}`,style:{width:"100%"},defaultValue:c[v],children:r.map(m=>hr("option",{value:m,children:m},m))})]},v))}),Xr("div",{style:{marginTop:20},id:"csv_colors",children:[["scatter","bar"].includes(R)&&Xr("div",{children:[hr("label",{htmlFor:"csv_color",children:`${R.charAt(0).toUpperCase()}${R.slice(1)} color`}),hr("input",{type:"color",id:"csv_color",defaultValue:"#FFDD00",style:{margin:"2px 2px 2px 10px"},onChange:v=>{console.log(v.target.value),w(v.target.value)}})]}),R==="candlestick"&&Xr(Mg,{children:[hr("label",{htmlFor:"csv_increasing",children:"Increasing color"}),hr("input",{type:"color",id:"csv_increasing",defaultValue:"#00ACFF",style:{margin:"2px 0px 2px 10px"},onChange:v=>{i(v.target.value)}}),hr("label",{htmlFor:"csv_decreasing",style:{marginLeft:15},children:"Decreasing color"}),hr("input",{style:{margin:"2px 0px 2px 10px"},type:"color",id:"csv_decreasing",defaultValue:"#FF0000",onChange:v=>{y(v.target.value)}})]})]}),Xr("div",{style:{marginTop:20},id:"csv_plot_yaxis_options",children:[R!=="candlestick"&&Xr(Mg,{children:[hr("input",{type:"checkbox",id:"csv_percent_change",name:"csv_plot_yaxis_check",style:{marginBottom:2},onChange:v=>{s({...a,percentChange:v.target.checked,sameYaxis:!1})},checked:!a.sameYaxis&&a.percentChange}),hr("label",{htmlFor:"csv_percent_change",style:{marginLeft:5},children:"Plot as percent change from first value"}),hr("br",{})]}),hr("input",{style:{marginTop:2},type:"checkbox",id:"csv_same_yaxis",name:"csv_plot_yaxis_check",onChange:v=>{s({...a,sameYaxis:v.target.checked,percentChange:!1})},checked:!a.percentChange&&a.sameYaxis}),hr("label",{htmlFor:"csv_same_yaxis",style:{marginLeft:5},children:"Share Y-axis"}),R==="bar"&&Xr("div",{style:{marginTop:2},id:"csv_bar_orientation",children:[hr("input",{type:"checkbox",id:"csv_bar_horizontal",onChange:v=>{b({...c,orientation:v.target.checked?"h":"v"})}}),hr("label",{htmlFor:"csv_bar_horizontal",style:{marginLeft:5},children:"Plot horizontally"})]})]})]}),hr("br",{}),Xr("div",{style:{float:"right",marginTop:20},children:[hr("button",{className:"_btn-tertiary",id:"csv_cancel",onClick:g,children:"Cancel"}),hr("button",{className:"_btn",id:"csv_submit",onClick:f,children:"Submit"})]})]})})}function R9({csvData:L,plotlyData:I,yaxisOptions:$,traceType:se,traceColor:Pe,traceName:R,options:E,increasingColor:e,decreasingColor:w}){console.log("options",E);const k=I.data[0]||{};k.xaxis===void 0&&(k.xaxis="x"),k.yaxis===void 0&&(k.yaxis="y");let i=k.yaxis,_;const h=Object.keys(I.layout).filter(o=>o.startsWith("yaxis")).map(o=>I.layout[o]).filter(o=>o.side==="left"&&(o.overlaying==="y"||o.fixedrange!==void 0&&o.fixedrange===!0)).length>0?" ":"";if($.sameYaxis!==!0){const o=Object.keys(I.layout).filter(r=>r.startsWith("yaxis")).map(r=>I.layout[r]);_=`y${o.length+1}`,i=`yaxis${o.length+1}`,I.layout[i]={...O9,title:{text:R,font:{size:14},standoff:0},ticksuffix:h,layer:"below traces"}}else _=k.yaxis.replace("yaxis","y");const l={type:se,name:R,showlegend:!0,yaxis:_};let t={};if(["scatter","bar"].includes(se)){if(!L||L.length===0)return I;const o=L.findIndex(n=>n[E.y]!==null&&n[E.y]!==0);if(o===-1)return I;const r={x:[],y:[],customdata:[]};L.forEach(n=>{let a=n[E.y];r.customdata.push(a),$.percentChange&&(se==="scatter"||se==="line")&&(a=(n[E.y]-L[o][E.y])/L[o][E.y]),r.x.push(n[E.x]),r.y.push(a)}),t={...l,x:r.x,y:r.y,customdata:r.customdata,hovertemplate:"%{customdata:.2f}",connectgaps:!0,marker:{color:Pe}},se==="bar"&&(t.orientation=E.orientation,t.marker.opacity=.7,t.connectgaps=void 0,t.hovertemplate=void 0,t.customdata=void 0)}else if(se==="candlestick"){const o={x:[],open:[],high:[],low:[],close:[]};L.forEach(r=>{o.x.push(r[E.x]),o.open.push(r[E.open]),o.high.push(r[E.high]),o.low.push(r[E.low]),o.close.push(r[E.close])}),t={...l,x:o.x,open:o.open,high:o.high,low:o.low,close:o.close,increasing:{line:{color:e,width:.8},fillcolor:e},decreasing:{line:{color:w,width:.8},fillcolor:w}}}return{...I,data:[...I.data,t]}}const T_={padding:"5px 2px 2px 5px",margin:"2px 0"};function z9({open:L,close:I,addAnnotation:$,deleteAnnotation:se,popupData:Pe}){var l,t,o,r,n;const R={text:"",color:"#0088CC",size:18,bordercolor:"#822661",yanchor:"above"},[E,e]=In.useState(R),[w,k]=In.useState(R);Pe&&Pe!==E&&Pe.annotation&&(Pe.annotation=(Pe==null?void 0:Pe.annotation)||{},e(Pe),k(Pe));function i(){console.log("closing"),e(R),k(R),I()}function _(a){console.log(a.target.id.replace("addtext_",""),a.target.value);const s=a.target.id.replace("addtext_",""),u=a.target.value;k({...w,[s]:u})}function y(){console.log("submitting",w),w.text!==""?(E!=null&&E.annotation&&k({...w,annotation:E.annotation}),$(w),I()):(document.getElementById("popup_textarea_warning").style.display="block",document.getElementById("addtext_text").style.border="1px solid red")}function h(){se(E),i()}return hr(gd,{title:"Add Text to Chart",description:"Change the titles on the chart.",open:L,close:i,children:Xr("div",{id:"popup_title",className:"popup_content",children:[Xr("div",{style:{display:"flex",flexDirection:"column",gap:6},children:[Xr("div",{style:{marginBottom:20},children:[Xr("label",{htmlFor:"popup_text",children:[hr("b",{children:"Text:"}),hr("div",{id:"popup_textarea_warning",className:"popup_warning",children:"Text is required"})]}),hr("textarea",{id:"addtext_text",style:{...T_,width:"100%",maxWidth:"100%",maxHeight:"200px",marginTop:"8px"},rows:4,cols:50,placeholder:"Enter text here",onChange:_,defaultValue:((l=E==null?void 0:E.annotation)==null?void 0:l.text)||(w==null?void 0:w.text)})]}),Xr("div",{style:{display:"flex",gap:15,alignItems:"center",flexWrap:"wrap",columnCount:2,justifyContent:"space-between",marginBottom:20},children:[hr("label",{htmlFor:"addtext_color",children:hr("b",{children:"Font color"})}),hr("input",{type:"color",id:"addtext_color",style:{margin:"2px 2px 2px 15px"},defaultValue:((t=E==null?void 0:E.annotation)==null?void 0:t.color)||(w==null?void 0:w.color),onChange:_}),hr("label",{htmlFor:"addtext_bordercolor",style:{marginLeft:20},children:hr("b",{children:"Border color"})}),hr("input",{type:"color",id:"addtext_bordercolor",style:{margin:"2px 2px 10px 15px"},defaultValue:((o=E==null?void 0:E.annotation)==null?void 0:o.bordercolor)||(w==null?void 0:w.bordercolor),onChange:_}),hr("label",{htmlFor:"addtext_size",children:hr("b",{children:"Font size"})}),hr("input",{style:{...T_,width:"52px",margin:"0px 0px 0px 2px"},type:"number",id:"addtext_size",onChange:_,defaultValue:((r=E==null?void 0:E.annotation)==null?void 0:r.size)||(w==null?void 0:w.size)}),Xr("div",{children:[hr("label",{htmlFor:"addtext_yanchor",style:{marginRight:31},children:hr("b",{children:"Position"})}),Xr("select",{id:"addtext_yanchor",name:"yanchor",style:{width:"100px"},defaultValue:((n=E==null?void 0:E.annotation)==null?void 0:n.yanchor)||(w==null?void 0:w.yanchor),onChange:_,children:[hr("option",{value:"above",children:"Above"}),hr("option",{value:"below",children:"Below"})]})]})]})]}),Xr("div",{style:{float:"right",marginTop:20},children:[hr("button",{className:"_btn-tertiary ph-capture",id:"title_cancel",onClick:i,children:"Cancel"}),hr("button",{className:"_btn ph-capture",id:"title_delete",onClick:h,children:"Delete"}),hr("button",{className:"_btn ph-capture",id:"title_submit",onClick:y,children:"Submit"})]})]})})}function D9({plotlyData:L,open:I,close:$,defaultTitle:se,updateTitle:Pe,updateAxesTitles:R}){const[E,e]=In.useState(se),w=Object.keys(L.layout||{}).filter(y=>y.startsWith("yaxis")&&L.layout[y].range!=null),k=Object.keys(L.layout||{}).filter(y=>{var h;return y.startsWith("xaxis")&&L.layout[y].showticklabels!=null&&((h=L.layout[y])==null?void 0:h.anchor)}),[i,_]=In.useState({});return hr(gd,{title:"Chart Titles",description:"Change the titles on the chart.",open:I,close:$,children:Xr("div",{id:"popup_title",className:"popup_content",children:[Xr("div",{style:{display:"flex",flexDirection:"column",gap:0},children:[Xr("div",{children:[hr("label",{htmlFor:"title_text",children:hr("b",{children:"Title:"})}),hr("textarea",{id:"title_text",style:{...V5,width:"100%",maxWidth:"100%",maxHeight:"200px",marginTop:"8px",marginLeft:"0px"},rows:2,cols:20,value:E,onChange:y=>e(y.target.value)})]}),hr("div",{id:"xaxis_div",className:"csv_column_container",style:{marginTop:5,marginBottom:-5},children:k.map((y,h)=>{var l,t;return Xr("div",{style:{marginTop:5,marginBottom:5},children:[hr("label",{htmlFor:`title_${y}`,children:h===0?hr("b",{children:"X axis:"}):Xr("b",{children:["X axis ",h+1,":"]})}),hr("input",{id:`title_${y}`,style:{marginLeft:"0px",padding:"5px 2px 2px 5px"},type:"text",defaultValue:((t=(l=L==null?void 0:L.layout[y])==null?void 0:l.title)==null?void 0:t.text)||"",onChange:o=>{_({...i,[y]:o.target.value})}})]},y)})}),hr("div",{id:"yaxis_div",className:"csv_column_container",style:{marginTop:5,marginBottom:5},children:w.map((y,h)=>{var l,t;return Xr("div",{style:{marginTop:10},children:[hr("label",{htmlFor:`title_${y}`,children:h===0?hr("b",{children:"Y axis:"}):Xr("b",{children:["Y axis ",h+1,":"]})}),hr("input",{id:`title_${y}`,style:{marginLeft:"0px",padding:"5px 2px 2px 5px"},type:"text",defaultValue:((t=(l=L==null?void 0:L.layout[y])==null?void 0:l.title)==null?void 0:t.text)||"",onChange:o=>{_({...i,[y]:o.target.value})}})]},y)})})]}),Xr("div",{style:{float:"right",marginTop:20},children:[hr("button",{className:"_btn-tertiary ph-capture",id:"title_cancel",onClick:$,children:"Cancel"}),hr("button",{className:"_btn ph-capture",id:"title_submit",onClick:()=>{Pe(E),R(i),$()},children:"Submit"})]})]})})}function Cm(){return Cm=Object.assign?Object.assign.bind():function(L){for(var I=1;I<arguments.length;I++){var $=arguments[I];for(var se in $)Object.prototype.hasOwnProperty.call($,se)&&(L[se]=$[se])}return L},Cm.apply(this,arguments)}var H5=["shift","alt","meta","mod","ctrl"],F9={esc:"escape",return:"enter",".":"period",",":"comma","-":"slash"," ":"space","`":"backquote","#":"backslash","+":"bracketright",ShiftLeft:"shift",ShiftRight:"shift",AltLeft:"alt",AltRight:"alt",MetaLeft:"meta",MetaRight:"meta",OSLeft:"meta",OSRight:"meta",ControlLeft:"ctrl",ControlRight:"ctrl"};function Ic(L){return(F9[L]||L).trim().toLowerCase().replace(/key|digit|numpad|arrow/,"")}function B9(L){return H5.includes(L)}function dv(L,I){return I===void 0&&(I=","),L.split(I)}function gv(L,I,$){I===void 0&&(I="+");var se=L.toLocaleLowerCase().split(I).map(function(E){return Ic(E)}),Pe={alt:se.includes("alt"),ctrl:se.includes("ctrl")||se.includes("control"),shift:se.includes("shift"),meta:se.includes("meta"),mod:se.includes("mod")},R=se.filter(function(E){return!H5.includes(E)});return Cm({},Pe,{keys:R,description:$})}(function(){typeof document<"u"&&(document.addEventListener("keydown",function(L){L.key!==void 0&&q5([Ic(L.key),Ic(L.code)])}),document.addEventListener("keyup",function(L){L.key!==void 0&&G5([Ic(L.key),Ic(L.code)])})),typeof window<"u"&&window.addEventListener("blur",function(){Rc.clear()})})();var Rc=new Set;function N9(L,I){I===void 0&&(I=",");var $=Array.isArray(L)?L:L.split(I);return $.every(function(se){return Rc.has(se.trim().toLowerCase())})}function q5(L){var I=Array.isArray(L)?L:[L];Rc.has("meta")&&Rc.forEach(function($){return!B9($)&&Rc.delete($.toLowerCase())}),I.forEach(function($){return Rc.add($.toLowerCase())})}function G5(L){var I=Array.isArray(L)?L:[L];L==="meta"?Rc.clear():I.forEach(function($){return Rc.delete($.toLowerCase())})}function j9(L,I,$){(typeof $=="function"&&$(L,I)||$===!0)&&L.preventDefault()}function U9(L,I,$){return typeof $=="function"?$(L,I):$===!0||$===void 0}function V9(L){return W5(L,["input","textarea","select"])}function W5(L,I){var $=L.target;I===void 0&&(I=!1);var se=$&&$.tagName;return I instanceof Array?!!(se&&I&&I.some(function(Pe){return Pe.toLowerCase()===se.toLowerCase()})):!!(se&&I&&I===!0)}function H9(L,I){return L.length===0&&I?(console.warn('A hotkey has the "scopes" option set, however no active scopes were found. If you want to use the global scopes feature, you need to wrap your app in a <HotkeysProvider>'),!0):I?L.some(function($){return I.includes($)})||L.includes("*"):!0}var q9=function(I,$,se){se===void 0&&(se=!1);var Pe=$.alt,R=$.meta,E=$.mod,e=$.shift,w=$.ctrl,k=$.keys,i=I.key,_=I.code,y=I.ctrlKey,h=I.metaKey,l=I.shiftKey,t=I.altKey,o=Ic(_),r=i.toLowerCase();if(!se){if(Pe===!t&&r!=="alt"||e===!l&&r!=="shift")return!1;if(E){if(!h&&!y)return!1}else if(R===!h&&r!=="meta"&&r!=="os"||w===!y&&r!=="ctrl"&&r!=="control")return!1}return k&&k.length===1&&(k.includes(r)||k.includes(o))?!0:k?N9(k):!k},G9=In.createContext(void 0),W9=function(){return In.useContext(G9)};function Z5(L,I){return L&&I&&typeof L=="object"&&typeof I=="object"?Object.keys(L).length===Object.keys(I).length&&Object.keys(L).reduce(function($,se){return $&&Z5(L[se],I[se])},!0):L===I}var Z9=In.createContext({hotkeys:[],enabledScopes:[],toggleScope:function(){},enableScope:function(){},disableScope:function(){}}),Y9=function(){return In.useContext(Z9)};function X9(L){var I=In.useRef(void 0);return Z5(I.current,L)||(I.current=L),I.current}var A_=function(I){I.stopPropagation(),I.preventDefault(),I.stopImmediatePropagation()},$9=typeof window<"u"?In.useLayoutEffect:In.useEffect;function _c(L,I,$,se){var Pe=In.useRef(null),R=In.useRef(!1),E=$ instanceof Array?se instanceof Array?void 0:se:$,e=L instanceof Array?L.join(E==null?void 0:E.splitKey):L,w=$ instanceof Array?$:se instanceof Array?se:void 0,k=In.useCallback(I,w??[]),i=In.useRef(k);w?i.current=k:i.current=I;var _=X9(E),y=Y9(),h=y.enabledScopes,l=W9();return $9(function(){if(!((_==null?void 0:_.enabled)===!1||!H9(h,_==null?void 0:_.scopes))){var t=function(s,u){var p;if(u===void 0&&(u=!1),!(V9(s)&&!W5(s,_==null?void 0:_.enableOnFormTags))&&!(_!=null&&_.ignoreEventWhen!=null&&_.ignoreEventWhen(s))){if(Pe.current!==null&&document.activeElement!==Pe.current&&!Pe.current.contains(document.activeElement)){A_(s);return}(p=s.target)!=null&&p.isContentEditable&&!(_!=null&&_.enableOnContentEditable)||dv(e,_==null?void 0:_.splitKey).forEach(function(c){var b,g=gv(c,_==null?void 0:_.combinationKey);if(q9(s,g,_==null?void 0:_.ignoreModifiers)||(b=g.keys)!=null&&b.includes("*")){if(u&&R.current)return;if(j9(s,g,_==null?void 0:_.preventDefault),!U9(s,g,_==null?void 0:_.enabled)){A_(s);return}i.current(s,g),u||(R.current=!0)}})}},o=function(s){s.key!==void 0&&(q5(Ic(s.code)),((_==null?void 0:_.keydown)===void 0&&(_==null?void 0:_.keyup)!==!0||_!=null&&_.keydown)&&t(s))},r=function(s){s.key!==void 0&&(G5(Ic(s.code)),R.current=!1,_!=null&&_.keyup&&t(s,!0))},n=Pe.current||(E==null?void 0:E.document)||document;return n.addEventListener("keyup",r),n.addEventListener("keydown",o),l&&dv(e,_==null?void 0:_.splitKey).forEach(function(a){return l.addHotkey(gv(a,_==null?void 0:_.combinationKey,_==null?void 0:_.description))}),function(){n.removeEventListener("keyup",r),n.removeEventListener("keydown",o),l&&dv(e,_==null?void 0:_.splitKey).forEach(function(a){return l.removeHotkey(gv(a,_==null?void 0:_.combinationKey,_==null?void 0:_.description))})}}},[e,_,h]),Pe}function Lc(L=!0){return new Promise(I=>{window.MODEBAR||(window.MODEBAR=window.document.getElementsByClassName("modebar-container")[0],window.MODEBAR.style.cssText=`${window.MODEBAR.style.cssText}; display:flex;`),window.MODEBAR&&(window.MODEBAR.style.cssText.includes("display: none")||!L?window.MODEBAR.style.cssText=`${window.MODEBAR.style.cssText}; display:flex;`:window.MODEBAR.style.cssText=`${window.MODEBAR.style.cssText}; display:none;`,I(!0))})}function K9({setModal:L,changeTheme:I,autoScaling:$,Loading:se,changeColor:Pe,downloadFinished:R}){return _c("ctrl+shift+t",()=>{L({name:"titleDialog"})},{preventDefault:!0}),_c("ctrl+t",()=>{L({name:"textDialog"})},{preventDefault:!0}),_c("ctrl+o",()=>{L({name:"overlayChart"})},{preventDefault:!0}),_c(["ctrl+shift+h","ctrl+h"],()=>{Lc()},{preventDefault:!0}),_c("ctrl+e",()=>{Pe(!0)},{preventDefault:!0}),_c("ctrl+shift+s",async()=>{L({name:"downloadCsv"}),await o_(document.getElementById("plotlyChart"),R)},{preventDefault:!0}),_c("ctrl+s",async()=>{Lc(),l_("MainChart",Lc,se,R)},{preventDefault:!0}),_c("ctrl+w",()=>{window.close()},{preventDefault:!0}),{plotGlPixelRatio:1,scrollZoom:!0,responsive:!0,displaylogo:!1,displayModeBar:!0,modeBarButtonsToRemove:["lasso2d","select2d","downloadImage"],modeBarButtons:[[{name:"Download CSV (Ctrl+Shift+S)",icon:qu.downloadCsv,click:async function(e){await o_(e,R)}},{name:"Download Chart as Image (Ctrl+S)",icon:qu.downloadImage,click:async function(){Lc(),await l_("MainChart",Lc,se,R)}}],[{name:"Edit Color (Ctrl+E)",icon:qu.changeColor,click:function(){Pe(!0)}},"drawline","drawopenpath","drawcircle","drawrect","eraseshape"],[{name:"Overlay chart from CSV (Ctrl+O)",icon:qu.plotCsv,click:function(){L({name:"overlayChart"})}},{name:"Add Text (Ctrl+T)",icon:qu.addText,click:function(){L({name:"textDialog",data:{text:""}})}},{name:"Change Titles (Ctrl+Shift+T)",icon:qu.changeTitle,click:function(){L({name:"titleDialog"})}},{name:"Change Theme",icon:qu.sunIcon,click:function(){I(!0)}}],["hoverClosestCartesian","hoverCompareCartesian","toggleSpikelines"],[{name:"Auto Scale (Ctrl+Shift+A)",icon:ds.Icons.autoscale,click:function(){$(!0)}},"zoomIn2d","zoomOut2d","autoScale2d","zoom2d","pan2d"]]}}async function J9({plotData:L,volumeBars:I,setMaximizePlot:$}){const se=Object.keys(L.layout).filter(i=>i.startsWith("xaxis")).filter(i=>L.layout[i].showticklabels||L.layout[i].matches===void 0),Pe=L.data.filter(i=>{var _;return((_=i==null?void 0:i.name)==null?void 0:_.trim())==="Volume"}),R={},E=I||{old_nticks:{}},e=window.innerWidth,w=window.innerHeight,k=w>420&&e<920?8:w>420&&e<500?9:7;return e<750?(Pe.forEach(i=>{i.type==="bar"&&(i.opacity=1,i.marker.line.width=.09,I.yaxis===void 0&&(E.yaxis=`yaxis${i.yaxis.replace("y","")}`,R[`${E.yaxis}.tickfont.size`]=k,E.tickfont=L.layout[E.yaxis].tickfont||{},L.layout.margin.l-=40))}),se.forEach(i=>{var _;((_=I.old_nticks)==null?void 0:_[i])===void 0&&(R[`${i}.nticks`]=6,E.old_nticks[i]=L.layout[i].nticks||10)}),$(!0),await Lc()):window.MODEBAR.style.cssText.includes("display: none")&&(await Lc(!1),$(!1),I.old_nticks!==void 0&&se.forEach(i=>{I.old_nticks[i]!==void 0&&(R[`${i}.nticks`]=E.old_nticks[i],E.old_nticks[i]=void 0)}),I.yaxis!==void 0&&Pe.forEach(i=>{i.type==="bar"&&(i.opacity=.5,i.marker.line.width=.2,R[`${E.yaxis}.tickfont.size`]=E.tickfont.size+3,L.layout.margin.l+=40,E.yaxis=void 0)})),{volume_update:E,layout_update:R,plotData:L}}const Q9=N7(I7);function Y5(L,I){var se,Pe;I||(I=[(se=L[0])==null?void 0:se.x[L[0].x.length-1e3],(Pe=L[0])==null?void 0:Pe.x[L[0].x.length-1]]);const $=[];return L.forEach(R=>{const E={...R},e=["x","y","low","high","open","close","text","customdata"],w=R.x?R.x:[],k=[];for(let _=0;_<w.length;_++)w[_]>=I[0]&&w[_]<=I[1]&&k.push(_);e.forEach(_=>{R[_]&&Array.isArray(R[_])&&(E[_]=R[_].filter((y,h)=>k.includes(h)))}),["marker","line"].forEach(_=>{var y;(y=R[_])!=null&&y.color&&Array.isArray(R[_].color)&&(E[_]={...R[_]},E[_].color=R[_].color.filter((h,l)=>k.includes(l)))}),$.push(E)}),$.length===0?L:$}async function M_({event:L,figure:I}){var $,se;try{const Pe=I.data.filter(e=>e.x!==void 0&&e.x.length>0&&e.x[0]!==void 0);if(Pe.length===0)return I;const R=L?[L["xaxis.range[0]"],L["xaxis.range[1]"]]:[($=Pe[0])==null?void 0:$.x[Pe[0].x.length-1e3],(se=Pe[0])==null?void 0:se.x[Pe[0].x.length-1]],E=Y5(I.data,R);return I.data=E,I.layout.xaxis.range=R,I}catch(Pe){console.log("error",Pe)}}function eM({json:L,date:I,cmd:$,title:se,globals:Pe,theme:R,info:E}){var De,Ee,Me,he;const e=L7();In.useEffect(()=>{e&&e.capture("chart",E)},[]),L.layout.width=void 0,L.layout.height=void 0,(Ee=(De=L.layout)==null?void 0:De.title)!=null&&Ee.text&&(L.layout.title.text="");const[w,k]=In.useState(L),[i,_]=In.useState({}),[y,h]=In.useState(!1),[l,t]=In.useState(se),[o,r]=In.useState({}),[n,a]=In.useState(!1),[s,u]=In.useState({name:""}),[p,c]=In.useState(!1),[b,g]=In.useState(null),[f,v]=In.useState({old_nticks:{}}),[m,x]=In.useState(!1),[T,d]=In.useState(!1),[M,A]=In.useState(!1),[C,P]=In.useState(w),[O,z]=In.useState([]),[B,Y]=In.useState(!1),[D,G]=In.useState(!0),[V,j]=In.useState(!1),[W,Z]=In.useState(!1),[ie,te]=In.useState(!1),[J,X]=In.useState({}),[ee,re]=In.useState([]),[oe,ue]=In.useState([]),ce=()=>u({name:""});function de(fe){var be,Ie,Te,Ne,qe;console.log("onDeleteAnnotation",fe);const ae=(Ie=(be=C==null?void 0:C.layout)==null?void 0:be.annotations)==null?void 0:Ie.findIndex(ve=>ve.text===fe.text);console.log("index",ae),ae>-1&&((Ne=(Te=C==null?void 0:C.layout)==null?void 0:Te.annotations)==null||Ne.splice(ae,1),P({...C}),z((qe=C==null?void 0:C.layout)==null?void 0:qe.annotations))}function me(fe){U7({plotData:C,popupData:fe,setPlotData:P,setModal:u,setOnAnnotationClick:X,setAnnotations:z,onAnnotationClick:J,ohlcAnnotation:ee,setOhlcAnnotation:re,annotations:O,plotDiv:b})}In.useEffect(()=>{T&&(u({name:"downloadFinished"}),d(!1))},[T]),In.useEffect(()=>{o&&Object.keys(o).length>0&&(Object.keys(o).forEach(fe=>{C.layout[fe].title={...C.layout[fe].title||{},text:o[fe]},C.layout[fe].showticklabels=!0}),r({}))},[o]);function _e(fe){const ae=b.layout.shapes;if(!ae||ae.length===0)return;const be=ae[ae.length-1];be.line.color=fe,ds.update(b,{},{shapes:ae})}function Se(fe,ae=!1){const be=i[fe]||document.querySelector(`[data-title="${fe}"]`);ae?(be.style.border="transparent",be.style.boxShadow="none"):(be.style.border="1px solid rgba(0, 151, 222, 1.0)",be.style.borderRadius="5px",be.style.borderpadding="5px",be.style.boxShadow="0 0 5px rgba(0, 151, 222, 1.0)"),_({...i,[fe]:be})}function we(){const fe="Auto Scale (Ctrl+Shift+A)",ae=i[fe]||document.querySelector(`[data-title="${fe}"]`);let be=!0;ae.style.border==="transparent"?(b.removeAllListeners("plotly_relayout"),be=!1,b.on("plotly_relayout",Sh(async function(Ie){if(Ie["xaxis.range[0]"]!==void 0)if(M){const Te={...w};await M_({event:Ie,figure:Te}).then(async Ne=>{P(Ne),ds.react(b,Ne.data,Ne.layout);const qe=await u_(Ie,b);ue(qe.yaxis_fixedrange),ds.update(b,{},qe.to_update)})}else{const Te=await u_(Ie,b);ue(Te.yaxis_fixedrange),ds.update(b,{},Te.to_update)}},100))):(b.removeAllListeners("plotly_relayout"),oe.forEach(Ie=>{b.layout[Ie].fixedrange=!1}),ue([]),M&&b.on("plotly_relayout",Sh(async function(Ie){if(Ie["xaxis.range[0]"]===void 0)return;const Te={...w};await M_({event:Ie,figure:Te}).then(async Ne=>{P(Ne),ds.react(b,Ne.data,Ne.layout)})},100))),Se(fe,be)}function xe(){const fe="Edit Color (Ctrl+E)",ae=i[fe]||document.querySelector(`[data-title="${fe}"]`);let be=!0;ae.style.border==="transparent"&&(be=!1),te(!be),Se(fe,be)}return In.useEffect(()=>{V&&(console.log("activateAutoScale",!V),we(),j(!1))},[V]),In.useEffect(()=>{W&&(xe(),Z(!1))},[W]),In.useEffect(()=>{if(B)try{console.log("changeTheme",B);const fe=C==null?void 0:C.data.filter(qe=>{var ve;return((ve=qe==null?void 0:qe.name)==null?void 0:ve.trim())==="Volume"}),ae=!D;window.document.body.style.backgroundColor=ae?"#000":"#fff",C.layout.font={...C.layout.font||{},color:ae?"#fff":"#000"};const be=ae?qu.sunIcon:qu.moonIcon;document.querySelector('[data-title="Change Theme"]').getElementsByTagName("path")[0].setAttribute("d",be.path),document.querySelector('[data-title="Change Theme"]').getElementsByTagName("svg")[0].setAttribute("viewBox",be.viewBox);const Ne=ae?{"#009600":"#00ACFF","#c80000":"#e4003a"}:{"#e4003a":"#c80000","#00ACFF":"#009600"};fe.forEach(qe=>{qe.type==="bar"&&Array.isArray(qe.marker.color)&&(qe.marker.color=qe.marker.color.map(ve=>Ne[ve]||ve))}),C.layout.template=ae?X7:$7,P({...C}),ds.react(b,C.data,C.layout),G(ae),Y(!1)}catch(fe){console.log("error",fe)}},[B]),In.useEffect(()=>{var fe,ae,be,Ie;if(n){G(!0),j(!1);const Te=["Download CSV","Download Chart as Image","Overlay chart from CSV","Add Text","Change Titles","Auto Scale (Ctrl+Shift+A)","Reset Axes"],Ne=document.querySelector('[data-title="Autoscale"]');Ne&&(Ne.getElementsByTagName("path")[0].setAttribute("d",ds.Icons.home.path),Ne.setAttribute("data-title","Reset Axes")),window.MODEBAR=document.getElementsByClassName("modebar-container")[0];const qe=window.MODEBAR.getElementsByClassName("modebar-btn");if(window.MODEBAR.style.cssText=`${window.MODEBAR.style.cssText}; display:flex;`,qe){const Ae={};for(let ze=0;ze<qe.length;ze++){const Ue=qe[ze];Te.includes(Ue.getAttribute("data-title"))&&Ue.classList.add("ph-capture"),Ue.style.border="transparent",Ae[Ue.getAttribute("data-title")]=Ue}_(Ae)}if(((ae=(fe=C==null?void 0:C.layout)==null?void 0:fe.yaxis)==null?void 0:ae.type)!==void 0&&(C.layout.yaxis.type==="log"&&!y&&(console.log("yaxis.type changed to log"),h(!0)),C.layout.yaxis.type==="linear"&&y)){console.log("yaxis.type changed to linear"),h(!1);const Ae={"yaxis.exponentformat":"none","yaxis.tickformat":null,"yaxis.exponentbase":10};ds.update(b,{},Ae)}if(window.export_image!==void 0){const Ae=window.export_image.split("/").pop(),ze=Ae.split(".").pop().replace("jpg","jpeg");["jpeg","png","svg","pdf"].includes(ze)&&Sh(async function(){await Lc(),await T5("MainChart",Ae.split(".")[0],ze)},2)()}window.addEventListener("resize",async function(){const Ae=await J9({plotData:C,volumeBars:f,setMaximizePlot:x}),ze=Ae.layout_update,Ue=Ae.plotData,Ve=Ae.volume_update;Object.keys(ze).length>0&&(P(Ue),v(Ve),ds.relayout(b,ze))}),R!=="dark"&&Y(!0);const ve=w.data.map(Ae=>Ae.type==="candlestick");if(((be=w.data[0])==null?void 0:be.x)!==void 0&&((Ie=w.data[0])==null?void 0:Ie.x.length)<=1e3||!ve.includes(!0))return;u({name:"alertDialog",data:{title:"Warning",content:`Data has been truncated to 1000 points for performance reasons.
|
||
Please use the zoom tool to see more data.`}});const Ce=Y5(w.data);P({...w,data:Ce}),A(!0),j(!0)}},[n]),Xr("div",{className:"relative h-full",children:[p&&hr("div",{className:"absolute inset-0 flex items-center justify-center z-[100]",children:Xr("svg",{className:"animate-spin h-20 w-20 text-white",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[hr("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),hr("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8v8z"})]})}),Xr("div",{id:"loading",className:"saving",children:[hr("div",{id:"loading_text",className:"loading_text"}),hr("div",{id:"loader",className:"loader"})]}),hr(L9,{title:(Me=s==null?void 0:s.data)==null?void 0:Me.title,content:(he=s==null?void 0:s.data)==null?void 0:he.content,open:s.name==="alertDialog",close:ce}),hr(I9,{addOverlay:fe=>{console.log(fe),C.layout.showlegend=!0,P(fe),a(!1)},plotlyData:C,setLoading:c,open:s.name==="overlayChart",close:ce}),hr(D9,{updateTitle:fe=>t(fe),updateAxesTitles:fe=>r(fe),defaultTitle:l,plotlyData:C,open:s.name==="titleDialog",close:ce}),hr(z9,{popupData:s.name==="textDialog"?s==null?void 0:s.data:null,open:s.name==="textDialog",close:ce,addAnnotation:fe=>me(fe),deleteAnnotation:fe=>de(fe)}),hr(Y7,{open:ie,onColorChange:_e}),hr(P9,{open:s.name==="downloadFinished",close:ce}),Xr("div",{className:"relative h-full",id:"MainChart",children:[Xr("div",{className:"_header relative gap-4 py-2 text-center text-xs flex items-center justify-between px-4 text-white",children:[hr("div",{className:"w-1/3",children:hr("svg",{xmlns:"http://www.w3.org/2000/svg",width:"64",height:"40",fill:"none",viewBox:"0 0 64 40",children:hr("path",{fill:"#fff",d:"M61.283 3.965H33.608v27.757h25.699V19.826H37.561v-3.965H63.26V3.965h-1.977zM39.538 23.792h15.815v3.965H37.561v-3.965h1.977zM59.306 9.913v1.983H37.561V7.931h21.745v1.982zM33.606 0h-3.954v3.965H33.606V0zM25.7 3.966H0V15.86h25.7v3.965H3.953v11.896h25.7V3.966h-3.955zm0 21.808v1.983H7.907v-3.965h17.791v1.982zm0-15.86v1.982H3.953V7.931h21.745v1.982zM37.039 35.693v2.952l-.246-.246-.245-.245-.245-.247-.245-.246-.246-.246-.245-.245-.245-.247-.247-.246-.245-.246-.245-.246-.245-.246-.246-.246h-.49v3.936h.49v-3.198l.246.246.245.246.245.246.245.246.246.246.246.246.245.247.246.245.245.246.245.247.245.246.246.245.245.246h.245v-3.936h-.49zM44.938 37.17h-.491v-1.477h-2.944v3.937h3.93v-2.46h-.495zm-2.944-.246v-.739h1.962v.984h-1.962v-.245zm2.944.984v1.23h-2.944V37.66h2.944v.247zM52.835 37.17h-.49v-1.477h-2.946v3.937h3.925v-2.46h-.489zm-2.944-.246v-.739h1.963v.984h-1.965l.002-.245zm2.944.984v1.23H49.89V37.66h2.946v.247zM29.174 35.693H25.739v3.936H29.663v-.491H26.229v-.984h2.943v-.493H26.229v-1.476h3.434v-.492h-.489zM13.37 35.693H9.934v3.937h3.925v-3.937h-.49zm0 .738v2.709h-2.945v-2.955h2.943l.001.246zM21.276 35.693h-3.435v3.937h.491v-1.476h3.434v-2.461h-.49zm0 .738v1.23h-2.944v-1.476h2.944v.246z"})})}),hr("p",{className:"font-bold w-1/3 flex flex-col gap-0.5 items-center",children:l}),Xr("p",{className:"w-1/3 text-right text-xs",children:[new Intl.DateTimeFormat("en-GB",{dateStyle:"full",timeStyle:"long"}).format(I).replace(/:\d\d /," "),hr("br",{}),hr("span",{className:"text-grey-400",children:$})]})]}),hr("div",{className:P7("w-full sm:pb-12",{"h-[calc(100%-10px)]":m,"h-[calc(100%-50px)]":!m}),children:hr(Q9,{onInitialized:()=>{if(!b){const fe=document.getElementById("plotlyChart");console.log("plot",fe),fe&&g(fe),fe.globals=Pe}n||a(!0)},className:"w-full h-full",divId:"plotlyChart",data:C.data,layout:C.layout,config:K9({setModal:u,changeTheme:Y,autoScaling:j,Loading:c,changeColor:Z,downloadFinished:d})})})]})]})}function tM(){const[L,I]=In.useState(null),[$,se]=In.useState({});In.useEffect(()=>{{const E=setInterval(()=>{if(window.json_data){const e=window.json_data;console.log(e),I(e),clearInterval(E)}},100);return()=>clearInterval(E)}},[]);const R=(E=>{var y,h,l,t;if(!E)return null;const e={added_traces:[],csv_yaxis_id:null,cmd_src_idx:null,cmd_idx:null,cmd_src:"",old_margin:null,title:""},w=(h=(y=E.layout)==null?void 0:y.title)==null?void 0:h.text.replace(/ -/g,"").replace(/-/g,"").replace(/<b>|<\/b>/g,"").replace(/ /g,"_"),k=new Date().toISOString().slice(0,10).replace(/-/g,""),i=new Date().toISOString().slice(11,19).replace(/:/g,"");window.title=`openbb_${w}_${k}_${i}`.replace(/_{2,}/g,"_"),E.layout.annotations!==void 0&&E.layout.annotations.forEach(function(o){if(o.text!==void 0&&o.text[0]==="/"){e.cmd_src=o.text,e.cmd_idx=E.layout.annotations.indexOf(o),o.text="";const r=E.layout.margin;e.old_margin={...r},r.t!==void 0&&r.t>40&&(r.t=40),E.cmd==="/stocks/candle"&&(r.r-=50)}}),E.data.forEach(function(o){if(o.name!==void 0){const r=o.name.length;o.name=`${o.name} `,o.hoverlabel={namelength:r}}});const _=((t=(l=E.layout)==null?void 0:l.title)==null?void 0:t.text)||"Interactive Chart";return e.title=_,{data:E,date:new Date,globals:e,cmd:E.command_location,posthog:E.posthog,python_version:E.python_version,pywry_version:E.pywry_version,terminal_version:E.terminal_version,theme:E.theme,title:_}})(L);if(R){R.posthog.collect_logs&&!$&&se({api_host:"https://app.posthog.com",autocapture:{css_selector_allowlist:[".ph-capture"]},capture_pageview:!1,loaded:function(k){const i=(R==null?void 0:R.log_id)||"";i!==""&&i!=="REPLACE_ME"&&k.identify(i),k.onFeatureFlags(function(){k.isFeatureEnabled("record-pywry",{send_event:!1})||k.stopSessionRecording(),k.isFeatureEnabled("collect-logs-pywry",{send_event:!1})?k.has_opted_out_capturing()&&k.opt_in_capturing():k.opt_out_capturing()})}});const E={INFO:{command:R.cmd,title:R.title,date:R.date,python_version:R.python_version,pywry_version:R.pywry_version,terminal_version:R.terminal_version}},e=hr(eM,{json:R.data,date:R.date,cmd:R.cmd,title:R.title,globals:R.globals,theme:R.theme,info:E});return R.posthog.collect_logs&&$?hr(C7,{apiKey:"phc_vhssDAMod5qIplznQ75Kdgz4aB1qPFmeVmfEOZ4hkRw",options:$,children:e}):e}else return hr("div",{className:"absolute inset-0 flex items-center justify-center z-[100]",children:Xr("svg",{className:"animate-spin h-20 w-20 text-white",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",children:[hr("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),hr("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8v8z"})]})})}tT.render(hr(F_.StrictMode,{children:hr(tM,{})}),document.getElementById("root"));
|
||
|
||
</script>
|
||
<style>
|
||
@font-face{font-family:Fira Code;src:url(data:font/ttf;base64,AAEAAAAWAQAABABgRFNJRwAAAAEABF5oAAAACEdERUa+HNAQAAKtvAAAAqNHUE9TvBjfPAACsGAAACaKR1NVQoJn7PQAAtbsAABixkhWQVJAD0gaAAM5tAAAADBNVkFSG+ocJgADOeQAAAA7T1MvMobQl5QAAAHoAAAAYFNUQVSa1291AAM6IAAAAJxhdmFyXrNgAQADOrwAAAAiY21hcNzkWCUAACF8AABDeGZ2YXKIj3GSAAM64AAAAFZnYXNwAAAAEAACrbQAAAAIZ2x5ZmG7yBgAAHTcAAHVsGd2YXIEe/iGAAM7OAABIy5oZWFkFjtu/gAAAWwAAAA2aGhlYQKGBWQAAAGkAAAAJGhtdHizJloOAAACSAAAHzJsb2Nhxv9TAgAAZPwAAA/ebWF4cAhcAoIAAAHIAAAAIG5hbWVhyGnwAAJKjAAABzNwb3N0QbGLgQACUcAAAFvzcHJlcGgGjIUAAGT0AAAABwABAAAABgCDBCiGLF8PPPUAAweeAAAAAN3P+u4AAAAA3dQpfPIr/BgJUAlgAAAABgACAAAAAAAAAAEAAAcI/agAAASw8iv7YAlQAAEAAAAAAAAAAAAAAAAAAAerAAEAAAfuAgYAYAB4AAoAAQAAAAAAAAAAAAAAAAADAAMABASwASwABQAABPQEkgAAAJIE9ASSAAACqwAyAT4AAAILCAkFAAACAATgAALvEgH5+wIAIDgAAAAAQ1REQgDAAA3//wcI/agAAAcIAlhgAACf39cAAAQaBV4AAAAgAAUEsABQBLAAPASwADwEsAA8BLAAPASwADwEsAA8BLAAPASwADwEsAA8BLAAPASw/+gEsP/oBLAA2QSwAJAEsACQBLAAkASwAJAEsACQBLAAkASwALoEsAAvBLAAugSwAC8EsAEOBLABDgSwAQ4EsAEOBLABDgSwAQ4EsAEOBLABDgSwAQ4EsAEOBLABJwSwAGkEsABpBLAAaQSwAGkEsABpBLAAugSwAAQEsAC6BLAA3wSwABkEsADfBLAA3wSwAN8EsADfBLAA3wSwAN8EsADfBLAA3wSwAN8EsAClBLAApQSwAO0EsADtBLABKASwAI8EsAEoBLABKASwASgEsABkBLAARQSwALoEsAC6BLAAugSwALoEsAC6BLAAugSwAGsEsABrBLAAawSwAGsEsABrBLAAawSwAGsEsABrBLAAawSwAGsEsABrBLD/9wSwAQcEsADzBLAAYwSwAOUEsADlBLAA5QSwAOUEsABqBLAAagSwAGoEsABqBLAAagSwAGoEsACrBLAAWgSwAFoEsABaBLAAWgSwAFoEsACjBLAAowSwAKMEsACjBLAAowSwAKMEsACjBLAAowSwAKMEsACjBLAAowSwAEAEsAAOBLAADgSwAA4EsAAOBLAADgSwAE4EsABCBLAAQgSwAEIEsABCBLAAQgSwAKIEsACiBLAAogSwAKIEsACQBLAAugSwAGsEsABqBLAAogSwAAAEsAAABLD8dwSw+6oEsACdBLAAnQSwAJ0EsACdBLAAnQSwAJ0EsACdBLAAnQSwAJ0EsACdBLD/9ASw//QEsADbBLAAxQSwAMUEsADFBLAAxQSwAMUEsADFBLAAmQSwAJYEsABlBLAAqgSwALAEsACwBLAAsASwALAEsACwBLAAsASwALAEsACwBLAAsASwALAEsADGBLAAmASwAJgEsACYBLAAmASwAJgEsADbBLAALQSwANsEsAEGBLABBgSwAQYEsAEGBLABBgSwAQYEsAEGBLABBgSwAGkEsAEGBLABBgSwAQYEsADPBLAAzwSwAM8EsADpBLAA6QSwANsEsACIBLAAiASwAIgEsACIBLAAiASwAIgEsABzBLAA2wSwANsEsAAGBLAA2wSwANsEsADbBLAA2wSwAKYEsACmBLAApgSwAKYEsACmBLAApgSwAKYEsACmBLAApgSwAKYEsACmBLD//gSwANsEsADbBLAApgSwAOUEsADlBLAA5QSwAOUEsACjBLAAowSwAKMEsACjBLAAowSwAKMEsADVBLAArASwAKwEsACsBLAArASwAKwEsADbBLAA2wSwANsEsADbBLAA2wSwANsEsADbBLAA2wSwANsEsADbBLAA2wSwAIwEsAArBLAAKwSwACsEsAArBLAAKwSwAIMEsACPBLAAjwSwAI8EsACPBLAAjwSwAN8EsADfBLAA3wSwAN8EsACZBLAAmQSwAJkEsACZBLAAmQSwAJkEsACZBLAAmQSwAJkEsACZBLAAmQSwAJkEsACZBLAAmQSwAJkEsAHwBLACGgSwAYgEsAE7BLABIgSwATIEsAHwBLABfgSwAVQEsAEVBLABHwSwARAEsAEQBLABEASwARAEsAEQBLABEASwARAEsAEQBLABEASwARAEsAEQBLABEASwARAEsAEQBLABEASwARAEsAEQBLABEASwARAEsAEQBLABEASwARAEsAEMBLABDASwAQwEsAEMBLABDASwAQwEsAEMBLABDASwAQwEsAEMBLABDASwAhoEsAGTBLACGgSwAewEsAIaBLABRQSwANQEsADUBLAA1ASwANQEsADUBLAA1ASwAIgEsACIBLAAiASwAIgEsACIBLAAiASwAQYEsAEGBLABBgSwAQYEsAEGBLABBgSwAMUEsADbBLAApgSwAKMEsADfBLAAywSwAAAEsAAABLAAAASwAOUEsADLBLABBgSwAM8EsACIBLD3bgSw/BYEsPwWBLD8FgSw/BYEsAFZBLAA1gSwAMoEsAA8BLAA4wSwANkEsAErBLABKwSwASsEsAErBLAAlQSwAMMEsAAGBLABDgSwAQ4EsAEOBLAAHgSwAFcEsAC6BLAAugSwALoEsAC6BLAA1gSwANYEsAAuBLAARQSwALoEsABrBLAAugSwAQcEsACQBLAAWgSwAEgEsABIBLAAHwSwAE4EsAB1BLAAugSwAGMEsABjBLAAugSwANQEsABEBLAAAwSwAA0EsABbBLAAagSwAIEEsABlBLAA3wSwAN8EsAClBLD/+QSwAGYEsABWBLD/+QSwACQEsAAUBLAAWwSwADwEsABfBLAAYASwAC0EsACyBLAAHASwAGsEsABDBLAAQwSwAB0EsAAeBLAAVwSwANYEsADWBLAAWgSwAB0EsADFBLAAnASwADoEsAC6BLAATwSwAJAEsABaBLAAQgSwAEIEsABOBLAAAASwAHUEsAB1BLAAugSwALoEsAAEBLAABASwAN8EsAAeBLAAugSwADgEsAC6BLAAogSwAHUEsAAkBLAAPASwADwEsP/oBLABDgSwAGgEsABoBLAAHgSwAFcEsACeBLAAugSwALoEsABrBLAAawSwAGsEsABlBLAASASwAEgEsABIBLAAdQSwAEQEsACABLAAJgSwAE4EsABwBLAAEQSwADcEsACaBLAAEASwAG0EsABpBLAAIQSwAIQEsAAuBLAAFgSwAIAEsAAVBLAAYwSwAA4EsADIBLD/+QSwADYEsAA8BLABBwSw/2UEsP/oBLAAaQSwAA0EsACdBLAAqgSwAPIEsAFRBLABUQSwAVEEsAFRBLAAygSwANkEsAA8BLAAsASwALAEsACwBLAANgSwAH0EsADbBLAA2wSwANsEsADLBLAA5gSwAOYEsABlBLAAYgSwANsEsACmBLAA2wSwANsEsADFBLAAkQSwAI8EsACPBLAAQQSwAIMEsADABLAA1ASwAG8EsABvBLAA2wSwARMEsACRBLAATgSwAA4EsACoBLAAowSwAMUEsADFBLABBgSwAQYEsADPBLAALQSwAH0EsAB8BLAALQSwADwEsACDBLAAqgSwAFQEsAB/BLAANQSwAFsEsACkBLAAWwSwAKYEsACJBLAAiQSwAAIEsAA8BLAAfQSwAOYEsADmBLAAXQSwABQEsADBBLAAzQSwANAEsAA+BLAAewSwAMUEsACRBLAAhwSwAIcEsACDBLAAAASwAKwEsADABLAA3ASwANQEsAAYBLAAGASwAIgEsAA2BLAA7ASwAGcEsADbBLAA4QSwAMAEsAB8BLAAnQSwAJ0EsP/0BLAAsASwAKYEsACmBLAANgSwAH0EsACLBLAA2wSwANsEsACmBLAApgSwAKYEsADFBLAAjwSwAI8EsACPBLAAwASwAJEEsACgBLAAbwSwAIMEsACZBLAAFwSwABkEsACaBLAAGQSwAGcEsACgBLAACQSwALIEsABlBLAALgSwAGkEsAAOBLAApgSwACsEsADfBLD/9QSwAD4EsACfBLAA7ASw/30EsP/uBLAAWQSwAFcEsAClBLAAPASwANkEsAErBLAAPASwAQ4EsACiBLAAugSwAGsEsADfBLAA7QSwAEQEsABFBLAAugSwAKcEsABrBLAAugSwAQcEsACdBLAAWgSwAEIEsAAZBLAATgSwABwEsABrBLAAPASw//kEsP+lBLD/ygSw/9gEsP9BBLD/1QSwAN8EsABCBLAA7gSwAFQEsAC6BLAAawSwAKgEsAEVBLAAnQSwAD8EsADnBLAAWgSw/0wEsABaBLAAawSwAPMEsACQBLAARQSwAE4EsACQBLAATgSwADwEsAA8BLD/agSw/20EsP+bBLD/swSw/zoEsP88BLAAPASwADwEsAA8BLAAPASwADwEsAA8BLAAPASw/2oEsP9tBLD/mwSw/7MEsP86BLD/PASw//gEsP/eBLD+xwSw/tEEsP7tBLD/BgSw/+YEsP/5BLD/pASw/4oEsP5zBLD+fQSw/pkEsP6yBLD+NQSw/jQEsP+SBLD/pQSwALoEsP+kBLD/igSw/nMEsP59BLD+mQSw/rIEsP41BLD+NASw/8kEsP/XBLD/CASw/v4EsP6+BLD+1wSw/loEsP5ZBLD/5wSw/8oEsADfBLAA3wSw/9cEsP+VBLD+bQSw/ngEsP6kBLD+vASw/30EsP+wBLD/1wSw/2sEsP5sBLD+PASw/cYEsP9hBLD/QQSwAEIEsABCBLD/1ASw/50EsP5zBLD+fgSw/qIEsP66BLD+ZQSw/mQEsP99BLD/rgSwAGsEsP/UBLD/nQSw/nMEsP5+BLD+ogSw/roEsP5lBLD+ZASwAIMEsADNBLAAZwSwAJYEsACyBLAA5wSwAJ0EsACmBLAAjASwAMIEsABuBLAAvgSwAEkEsADTBLAApgSwAA4EsADLBLAA2QSwAKYEsABYBLAA5QSwAEwEsACCBLAAWwSwADwEsACMBLAAjASwAIwEsADlBLAA5QSwAOUEsACmBLAAPASwAIMEsACyBLAAnQSwAOcEsAAqBLAA0ASwAMoEsADFBLAAygSwAKYEsACSBLABEASwAL8EsABNBLAAhwSwAK0EsAChBLAAaQSwAB8EsACFBLAAywSwAMUEsADPBLAAxQSwANsEsAAzBLAAYgSwAIMEsACDBLAAgwSwAIMEsACDBLAAgwSwAIMEsACDBLAAgwSwAIMEsACDBLAAgwSwAIMEsACDBLAAgwSwAIMEsACDBLAAgwSwAIMEsACDBLAAgwSwAIMEsACDBLAAgwSwAIMEsACyBLAAsgSwALIEsACyBLAAsgSwALIEsACyBLAAsgSwAJ0EsACdBLAAnQSwAJ0EsACdBLAAnQSwAJ0EsACdBLAAnQSwAJ0EsACdBLAAnQSwAJ0EsACdBLAAnQSwAJ0EsACdBLAAnQSwAJ0EsACdBLAAnQSwAJ0EsACdBLAAjASwAIwEsACMBLAAjASwAIwEsACMBLAAjASwAIwEsACMBLAAjASwAIwEsACMBLAAjASwAIwEsACMBLAAjASwAKYEsACmBLAApgSwAKYEsACmBLAApgSwAKYEsACmBLAAywSwAMsEsADlBLAA5QSwAOUEsADlBLAA5QSwAOUEsADlBLAA5QSwAOUEsADlBLAA5QSwAOUEsADlBLAA5QSwAOUEsADlBLAAPASwADwEsAA8BLAAPASwADwEsAA8BLAAPASwADwEsAA8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AsYDZQLHAsgDZgNnAskCygLLAYIBgwGrAXsBowGiAaUBpgGnAaABoQGoAYsBiAGVAZwBdwF4AXkBegGAAYEBhAGFAYYBhwGKAZYBlwGZAZgBmgGbAZ8BngGdAaQBqQGqAgcCCAIJAgoCEAIRAhQCFQIWAhcCGgImAicCKQIoAioCKwIvAi4CLQI0AjkCOgISAhMCOwILAjMCMgI1AjYCNwIwAjECOAIbAhgCJQIsAawCPAGtAj0BrgI+Aa8CPwGwAkABsQJBAbICQgGzAkMBtAJEAbUCRQG2AkYBtwJHAbgCSAGJAhkCAQKRAgICkgF8AgwBfgIOAX8CDwG5AkkBugJKAbsCSwG8AkwBvQJNAb4CTgG/Ak8BwAJQAcECUgHDAlMBxAJUAcUCVQHGAlYBxwJXAcgCWAHJAlkBygJaAcsCWwHMAlwBzgJeAc8CXwHQAdECYQHSAmIB0wJjAdQCZAHVAmUB1gJmAdcCZwJgAdgCaAHZAmkB2gJqAdsCawHcAmwB3QJtAd4CbgHfAm8B4AJwAeECcQHiAnIB4wJzAeQCdAHlAnUB5gJ2AecCdwHoAngB6QJ5AeoCegF9Ag0B6wJ7AewCfAHtAn0B7gJ+Ae8CfwHwAoAB8QKBAfICggHzAoMB9AKEAfUChQH2AoYB9wKHAfgCiAH5AokB+gKKAfsCiwH8AowB/QKNAf4CjgH/Ao8CAAKQAcICUQHNAl0CAwKTAgQClAIFApUCBgKWAHYBAwBzAQAAdQECAHwBCQLpAuoC6wLsAu0C7gLvAvADoAOhA6IDowOkA6UDpgOnAvwC/QL+Av8DAAMBAwIDAwMUA8oDywPMA80DzgPPA9AD0QMZAxoDGwMcAx0DHgMfAyADcANxA4cDiAORA5IDqAOpA7YDtwPCA8MD0gPTAtkC2gLbAtwC3QLeAt8C4AOXA5gDmQOaA5sDnAOdA54C9AL1AvYC9wL4AvkC+gL7A9gD2QPaA9sD3APdA94D3wMkAyUDJgMnAygDKQMqAysDcwN0A3YDdQN3A3IDgALWAtcC1ALVAtgHiQPhB4gHmAeTA5UDlAOWA5MDnwLnAugC8QLyAvMHiweNB48DqwOsA60DrgOqA68DBgMHAwQDBQeMB44HkAPFA8YDxwPIA7gDuQPEA8kDFwMYAxUDFgMQB5EHkgeUA9YD1QPXA9QD4AMOAw8DIQMiAyMHlgeKBMoExwTIBMkEfgTOBPkE+gT1BPcE+AT2BTkFOgR4BksGFgYIBOIE4wF0BkoGFQYHBNYE1wXxBe8D6AU8BZcFlgZ9BncGeQZ7Bn8GgAZ+BngGegZ8BWEFYAaBBoIGjgaLBowGjQVZBkEGCgZfBjYGPAYMBgQGIAYFBloGHwX+BgYGPQY+BicF/AY/BmAF+wZNBkwGIgYXBfoGHgX9BfcGGgYxBh0F9gZhBisGCQYhBi8GLgZYBlsGIwYkBk4GTwYbBhwGWQZcBlcGXgZdBmUF+AYYBmMGCwZiBgMGAgYlBgEGGQVYBUMGjwWMBYsGDgYNBpAFXwVcBVoFXgUjBVYGRAZCBkMGRwZFBkYGFAYSBhMGVgZUBlUGEQYQBg8F/wZTBlIGUQVjBV0FZwWRBZIFTgVPBVEFIgU9BSQFVwVkBZoFVAVCBY8FjgVEBUgFSgVJBUcFZQWVBVAFQQVNBZMFUgVTBVUFjQWZBZAFRQU/BT4FZgVGBZQG7Ac8Bu0HSQdgB0IHYQdDB10HPwdeB0AG4wczBy0HOwblBzEHKwc6BuQHdwdxB0gG5gd1B28HRgbqB30HcAcuB3oHNAd2B0wG6wd8B24HLAd5BzIHdAdLBugHTgdlBzAHKgdoB1EHOQbpB08HZgdzB20HaQdSB0UG5wdQB2cHewdsBy8HeAdUB2sHTQdkBzUHcgdqB1MHSgdYBzYHWQc3Bv8G8wcHBwgG+wbxBvAG9AcGBwUG+gb3BvYG9Qb4BvkG/gbuBu8G8gcDBwQG/QcBBwIG/AcKBwkHAAd+B38HgAeBB1cHVgdVB1sHYgdfB1oHPQdEB0EHOAdcB2MHPgdHBqsGowakBqUGpganBqgGqQaqBrMGsgaxBrAGrwauBq0GtAbABsEGwgasBuAG4QbfBuIG0QbeBsQG0gbDBsYGxwbIBskGzAbKBssG0wbUBtUG2AbZBtoG2wbWBtcHJwcoBykHJgbFBxwHHQceBx8GzQbOBs8G0AaUBpUGiQaKBpMGkQaSBMwEywAMAAAAADQ8AAAAAAAABFkAAAANAAAADQAABEsAAAAgAAAAIAAABE8AAAAhAAAAIQAABGwAAAAiAAAAIgAABP8AAAAjAAAAIwAABH8AAAAkAAAAJAAABewAAAAlAAAAJQAABkgAAAAmAAAAJgAABSYAAAAnAAAAJwAABQAAAAAoAAAAKQAABNgAAAAqAAAAKgAABHkAAAArAAAAKwAABiYAAAAsAAAALAAABGMAAAAtAAAALQAABMUAAAAuAAAALgAABF0AAAAvAAAALwAABIoAAAAwAAAAOQAAA+0AAAA6AAAAOgAABGQAAAA7AAAAOwAABGkAAAA8AAAAPAAABi0AAAA9AAAAPQAABioAAAA+AAAAPgAABiwAAAA/AAAAPwAABHIAAABAAAAAQAAABSUAAABBAAAAQQAAAAEAAABCAAAAQwAAAA0AAABEAAAARAAAABQAAABFAAAARQAAABgAAABGAAAARwAAACIAAABIAAAASAAAACgAAABJAAAASQAAACsAAABKAAAASgAAADYAAABLAAAASwAAADgAAABMAAAATAAAADoAAABNAAAATgAAAEAAAABPAAAATwAAAEcAAABQAAAAUAAAAFMAAABRAAAAUgAAAFUAAABTAAAAUwAAAFoAAABUAAAAVAAAAGEAAABVAAAAVQAAAGYAAABWAAAAVwAAAHEAAABYAAAAWQAAAHcAAABaAAAAWgAAAH0AAABbAAAAWwAABNwAAABcAAAAXAAABJAAAABdAAAAXQAABN0AAABeAAAAXgAABjQAAABfAAAAXwAABM0AAABgAAAAYAAAB64AAABhAAAAYQAAAIoAAABiAAAAYwAAAJYAAABkAAAAZAAAAJ0AAABlAAAAZQAAAKEAAABmAAAAZwAAAKsAAABoAAAAaAAAALEAAABpAAAAaQAAALQAAABqAAAAagAAAMAAAABrAAAAawAAAMMAAABsAAAAbAAAAMYAAABtAAAAbgAAAMwAAABvAAAAbwAAANQAAABwAAAAcAAAAOAAAABxAAAAcgAAAOIAAABzAAAAcwAAAOcAAAB0AAAAdAAAAO4AAAB1AAAAdQAAAPMAAAB2AAAAdwAAAP4AAAB4AAAAeQAAAQQAAAB6AAAAegAAAQoAAAB7AAAAewAABNoAAAB8AAAAfAAABS8AAAB9AAAAfQAABNsAAAB+AAAAfgAABjIAAACgAAAAoAAABFAAAAChAAAAoQAABHEAAACiAAAAogAABeoAAACjAAAAowAABfIAAACkAAAApAAABesAAAClAAAApQAABfMAAACmAAAApgAABTcAAACnAAAApwAABSkAAACoAAAAqAAAB6wAAACpAAAAqQAABSoAAACqAAAAqgAAAXUAAACrAAAAqwAABPsAAACsAAAArAAABjMAAACtAAAArQAABMYAAACuAAAArgAABSsAAACvAAAArwAAB7cAAACwAAAAsAAABS0AAACxAAAAsQAABjAAAACyAAAAswAABC4AAAC0AAAAtAAAB68AAAC1AAAAtQAABkAAAAC2AAAAtgAABSgAAAC3AAAAtwAABHcAAAC4AAAAuAAAB7gAAAC5AAAAuQAABC0AAAC6AAAAugAAAXYAAAC7AAAAuwAABPwAAAC8AAAAvAAABDsAAAC9AAAAvQAABDgAAAC+AAAAvgAABDwAAAC/AAAAvwAABHYAAADAAAAAwAAAAAYAAADBAAAAwQAAAAIAAADCAAAAwgAAAAQAAADDAAAAwwAAAAoAAADEAAAAxAAAAAUAAADFAAAAxQAAAAkAAADGAAAAxgAAAAsAAADHAAAAxwAAABEAAADIAAAAyAAAAB8AAADJAAAAyQAAABkAAADKAAAAywAAABwAAADMAAAAzAAAADIAAADNAAAAzQAAAC0AAADOAAAAzwAAAC8AAADQAAAA0AAAABUAAADRAAAA0QAAAEUAAADSAAAA0gAAAEwAAADTAAAA0wAAAEgAAADUAAAA1AAAAEoAAADVAAAA1QAAAFEAAADWAAAA1gAAAEsAAADXAAAA1wAABigAAADYAAAA2AAAAE8AAADZAAAA2QAAAGsAAADaAAAA2gAAAGcAAADbAAAA3AAAAGkAAADdAAAA3QAAAHkAAADeAAAA3gAAAFQAAADfAAAA3wAAAO0AAADgAAAA4AAAAI8AAADhAAAA4QAAAIsAAADiAAAA4gAAAI0AAADjAAAA4wAAAJMAAADkAAAA5AAAAI4AAADlAAAA5QAAAJIAAADmAAAA5gAAAJQAAADnAAAA5wAAAJoAAADoAAAA6AAAAKgAAADpAAAA6QAAAKIAAADqAAAA6wAAAKUAAADsAAAA7AAAALsAAADtAAAA7QAAALYAAADuAAAA7wAAALgAAADwAAAA8AAAAJ4AAADxAAAA8QAAANIAAADyAAAA8gAAANkAAADzAAAA8wAAANUAAAD0AAAA9AAAANcAAAD1AAAA9QAAAN4AAAD2AAAA9gAAANgAAAD3AAAA9wAABikAAAD4AAAA+AAAANwAAAD5AAAA+QAAAPgAAAD6AAAA+gAAAPQAAAD7AAAA/AAAAPYAAAD9AAAA/QAAAQYAAAD+AAAA/gAAAOEAAAD/AAAA/wAAAQgAAAEAAAABAAAAAAcAAAEBAAABAQAAAJAAAAECAAABAgAAAAMAAAEDAAABAwAAAIwAAAEEAAABBAAAAAgAAAEFAAABBQAAAJEAAAEGAAABBgAAAA8AAAEHAAABBwAAAJgAAAEIAAABCAAAABIAAAEJAAABCQAAAJsAAAEKAAABCgAAABMAAAELAAABCwAAAJwAAAEMAAABDAAAABAAAAENAAABDQAAAJkAAAEOAAABDgAAABYAAAEPAAABDwAAAJ8AAAEQAAABEAAAABcAAAERAAABEQAAAKAAAAESAAABEgAAACAAAAETAAABEwAAAKkAAAEUAAABFAAAABoAAAEVAAABFQAAAKMAAAEWAAABFgAAAB4AAAEXAAABFwAAAKcAAAEYAAABGAAAACEAAAEZAAABGQAAAKoAAAEaAAABGgAAABsAAAEbAAABGwAAAKQAAAEcAAABHAAAACUAAAEdAAABHQAAAK4AAAEeAAABHgAAACQAAAEfAAABHwAAAK0AAAEgAAABIAAAACcAAAEhAAABIQAAALAAAAEiAAABIgAAACYAAAEjAAABIwAAAK8AAAEkAAABJAAAACoAAAElAAABJQAAALMAAAEmAAABJgAAACkAAAEnAAABJwAAALIAAAEoAAABKAAAADUAAAEpAAABKQAAAL8AAAEqAAABKgAAADMAAAErAAABKwAAAL0AAAEsAAABLAAAAC4AAAEtAAABLQAAALcAAAEuAAABLgAAADQAAAEvAAABLwAAAL4AAAEwAAABMAAAADEAAAExAAABMQAAALUAAAEyAAABMgAAACwAAAEzAAABMwAAALwAAAE0AAABNAAAADcAAAE1AAABNQAAAMIAAAE2AAABNgAAADkAAAE3AAABOAAAAMQAAAE5AAABOQAAADsAAAE6AAABOgAAAMcAAAE7AAABOwAAAD0AAAE8AAABPAAAAMkAAAE9AAABPQAAADwAAAE+AAABPgAAAMgAAAE/AAABPwAAAD4AAAFAAAABQAAAAMoAAAFBAAABQQAAAD8AAAFCAAABQgAAAMsAAAFDAAABQwAAAEIAAAFEAAABRAAAAM4AAAFFAAABRQAAAEQAAAFGAAABRgAAANEAAAFHAAABRwAAAEMAAAFI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AAAhVAAABDkAACFVAAAhXgAABD0AACFfAAAhXwAABDcAACGKAAAhigAABZcAACGLAAAhiwAABZYAACGQAAAhkAAABn0AACGRAAAhkQAABncAACGSAAAhkgAABnkAACGTAAAhkwAABnsAACGUAAAhlQAABn8AACGWAAAhlgAABn4AACGXAAAhlwAABngAACGYAAAhmAAABnoAACGZAAAhmQAABnwAACGpAAAhqgAABoMAACGwAAAhswAABoUAACHeAAAh3gAABWEAACHfAAAh3wAABWAAACHkAAAh5QAABoEAACHmAAAh5gAABo4AACHnAAAh6QAABosAACHqAAAh6gAABVkAACIAAAAiAAAABmQAACICAAAiAgAABkEAACIDAAAiAwAABgoAACIEAAAiBAAABl8AACIFAAAiBQAABjYAACIGAAAiBgAABjwAACIHAAAiBwAABgwAACIIAAAiCAAABgQAACIJAAAiCQAABiAAACIKAAAiCgAABgUAACILAAAiCwAABloAACIMAAAiDAAABh8AACINAAAiDQAABf4AACIOAAAiDgAABgYAACIPAAAiDwAABj0AACIRAAAiEQAABj4AACISAAAiEgAABicAACIVAAAiFQAABgAAACIXAAAiFwAABfkAACIZAAAiGQAABfwAACIaAAAiGgAABj8AACIeAAAiHgAABjUAACInAAAiKwAABjcAACI0AAAiNAAABmAAACI1AAAiNQAABfsAACI2AAAiNgAABk0AACI3AAAiNwAABkwAACJBAAAiQQAABiIAACJCAAAiQgAABhcAACJDAAAiQwAABfoAACJEAAAiRAAABh4AACJFAAAiRQAABf0AACJGAAAiRgAABfcAACJHAAAiRwAABhoAACJIAAAiSAAABjEAACJJAAAiSQAABh0AACJKAAAiSgAABfYAACJLAAAiSwAABmEAACJgAAAiYAAABisAACJhAAAiYQAABgkAACJiAAAiYgAABiEAACJkAAAiZAAABi8AACJlAAAiZQAABi4AACKCAAAiggAABlgAACKDAAAigwAABlsAACKEAAAihQAABiMAACKGAAAihwAABk4AACKIAAAiiQAABhsAACKKAAAiigAABlkAACKLAAAiiwAABlwAACKcAAAinAAABm0AACKiAAAiogAABlcAACKjAAAiowAABl4AACKkAAAipAAABl0AACKlAAAipQAABmUAACKmAAAipgAABfgAACKnAAAipwAABhgAACKoAAAiqAAABmMAACKpAAAiqQAABgsAACKqAAAiqgAABmIAACKrAAAiqwAABgMAACKsAAAirAAABgIAACKtAAAirQAABiUAACKuAAAirgAABgEAACKvAAAirwAABhkAACMAAAAjAAAABS4AACMCAAAjAgAABVgAACMDAAAjAwAABUMAACMEAAAjBAAABo8AACMFAAAjBQAABYwAACMGAAAjBgAABYsAACMQAAAjEAAABlAAACMYAAAjGAAABWIAACMgAAAjIAAABg4AACMhAAAjIQAABg0AACMkAAAjJAAABpAAACMlAAAjJQAABV8AACMmAAAjJgAABVwAACMnAAAjJwAABVoAACMoAAAjKAAABV4AACMrAAAjKwAABVsAACOHAAAjhwAABSMAACOIAAAjiAAABVYAACOLAAAjiwAABUAAACObAAAjmwAABkQAACOcAAAjnQAABkIAACOeAAAjngAABkcAACOfAAAjoAAABkUAACOhAAAjoQAABhQAACOiAAAjowAABhIAACOkAAAjpAAABlYAACOlAAAjpgAABlQAACOnAAAjpwAABhEAACOoAAAjqAAABhAAACOpAAAjqQAABg8AACOqAAAjqgAABf8AACOrAAAjqwAABlMAACOsAAAjrAAABlIAACOtAAAjrQAABlEAACPOAAAjzgAABWMAACPPAAAjzwAABV0AACQAAAAkAAAABWcAACQBAAAkAgAABZEAACQDAAAkBAAABU4AACQFAAAkBQAABVEAACQGAAAkBgAABSIAACQHAAAkBwAABT0AACQIAAAkCAAABSQAACQJAAAkCQAABVcAACQKAAAkCgAABWQAACQLAAAkCwAABZoAACQMAAAkDAAABVQAACQNAAAkDQAABUIAACQOAAAkDgAABY8AACQPAAAkDwAABY4AACQQAAAkEAAABUQAACQRAAAkEQAABUgAACQSAAAkEgAABUoAACQTAAAkEwAABUkAACQUAAAkFAAABUcAACQVAAAkFQAABWUAACQWAAAkFgAABZUAACQXAAAkFwAABVAAACQYAAAkGAAABUEAACQZAAAkGQAABU0AACQaAAAkGgAABZMAACQbAAAkHAAABVIAACQdAAAkHQAABVUAACQeAAAkHgAABY0AACQfAAAkHwAABZkAACQgAAAkIAAABZAAACQhAAAkIQAABUUAACQiAAAkIgAABT8AACQjAAAkIwAABT4AACQkAAAkJAAABWYAACQlAAAkJQAABUYAACQmAAAkJgAABZQAACUAAAAlAAAABuwAACUBAAAlAQAABzwAACUCAAAlAgAABu0AACUDAAAlAwAAB0kAACUEAAAlBAAAB2AAACUFAAAlBQAAB0IAACUGAAAlBgAAB2EAACUHAAAlBwAAB0MAACUIAAAlCAAAB10AACUJAAAlCQAABz8AACUKAAAlCgAAB14AACULAAAlCwAAB0AAACUMAAAlDAAABuMAACUNAAAlDQAABzMAACUOAAAlDgAABy0AACUPAAAlDwAABzsAACUQAAAlEAAABuUAACURAAAlEQAABzEAACUSAAAlEgAABysAACUTAAAlEwAABzoAACUUAAAlFAAABuQAACUVAAAlFQAAB3cAACUWAAAlFgAAB3EAACUXAAAlFwAAB0gAACUYAAAlGAAABuYAACUZAAAlGQAAB3UAACUaAAAlGgAAB28AACUbAAAlGwAAB0YAACUcAAAlHAAABuoAACUdAAAlHQAAB30AACUeAAAlHgAAB3AAACUfAAAlHwAABy4AACUgAAAlIAAAB3oAACUhAAAlIQAABzQAACUiAAAlIgAAB3YAACUjAAAlIwAAB0wAACUkAAAlJAAABusAACUlAAAlJQAAB3wAACUmAAAlJgAAB24AACUnAAAlJwAABywAACUoAAAlKAAAB3kAACUpAAAlKQAABzIAACUqAAAlKgAAB3QAACUrAAAlKwAAB0sAACUsAAAlLAAABugAACUtAAAlLQAAB04AACUuAAAlLgAAB2UAACUvAAAlLwAABzAAACUwAAAlMAAAByoAACUxAAAlMQAAB2gAACUyAAAlMgAAB1EAACUzAAAlMwAABzkAACU0AAAlNAAABukAACU1AAAlNQAAB08AACU2AAAlNgAAB2YAACU3AAAlNwAAB3MAACU4AAAlOAAAB20AACU5AAAlOQAAB2kAACU6AAAlOgAAB1IAACU7AAAlOwAAB0UAACU8AAAlPAAABucAACU9AAAlPQAAB1AAACU+AAAlPgAAB2cAACU/AAAlPwAAB3sAACVAAAAlQAAAB2wAACVBAAAlQQAABy8AACVCAAAlQgAAB3gAACVDAAAlQwAAB1QAACVEAAAlRAAAB2sAACVFAAAlRQAAB00AACVGAAAlRgAAB2QAACVHAAAlRwAABzUAACVIAAAlSAAAB3IAACVJAAAlSQAAB2oAACVKAAAlSgAAB1MAACVLAAAlSwAAB0oAACVMAAAlTAAAB1gAACVNAAAlTQAABzYAACVOAAAlTgAAB1kAACVPAAAlTwAABzcAACVQAAAlUAAABv8AACVRAAAlUQAABvMAACVSAAAlUwAABwcAACVUAAAlVAAABvsAACVVAAAlVQAABvEAACVWAAAlVgAABvAAACVXAAAlVwAABvQAACVYAAAlWAAABwYAACVZAAAlWQAABwUAACVaAAAlWgAABvoAACVbAAAlWwAABvcAACVcAAAlXAAABvYAACVdAAAlXQAABvUAACVeAAAlXwAABvgAACVgAAAlYAAABv4AACVhAAAlYgAABu4AACVjAAAlYwAABvIAACVkAAAlZQAABwMAACVmAAAlZgAABv0AACVnAAAlaAAABwEAACVpAAAlaQAABvwAACVqAAAlagAABwoAACVrAAAlawAABwkAACVsAAAlbAAABwAAACVtAAAlcAAAB34AACVxAAAlcQAAB1cAACVyAAAlcgAAB1YAACVzAAAlcwAAB1UAACV0AAAldAAAB1sAACV1AAAldQAAB2IAACV2AAAldgAAB18AACV3AAAldwAAB1oAACV4AAAleAAABz0AACV5AAAleQAAB0QAACV6AAAlegAAB0EAACV7AAAlewAABzgAACV8AAAlfAAAB1wAACV9AAAlfQAAB2MAACV+AAAlfgAABz4AACV/AAAlfwAAB0cAACWAAAAlgAAABqsAACWBAAAliAAABqMAACWJAAAliQAABrMAACWKAAAligAABrIAACWLAAAliwAABrEAACWMAAAljAAABrAAACWNAAAljQAABq8AACWOAAAljgAABq4AACWPAAAljwAABq0AACWQAAAlkAAABrQAACWRAAAlkwAABsAAACWUAAAllAAABqwAACWVAAAlnwAABrUAACWgAAAlqwAABwsAACWsAAAlrQAABuAAACWuAAAlrgAABt8AACWvAAAlrwAABuIAACWyAAAlsgAAByAAACW2AAAltgAAByEAACW6AAAlugAAByQAACW8AAAlvAAAByIAACXAAAAlwAAAByMAACXEAAAlxAAAByUAACXGAAAlxwAABtwAACXJAAAlyQAABtEAACXKAAAlygAABt4AACXLAAAlywAABsQAACXOAAAlzgAABtIAACXPAAAlzwAABsMAACXQAAAl0wAABsYAACXVAAAl1QAABswAACXWAAAl1wAABsoAACXZAAAl2wAABtMAACXcAAAl3wAABtgAACXgAAAl4QAABtYAACXiAAAl5AAABycAACXlAAAl5QAAByYAACXnAAAl6wAABxcAACXvAAAl7wAABsUAACXwAAAl8wAABxwAACX0AAAl9wAABs0AACYQAAAmEgAABQsAACYgAAAmIAAABQ4AACYwAAAmNwAABQ8AACY5AAAmPAAABRcAACZAAAAmQAAABRsAACZCAAAmQgAABRwAACZgAAAmYAAABR0AACZjAAAmYwAABR4AACZlAAAmZgAABR8AACZqAAAmawAABQkAACcTAAAnEwAABSEAACdwAAAncQAABOAAACehAAAnoQAABqIAACfoAAAn6QAABFYAACfwAAAn8QAABpQAACfyAAAn8wAABokAACf0AAAn/wAABpYAACsFAAArBQAABpMAACsGAAArBwAABpEAAC46AAAuOgAABMwAAC47AAAuOwAABMsAADAMAAAwDQAABN4AAOAAAADgAwAAB9MAAOCgAADgogAAB9cAAOCwAADgswAAB9oAAO4AAADuCwAAB94AAP7/AAD+/wAABEwAAP9iAAD/YwAABOoAAP/9AAD//QAAB4IAAdU5AAHVOQAAA+UAAfENAAHxDwAAB80AAfFtAAHxbwAAB9AAAfGtAAHxrQAABZgAAfMQAAHzEAAABUy4Af+FsASNAAAAAFAAbAB3AIIAjQCYAKMArgC6AMUA0AD4AQQBRgF5AYUBkQGcAagBtAHgAhMCHgImAj8CSgJVAmACawJ2AoECjAKXAqMCuQLyAv0DCAMTAx4DNgNVA2ADeAOdA6gDswO+A8kD1APfA+oD9gQBBCMELgRHBFIEYgRuBHkEhASQBKkE1AT3BQIFDQUYBSMFXAWOBZkFpAWvBboFxQXQBdsGJQYwBjsGgAanBs8HDQc4B0MHTgdZB54HqQe0B78HygfVCBIIJQg/CEoIVQhgCIIIjQiYCKMIrgi5CMQIzwjaCOUI8AkECSIJLQk4CUMJTgltCYQJjwma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Ze5mCmY/ZoVmmWbuZypnMmc6Z39ns2e+aAhoEGhVaIFok2i7aPZpEWlBaX9pkWnZag5qF2ogailqMmo7akRqTWpWal9qaGpxanpqg2qMapVqnmqnarBquWrCastq1GrdauZq72r4awFrCmsTaxxrK2tGa4Jr0Ww2bGZsv20EbV5ty24Zbmtu2283b7xwNnCScL5wx3DQcNlw2XDZcNlw2XDZcNlw2XDZcNlw4XDpcP5xCXEccUtxkXGrcfJyDnIbcixybXJ6csZy43MKcxdzKHN/c7Zz43PwdCZ0RXRSdJl0tnTadPl1NXWBdfZ2QHZ8doV2onbGdtJ243cWdyN3MHdod8J4N3h9eMR5H3lledl6H3pYerR6wnrOeux6+HsJex57LXs4e0t7anume657t3vafAp8IHxKfGt8jHyUfJ18pnyxfL58y30NfUR9fn26ffR+EX4ufkt+cX6lfst+2H7lfvJ+8n7yfvJ+8n7yfvJ+8n7yfvJ/AX9bf4h/wX/pf/WABoA+gEuAV4DJgNaA44DwgPyBBIERgRmBIYEugUGBSYFRgVmBYYFpgWmBaYFygXuBooHJgguCTYJggnOCg4KUgp+CtIK9gsaCzoLWgt6C5oLugvaC/oMGg0WDUIN6g4WDhYOFg4WDhYOFg6GD04QGhDmEVoRzhJeEu4TQhOWE+4UKhRKFGoUihSqFXoVmhXCFeIWlhdeF7YYQhkGHBIcfh0GHYoeKh6yH1Yf+iC6Im4kIiV+Jsonnii6KWIqWiruKy4rfivOK/osNi26LuoxMjGqMzo0mjXSNpI3Tjg6OHI4mjjCOPY5NjnSOlY6vjsSO/o8XjzuPc4/Ej9iP6ZAmkF+Qc5CCkJaQqpC+kNuQ75EDkReRK5GTkqWStJLIktyS8JMEkxiTJ5M2k0WTq5O6k9WUCpRClHaUqpTUlZyVuJXDleWWYZaTlqKWtpbFltmW/Jcql1GXZZeAl6OXyJf9mD6YcJiymLyYx5jSmP2ZZJnbmgGaN5pBml2aZ5pymnyajZqYmraa45rtm3ub0pwTnKKcwJzMnO2dCJ0XnSadNZ1EnVidbJ2AnYudn52pnbOeD54eni2eO55Qnl2ecZ56noOejJ6XnqyewZ7LnuyfB58Rn0GfY59un4mfpZ+5n82f4Z/1oBugQaBdoIygu6DhoRahUKF7obmiCaI+okmiVKJf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AiYAAQAAAAcHlf5nAAD//wA8AAAEdAV2AiYAAQAAAAcHl/6PAAD//wA8AAAEdAbjAiYCmAAAAAYHw/0A//8APAAABHQGpAImApgAAAAGB8YEAP//ADz+kAR0BV4CJgKYAAAABgeEfQD//wA8/pAEdAWAAiYCzAAAAAYHhH0A//8APP6QBHQFgQImAs0AAAAGB4R9AP///2r+kAR0BWYCJgLOAAAABgeEfQD///9t/pAEdAVmAiYCzwAAAAYHhH0A////m/6QBHQFZgImAtAAAAAGB4R9AP///7P+kAR0BWgCJgLRAAAABgeEfQD///86/pAEdAVrAiYC0gAAAAYHhH0A////PP6QBHQFbQImAtMAAAAGB4R9AP////gAAAQPBYACJgKcAAAABweI/g3/Sf///94AAAQPBYACJgKcAAAABweK/ez/Sf///scAAAQPBWYCJgKcAAAABweL/XT/Qf///tEAAAQPBWYCJgKcAAAABweM/XT/Qf///u0AAAQPBWYCJgKcAAAABweN/Zr/Qf///wYAAAQPBWgCJgKcAAAABweO/az/Qf///+YAAAQPBXYCJgAYAAAABweV/f4AAP////kAAAQPBXYCJgAYAAAABweX/hoAAP///6QAAAP2BYACJgKeAAAABweI/bn/Sf///4oAAAP2BYACJgKeAAAABweK/Zj/Sf///nMAAAP2BWYCJgKeAAAABweL/SD/Qf///n0AAAP2BWYCJgKeAAAABweM/SD/Qf///pkAAAP2BWYCJgKeAAAABweN/Ub/Qf///rIAAAP2BWgCJgKeAAAABweO/Vj/Qf///jUAAAP2BWsCJgKeAAAABweP/Qv+6////jQAAAP2BW0CJgKeAAAABweQ/Rj+6////5IAAAP2BXYCJgAoAAAABweV/aoAAP///6UAAAP2BXYCJgAoAAAABweX/cYAAP//ALr+kAP2BV4CJgKeAAAABweEAIIAAP///6T+kAP2BYACJgLpAAAABweEAIIAAP///4r+kAP2BYACJgLqAAAABweEAIIAAP///nP+kAP2BWYCJgLrAAAABweEAIIAAP///n3+kAP2BWYCJgLsAAAABweEAIIAAP///pn+kAP2BWYCJgLtAAAABweEAIIAAP///rL+kAP2BWgCJgLuAAAABweEAIIAAP///jX+kAP2BWsCJgLvAAAABweEAIIAAP///jT+kAP2BW0CJgLwAAAABweEAIIAAP///8kAAAPRBYACJgKgAAAABweI/d7/Sf///9cAAAPRBYECJgKgAAAABweK/eX/Sv///wgAAAPRBWYCJgKgAAAABweL/bX/Qf///v4AAAPRBWYCJgKgAAAABweM/aH/Qf///r4AAAPRBWYCJgKgAAAABweN/Wv/Qf///tcAAAPRBWgCJgKgAAAABweO/X3/Qf///loAAAPRBWsCJgKgAAAABweP/TD+6////lkAAAPRBW0CJgKgAAAABweQ/T3+6////+cAAAPRBXYCJgArAAAABweV/f8AAP///8oAAAPRBXYCJgArAAAABweX/esAAP//AN8AAAPRBuMCJgKgAAAABgfD/QD//wDfAAAD0QakAiYCoAAAAAYHxgQA////1//sBEUFgAImAqYAAAAHB4j97P9J////lf/sBEUFgQImAqYAAAAHB4r9o/9K///+bf/sBEUFcQImAqYAAAAHB4v9Gv9B///+eP/sBEUFcQImAqYAAAAHB4z9G/9B///+pP/sBEUFcQImAqYAAAAHB439Uf9B///+vP/sBEUFcQImAqYAAAAHB479Yv9B////ff/sBEUFdgImAEcAAAAHB5X9lQAA////sP/sBEUFdgImAEcAAAAHB5f90QAA////1wAABE4FgAImAqgAAAAHB4r95f9J////awAABG4FgQImAqsAAAAHB4r9ef9K///+bAAABG4FZgImAqsAAAAHB4z9D/9B///+PAAABG4FaAImAqsAAAAHB4784v9B///9xgAABG4FbQImAqsAAAAHB5D8qv7r////YQAABG4FdgImAHgAAAAHB5X9eQAA////QQAABG4FdgImAHgAAAAHB5f9YgAA//8AQgAABG4G4wImAqsAAAAGB8MGAP//AEIAAARuBqQCJgKrAAAABgfGDQD////UAAAERQWAAiYCrwAAAAcHiP3p/0n///+dAAAERwWBACYCrwIAAAcHiv2r/0r///5zAAAERQVxAiYCrwAAAAcHi/0g/0H///5+AAAERQVxAiYCrwAAAAcHjP0h/0H///6iAAAERQVxAiYCrwAAAAcHjf1P/0H///66AAAERQVxAiYCrwAAAAcHjv1g/0H///5lAAAERQVxAiYCrwAAAAcHj/07/uv///5kAAAERQVxAiYCrwAA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NRE0NjMhAqwCVP2s/WgtNzctApgEyv2o/agBYDctASgtNwABAAD9qASw/tQAAwAAAREhEQSw+1D+1P7UASwAAQAA/agEsAAAAAMAACERIREEsPtQ/agCWAABAAD9qASwASwAAwAAAREhEQSw+1ABLPx8A4QAAQAA/agEsAJYAAMAAAERIREEsPtQAlj7UASwAAEAAP2oBLADhAADAAABESERBLD7UAOE+iQF3AABAAD9qASwBLAAAwAAAREhEQSw+1AEsPj4BwgAAQAA/agEsAXcAAMAAAERIREEsPtQBdz3zAg0AAEAAP2oBLAHCAADAAABESERBLD7UAcI9qAJYAABAAACWASwBwgAAwAAAREhEQSw+1AHCPtQBLAAAQAABdwEsAcIAAMAAAERIREEsPtQBwj+1AEsAAEAAP2oAJYHCAADAAATESMRlpYHCPagCWAAAQAA/agBLAcIAAMAAAERIREBLP7UBwj2oAlgAAEAAP2oAcIHCAADAAABESERAcL+PgcI9qAJYAABAAD9qAJYBwgAAwAAAREhEQJY/agHCPagCWAAAQAA/agC7gcIAAMAAAERIREC7v0SBwj2oAlgAAEAAP2oA4QHCAADAAABESERA4T8fAcI9qAJYAABAAD9qAQaBwgAAwAAAREhEQQa++YHCPagCWAAAQJY/agEsAcIAAMAAAERIREEsP2oBwj2oAlgAAEEGv2oBLAHCAADAAABESMRBLCWBwj2oAlgAAABAAD9qAJYAlgAAwAAAREhEQJY/agCWPtQBLAAAQJY/agEsAJYAAMAAAERIREEsP2oAlj7UASwAAEAAAJYAlgHCAADAAABESERAlj9qAcI+1AEsAABAAD9qASwBwgABQAAAREhESERAlgCWPtQBwj7UPtQCWAAAQAA/agEsAcIAAcAAAERIREhESERAlgCWP2o/agHCPtS+04EsASwAAEAAP2oBLAHCAAFAAABESERIREEsP2o/agHCPtQ+1AJYAABAAD9qASwBwgABQAAAREhESERBLD9qP2oBwj2oASwBLAAAQJYAlgEsAcIAAMAAAERIREEsP2oBwj7UASwAAIAAP2oBLAHCAADAAcAAAERIREBESERAlj9qASw/agCWPtQBLAEsPtSBK4AAQAA/agEsAcIAAUAAAERIREhEQSw+1ACWAcI9qAEsASwADAAZP2o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AeD+IAJY/EADwAWg/EADwAABAWj8GANIAwwAAwAAAREhEQNI/iADDPkMBvQAAf/2/BgEugOsAAcAAAERIREhESERBLr+jv4g/o4DrP4g+kwFtAHgAAH/9vwYA0gDrAAFAAABESERIREDSP4g/o4DrPhsBbQB4AABAWj8GAS6A6wABQAAAREhESERBLr+jv4gA6z+IPpMB5QAAf/2AcwEugOsAAMAAAERIREEuvs8A6z+IAHgAAH/9gHMAqgDrAADAAABESERAqj9TgOs/iAB4AAB//YBzAS6A6wABwAAARUhFSEVIRECqAIS/e79TgOsoKCgAeAAAAQASwHMBGUDrAADAAcACwAPAAABMxEjATMRIwEzESMBMxEjAXeWlgEslpb9qJaWA4SWlgOs/iAB4P4gAeD+IAHg/iAABAFo/fgDSAhIAAMABwALAA8AACUhESERIREhESERIREhESEBaAHg/iAB4P4gAeD+IAHg/iAU/eQE2P3kBNj95ATY/eQAAAECCAHMBLoDrAADAAABESERBLr9TgOs/iAB4AADAFABzARgA6wAAwAHAAsAAAERIxEhESMRIREjEQFA8AKA8AKA8AOs/iAB4P4gAeD+IAHgAAADAWj9+ANICJgAAwAHAAsAAAEhESERIREhESERIQFoAeD+IAHg/iAB4P4gARj84Abg/OAG4PzgAAEBaAJsA0gH0AADAAABESERA0j+IAfQ+pwFZAAB//YBzAS6B9AABwAAAREhESERIREDSAFy+zwBcgfQ+9z+IAHgBCQAAf/2AcwDSAfQAAUAAAERIREhEQNI/K4BcgfQ+fwB4AQkAAEBaPwYA0gH0AAHAAABESMRIxEjEQNIoKCgB9D6nPmsBlQFZAAAAQFoAcwEugfQAAUAAAERIREhEQNIAXL8rgfQ+9z+IAYEAAEBaPwYA0gH0AADAAABESERA0j+IAfQ9EgLuAAB//b8GAS6B9AACwAAAREhESERIREhESERA0gBcv6O/iD+jgFyB9D73P4g+kwFtAHgBCQAAf/2/BgDSAfQAAcAAAERIREhESERA0j+IP6OAXIH0PRIBbQB4AQkAAEBaPwYBLoH0AAHAAABESERIREhEQNIAXL+jv4gB9D73P4g+kwLuAAB//b8GAS6B9AADQAAAREzFSEVIREhESERIRECqKABcv6O/iD+jgISB9D73KCg+awFtAHgBCQAAAH/9vwYBLoDrAAJAAABFSEVIREjESERAqgCEv3uoP3uA6ygoPmsBbQB4AAAAf/2AcwEugfQAAkAAAERIRUhFSERIRECqAIS/e79TgISB9D7PKCgAeAEJAAB//b8GAS6B9AACwAAAREhFSERIxEhESERAqgCEv3uoP3uAhIH0Ps8oPmsBbQB4AQkAAH/9vwYBLoDrAAJAAABESERIREhNSE1BLr+jv4g/o4BcgOs/iD6TAZUoKAAAf/2AcwEugfQAAkAAAERIREhNSE1IREDSAFy/K7+jgFyB9D73P4goKAExAAB//b8GAS6B9AACwAAAREhESERIREhNSERA0gBcv6O/iD+jgFyB9D73P4g+kwGVKAExAAAAf/2/BgEugfQAA0AAAERIRUhFSMRIxEhESERA0gBcv6OoKD97gFyB9D7PKCg+kwFtAHgBCT///+1/YUE+wctAiYHVgAAAAYHVwAA////uv2FBPsHLQBHB1cEsAAAwABAAAAB/7X9hQT2By0AAwAAARcBJwRmkPtQkQctR/afSAACAFACbARgAwwAAwAHAAABFSE1IxUhNQRg/kig/kgDDKCgoKAAAAICCP34AqgImAADAAcAAAERIxETESMRAqigoKAC+PsABQAFoPsABQAAAAECCPwYAqgDDAADAAABESMRAqigAwz5DAb0AAAB//YCbAKoAwwAAwAAARUhNQKo/U4DDKCgAAH/9gHMBLoDrAAHAAABESE1ITUhNQS6/U797gISA6z+IKCgoAAABABLAmwEZQMMAAMABwALAA8AAAEzFSMlMxUjJTMVIyUzFSMBd5aWASyWlv2olpYDhJaWAwygoKCgoKCgAAAEAgj9+AKoCEgAAwAHAAsADwAAJTMRIxEzESMRMxEjETMRIwIIoKCgoKCgoKAU/eQE2P3kBNj95ATY/eQAAAECCAJsBLoDDAADAAABFSE1BLr9TgMMoKAAAwBQAmwEYAMMAAMABwALAAABFSM1IRUjNSEVIzUBQPACgPACgPADDKCgoKCgoAAAAwII/fgCqAiYAAMABwALAAABMxEjETMRIxEzESMCCKCgoKCgoAEY/OAG4PzgBuD84AABAggCbAKoB9AAAwAAAREjEQKooAfQ+pwFZAAAAQFo/BgDSAfQAAcAAAERMxEhETMRAqig/iCgB9D7PPkMBvQExAAB//b8GAS6B9AADQAAAREhESERIREhNSE1MxECqAIS/o7+IP6OAXKgB9D73P4g+kwGVKCgBCQAAAH/9vwYBLoDrAAJAAABESERIxEhNSE1BLr97qD97gISA6z+IPpMBlSgoAAAAf/2AcwEugfQAAkAAAERIREhNSE1IRECqAIS/U797gISB9D73P4goKAExAAB//b8GAS6B9AACwAAAREhESERIxEhNSERAqgCEv3uoP3uAhIH0Pvc/iD6TAZUoATEAAH/9vwYBLoDrAAJAAABFSEVIREhESERA0gBcv6O/iD+jgOsoKD5rAW0AeAAAf/2AcwEugfQAAkAAAERIRUhFSERIREDSAFy/o78rgFyB9D7PKCgAeAEJAAB//b8GAS6B9AACwAAAREhFSERIREhESERA0gBcv6O/iD+jgFyB9D7PKD5rAW0AeAEJAAAAf/2/BgEugfQAA0AAAERIREhESMRIzUhNSERA0gBcv3uoKD+jgFyB9D73P4g+kwFtKCgBMQAAf/2/BgEugfQAAsAAAERIRUhESMRITUhEQNIAXL97qD97gFyB9D7PKD5rAZUoATEAAAB//YCbAS6B9AABwAAAREhFSE1IREDSAFy+zwBcgfQ+zygoATEAAH/9vwYA0gH0AAJAAABESMRIxEhNSERA0igoP3uAXIH0Pqc+awGVKAExAAAAf/2AmwDSAfQAAUAAAERITUhEQNI/K4BcgfQ+pygBMQAAAEBaPwYBLoH0AAJAAABESEVIREjESMRA0gBcv3uoKAH0Ps8oPmsBlQFZAAAAQFoAmwEugfQAAUAAAERIRUhEQNIAXL8rgfQ+zygBWQAAAH/9vwYBLoH0AALAAABESERIREhESERIRECqAIS/o7+IP6OAhIH0Pvc/iD6TAW0AeAEJAAB//YBzAS6B9AABwAAAREhESERIRECqAIS+zwCEgfQ+9z+IAHgBCQAAf/2/BgDSAfQAAkAAAERMxEhESERIRECqKD+IP6OAhIH0Pvc+GwFtAHgBCQAAAH/9gHMAqgH0AAFAAABESERIRECqP1OAhIH0Pn8AeAEJAABAWj8GAS6B9AACQAAAREhESERIREzEQKoAhL+jv4goAfQ+9z+IPpMB5QEJAAAAQIIAcwEugfQAAUAAAERIREhEQKoAhL9TgfQ+9z+IAYEAAH/9vwYBLoH0AALAAABESEVIREhESE1IREDSAFy/o7+IP6OAXIH0Ps8oPmsBlSgBMQAAf/2/BgDSAfQAAcAAAERIREhNSERA0j+IP6OAXIH0PRIBlSgBMQAAAEBaPwYBLoH0AAHAAABESEVIREhEQNIAXL+jv4gB9D7PKD5rAu4AAAB//b8GAS6B9AACwAAAREhESERIxEhESERAqgCEv3uoP3uAhIH0Pvc/iD6TAW0AeAEJAAAAf/2/BgCqAfQAAcAAAERIxEhESERAqig/e4CEgfQ9EgFtAHgBCQAAAECCPwYBLoH0AAHAAABESERIREjEQKoAhL97qAH0Pvc/iD6TAu4AAABAgj8GAS6AwwADgAAARUjIgYGFREjETQ+AjMEupZorWegVJXDcAMMoGetaPsoBNhww5VUAAAB//b8GAKoAwwADgAAEzIeAhURIxE0JiYjIzWMcMOVVKBnrWiWAwxUlcNw+ygE2GitZ6AAAf/2AmwCqAlgAA4AAAM1MzI2NjURMxEUDgIjCpZorWegVJXDcAJsoGetaATY+yhww5VUAAECCAJsBLoJYAAOAAABIi4CNREzERQWFjMzFQQkcMOVVKBnrWiWAmxUlcNwBNj7KGitZ6AAAAMASwCiBGUEvgADAA8AKQAAEwkCAyIGFRQWMzI2NTQmAyIGBxc2NjMyFhUUDgIVFTM1ND4CNTQmSwINAg398w8WISEWGSEhBDRfKSwfSiA0RTNDMz4yQzJfArACDv3y/fIBGiEXGCAgGBchAiApLyEmIzIsKDQvQjgqJTM4LT03NlYA//8BHwUzA5QF+wAGB6L9AAABAZX+kAMd/7UADgAAASImNTUzFRQzMjY3FwYGAmJfbn9XJjIcPhxb/pBoVmdkVhMRShYvAAABAe4ErQLEBjgAAwAAARcDJwI4jHZgBjgX/owRAAABAd8D6QLRBXYAAwAAARcDJwIoqYVtBXYY/osQAAADAT8E9QNuBwsAAwAPABsAAAEXAycHMhYVFAYjIiY1NDYhMhYVFAYjIiY1NDYCXZxxZYUnNjYnKDc3AZkpNjYpJjc3Bwsh/r4RCDcnKDY2KCc3NycoNjYoJzcA//8B6wSgAr4GNwAHB6gAAAbH//8B6wSjAr4GOgAHB6gAAAbKAAEB8gSgAsUGNwAOAAABMhYVFAYHFyMnJiY1NDYCUCc3FBE8VmQOCzcGNzQpFioO7NwgJxcoNQAAAgFTBHkDRwYlAAMAEgAAARMHAycyFhUUBgcHIzcmJjU0NgLkY199oyc3Cw5kVjwRFDcGF/5/HQGALDUoFycg3OwOKhYpNAAAAgFdBHkDRwYlAAMAEgAAARMHAycyFhUUBgcXIycmJjU0NgLkY199sCc3FBE8VmQOCzcGF/5/HQGALDQpFioO7NwgJxcoNQAAAgFTBHkDNgYlAAMAEgAAARcDJwMyFhUUBgcHIzcmJjU0NgK9eX1fkic3Cw5kVjwRFDcGFx7+gB0BjzUoFycg3OwOKhYpNAAAAgFaBHkDNgYnAAMAEgAAARcDJwMyFhUUBgcXIycmJjU0NgK9eX1foic3FBE8VmQOCzcGFx7+gB0BkTQpFioO7NwgJxcoNQAAAgEqBH4DnwaAAA0AIwAAATcmNTQ2MzIWFRQGBwcTIiYmIyIGByc2NjMyFhYzMjY3FwYGAhIqNTgoKTYUJiRxM01EJiExGFshY0Q2S0EmHTIcWidlBH59IjYpNDQpEzxFQQE6MTIwLi8/VTExKy0uT0EAAgEcBIEDkQaCAA0AIwAAASMnJiY1NDYzMhYVFAc3IiYmIyIGByc2NjMyFhYzMjY3FwYGAqVXJCUUNigpODdSM01EJiExGFshY0Q2S0EmHTIcWidlBIFBRD0TKDU0KTUkvTEyMC4vP1UxMSstLk9BAAMBNgT1A3cGxwALABcAGwAAATIWFRQGIyImNTQ2ITIWFRQGIyImNTQ2ExMHJwMYKTY2KSg1Nf6lJzY2Jyk2NkHgOPwFsTcnKDY2KCc3NycoNjYoJzcBFv71Ne4AAwE5BPUDegbHAAsAFwAbAAABMhYVFAYjIiY1NDYhMhYVFAYjIiY1NDYTFwcnAZgnNjYnKDc3AaspNjYpJzY2FVT7OQWxNycoNjYoJzc3Jyg2NignNwEWUu41AAADASUE5AOaBtMACwAXAC0AAAEiJjU0NjMyFhUUBiEiJjU0NjMyFhUUBgMiJiYjIgYHJzY2MzIWFjMyNjcXBgYBnCk1NSkmNTUBZyc0NCcpNTV+M01EJiExGFshY0Q2S0EmHTIcWidlBOQzJyk0NCknMzMnKTQ0KSczAScxMjAuLz9VMTErLS5PQf//AXUFCgMxBiMABgebAAAAAQHoA+kC2gV2AAMAAAETBwMCkUlthQV2/oMQAXX//wGIBQoDRAYjAAYHnAAA//8B3wPpAtEFdgIGB4YAAP//AR8FMwOUBfsABgei/QD//wEyBRcDewXOAAYHrAAA//8B8gS2AsAFgAAGB60CiwABAXUFCgMxBiMAAwAAAQUHJQG0AX0q/m4GI9NGpQABAYgFCgNEBiMAAwAAARcFJwMEQP5uKgYjdKVGAP//ASAEhQOPBgUABgew/4sAAQEhBLQDjgXGAAYAAAEFBycHJyUChQEJPvn2QAELBcbKSJ6eSMoAAAEBIQSGA44FmAAGAAABFwUjJTcXA1A+/vdZ/vVA9gWYScnJSZ8AAQE7BJEDdQWCAA8AAAEiJiYnNxYWMzI2NxcOAgJSQntTB2IWWEdKYRZiB1d/BJE0YkQXOk9POhdEYjT//wGKBGsDJQXhAAYHtf+L//8BIgUzA5cF+wAGB7YDAP//AVcE3gNcBUMABge3A4sAAQC3BN4D/AVDAAMAAAEhNSED/Py7A0UE3mUA//8BIAT6A48GegBHB7AEsAAAwABAAP//AlgETgMrBeUABweoAG0Gdf//AYIETgJVBeUARweoBEAGdcAAQAAAAQHr/dkCvv9wAA4AAAUyFhUUBgcHIzcmJjU0NgJgJzcLDmRWPBEUN5A1KBcnINzsDioWKTT//wGD/hQDMAADAAYHuAPjAAEBDgIoA54CnwADAAABITUhA579cAKQAih3AAAB/9MCKATgAp8AAwAAASE1IQTg+vMFDQIodwAAAgEyBRcDewXOAAsAFwAAASImNTQ2MzIWFRQGISImNTQ2MzIWFRQGAZApNTUpJjU1AWcnNDQnKTU1BRczJyk0NCknMzMnKTQ0KSczAAEB8AUrAr4F9QALAAABMhYVFAYjIiY1NDYCVTA5OTAtODgF9TopLDs7LCk6AAABAX4E3AMrBgkAAwAAASU3BQL+/oBQAV0E3Ll05AABAYgFCgNEBiMAAwAAARcFJwMEQP5uKgYjdKVGAAACASEE+gOQBnoAAwAHAAABExcDNxMXAwEhjoGy66h/zgUtAU0+/sMsAU9F/sUAAQEiBPQDjwYbAAYAAAEnJTMFBycBaEYBC1kBCUHzBPRG4eFGswABAVUFXgNZBcMAAwAAASE1IQNZ/fwCBAVeZQAAAQEiBPQDjwYbAAYAAAEXBSMlNxcDTkH+91n+9UbzBhtG4eFGtAABATsE9wNzBgcADwAAASImJic3FhYzMjY3Fw4CAlJVd0MIYhZYR0peFmMIR3sE91BzNRhMXl5MGDVzUAACAYsE4AMmBlYADwAbAAABMhYWFRQGBiMiJiY1NDY2FyIGFRQWMzI2NTQmAlk6XTY2XTo6XjY2Xjo0Pj40NTw8BlYxVjY0VDExVDQ2VjFGQTY0QUE0NkEAAQEfBTMDlAX7ABUAAAEiJiYjIgYHJzY2MzIWFjMyNjcXBgYCzjNNRCYhMRhbIWNENktBJh0yHFonZQUzMTIwLi8/VTExKy0uT0EAAAEBVAVTA1kFuAADAAABITUhA1n9+wIFBVNlAAABAYD+MQMtACAAFgAAATQmIzczFRYWFRQGBiMiJic3FhYzMjYCtV1NDmFhUkNoOTlqJjAcTCE2Rv7qOiHblwdiNUFSJxcWUw8QKAAAAQGm/kMDJwAxABUAACUXDgIVFBYzMjY3BwYGIyImNTQ2NgMPGGptJi1BIDgpEB85KW50RJ4xMTFQRSIrNAYIdgYIbkg8cmMAAQINBBkCqgVrAAMAAAEXAycCNnRdQAVrDf67CQD//wHr/dkCvv9wAAYHqAAA//8BLgYDA3cGugAHB6z//ADs//8B7AYXAroG4QAHB63//ADsAAEBeQXqAy4HAQADAAABBQclAc8BXyz+dwcB0kWiAAEBcwXqAzQG+AADAAABFwUnAvU//mMkBvh1mUUA//8BHQXmA4wHZgAHB7D//ADsAAEBIgX4A48HCgAGAAABBQcnByclAoYBCT759kABCwcKykienkjKAAABASIF5wOPBvgABgAAARcFIyU3FwNRPv73Wf71QPYG+EjJyUieAAEBPQXyA3UG4wAPAAABIiYmJzcWFjMyNjcXDgICVUJ7UwhjFVlHR2EWYgdXfgXyNGJEFzpPTzoXRGI0//8BhwXMAyIHQgAHB7X//ADs//8BGwYfA5AG5wAHB7b//ADs//8BUAY/A1UGpAAHB7f//ADs//8BgP4xAy0AIAIGB7gAAAABAb0EfgLyBecAAwAAARcDJwKQYvc+BedD/tomAAABAb0FqQL1BwMAAwAAARcDJwKTYvo+BwNC/ugmAAABAdAEIQKqBdUADgAAATIWFRQGBwcjEyYmNTQ2AkwnNw8jVlJDERc6BdU2KhU3TLwBCREnFik0//8BMANhA4AFXgAnB8z/fgAAAAcHzACDAAAAAQGyA2EC/QVeAAMAAAETMwMBsq2e4gNhAf3+AwAABf/OACQE4gU4AAMAFwArADcARwAAARcDJxMiLgI1ND4CMzIeAhUUDgInMj4CNTQuAiMiDgIVFB4CATQmIyIGFRQWMzI2NxQGBiMiJiY1NDY2MzIWFgKsTvNVpofrs2Vls+uHh+uzZWWz64duwJJSUpLAbm7AklJSksABH19TUWJeVVNff0KHaGeIQ0OIZ2iHQgOzNP4VL/5hZbPrh4frs2Vls+uHh+uzZXhSksBubsCSUlKSwG5uwJJSAgd3aG1ybXlvd1WZYWGZVViWXV2XAAT/zgAkBOIFOAACACEANQBJAAABJREHFBYzMjY1NCYjIiIGIzU2MjIzMhYWFRQGBiMiJiY1ASIuAjU0PgIzMh4CFRQOAicyPgI1NC4CIyIOAhUUHgIBMgEOxIFbXICAXAQuLgUFLi4EXppcXJpeXppcAVSH67NlZbPrh4frs2Vls+uHbsCSUlKSwG5uwJJSUpLAA6fe/kQvW4GBW1yAAXgBXJpeXppcXJpe/Ypls+uHh+uzZWWz64eH67NleFKSwG5uwJJSUpLAbm7AklIABv/OACQE4gU4ACMAJwArAC8AQwBXAAABFAYjIiYnNxYzMjY1NC4DNTQ2MzIWFwcmIyIGFRQeAwMVIzUTFSM1BQE3AQEiLgI1ND4CMzIeAhUUDgInMj4CNTQuAiMiDgIVFB4CAyx9blJuJUZBWis2O1dXO4BZRGclQTpKJy87V1c7pGhoaAIu+9c6BCz9zYfrs2Vls+uHh+uzZWWz64duwJJSUpLAbm7AklJSksACPlFmMCNNOyUiJzIlJzksUFgnJEoxHRwiLSUqPQHzn5/9Q5eXKQIoYf3c/kVls+uHh+uzZWWz64eH67NleFKSwG5uwJJSUpLAbm7AklIABP/OACQE4gU4ABkAMwBHAFsAAAEyFhcHJiYjIgYVFBYzMjY3FwYGIyImNTQ2ITIWFwcmJiMiBhUUFjMyNjcXBgYjIiY1NDYDIi4CNTQ+AjMyHgIVFA4CJzI+AjU0LgIjIg4CFRQeAgGXKEY2KyI7Gy85NDQjMR8wL0MwZHuFAe0oRjYrIjsbLzk0NCMxHzAvQzBke4V8h+uzZWWz64eH67NlZbPrh27AklJSksBubsCSUlKSwAO9ByRYGwdZWGJIDhRWIhGAkX+TByRYGwdZWGJIDhRWIhGAkX+T/Gdls+uHh+uzZWWz64eH67NleFKSwG5uwJJSUpLAbm7AklIAAAT/zgAkBOIFOAAaAB4AMgBGAAABMhYXByYmIyIGFRQWMzI2NxcGBiMiJjU0NjYTATcBByIuAjU0PgIzMh4CFRQOAicyPgI1NC4CIyIOAhUUHgICXk1nNj8qVipVd3JaOlkmOih0Voq5W5Or/tFvATTSh+uzZWWz64eH67NlZbPrh27AklJSksBubsCSUlKSwAQkJSRYIx2BlIiGJyNWIjm/tn2mU/wwBIoV+3dGZbPrh4frs2Vls+uHh+uzZXhSksBubsCSUlKSwG5uwJJSAAAE/84AJATiBTgADQAZAC0AQQAAATMyFhUVIxEjESM1NDY3IiY1NDYzMhYVFAYDIi4CNTQ+AjMyHgIVFA4CJzI+AjU0LgIjIg4CFRQeAgIEqCs5ZKhkOX8pOzspKTs7KYfrs2Vls+uHh+uzZWWz64duwJJSUpLAbm7AklJSksADVzkr4P73AQngKzk4OykpOzspKTv8lWWz64eH67NlZbPrh4frs2V4UpLAbm7AklJSksBubsCSUgAABQBU/x4JUAXuAHwBbgGOAaQBrgAAEzY2Nz4CMzIeAjM2NjMyFhYVFAYxMBYXHgIXHgIXFhYVFA4CBwYGIyInDgIjIiYnJiYjIgYHDgIHBgYHFhYVBgYjIiYmJy4CMTcwJicnNjY3BgYHJzY2NwcnNjY3Byc2Njc0DgIHJz4CNwYGByc+AjcFJTY2NxcGBhUUFwcmJicjBgYHBycHBgYVFBYXHgIVFAYGFRQWMTA2NjcXDgIHFzcXBx4CMzUmJic3HgIxMDY3LgInNx4CMzY2NTc0JjUGBgcnNDY2NzUnLgM1Fx4CFz4DNx4CFzY2MS4DJyYmJyMGFRQWFwcmJicuAzU0NjczFxc2NjU0JicnNxceAxceAjEwNjU0JiMiBhUUFhcjJiY1NDY2NSYmJyYmJwcXByImNTQ2Njc3JiMiBgYVFBYXIy4CMSc3PgMzMhczJiYjIgYHJzY2NycmJiMiDgIHBTY2NzUnNzA2NjM1JzcwFhYXBwYGBxUXBzAmJiMiBjEnPgIzMhYxBwcGBhUUFyMmJjUGBjEFBwYGIyImJzcXhCOOYVXJ4nomaWtSDg9eOVReJgZaWmWwdg8DBQQCBQ0aJycOCRQJIgwVSEkYFTUgLoY2Kk4YSkYgEAYbCQgMCkgsMp++YVd/Rmg1DwQRNh8zThsICy8WlggaVyXqBh1kPzNNUiAGIF5XF0WXPAYngoUq/toB5h42HgI6Qg4IGxkIBAQIAgoUBAEDJhIPNisbGwY0QhQIDlhkIAysBoBSx7o9EjMPCBM6LRUJGzstBwgSQ0MSCAYiAhNTGAwvPRZOBSgvIhQZVHJFFFpmTQcjdWoUHUEZKDlnWVhjFwYCNxkCE0MSBzM7KxYGCgomBR8bCWoGZEGgpZg6OXVQEg4OBgoDAQwSLB0dE5JlYI07CFgEi5MiKgwEBBwUOCoSFhggJhCaBBVedXAmMhoKCSgpTLhIDAMeDQIhiEVXj2tBCgFWG2AxPgIyPxU2AjRJIQITNAk2Bi9FIEJcjgcpX1kkLApmARkGDBU3HzUDTgoPHQ4oSSkkagPMI4FMQ45hGyQbBRdNYBsTG1EnKz07KQk2PBMwMREKSldFBgQCBhEvJAgGCScqDCdMZ1AhWQ4SNAYBBxM5OjN1UjgDAQ4VJhUQJA4QJlEZaA5ObiJ4EEGAOQEXJCcPEDZfRA0ZNxgOMnVoH0qyCQwDCiqKUDctCBRBFQ8xDgIgAgoVCTlnHhlERBkcLi4cEwsBBAMIFTMvDwomCkxEWCoEFFEfCA4mHCUTFEBCFgYOJx0VLxI0AgEBASYVAic8Kg0KIAMrQkoiBh1HOQkBEhkVAxMtJAQDJRURDBwgIEMlBggkNRcIAgwEBBozUToyWxNuQAY/GxEqCXgGKjZ2a08ODxMKNCQbPw8XCRYPFT8WEx8eEho2JCFUMQJqCksxGh8QAwgEDygnEi4aEzksGgoIJSgdEA8rPBoCFyUKCAwiRGBXE7wYKwkGIggJCQRECBUsIwgECAIIYgYJCQy8GFNDCg40A0UyGRsPNjkKMHgQBgQlIQIoAAAEAfb/bAj2BYIA8QERAScBMQAAAT4DMzIWFxcGBgcXNjYzMhYXIyYjIg4CBwcXMBYWFzMmJjU0NjYzMhcHDgIVFBYzNyc3FhYXFhYXFAYGFRQWFzMmJjU0NjMyFhUUBjEwJiYnLgMnJwcXFhYVFAYHJycjBgYVFB4CFxYWFzcmJjU0NzMWFhceAxcwBgcuAicOAwcuAicnFB4CFxcVDgIVFzY2NxQWFQcUBgciJiYnBx4CFwYGMTAmJicHFhYXFSImJic3JwcnPgI3Jw4CMTAmNTQ2NjU0JiYnJiY1NDY3Nxc3NjY3MxYWFzcmNTQ2NycGBgcFMDYzMhYWMTcnNTY2NzcuAjEHFxUiBgYxBxcVBgYHJzA2NxQWFzMmNTQ2PwIwJiMiBgYHBScHFhYzMjY3NwJoCkFrj1dFiCECDR4DDEi4TCkoCQoaMiZwdV4VBJoQJiAYFhIqOBQcBAQMKiKTiwRYCDuNYGWSEx0dLBIMAQMKBg4OElB1OTqYpaBBZAZqCRsfBSYKCgYWKzszBxJDEwIZNwIGF2NYWWc5KBlBHRRqdSMHTWZaFEVyVBkUIi8oBU4WPS8MGFMTAiIGCBJDQxIIBy07GwkVLToTCA8zEj26x1KABqwMIGRYDggUQjQGGxsrNg8SJgMBBBQKAggEBAgZGwgOQjoCHjYeAV5cQiBFLwY2CTQTAiFJNAI2FT8yAj4xYBt6NR83FQwGGQFmCiwkWV8pBwMGaiQpSSgOHQ8KBHQTV2BEIgwICiUXAho8Kw8QHSglCAoaLDkTGi4SJygPBAgDEB8aMUsKagIxVCEkNhoSHh8TFj8VDxYJFw8/GyQ0ChMPDk9rdjYqBngJKhEbPwZAbhNbMjpRMxoEBAwCCBc1JAgGJUMgIBwMERUlAwQkLRMDFRkSAQk5Rx0GIkpCKwMgCg0qPCcCFSYBAQECNBIvFR0nDgYWQkAUEyUcJg4IH1EUBCpYREwKJgoPLzMVCAMEAQsTHC4uHBlERBkeZzkJFQoCIAIOMQ8VQRQILTdQiioKAwwJvAwJCQZiCAIIBAgjLBUIRAQJCQgiBgkrGK4wCjk2DxsZMkUDNA4KQ1MYeigCISUEBhAAAAkF5gG0CM4EkgAJABEAGgAjAC4ANwBAAEsAVgAAATQ2NzIWFwcwJgUzMhUUBgYxJzAWFwYGByYmJxYWMTAGBzA2FzQzMhYXFAYHJiYlMhYXBgYxMDYDBhUUFyYnMhYBNDY3FhcGBjEwJgMGBiMiJic2NTUWBsAFBw8fBDwCAeAgDhQUqiUTARsUAwVQFCAkEgKiDAUgAyUJAwP+ygwdAwcpAfMeBB8DDh4BTAcBFw8JIwLaChIICQ8IGhYCaAsUCRIGLBJeDAgfGWoFBQYnDxE1FAMHMQU6Lg4GAgkmAwwRewsJByc2Ai4LHwYIGSUB/asIBwEEDAwkLQIDAQMDAQocDBMADv3a/x4G1gXuAHwBbgGOAaQBrgG4AcEByQHSAd0B5gHxAfoCBQAAATY2Nz4CMzIeAjM2NjMyFhYVFAYxMBYXHgIXHgIXFhYVFA4CBwYGIyInDgIjIiYnJiYjIgYHDgIHBgYHFhYVBgYjIiYmJy4CMTcwJicnNjY3BgYHJzY2NwcnNjY3Byc2Njc0DgIHJz4CNwYGByc+AjcFJTY2NxcGBhUUFwcmJicjBgYHBycHBgYVFBYXHgIVFAYGFRQWMTA2NjcXDgIHFzcXBx4CMzUmJic3HgIxMDY3LgInNx4CMzY2NTc0JjUGBgcnNDY2NzUnLgM1Fx4CFz4DNx4CFzY2MS4DJyYmJyMGFRQWFwcmJicuAzU0NjczFxc2NjU0JicnNxceAxceAjEwNjU0JiMiBhUUFhcjJiY1NDY2NSYmJyYmJwcXByImNTQ2Njc3JiMiBgYVFBYXIy4CMSc3PgMzMhczJiYjIgYHJzY2NycmJiMiDgIHBTY2NzUnNzA2NjM1JzcwFhYXBwYGBxUXBzAmJiMiBjEnPgIzMhYxBwcGBhUUFyMmJjUGBjEFBwYGIyImJzcXExQWMTcmJiMGBgUwFhc2NjcmJhcwNjY1NCMjJxQGMTY2MTAmFxQWFzY2NSYmIyIlBgYxMDY3JiYXFBYxMDY3JicGBgEmJiMWFyY1NBcmJxUUBxYWMzI2/gojjmFVyeJ6JmlrUg4PXjlUXiYGWlplsHYPAwUEAgUNGicnDgkUCSIMFUdKGBU1IC6GNipOGEpGIBAGGwkIDApILDKfvmFXf0ZoNQ8EETYfM04bCAsvFpYIGlcl6gYdZD8zTVIgBiBeVxdFlzwGJ4OEKv7aAeYeNh4COkIOCBsZCAQECAIKFAQBAyYSDzYrGxsGNEIUCA5YZCAMrAaAUse6PRIzDwgTOi0VCRs7LQcIEkNDEggGIgITUxgMLz0WTgUoLyIUGVRyRRRaZk0HI3VqFB1BGSg5Z1lYYxcGAjcZAhNDEgczOysWBgoKJgUfGwlqBmRBoKWYOjl1UBIODgYKAwEMEiwdHROSZWCNOwhYBIuTIioMBAQcFDgqEhYYICYQmgQVXnVwJjIaCgkoKUy4SAwDHg0CIYhFV49rQQoBVhtgMT4CMj8VNgI0SSECEzQJNgYvRSBCXI4HKV9ZJCwKZgEZBgwVNx81A04KDx0OKEkpJGp+AjwEHw8HBQE8BQMUGwETJaoUFA4g9AISJCCOAwMJJQMgBQz+ygMBKQcDHToCIwkPFwEH/sQQHg4DHwSAFBYaCA8JCBIDzCOBTEOOYRskGwUXTWAbExtRJys9OykJNjwTMDERCkpXRQYEAgYRLyQIBgknKgwnTGdQIVkOEjQGAQcTOTozdVI4AwEOFSYVECQOECZRGWgOTm4ieBBBgDkBFyQnDxA2X0QNGTcYDjJ1aB9KsgkMAwoqilA3LQgUQRUPMQ4CIAIKFQk5Zx4ZREQZHC4uHBMLAQQDCBUzLw8KJgpMRFgqBBRRHwgOJhwlExRAQhYGDicdFS8SNAIBAQEmFQInPCoNCiADK0JKIgYdRzkJARIZFQMTLSQEAyUVEQwcICBDJQYIJDUXCAIMBAQaM1E6MlsTbkAGPxsRKgl4Bio2dmtPDg8TCjQkGz8PFwkWDxU/FhMfHhIaNiQhVDECagpLMRofEAMIBA8oJxIuGhM5LBoKCCUoHRAPKzwaAhclCggMIkRgVxO8GCsJBiIICQkERAgVLCMIBAgCCGIGCQkMvBhTQwoONANFMhkbDzY5CjB4EAYEJSECKP50ChIsBhIJFFU1EQ8nBgUFahkfCAwyBjoFMQcxDxEMAyYJAgZeDDYnBwkLLgMtJAwMBAEHAkgFASUZCAYfRR8TDBwKAQMDAAADAKb9qAVuBwgAAwAcACIAAAERBxEBJT4CNREzERQOAgcHDgIVESMRNDY2AQEnAQEHATKJAS8BEj8xCIQNL2JWxkB2TIREiAIx/mErAcoByysHCPsYYgVK+haKIGF8RwG+/hZTel5SK2QhQ25k/ioB6HSIXwOb/vJHAXn+h0cAAAIBZP+cA0UGUAAFABYAAAEzESEHIRceAhURIxEzEyYmNREzESMBZHUBaAn+LGgCCQdxqs4DD3KrBlD9Q2PsF2WAQP6UAyD9WCStbQFq/OAABQAC/5QErgZAACUALQA9AEkATQAAASMiBgcGBhURFBYXFhYzITI2NzY2NRE0JicmJiMjETQmIyMiBhUTETQzMzIVEQEUBiMhIiY1ETQ2MyEyFhUBIiY1NDY3FhYVFAYnMxUjAT5eLlAeHiQkHh5QLgLuL1EeHiQkHh5RL1yMcjhyjJN6GnoBSTYm/RYmNDQmAuomNv4wOlZWOjtTU4OSkgN0JB4eTy/93C5QHh4kJB4eUC4CJC9PHh4kAc5yjIxy/jIB3Xp6/iP8/SU0NCUCJiU0NCX+w1Q8O00GBk07PFQ0/AAAAQAA/agD6AcIAAIAABEBAQPo/BgHCPtQ+1AAAAEAAP2oBJEHCAAFAAATAQEjAQGpA+j8GKkD3vwiBwj7UPtQBLAEsP//AMj9qASwBwgARwfaBLAAAMAAQAD//wAf/agEsAcIAEcH2wSwAADAAEAAAAEAZP8ZBLoGXwAHAAAFFSERIRUhEQS6+6oEVvxJWI8HRpH52gAAAv/2/xkEugZfAAMABwAAByEVIREhFSEKBMT7PATE+zxYjwdGkf////b/GQRMBl8ARwfeBLAAAMAAQAAAAgBk/xkEugZfAAMACwAAASERIQUVIREhFSERAekC0f0vAtH7qgRW/EkE+vtqvI8HRpH52gAAA//2/xkEugZfAAMABwALAAADIREhFSEVIREhFSEKBMT7PATE+zwExPs8BPr7aryPB0aR////9v8ZBEwGXwBHB+EEsAAAwABAAAABAI0EJQQjBTgADQAAAQcmJiMiBgcnNjYzMhYEI1VHwW5twUhVWO2Ghu0EelVIU1NHVFhmZgABAlgBaQTiBTgAEQAAATIeAhUUBgcnNjY1NC4CIwJYh+uzZS4paCIlUpLAbgU4ZbPrh1ilSDw7hUluwJJSAAEBrwAkBOIEegAVAAAlNxYzMj4CNTQmJzcWFhUUDgIjIgGvH0JIbsCSUlNIVVhmZbPrh1Q6dBJSksBubsFIVVjuhofrs2UAAAH/zgAkBOICrgAVAAABFA4CIyIuAjUzFB4CMzI+AjUE4mWz64eH67NleFKSwG5uwJJSAq6H67NlZbPrh27AklJSksBuAP///84AJAMBBHoARwfmBLAAAMAAQAD////OAWkCWAU4AEcH5QSwAADAAEAAAAEBPQUiA3UGAgAPAAABIiYmJzcWFjMyNjcXDgICVUJ7UwhjGFZHR18YYghWfQUiKFhIGEM0NEMYSFgo//8BOgYeA3IG/gAHB+v//QD8AAAAKAHmAAEAAAAAABkADQAAAAEAAAAAAQAABgANAAEAAAAAAQEABQATAAEAAAAAAQIABwAYAAEAAAAAAQMABgAfAAEAAAAAAQQACAAlAAEAAAAAAQUABAAtAAEAAAAAAQYAEwAxAAEAAAAAAQcAFQBEAAEAAAAAAQgAFABZAAEAAAAAAQkAFgBtAAEAAAAAAQoAEgCDAAMAAQQJAAAArACVAAMAAQQJAAEAHgFBAAMAAQQJAAIADgFfAAMAAQQJAAMAMgFtAAMAAQQJAAQAHgFBAAMAAQQJAAUAGgGfAAMAAQQJAAYAHAG5AAMAAQQJAAcAaAHVAAMAAQQJAAgAbAI9AAMAAQQJAAkAbAI9AAMAAQQJAAsAIgKpAAMAAQQJAAwAIgKpAAMAAQQJAA0BIALLAAMAAQQJAA4ANAPrAAMAAQQJABAAEgQfAAMAAQQJABEACgQxAAMAAQQJABkAGgQ7AAMAAQQJAQAADARVAAMAAQQJAQEACgQxAAMAAQQJAQIADgFfAAMAAQQJAQMADARhAAMAAQQJAQQAEARtAAMAAQQJAQUACAR9AAMAAQQJAQYAJgSFAAMAAQQJAQcAKgSrAAMAAQQJAQgAKATVAAMAAQQJAQkALAT9AAMAAQQJAQoAJAUpRmlyYUNvZGVSb21hbldlaWdodExpZ2h0UmVndWxhck1lZGl1bVNlbWlCb2xkQm9sZEZpcmFDb2RlUm9tYW4tTGlnaHRGaXJhQ29kZVJvbWFuLVJlZ3VsYXJGaXJhQ29kZVJvbWFuLU1lZGl1bUZpcmFDb2RlUm9tYW4tU2VtaUJvbGRGaXJhQ29kZVJvbWFuLUJvbGQAQwBvAHAAeQByAGkAZwBoAHQAIAAyADAAMQA0AC0AMgAwADIAMQAgAFQAaABlACAARgBpAHIAYQAgAEMAbwBkAGUAIABQAHIAbwBqAGUAYwB0ACAAQQB1AHQAaABvAHIAcwAgACgAaAB0AHQAcABzADoALwAvAGcAaQB0AGgAdQBiAC4AYwBvAG0ALwB0AG8AbgBzAGsAeQAvAEYAaQByAGEAQwBvAGQAZQApAEYAaQByAGEAIABDAG8AZABlACAATABpAGcAaAB0AFIAZQBnAHUAbABhAHIANgAuADAAMAAyADsAQwBUAEQAQgA7AEYAaQByAGEAQwBvAGQAZQAtAEwAaQBnAGgAdABWAGUAcgBzAGkAbwBuACAANgAuADAAMAAyAEYAaQByAGEAQwBvAGQAZQAtAEwAaQBnAGgAdABGAGkAcgBhACAATQBvAG4AbwAgAGkAcwAgAGEAIAB0AHIAYQBkAGUAbQBhAHIAawAgAG8AZgAgAFQAaABlACAATQBvAHoAaQBsAGwAYQAgAEMAbwByAHAAbwByAGEAdABpAG8AbgAuAEMAYQByAHIAbwBpAHMAIABDAG8AcgBwAG8AcgBhAHQAZQAsACAARQBkAGUAbgBzAHAAaQBlAGsAZQByAG0AYQBuAG4AIABBAEcALAAgAE4AaQBrAGkAdABhACAAUAByAG8AawBvAHAAbwB2AGgAdAB0AHAAcwA6AC8ALwB0AG8AbgBzAGsAeQAuAG0AZQBUAGgAaQBzACAARgBvAG4AdAAgAFMAbwBmAHQAdwBhAHIAZQAgAGkAcwAgAGwAaQBjAGUAbgBzAGUAZAAgAHUAbgBkAGUAcgAgAHQAaABlACAAUwBJAEwAIABPAHAAZQBuACAARgBvAG4AdAAgAEwAaQBjAGUAbgBzAGUALAAgAFYAZQByAHMAaQBvAG4AIAAxAC4AMQAuACAAVABoAGkAcwAgAGwAaQBjAGUAbgBzAGUAIABpAHMAIABhAHYAYQBpAGwAYQBiAGwAZQAgAHcAaQB0AGgAIABhACAARgBBAFEAIABhAHQAOgAgAGgAdAB0AHAAOgAvAC8AcwBjAHIAaQBwAHQAcwAuAHMAaQBsAC4AbwByAGcALwBPAEYATABoAHQAdABwADoALwAvAHMAYwByAGkAcAB0AHMALgBzAGkAbAAuAG8AcgBnAC8ATwBGAEwARgBpAHIAYQAgAEMAbwBkAGUATABpAGcAaAB0AEYAaQByAGEAQwBvAGQAZQBSAG8AbQBhAG4AVwBlAGkAZwBoAHQATQBlAGQAaQB1AG0AUwBlAG0AaQBCAG8AbABkAEIAbwBsAGQARgBpAHIAYQBDAG8AZABlAFIAbwBtAGEAbgAtAEwAaQBnAGgAdABGAGkAcgBhAEMAbwBkAGUAUgBvAG0AYQBuAC0AUgBlAGcAdQBsAGEAcgBGAGkAcgBhAEMAbwBkAGUAUgBvAG0AYQBuAC0ATQBlAGQAaQB1AG0ARgBpAHIAYQBDAG8AZABlAFIAbwBtAGEAbgAtAFMAZQBtAGkAQgBvAGwAZABGAGkAcgBhAEMAbwBkAGUAUgBvAG0AYQBuAC0AQgBvAGwAZAAAAgAAAAAAAP+cADIAAAABAAAAAAAAAAAAAAAAAAAAAAfuAAAAJADJAQIAxwBiAK0BAwEEAGMArgCQAQUAJQAmAP0A/wBkAQYBBwAnAOkBCAEJACgAZQEKAQsAyADKAQwAywENAQ4AKQAqAPgBDwEQAREAKwESARMALAEUAMwBFQDNAM4A+gDPARYBFwEYAC0BGQAuARoALwEbARwBHQEeAOIAMAAxAR8BIAEhAGYBIgAyANABIwDRAGcA0wEkASUAkQEmAK8AsAAzAO0ANAA1AScBKAEpADYBKgDkAPsBKwEsAS0ANwEuAS8BMAExADgA1AEyANUAaADWATMBNAE1ATYBNwA5ADoBOAE5AToBOwA7ADwA6wE8ALsBPQA9AT4A5gE/AUABQQFCAUMBRAFFAUYBRwFIAEQAaQFJAGsAbABqAUoBSwBuAG0AoAFMAEUARgD+AQAAbwFNAU4ARwDqAU8BAQBIAHABUAFRAHIAcwFSAHEBUwFUAEkASgD5AVUBVgFXAEsBWAFZAEwA1wB0AVoAdgB3AVsAdQFcAV0BXgFfAE0BYAFhAE4BYgFjAE8BZAFlAWYBZwDjAFAAUQFoAWkBagFrAHgBbABSAHkBbQB7AHwAegFuAW8AoQFwAH0AsQBTAO4AVABVAXEBcgFzAFYBdADlAPwBdQF2AIkAVwF3AXgBeQF6AFgAfgF7AIAAgQB/AXwBfQF+AX8BgABZAFoBgQGCAYMBhABbAFwA7AGFALoBhgBdAYcA5wGIAYkBigGLAYwBjQGOAY8BkAGRAZIBkwGUAZUBlgGXAZgBmQGaAZsBnAGdAZ4BnwGgAaEBogGjAaQBpQGmAacBqAGpAaoBqwGsAa0BrgGvAbABsQGyAbMBtAG1AbYBtwG4AbkBugG7AbwBvQG+Ab8BwAHBAcIBwwHEAcUBxgHHAcgByQHKAcsBzAHNAc4BzwHQAdEB0gHTAdQB1QHWAdcB2AHZAdoB2wHcAd0B3gHfAeAB4QHiAeMB5AHlAeYB5wHoAekB6gHrAewB7QHuAe8AnQCeAfAB8QHyAfMB9AH1AfYB9wH4AfkB+gH7AfwB/QH+Af8CAAIBAgICAwIEAgUCBgIHAggCCQIKAgsCDAINAg4CDwIQAhECEgITAhQCFQIWAhcCGAIZAhoCGwIcAh0CHgIfAiACIQIiAiMCJAIlAiYCJwIoAikCKgIrAiwCLQIuAi8CMAIxAjICMwI0AjUCNgI3AjgCOQI6AjsCPAI9Aj4CPwJAAkECQgJDAkQCRQJGAkcCSAJJAkoCSwJMAk0CTgJPAlACUQJSAlMCVAJVAlYCVwJYAlkCWgJbAlwCXQJeAl8CYAJhAmICYwJkAmUCZgJnAmgCaQJqAmsCbAJtAm4CbwJwAnECcgJzAnQCdQJ2AncCeAJ5AnoCewJ8An0CfgJ/AoACgQKCAoMChAKFAoYChwKIAokCigKLAowCjQKOAo8CkAKRApICkwKUApUClgKXApgCmQKaApsCnAKdAp4CnwKgAqECogKjAqQCpQKmAqcCqAKpAqoCqwKsAq0CrgKvArACsQKyArMCtAK1ArYCtwK4ArkCugK7ArwCvQK+Ar8CwALBAsICwwLEAsUCxgLHAsgCyQLKAssCzALNAs4CzwLQAtEC0gLTAtQC1QLWAtcC2ALZAtoC2wLcAt0C3gLfAuAC4QLiAuMC5ALlAuYC5wLoAukC6gLrAuwC7QLuAu8C8ALxAvIC8wL0AvUC9gL3AvgC+QL6AvsC/AL9Av4C/wMAAwEDAgMDAwQDBQMGAwcDCAMJAwoDCwMMAw0DDgMPAxADEQMSAxMDFAMVAxYDFwMYAxkDGgMbAxwDHQMeAx8DIAMhAyIDIwMkAyUDJgMnAygDKQMqAysDLAMtAy4DLwMwAzEDMgMzAzQDNQM2AzcDOAM5AzoDOwM8Az0DPgM/A0ADQQNCA0MDRANFA0YDRwNIA0kDSgNLA0wDTQNOA08DUANRA1IDUwNUA1UDVgNXA1gDWQNaA1sDXANdA14DXwNgA2EDYgNjA2QDZQNmA2cDaANpA2oDawNsA20DbgNvA3ADcQNyA3MDdAN1A3YDdwN4A3kDegN7A3wDfQN+A38DgAOBA4IDgwOEA4UDhgOHA4gDiQOKA4sDjAONA44DjwOQA5EDkgOTA5QDlQOWA5cDmAOZA5oDmwOcA50DngOfA6ADoQOiA6MDpAOlA6YDpwOoA6kDqgOrA6wDrQOuA68DsAOxA7IDswCbA7QDtQO2A7cDuAO5A7oDuwO8A70DvgO/A8ADwQPCA8MDxAPFA8YDxwPIA8kDygPLA8wDzQPOA88D0APRA9ID0wPUA9UD1gPXA9gD2QPaA9sD3APdA94D3wPgA+ED4gPjA+QD5QPmA+cD6APpA+oD6wPsA+0D7gPvA/AD8QPyA/MD9AP1A/YD9wP4A/kD+gP7A/wD/QP+A/8EAAQBBAIEAwQEBAUEBgQHBAgECQQKBAsEDAQNBA4EDwQQBBEEEgQTBBQEFQQWBBcEGAQZBBoEGwQcBB0EHgQfBCAEIQQiBCMEJAQlBCYEJwQoBCkEKgQrBCwELQQuBC8EMAQxBDIEMwQ0BDUENgQ3BDgEOQQ6BDsEPAQ9BD4EPwRABEEEQgRDBEQERQRGBEcESARJBEoESwRMBE0ETgRPBFAEUQRSBFMEVARVBFYEVwRYBFkEWgRbBFwEXQReBF8EYARhBGIEYwRkABMAFAAVABYAFwAYABkAGgAbABwEZQRmBGcEaARpBGoEawRsBG0EbgRvBHAEcQRyBHMEdAR1BHYEdwR4BHkEegR7BHwEfQR+BH8EgASBBIIEgwSEBIUEhgSHBIgEiQSKBIsEjASNBI4EjwSQBJEEkgSTBJQElQSWBJcEmASZBJoEmwScBJ0EngSfBKAEoQSiBKMAvASkAPQEpQSmAPUA9gSnBKgEqQSqBKsErAStBK4ErwSwBLEEsgSzBLQEtQS2BLcEuAADBLkEugS7BLwEvQS+BL8EwATBBMIEwwTEBMUAEQTGBMcEyATJBMoADwAdBMsEzATNBM4AHgTPAKsABATQBNEE0gTTAKMAIgTUBNUE1gCiAMMAhwANBNcE2ATZBNoE2wAGBNwE3QTeBN8E4AThBOIE4wTkBOUAEgTmBOcE6ATpBOoAPwTrBOwE7QTuBO8E8ATxBPIE8wT0BPUE9gT3BPgE+QT6BPsE/AT9BP4E/wUABQEFAgUDBQQFBQUGBQcFCAUJBQoFCwUMBQ0FDgUPBRAFEQUSBRMFFAUVBRYFFwUYBRkFGgUbBRwFHQUeABAFHwCyALMFIAUhBSIFIwBCBSQFJQUmBScFKAUpBSoFKwUsBS0ACwAMAF4AYAA+AEAFLgUvBTAFMQUyBTMFNAU1BTYFNwU4BTkFOgU7BTwFPQU+BT8FQAVBBUIFQwVEAMQAxQC0ALUAtgC3AKkAqgC+AL8ABQAKBUUFRgVHBUgApgVJBUoFSwVMBU0FTgVPBVAFUQVSBVMFVAVVBVYFVwVYBVkFWgVbBVwFXQVeBV8FYAVhBWIFYwVkBWUFZgVnACMACQVoAIgAhgCLAIoAjACDBWkAXwVqBWsFbAVtBW4FbwVwAOgFcQCCAMIFcgVzBXQFdQV2BXcFeAV5BXoFewV8BX0FfgV/BYAFgQWCBYMFhAWFBYYFhwWIBYkFigWLBYwFjQWOBY8FkAWRBZIFkwWUBZUFlgWXBZgFmQWaBZsFnAWdBZ4FnwWgBaEFogWjBaQFpQWmBacFqAWpBaoFqwWsBa0FrgWvBbAFsQWyBbMFtAW1BbYFtwW4BbkFugW7BbwFvQW+Bb8FwAXBBcIFwwXEBcUFxgXHBcgFyQXKBcsFzAXNBc4FzwXQBdEF0gXTBdQF1QXWBdcF2AXZBdoF2wXcBd0F3gXfBeAF4QXiBeMF5AXlBeYF5wXoBekF6gXrBewF7QXuBe8F8AXxBfIF8wX0BfUF9gX3BfgF+QX6BfsF/AX9Bf4F/wYABgEGAgYDBgQGBQYGBgcGCAYJBgoGCwYMBg0GDgYPBhAGEQYSBhMGFAYVBhYGFwYYBhkGGgYbBhwGHQYeBh8GIACEAL0ABwYhBiIGIwYkBiUAhQCWBiYGJwYoBikGKgYrBiwGLQYuBi8GMAYxBjIGMwY0BjUGNgY3BjgGOQY6BjsGPAY9Bj4GPwZABkEGQgZDBkQGRQZGBkcGSAZJBkoGSwZMBk0GTgZPBlAGUQZSBlMGVAZVBlYGVwAOAO8A8AC4ACAAjwAhAB8AlQCUAJMApwBhAKQAQQCSBlgGWQZaBlsGXACcBl0AmgCZAKUGXgCYBl8GYAZhBmIGYwZkAAgAxgZlBmYGZwZoBmkGagZrBmwGbQZuBm8GcAZxBnIGcwZ0BnUGdgZ3BngGeQZ6BnsGfAZ9Bn4GfwaABoEGggaDBoQGhQaGBocGiAaJBooGiwaMBo0GjgaPBpAGkQaSBpMGlAaVBpYGlwaYBpkGmgabBpwGnQaeBp8GoAahBqIGowakBqUGpganBqgGqQaqBqsGrAatBq4GrwawBrEGsgazBrQGtQa2BrcGuAa5BroGuwa8Br0Gvga/BsAGwQbCBsMGxAbFBsYGxwbIBskGygbLBswGzQbOBs8G0AbRBtIG0wbUBtUG1gbXBtgG2QbaBtsG3AbdBt4G3wbgBuEG4gbjBuQG5QbmBucG6AbpBuoG6wbsBu0G7gbvBvAG8QbyBvMG9Ab1BvYG9wb4ALkG+Qb6BvsG/Ab9Bv4G/wcABwEHAgcDBwQHBQcGBwcHCAcJBwoHCwcMBw0HDgcPBxAHEQcSBxMHFAcVBxYHFwcYBxkHGgcbBxwHHQceBx8HIAchByIHIwckByUHJgcnBygHKQcqBysHLActBy4HLwcwBzEHMgczBzQHNQc2BzcHOAc5BzoHOwc8Bz0HPgc/B0AHQQdCB0MHRAdFB0YHRwdIB0kHSgdLB0wHTQdOB08HUAdRB1IHUwdUB1UHVgdXB1gHWQdaB1sHXAddB14HXwdgB2EHYgdjB2QHZQdmB2cHaAdpB2oHawdsB20HbgdvB3AHcQdyB3MHdAd1B3YHdwd4B3kHegd7B3wHfQd+B38HgAeBB4IHgweEB4UHhgeHB4gHiQeKB4sHjAeNB44HjweQB5EHkgeTB5QHlQeWB5cHmAeZB5oHmwecB50HngefB6AHoQeiB6MHpAelB6YHpweoB6kHqgerB6wHrQeuB68HsAexB7IHswe0B7UHtge3B7gHuQe6B7sHvAe9B74HvwfAB8EHwgfDB8QHxQCOANwAQwCNAN8A2AfGAOEA2wDdANkA2gDeAOAHxwfIB8kHygfLB8wHzQfOB88H0AfRB9IH0wfUB9UH1gfXB9gH2QfaB9sH3AfdB94H3wfgB+EH4gfjB+QH5QfmB+cH6AfpB+oH6wfsB+0H7gfvB/AH8QfyB/MH9Af1B/YH9wf4B/kH+gZBYnJldmUHQW1hY3JvbgdBb2dvbmVrB0FFYWN1dGULQ2NpcmN1bWZsZXgKQ2RvdGFjY2VudAZEY2Fyb24GRGNyb2F0BkVicmV2ZQZFY2Fyb24KRWRvdGFjY2VudAdFbWFjcm9uB0VvZ29uZWsLR2NpcmN1bWZsZXgHdW5pMDEyMgpHZG90YWNjZW50BEhiYXILSGNpcmN1bWZsZXgCSUoGSWJyZXZlB0ltYWNyb24HSW9nb25lawZJdGlsZGULSmNpcmN1bWZsZXgHdW5pMDEzNgZMYWN1dGUGTGNhcm9uB3VuaTAxM0IETGRvdAZOYWN1dGUGTmNhcm9uB3VuaTAxNDUDRW5nBk9icmV2ZQ1PaHVuZ2FydW1sYXV0B09tYWNyb24LT3NsYXNoYWN1dGUGUmFjdXRlBlJjYXJvbgd1bmkwMTU2BlNhY3V0ZQtTY2lyY3VtZmxleAd1bmkwMjE4B3VuaTFFOUUEVGJhcgZUY2Fyb24HdW5pMDE2Mgd1bmkwMjFBBlVicmV2ZQ1VaHVuZ2FydW1sYXV0B1VtYWNyb24HVW9nb25lawVVcmluZwZVdGlsZGUGV2FjdXRlC1djaXJjdW1mbGV4CVdkaWVyZXNpcwZXZ3JhdmULWWNpcmN1bWZsZXgGWWdyYXZlBlphY3V0ZQpaZG90YWNjZW50DkNhY3V0ZS5sb2NsUExLDk5hY3V0ZS5sb2NsUExLDk9hY3V0ZS5sb2NsUExLDlNhY3V0ZS5sb2NsUExLDlphY3V0ZS5sb2NsUExLCEYuc3BhY2VyCFQuc3BhY2VyDUZfbC5saWdhLnNzMTANVF9sLmxpZ2Euc3MxMAZhYnJldmUHYW1hY3Jvbgdhb2dvbmVrB2FlYWN1dGULY2NpcmN1bWZsZXgKY2RvdGFjY2VudAZkY2Fyb24GZWJyZXZlBmVjYXJvbgplZG90YWNjZW50B2VtYWNyb24HZW9nb25lawtnY2lyY3VtZmxleAd1bmkwMTIzCmdkb3RhY2NlbnQEaGJhcgtoY2lyY3VtZmxleAZpYnJldmUJaS5sb2NsVFJLAmlqB2ltYWNyb24HaW9nb25lawZpdGlsZGUHdW5pMDIzNwtqY2lyY3VtZmxleAd1bmkwMTM3DGtncmVlbmxhbmRpYwZsYWN1dGUGbGNhcm9uB3VuaTAxM0MEbGRvdAZuYWN1dGULbmFwb3N0cm9waGUGbmNhcm9uB3VuaTAxNDYDZW5nBm9icmV2ZQ1vaHVuZ2FydW1sYXV0B29tYWNyb24Lb3NsYXNoYWN1dGUGcmFjdXRlBnJjYXJvbgd1bmkwMTU3BnNhY3V0ZQtzY2lyY3VtZmxleAd1bmkwMjE5BHRiYXIGdGNhcm9uB3VuaTAxNjMHdW5pMDIxQgZ1YnJldmUNdWh1bmdhcnVtbGF1dAd1bWFjcm9uB3VvZ29uZWsFdXJpbmcGdXRpbGRlBndhY3V0ZQt3Y2lyY3VtZmxleAl3ZGllcmVzaXMGd2dyYXZlC3ljaXJjdW1mbGV4BnlncmF2ZQZ6YWN1dGUKemRvdGFjY2VudAZhLmN2MDELYWFjdXRlLmN2MDELYWJyZXZlLmN2MDEQYWNpcmN1bWZsZXguY3YwMQ5hZGllcmVzaXMuY3YwMQthZ3JhdmUuY3YwMQxhbWFjcm9uLmN2MDEMYW9nb25lay5jdjAxCmFyaW5nLmN2MDELYXRpbGRlLmN2MDEGZy5jdjAyC2dicmV2ZS5jdjAyEGdjaXJjdW1mbGV4LmN2MDIMdW5pMDEyMy5jdjAyD2dkb3RhY2NlbnQuY3YwMgZpLmN2MDMNZG90bGVzc2kuY3YwMwtpYWN1dGUuY3YwMwtpYnJldmUuY3YwMxBpY2lyY3VtZmxleC5jdjAzDmlkaWVyZXNpcy5jdjAzDmkubG9jbFRSSy5jdjAzC2lncmF2ZS5jdjAzDGltYWNyb24uY3YwMwxpb2dvbmVrLmN2MDMLaXRpbGRlLmN2MDMGaS5jdjA0DWRvdGxlc3NpLmN2MDQLaWFjdXRlLmN2MDQLaWJyZXZlLmN2MDQQaWNpcmN1bWZsZXguY3YwNA5pZGllcmVzaXMuY3YwNA5pLmxvY2xUUksuY3YwNAtpZ3JhdmUuY3YwNAxpbWFjcm9uLmN2MDQMaW9nb25lay5jdjA0C2l0aWxkZS5jdjA0BmkuY3YwNQ1kb3RsZXNzaS5jdjA1C2lhY3V0ZS5jdjA1C2licmV2ZS5jdjA1EGljaXJjdW1mbGV4LmN2MDUOaWRpZXJlc2lzLmN2MDUOaS5sb2NsVFJLLmN2MDULaWdyYXZlLmN2MDUMaW1hY3Jvbi5jdjA1DGlvZ29uZWsuY3YwNQtpdGlsZGUuY3YwNQZpLmN2MDYNZG90bGVzc2kuY3YwNgtpYWN1dGUuY3YwNgtpYnJldmUuY3YwNhBpY2lyY3VtZmxleC5jdjA2DmlkaWVyZXNpcy5jdjA2DmkubG9jbFRSSy5jdjA2C2lncmF2ZS5jdjA2DGltYWNyb24uY3YwNgxpb2dvbmVrLmN2MDYLaXRpbGRlLmN2MDYGbC5jdjA3C2xhY3V0ZS5jdjA3C2xjYXJvbi5jdjA3DHVuaTAxM0MuY3YwNwlsZG90LmN2MDcLbHNsYXNoLmN2MDcGbC5jdjA4C2xhY3V0ZS5jdjA4C2xjYXJvbi5jdjA4DHVuaTAxM0MuY3YwOAlsZG90LmN2MDgLbHNsYXNoLmN2MDgGbC5jdjA5C2xhY3V0ZS5jdjA5C2xjYXJvbi5jdjA5DHVuaTAxM0MuY3YwOQlsZG90LmN2MDkLbHNsYXNoLmN2MDkGbC5jdjEwC2xhY3V0ZS5jdjEwC2xjYXJvbi5jdjEwDHVuaTAxM0MuY3YxMAlsZG90LmN2MTALbHNsYXNoLmN2MTAOY2FjdXRlLmxvY2xQTEsObmFjdXRlLmxvY2xQTEsOb2FjdXRlLmxvY2xQTEsOc2FjdXRlLmxvY2xQTEsOemFjdXRlLmxvY2xQTEsKeC5tdWx0aXBseQhmLnNwYWNlcghsLnNwYWNlcgh3LnNwYWNlcgZyLnNzMDEPeC5tdWx0aXBseS50b3NmCmkuc2FsdF9sb3cKai5zYWx0X2xvdwpsLnNhbHRfbG93Cndfd193LmxpZ2ENZl9pLmxpZ2Euc3MxMA1mX2oubGlnYS5zczEwDWZfbC5saWdhLnNzMTANZl90LmxpZ2Euc3MxMAd1bmkyMDdGB3VuaTA0MTAHdW5pMDQxMQd1bmkwNDEyB3VuaTA0MTMHdW5pMDQwMwd1bmkwNDkwB3VuaTA0RjYHdW5pMDQ5Mgd1bmkwNDk0B3VuaTA0MTQHdW5pMDQxNQd1bmkwNDAwB3VuaTA0MDEHdW5pMDQxNgd1bmkwNDE3B3VuaTA0MTgHdW5pMDQxOQd1bmkwNDBEB3VuaTA0OEEHdW5pMDQxQQd1bmkwNDBDB3VuaTA0MUIHdW5pMDQxQwd1bmkwNDFEB3VuaTA0MUUHdW5pMDQxRgd1bmkwNDIwB3VuaTA0MjEHdW5pMDQyMgd1bmkwNDIzB3VuaTA0MEUHdW5pMDQyNAd1bmkwNDI1B3VuaTA0MjcHdW5pMDQyNgd1bmkwNDI4B3VuaTA0MjkHdW5pMDQwRgd1bmkwNDJDB3VuaTA0MkIHdW5pMDQyQQd1bmkwNDA5B3VuaTA0MEEHdW5pMDQwNQd1bmkwNDA0B3VuaTA0MkQHdW5pMDQwNgd1bmkwNDA3B3VuaTA0MDgHdW5pMDQwQgd1bmkwNDJFB3VuaTA0MkYHdW5pMDQwMgd1bmkwNDYwB3VuaTA0NjIHdW5pMDQ2NAd1bmkwNDY2B3VuaTA0NjgHdW5pMDQ2QQd1bmkwNDZDB3VuaTA0NkUHdW5pMDQ3MAd1bmkwNDcyB3VuaTA0NzQHdW5pMDQ3Ngd1bmkwNDc4B3VuaTA0OTYHdW5pMDQ5OAd1bmkwNDlBB3VuaTA0OUMHdW5pMDQ5RQd1bmkwNEEwB3VuaTA0QTIHdW5pMDRBNAd1bmkwNEE2B3VuaTA1MjQHdW5pMDRBOAd1bmkwNEFBB3VuaTA0QUMJVXN0cmFpdGN5D1VzdHJhaXRzdHJva2VjeQd1bmkwNEIyB3VuaTA0QjQHdW5pMDRCNgd1bmkwNEI4B3VuaTA0QkEHdW5pMDUyNgd1bmkwNEJDB3VuaTA0QkUHdW5pMDRDMAd1bmkwNEMxB3VuaTA0QzMHdW5pMDRDNQd1bmkwNEM3B3VuaTA0QzkHdW5pMDRDQgd1bmkwNENEB3VuaTA0RDAHdW5pMDREMgd1bmkwNEQ0B3VuaTA0RDYHdW5pMDREOAd1bmkwNERBB3VuaTA0REMHdW5pMDRERQd1bmkwNEUwB3VuaTA0RTIHdW5pMDRFNAd1bmkwNEU2B3VuaTA0RTgHdW5pMDRFQQd1bmkwNEVDB3VuaTA0RUUHdW5pMDRGMAd1bmkwNEYyB3VuaTA0RjQHdW5pMDRGOAd1bmkwNEZBB3VuaTA0RkMHdW5pMDRGRQd1bmkwNTAwB3VuaTA1MDIHdW5pMDUwNAd1bmkwNTA2B3VuaTA1MDgHdW5pMDUwQQd1bmkwNTBDB3VuaTA1MEUHdW5pMDUxMAd1bmkwNTEyB3VuaTA1MTQHdW5pMDUxNgd1bmkwNTE4B3VuaTA1MUEHdW5pMDUxQwd1bmkwNTFFB3VuaTA1MjAHdW5pMDUyMgd1bmkwNDhDB3VuaTA0OEUHdW5pMDUyOAd1bmkwNTJBB3VuaTA1MkMHdW5pMDUyRQd1bmkwNDMwB3VuaTA0MzEHdW5pMDQzMgd1bmkwNDMzB3VuaTA0NTMHdW5pMDQ5MQd1bmkwNEY3B3VuaTA0OTMHdW5pMDQ5NQd1bmkwNDM0B3VuaTA0MzUHdW5pMDQ1MAd1bmkwNDUxB3VuaTA0MzYHdW5pMDQzNwd1bmkwNDM4B3VuaTA0MzkHdW5pMDQ1RAd1bmkwNDhCB3VuaTA0M0EHdW5pMDQ1Qwd1bmkwNDNCB3VuaTA0M0MHdW5pMDQzRAd1bmkwNDNFB3VuaTA0M0YHdW5pMDQ0MAd1bmkwNDQxB3VuaTA0NDIHdW5pMDQ0Mwd1bmkwNDVFB3VuaTA0NDQHdW5pMDQ0NQd1bmkwNDQ3B3VuaTA0NDYHdW5pMDQ0OAd1bmkwNDQ5B3VuaTA0NUYHdW5pMDQ0Qwd1bmkwNDRCB3VuaTA0NEEHdW5pMDQ1OQd1bmkwNDVBB3VuaTA0NTUHdW5pMDQ1NAd1bmkwNDREB3VuaTA0NTYHdW5pMDQ1Nwd1bmkwNDU4B3VuaTA0NUIHdW5pMDQ0RQd1bmkwNDRGB3VuaTA0NTIHdW5pMDQ2MQd1bmkwNDYzB3VuaTA0NjUHdW5pMDQ2Nwd1bmkwNDY5B3VuaTA0NkIHdW5pMDQ2RAd1bmkwNDZGB3VuaTA0NzEHdW5pMDQ3Mwd1bmkwNDc1B3VuaTA0NzcHdW5pMDQ3OQd1bmkwNDk3B3VuaTA0OTkHdW5pMDQ5Qgd1bmkwNDlEB3VuaTA0OUYHdW5pMDRBMQd1bmkwNEEzB3VuaTA0QTUHdW5pMDUyNQd1bmkwNEE3B3VuaTA0QTkHdW5pMDRBQgd1bmkwNEFECXVzdHJhaXRjeQ91c3RyYWl0c3Ryb2tlY3kHdW5pMDRCMwd1bmkwNEI1B3VuaTA0QjcHdW5pMDRCOQd1bmkwNEJCB3VuaTA1MjcHdW5pMDRCRAd1bmkwNEJGB3VuaTA0Q0YHdW5pMDRDMgd1bmkwNEM0B3VuaTA0QzYHdW5pMDRDOAd1bmkwNENBB3VuaTA0Q0MHdW5pMDRDRQd1bmkwNEQxB3VuaTA0RDMHdW5pMDRENQd1bmkwNEQ3B3VuaTA0RDkHdW5pMDREQgd1bmkwNEREB3VuaTA0REYHdW5pMDRFMQd1bmkwNEUzB3VuaTA0RTUHdW5pMDRFNwd1bmkwNEU5B3VuaTA0RUIHdW5pMDRFRAd1bmkwNEVGB3VuaTA0RjEHdW5pMDRGMwd1bmkwNEY1B3VuaTA0RjkHdW5pMDRGQgd1bmkwNEZEB3VuaTA0RkYHdW5pMDUwMQd1bmkwNTAzB3VuaTA1MDUHdW5pMDUwNwd1bmkwNTA5B3VuaTA1MEIHdW5pMDUwRAd1bmkwNTBGB3VuaTA1MTEHdW5pMDUxMwd1bmkwNTE1B3VuaTA1MTcHdW5pMDUxOQd1bmkwNTFCB3VuaTA1MUQHdW5pMDUxRgd1bmkwNTIxB3VuaTA1MjMHdW5pMDQ4RAd1bmkwNDhGB3VuaTA1MjkHdW5pMDUyQgd1bmkwNTJEB3VuaTA1MkYIWW90Z3JlZWsFQWxwaGEEQmV0YQVHYW1tYQd1bmkwMzk0B0Vwc2lsb24EWmV0YQNFdGEFVGhldGEESW90YQVLYXBwYQZMYW1iZGECTXUCTnUCWGkHT21pY3JvbgJQaQNSaG8FU2lnbWEDVGF1B1Vwc2lsb24DUGhpA0NoaQNQc2kHdW5pMDNBOQpBbHBoYXRvbm9zDEVwc2lsb250b25vcwhFdGF0b25vcwlJb3RhdG9ub3MMT21pY3JvbnRvbm9zDFVwc2lsb250b25vcwpPbWVnYXRvbm9zDElvdGFkaWVyZXNpcw9VcHNpbG9uZGllcmVzaXMHdW5pMDM3MAd1bmkwMzcyB3VuaTAzNzYHdW5pMDNEOAd1bmkwM0RBB3VuaTAzREMHdW5pMDNERQd1bmkwM0UwB3VuaTAzQ0YHdW5pMDNEMgd1bmkwM0QzB3VuaTAzRDQHdW5pMDNGNAd1bmkwM0Y3B3VuaTAzRjkHdW5pMDNGQQd1bmkwM0ZEB3VuaTAzRkUHdW5pMDNGRgd1bmkxRjA4B3VuaTFGMDkHdW5pMUYwQQd1bmkxRjBCB3VuaTFGMEMHdW5pMUYwRAd1bmkxRjBFB3VuaTFGMEYHdW5pMUZCQQd1bmkxRkJCB3VuaTFGQjgHdW5pMUZCOQd1bmkxRkJDB3VuaTFGODgHdW5pMUY4OQd1bmkxRjhBB3VuaTFGOEIHdW5pMUY4Qwd1bmkxRjhEB3VuaTFGOEUHdW5pMUY4Rgd1bmkxRjE4B3VuaTFGMTkHdW5pMUYxQQd1bmkxRjFCB3VuaTFGMUMHdW5pMUYxRAd1bmkxRkM4B3VuaTFGQzkHdW5pMUYyOAd1bmkxRjI5B3VuaTFGMkEHdW5pMUYyQgd1bmkxRjJDB3VuaTFGMkQHdW5pMUYyRQd1bmkxRjJGB3VuaTFGQ0EHdW5pMUZDQgd1bmkxRkNDB3VuaTFGOTgHdW5pMUY5OQd1bmkxRjlBB3VuaTFGOUIHdW5pMUY5Qwd1bmkxRjlEB3VuaTFGOUUHdW5pMUY5Rgd1bmkxRjM4B3VuaTFGMzkHdW5pMUYzQQd1bmkxRjNCB3VuaTFGM0MHdW5pMUYzRAd1bmkxRjNFB3VuaTFGM0YHdW5pMUZEQQd1bmkxRkRCB3VuaTFGRDgHdW5pMUZEOQd1bmkxRjQ4B3VuaTFGNDkHdW5pMUY0QQd1bmkxRjRCB3VuaTFGNEMHdW5pMUY0RAd1bmkxRkY4B3VuaTFGRjkHdW5pMUZFQwd1bmkxRjU5B3VuaTFGNUIHdW5pMUY1RAd1bmkxRjVGB3VuaTFGRUEHdW5pMUZFQgd1bmkxRkU4B3VuaTFGRTkHdW5pMUY2OAd1bmkxRjY5B3VuaTFGNkEHdW5pMUY2Qgd1bmkxRjZDB3VuaTFGNkQHdW5pMUY2RQd1bmkxRjZGB3VuaTFGRkEHdW5pMUZGQgd1bmkxRkZDB3VuaTFGQTgHdW5pMUZBOQd1bmkxRkFBB3VuaTFGQUIHdW5pMUZBQwd1bmkxRkFEB3VuaTFGQUUHdW5pMUZBRgVhbHBoYQRiZXRhBWdhbW1hBWRlbHRhB2Vwc2lsb24EemV0YQNldGEFdGhldGEEaW90YQVrYXBwYQZsYW1iZGEHdW5pMDNCQwJudQJ4aQdvbWljcm9uA3Jobwd1bmkwM0MyBXNpZ21hA3RhdQd1cHNpbG9uA3BoaQNjaGkDcHNpBW9tZWdhCWlvdGF0b25vcwxpb3RhZGllcmVzaXMRaW90YWRpZXJlc2lzdG9ub3MMdXBzaWxvbnRvbm9zD3Vwc2lsb25kaWVyZXNpcxR1cHNpbG9uZGllcmVzaXN0b25vcwxvbWljcm9udG9ub3MKb21lZ2F0b25vcwphbHBoYXRvbm9zDGVwc2lsb250b25vcwhldGF0b25vcwd1bmkwMzcxB3VuaTAzNzMHdW5pMDM3NxlyZXZlcnNlZGx1bmF0ZXNpZ21hc3ltYm9sF2RvdHRlZGx1bmF0ZXNpZ21hc3ltYm9sH3JldmVyc2VkZG90dGVkbHVuYXRlc2lnbWFzeW1ib2wHdW5pMDNEOQd1bmkwM0RCB3VuaTAzREQHdW5pMDNERgd1bmkwM0UxB3VuaTAzRDcHdW5pMDNEMAd1bmkwM0QxB3VuaTAzRDUHdW5pMDNENgd1bmkwM0YwB3VuaTAzRjEHdW5pMDNGMgd1bmkwM0YzB3VuaTAzRjUHdW5pMDNGOAd1bmkwM0ZCB3VuaTAzRkMHdW5pMUYwMAd1bmkxRjAxB3VuaTFGMDIHdW5pMUYwMwd1bmkxRjA0B3VuaTFGMDUHdW5pMUYwNgd1bmkxRjA3B3VuaTFGNzAHdW5pMUY3MQd1bmkxRkI2B3VuaTFGQjAHdW5pMUZCMQd1bmkxRkIzB3VuaTFGQjIHdW5pMUZCNAd1bmkxRjgwB3VuaTFGODEHdW5pMUY4Mgd1bmkxRjgzB3VuaTFGODQHdW5pMUY4NQd1bmkxRjg2B3VuaTFGODcHdW5pMUZCNwd1bmkxRjEwB3VuaTFGMTEHdW5pMUYxMgd1bmkxRjEzB3VuaTFGMTQHdW5pMUYxNQd1bmkxRjcyB3VuaTFGNzMHdW5pMUYyMAd1bmkxRjIxB3VuaTFGMjIHdW5pMUYyMwd1bmkxRjI0B3VuaTFGMjUHdW5pMUYyNgd1bmkxRjI3B3VuaTFGNzQHdW5pMUY3NQd1bmkxRkM2B3VuaTFGQzMHdW5pMUZDMgd1bmkxRkM0B3VuaTFGOTAHdW5pMUY5MQd1bmkxRjkyB3VuaTFGOTMHdW5pMUY5NAd1bmkxRjk1B3VuaTFGOTYHdW5pMUY5Nwd1bmkxRkM3B3VuaTFGMzAHdW5pMUYzMQd1bmkxRjMyB3VuaTFGMzMHdW5pMUYzNAd1bmkxRjM1B3VuaTFGMzYHdW5pMUYzNwd1bmkxRjc2B3VuaTFGNzcHdW5pMUZENgd1bmkxRkQwB3VuaTFGRDEHdW5pMUZEMgd1bmkxRkQzB3VuaTFGRDcHdW5pMUY0MAd1bmkxRjQxB3VuaTFGNDIHdW5pMUY0Mwd1bmkxRjQ0B3VuaTFGNDUHdW5pMUY3OAd1bmkxRjc5B3VuaTFGRTQHdW5pMUZFNQd1bmkxRjUwB3VuaTFGNTEHdW5pMUY1Mgd1bmkxRjUzB3VuaTFGNTQHdW5pMUY1NQd1bmkxRjU2B3VuaTFGNTcHdW5pMUY3QQd1bmkxRjdCB3VuaTFGRTYHdW5pMUZFMAd1bmkxRkUxB3VuaTFGRTIHdW5pMUZFMwd1bmkxRkU3B3VuaTFGNjAHdW5pMUY2MQd1bmkxRjYyB3VuaTFGNjMHdW5pMUY2NAd1bmkxRjY1B3VuaTFGNjYHdW5pMUY2Nwd1bmkxRjdDB3VuaTFGN0QHdW5pMUZGNgd1bmkxRkYzB3VuaTFGRjIHdW5pMUZGNAd1bmkxRkEwB3VuaTFGQTEHdW5pMUZBMgd1bmkxRkEzB3VuaTFGQTQHdW5pMUZBNQd1bmkxRkE2B3VuaTFGQTcHdW5pMUZGNwd1bmkxRkJFB3VuaTAzN0ESY2FuYWRpYW5zeWxsYWJpY3NvEmNhbmFkaWFuc3lsbGFiaWNzYQZ1MUQ1MzkHdW5pMjEwMgd1bmkyMTBEB3VuaTIxMTUHdW5pMjExOQd1bmkyMTFBB3VuaTIxMUQHdW5pMjEyNAl6ZXJvLnplcm8JemVyby5jdjExCXplcm8uY3YxMgl6ZXJvLmN2MTMKdGhyZWUuY3YxNAl6ZXJvLnRvc2YIb25lLnRvc2YIdHdvLnRvc2YKdGhyZWUudG9zZglmb3VyLnRvc2YJZml2ZS50b3NmCHNpeC50b3NmCnNldmVuLnRvc2YKZWlnaHQudG9zZgluaW5lLnRvc2YPdGhyZWUuY3YxNC5kbm9tD3RocmVlLmN2MTQubnVtcg56ZXJvLnplcm8udG9zZg56ZXJvLnRvc2YuY3YxMQ56ZXJvLnRvc2YuY3YxMg56ZXJvLnRvc2YuY3YxMw90aHJlZS50b3NmLmN2MTQOemVyby50b3NmLnplcm8JemVyby5kbm9tCG9uZS5kbm9tCHR3by5kbm9tCnRocmVlLmRub20JZm91ci5kbm9tCWZpdmUuZG5vbQhzaXguZG5vbQpzZXZlbi5kbm9tCmVpZ2h0LmRub20JbmluZS5kbm9tB3VuaTIwODAHdW5pMjA4MQd1bmkyMDgyB3VuaTIwODMHdW5pMjA4NAd1bmkyMDg1B3VuaTIwODYHdW5pMjA4Nwd1bmkyMDg4B3VuaTIwODkJemVyby5udW1yCG9uZS5udW1yCHR3by5udW1yCnRocmVlLm51bXIJZm91ci5udW1yCWZpdmUubnVtcghzaXgubnVtcgpzZXZlbi5udW1yCmVpZ2h0Lm51bXIJbmluZS5udW1yB3VuaTIwNzAHdW5pMDBCOQd1bmkwMEIyB3VuaTAwQjMHdW5pMjA3NAd1bmkyMDc1B3VuaTIwNzYHdW5pMjA3Nwd1bmkyMDc4B3VuaTIwNzkHdW5pMjE1Rgd1bmkyMTUzB3VuaTIxNTQHdW5pMjE1NQd1bmkyMTU2B3VuaTIxNTcHdW5pMjE1OAd1bmkyMTU5B3VuaTIxNUEJb25lZWlnaHRoDHRocmVlZWlnaHRocwtmaXZlZWlnaHRocwxzZXZlbmVpZ2h0aHMPdGhyZWUuZG5vbS5jdjE0DHVuaTIwODMuY3YxNA90aHJlZS5udW1yLmN2MTQMdW5pMDBCMy5jdjE0AkNSB3VuaUZFRkYHdW5pMjAwNwd1bmkyMDA4B3VuaTAwQTAHdW5pMjAwQgpzcGFjZS5mcmFjCnVuaTIwMDcudGYJYW5vdGVsZWlhB3VuaTAzN0UHdW5pMjdFOAd1bmkyN0U5Emh5cGhlbl9oeXBoZW4ubGlnYRZoeXBoZW5fYXNjaWl0aWxkZS5saWdhEmJyYWNlbGVmdF9iYXIubGlnYRRicmFja2V0bGVmdF9iYXIubGlnYRxicmFja2V0cmlnaHRfbnVtYmVyc2lnbi5saWdhEnBlcmlvZF9wZXJpb2QubGlnYRlwZXJpb2RfcGVyaW9kX3BlcmlvZC5saWdhGHBlcmlvZF9wZXJpb2RfZXF1YWwubGlnYRdwZXJpb2RfcGVyaW9kX2xlc3MubGlnYRRwZXJpb2RfcXVlc3Rpb24ubGlnYRBjb2xvbl9jb2xvbi5saWdhFmNvbG9uX2NvbG9uX2NvbG9uLmxpZ2EWY29sb25fY29sb25fZXF1YWwubGlnYRBjb2xvbl9lcXVhbC5saWdhGHNlbWljb2xvbl9zZW1pY29sb24ubGlnYRJleGNsYW1fZXhjbGFtLmxpZ2EZZXhjbGFtX2V4Y2xhbV9wZXJpb2QubGlnYRFleGNsYW1fZXF1YWwubGlnYRdleGNsYW1fZXF1YWxfZXF1YWwubGlnYRRxdWVzdGlvbl9wZXJpb2QubGlnYRZxdWVzdGlvbl9xdWVzdGlvbi5saWdhE3F1ZXN0aW9uX2VxdWFsLmxpZ2EWYXN0ZXJpc2tfYXN0ZXJpc2subGlnYR9hc3Rlcmlza19hc3Rlcmlza19hc3Rlcmlzay5saWdhFWFzdGVyaXNrX2dyZWF0ZXIubGlnYRNhc3Rlcmlza19zbGFzaC5saWdhB3VuaTIwMTYZbnVtYmVyc2lnbl9wYXJlbmxlZnQubGlnYRludW1iZXJzaWduX2JyYWNlbGVmdC5saWdhG251bWJlcnNpZ25fYnJhY2tldGxlZnQubGlnYRVudW1iZXJzaWduX2NvbG9uLmxpZ2EZbnVtYmVyc2lnbl9jb2xvbi5saWdhX3JlbRZudW1iZXJzaWduX2V4Y2xhbS5saWdhGG51bWJlcnNpZ25fcXVlc3Rpb24ubGlnYRVudW1iZXJzaWduX2VxdWFsLmxpZ2EabnVtYmVyc2lnbl91bmRlcnNjb3JlLmxpZ2EkbnVtYmVyc2lnbl91bmRlcnNjb3JlX3BhcmVubGVmdC5saWdhE3NsYXNoX2FzdGVyaXNrLmxpZ2ESc2xhc2hfZ3JlYXRlci5saWdhEHNsYXNoX3NsYXNoLmxpZ2EWc2xhc2hfc2xhc2hfc2xhc2gubGlnYRRzbGFzaF9iYWNrc2xhc2gubGlnYRRiYWNrc2xhc2hfc2xhc2gubGlnYQd1bmkyMDRBD2V4Y2xhbWRvd24uY2FzZRFxdWVzdGlvbmRvd24uY2FzZQxjb2xvbi5jZW50ZXINYXN0ZXJpc2suY3YxNRJwZXJpb2RfaHlwaGVuLmN2MjURY29sb25faHlwaGVuLmN2MjYdYnJhY2tldGxlZnRfYnJhY2tldHJpZ2h0LmN2MjcRcGVyaW9kX2VxdWFsLmN2MzIOcGFyZW5sZWZ0LmRub20PcGFyZW5yaWdodC5kbm9tC2FzdGVyaXNrLmxjDnBhcmVubGVmdC5udW1yD3BhcmVucmlnaHQubnVtcg5oeXBoZW5fZW5kLnNlcRFoeXBoZW5fbWlkZGxlLnNlcRBoeXBoZW5fc3RhcnQuc2VxFmNvbG9uX2VxdWFsX21pZGRsZS5zZXEXZXhjbGFtX2VxdWFsX21pZGRsZS5zZXESbnVtYmVyc2lnbl9lbmQuc2VxFW51bWJlcnNpZ25fbWlkZGxlLnNlcRRudW1iZXJzaWduX3N0YXJ0LnNlcRNzbGFzaF9lcXVhbF9lbmQuc2VxFnNsYXNoX2VxdWFsX21pZGRsZS5zZXEVc2xhc2hfZXF1YWxfc3RhcnQuc2VxGXNsYXNoX3NsYXNoX2VxdWFsX2VuZC5zZXEcc2xhc2hfc2xhc2hfZXF1YWxfbWlkZGxlLnNlcRtzbGFzaF9zbGFzaF9lcXVhbF9zdGFydC5zZXESdW5kZXJzY29yZV9lbmQuc2VxFXVuZGVyc2NvcmVfbWlkZGxlLnNlcRR1bmRlcnNjb3JlX3N0YXJ0LnNlcQ1wZXJpb2Quc3BhY2VyDGNvbG9uLnNwYWNlchBzZW1pY29sb24uc3BhY2VyDWV4Y2xhbS5zcGFjZXIPcXVlc3Rpb24uc3BhY2VyD2FzdGVyaXNrLnNwYWNlchFudW1iZXJzaWduLnNwYWNlcgxzbGFzaC5zcGFjZXIQYmFja3NsYXNoLnNwYWNlcg5iYWNrc2xhc2guc3MwNhZleGNsYW1fYXNjaWl0aWxkZS5zczA3EWV4Y2xhbV9lcXVhbC5zczA4F2V4Y2xhbV9lcXVhbF9lcXVhbC5zczA4CGNvbG9uLnVjG2FzdGVyaXNrX2FzdGVyaXNrLmxpZ2EuY3YxNiRhc3Rlcmlza19hc3Rlcmlza19hc3Rlcmlzay5saWdhLmN2MTYaYXN0ZXJpc2tfZ3JlYXRlci5saWdhLmN2MTYYYXN0ZXJpc2tfc2xhc2gubGlnYS5jdjE2GHNsYXNoX2FzdGVyaXNrLmxpZ2EuY3YxNh5udW1iZXJzaWduX2JyYWNlbGVmdC5saWdhLmN2MjkHdW5pMDBBRAd1bmkyMDE1CmZpZ3VyZWRhc2gHdW5pMkUzQgd1bmkyRTNBDXVuZGVyc2NvcmVkYmwLaHlwaGVuLmNhc2UMdW5pMDBBRC5jYXNlC2VuZGFzaC5jYXNlC2VtZGFzaC5jYXNlCWh5cGhlbi5sYw1oeXBoZW4uc3BhY2VyEXVuZGVyc2NvcmUuc3BhY2VyB3VuaTIwOEQHdW5pMjA4RQd1bmkzMDBDB3VuaTMwMEQHdW5pMjc3MAd1bmkyNzcxB3VuaTIwN0QHdW5pMjA3RQ5wYXJlbmxlZnQuY2FzZQ9wYXJlbnJpZ2h0LmNhc2UOYnJhY2VsZWZ0LmNhc2UPYnJhY2VyaWdodC5jYXNlEGJyYWNrZXRsZWZ0LmNhc2URYnJhY2tldHJpZ2h0LmNhc2UHdW5pRkY2Mgd1bmlGRjYzDmJyYWNlbGVmdC5jdjI5D2JyYWNlcmlnaHQuY3YyOQ5wYXJlbmxlZnQuY3YzMQ9wYXJlbnJpZ2h0LmN2MzEQcGFyZW5sZWZ0LnNwYWNlchBicmFjZWxlZnQuc3BhY2VyEWJyYWNlcmlnaHQuc3BhY2VyEmJyYWNrZXRsZWZ0LnNwYWNlchNicmFja2V0cmlnaHQuc3BhY2VyEmd1aWxsZW1vdGxlZnQuY2FzZRNndWlsbGVtb3RyaWdodC5jYXNlEmd1aWxzaW5nbGxlZnQuY2FzZRNndWlsc2luZ2xyaWdodC5jYXNlB3VuaTAzNzQHdW5pMDM3NQd1bmkwM0Y2C211c2ljYWxub3RlDm11c2ljYWxub3RlZGJsB3VuaTI2MTAHdW5pMjYxMQd1bmkyNjEyB3VuaTI2MjAHdW5pMjYzMAd1bmkyNjMxB3VuaTI2MzIHdW5pMjYzMwd1bmkyNjM0B3VuaTI2MzUHdW5pMjYzNgd1bmkyNjM3B3VuaTI2MzkJc21pbGVmYWNlDGludnNtaWxlZmFjZQNzdW4GZmVtYWxlBG1hbGUFc3BhZGUEY2x1YgVoZWFydAdkaWFtb25kB3VuaTI3MTMSYWNrbm93bGVkZ2Vjb250cm9sB3VuaTIzODcQYmFja3NwYWNlY29udHJvbBhhbXBlcnNhbmRfYW1wZXJzYW5kLmxpZ2EHdW5pMjMwMBNiYXJfYnJhY2VyaWdodC5saWdhFWJhcl9icmFja2V0cmlnaHQubGlnYQxiYXJfYmFyLmxpZ2EQYmFyX2Jhcl9iYXIubGlnYRhiYXJfYmFyX2Jhcl9ncmVhdGVyLmxpZ2EUYmFyX2Jhcl9ncmVhdGVyLmxpZ2EQYmFyX2dyZWF0ZXIubGlnYQd1bmkyMTEzCWVzdGltYXRlZAd1bmkyMTE2C2JlbGxjb250cm9sB3VuaTI0MjMHdW5pMjQyMgd1bmkyMzhCDWNhbmNlbGNvbnRyb2wVY2FycmlhZ2VSZXR1cm5jb250cm9sB3VuaTIzMDMVZGF0YUxpbmtFc2NhcGVjb250cm9sDWRlbGV0ZWNvbnRyb2wUZGVsZXRlRm9ybVR3b2NvbnRyb2wYZGV2aWNlQ29udHJvbEZvdXJjb250cm9sF2RldmljZUNvbnRyb2xPbmVjb250cm9sGWRldmljZUNvbnRyb2xUaHJlZWNvbnRyb2wXZGV2aWNlQ29udHJvbFR3b2NvbnRyb2wTZG9sbGFyX2dyZWF0ZXIubGlnYRJnbG9iZVdpdGhNZXJpZGlhbnMSZW5kT2ZNZWRpdW1jb250cm9sEGVuZE9mVGV4dGNvbnRyb2wYZW5kT2ZUcmFuc21pc3Npb25jb250cm9sHWVuZE9mVHJhbnNtaXNzaW9uQmxvY2tjb250cm9sDmVucXVpcnljb250cm9sDWVzY2FwZWNvbnRyb2wUZmlsZVNlcGFyYXRvcmNvbnRyb2wPZm9ybUZlZWRjb250cm9sFWdyb3VwU2VwYXJhdG9yY29udHJvbAd1bmkyMzg4G2hvcml6b250YWxUYWJ1bGF0aW9uY29udHJvbAVob3VzZQd1bmkyMUVBB3VuaTIzMjcHdW5pMjMyQgd1bmkyMzI2B3VuaTIzQ0YHdW5pMjMyOAd1bmkyMzI1B3VuaTIxREYHdW5pMjFERQd1bmkyMzE4B3VuaTIzQ0UPbGluZUZlZWRjb250cm9sGm5lZ2F0aXZlQWNrbm93bGVkZ2Vjb250cm9sDm5ld2xpbmVjb250cm9sC251bGxjb250cm9sDnBsdXNfcGx1cy5saWdhE3BsdXNfcGx1c19wbHVzLmxpZ2ERcGx1c19ncmVhdGVyLmxpZ2EQZXF1YWxfZXF1YWwubGlnYRZlcXVhbF9lcXVhbF9lcXVhbC5saWdhEmdyZWF0ZXJfZXF1YWwubGlnYRRncmVhdGVyX2dyZWF0ZXIubGlnYRxncmVhdGVyX2dyZWF0ZXJfZ3JlYXRlci5saWdhHmxlc3NfZXhjbGFtX2h5cGhlbl9oeXBoZW4ubGlnYRJsZXNzX2FzdGVyaXNrLmxpZ2EabGVzc19hc3Rlcmlza19ncmVhdGVyLmxpZ2ENbGVzc19iYXIubGlnYRFsZXNzX2Jhcl9iYXIubGlnYRVsZXNzX2Jhcl9iYXJfYmFyLmxpZ2EVbGVzc19iYXJfZ3JlYXRlci5saWdhEGxlc3NfZG9sbGFyLmxpZ2EYbGVzc19kb2xsYXJfZ3JlYXRlci5saWdhDmxlc3NfcGx1cy5saWdhFmxlc3NfcGx1c19ncmVhdGVyLmxpZ2EPbGVzc19lcXVhbC5saWdhEWxlc3NfZ3JlYXRlci5saWdhDmxlc3NfbGVzcy5saWdhE2xlc3NfbGVzc19sZXNzLmxpZ2EUbGVzc19hc2NpaXRpbGRlLmxpZ2EcbGVzc19hc2NpaXRpbGRlX2dyZWF0ZXIubGlnYR9sZXNzX2FzY2lpdGlsZGVfYXNjaWl0aWxkZS5saWdhD2xlc3Nfc2xhc2gubGlnYRdsZXNzX3NsYXNoX2dyZWF0ZXIubGlnYRZhc2NpaXRpbGRlX2h5cGhlbi5saWdhEmFzY2lpdGlsZGVfYXQubGlnYRdhc2NpaXRpbGRlX2dyZWF0ZXIubGlnYRphc2NpaXRpbGRlX2FzY2lpdGlsZGUubGlnYSJhc2NpaXRpbGRlX2FzY2lpdGlsZGVfZ3JlYXRlci5saWdhFmFzY2lpY2lyY3VtX2VxdWFsLmxpZ2EUcGVyY2VudF9wZXJjZW50LmxpZ2EHdW5pMjMwNgd1bmkyMzA1FnJlY29yZFNlcGFyYXRvcmNvbnRyb2wOc2hpZnRJbmNvbnRyb2wPc2hpZnRPdXRjb250cm9sDHNwYWNlY29udHJvbBVzdGFydE9mSGVhZGluZ2NvbnRyb2wSc3RhcnRPZlRleHRjb250cm9sEXN1YnN0aXR1dGVjb250cm9sGHN1YnN0aXR1dGVGb3JtVHdvY29udHJvbBZzeW5jaHJvbm91c0lkbGVjb250cm9sB3VuaTIxOEIHdW5pMjE4QQZ1MUYxQUQUdW5pdFNlcGFyYXRvcmNvbnRyb2wZdmVydGljYWxUYWJ1bGF0aW9uY29udHJvbAhiYXIuY3YzMAlwbHVzLmRub20KbWludXMuZG5vbQplcXVhbC5kbm9tCXBsdXMubnVtcgptaW51cy5udW1yCmVxdWFsLm51bXISYmFyX2h5cGhlbl9lbmQuc2VxFWJhcl9oeXBoZW5fbWlkZGxlLnNlcRRiYXJfaHlwaGVuX3N0YXJ0LnNlcRZiYXJfYmFyX2h5cGhlbl9lbmQuc2VxGWJhcl9iYXJfaHlwaGVuX21pZGRsZS5zZXEYYmFyX2Jhcl9oeXBoZW5fc3RhcnQuc2VxFWJhcl9iYXJfZXF1YWxfZW5kLnNlcRhiYXJfYmFyX2VxdWFsX21pZGRsZS5zZXEXYmFyX2Jhcl9lcXVhbF9zdGFydC5zZXERYmFyX2VxdWFsX2VuZC5zZXEUYmFyX2VxdWFsX21pZGRsZS5zZXETYmFyX2VxdWFsX3N0YXJ0LnNlcRliYXJfdW5kZXJzY29yZV9taWRkbGUuc2VxDWVxdWFsX2VuZC5zZXEQZXF1YWxfbWlkZGxlLnNlcQ9lcXVhbF9zdGFydC5zZXEWZ3JlYXRlcl9oeXBoZW5fZW5kLnNlcRlncmVhdGVyX2h5cGhlbl9taWRkbGUuc2VxGGdyZWF0ZXJfaHlwaGVuX3N0YXJ0LnNlcRVncmVhdGVyX2VxdWFsX2VuZC5zZXEYZ3JlYXRlcl9lcXVhbF9taWRkbGUuc2VxF2dyZWF0ZXJfZXF1YWxfc3RhcnQuc2VxHmdyZWF0ZXJfZ3JlYXRlcl9oeXBoZW5fZW5kLnNlcSFncmVhdGVyX2dyZWF0ZXJfaHlwaGVuX21pZGRsZS5zZXEgZ3JlYXRlcl9ncmVhdGVyX2h5cGhlbl9zdGFydC5zZXEdZ3JlYXRlcl9ncmVhdGVyX2VxdWFsX2VuZC5zZXEgZ3JlYXRlcl9ncmVhdGVyX2VxdWFsX21pZGRsZS5zZXEfZ3JlYXRlcl9ncmVhdGVyX2VxdWFsX3N0YXJ0LnNlcRNsZXNzX2h5cGhlbl9lbmQuc2VxFmxlc3NfaHlwaGVuX21pZGRsZS5zZXEVbGVzc19oeXBoZW5fc3RhcnQuc2VxEmxlc3NfZXF1YWxfZW5kLnNlcRVsZXNzX2VxdWFsX21pZGRsZS5zZXEUbGVzc19lcXVhbF9zdGFydC5zZXEYbGVzc19sZXNzX2h5cGhlbl9lbmQuc2VxG2xlc3NfbGVzc19oeXBoZW5fbWlkZGxlLnNlcRpsZXNzX2xlc3NfaHlwaGVuX3N0YXJ0LnNlcRdsZXNzX2xlc3NfZXF1YWxfZW5kLnNlcRpsZXNzX2xlc3NfZXF1YWxfbWlkZGxlLnNlcRlsZXNzX2xlc3NfZXF1YWxfc3RhcnQuc2VxCWF0LnNwYWNlchBhbXBlcnNhbmQuc3BhY2VyCmJhci5zcGFjZXISZ3JlYXRlcl9lcXVhbC5zczAyD2xlc3NfZXF1YWwuc3MwMg5hbXBlcnNhbmQuc3MwMwdhdC5zczA1FWVxdWFsX2FzY2lpdGlsZGUuc3MwNxBlcXVhbF9lcXVhbC5zczA4FmVxdWFsX2VxdWFsX2VxdWFsLnNzMDgXbGVzc19hc3Rlcmlzay5saWdhLmN2MTYfbGVzc19hc3Rlcmlza19ncmVhdGVyLmxpZ2EuY3YxNhlwZXJjZW50X3BlcmNlbnQubGlnYS5jdjE4EWJhcl9iYXIubGlnYS5jdjMwFWJhcl9iYXJfYmFyLmxpZ2EuY3YzMBhkb2xsYXJfZ3JlYXRlci5saWdhLnNzMDQVbGVzc19kb2xsYXIubGlnYS5zczA0HWxlc3NfZG9sbGFyX2dyZWF0ZXIubGlnYS5zczA0F2Jhcl9oeXBoZW5fZW5kLnNlcS5jdjMwGmJhcl9oeXBoZW5fbWlkZGxlLnNlcS5jdjMwGWJhcl9oeXBoZW5fc3RhcnQuc2VxLmN2MzAbYmFyX2Jhcl9oeXBoZW5fZW5kLnNlcS5jdjMwHmJhcl9iYXJfaHlwaGVuX21pZGRsZS5zZXEuY3YzMB1iYXJfYmFyX2h5cGhlbl9zdGFydC5zZXEuY3YzMBpiYXJfYmFyX2VxdWFsX2VuZC5zZXEuY3YzMB1iYXJfYmFyX2VxdWFsX21pZGRsZS5zZXEuY3YzMBxiYXJfYmFyX2VxdWFsX3N0YXJ0LnNlcS5jdjMwFmJhcl9lcXVhbF9lbmQuc2VxLmN2MzAZYmFyX2VxdWFsX21pZGRsZS5zZXEuY3YzMBhiYXJfZXF1YWxfc3RhcnQuc2VxLmN2MzAeYmFyX3VuZGVyc2NvcmVfbWlkZGxlLnNlcS5jdjMwFWFtcGVyc2FuZC5iZWZvcmUuc3MwMwd1bmkyMEFGBEV1cm8HdW5pMjBCQQd1bmkyMEJEB3VuaTIwQjkNZG9sbGFyLnNwYWNlcgtkb2xsYXIuc3MwNAd1bmkyMjRBB3VuaTIyNDYHdW5pMjJBNgxhc3Rlcmlza21hdGgHdW5pMjI0Mwd1bmkyMjM1B3VuaTIyMTkJY29uZ3J1ZW50B3VuaTIyMEQHdW5pMjNBQQd1bmkyMjE1B3VuaTIyQUUHdW5pMjJBQwd1bmkyMkFCB2VsZW1lbnQHdW5pMjIwQQd1bmkyMjBFDmVxdWFsc2luZmVyaW9yB3VuaTIwN0MLZXF1aXZhbGVuY2ULZXhpc3RlbnRpYWwHdW5pMjJBOQhncmFkaWVudAppbnRlZ3JhbGJ0CmludGVncmFsdHAHdW5pMjNBOQd1bmkyM0E4B3VuaTIzQTcHdW5pMjNBMgd1bmkyM0EzB3VuaTIzQTEHdW5pMjA4Qgd1bmkyMDdCB3VuaTIyNDIHdW5pMjJBNwd1bmkyMkFGB3VuaTIyNDcHdW5pMjI4OAd1bmkyMjg5B3VuaTIyNDkHdW5pMjI0NAd1bmkyMjBDCm5vdGVsZW1lbnQHdW5pMjI2Mgd1bmkyMjQxCW5vdHN1YnNldAd1bmkyMjg1B3VuaTIyQUQIZW1wdHlzZXQKbG9naWNhbGFuZAlsb2dpY2Fsb3IMaW50ZXJzZWN0aW9uBXVuaW9uB3VuaTIyMDYHdW5pMDBCNQd1bmkyMzlDB3VuaTIzOUQHdW5pMjM5Qgd1bmkyMzlGB3VuaTIzQTAHdW5pMjM5RQd1bmkyMDhBB3VuaTIwN0EHdW5pMjIzNwd1bmkyMjM2DHJlZmxleHN1YnNldA5yZWZsZXhzdXBlcnNldA1yZXZsb2dpY2Fsbm90B3VuaTIzQUQHdW5pMjNBQwd1bmkyM0FCB3VuaTIzQTUHdW5pMjNBNgd1bmkyM0E0B3VuaTIyQTIMcHJvcGVyc3Vic2V0B3VuaTIyOEEIc3VjaHRoYXQOcHJvcGVyc3VwZXJzZXQHdW5pMjI4Qgd1bmkyMkE0B3VuaTIyQTMHdW5pMjIwNAl0aGVyZWZvcmUHdW5pMjI0Qgd1bmkyMkFBB3VuaTIyQTgJdW5pdmVyc2FsB3VuaTIyQTUNaW5maW5pdHkuY2FzZQ5ncmVhdGVyLmNlbnRlcgtsZXNzLmNlbnRlchFhc3Rlcmlza21hdGguY3YxNQ9hc2NpaXRpbGRlLmN2MTcMcGVyY2VudC5jdjE4EHBlcnRob3VzYW5kLmN2MTgHdW5pMjI5Qw9hc3Rlcmlza21hdGgubGMHcGx1cy5sYwtwbHVzLnNwYWNlcgxlcXVhbC5zcGFjZXIOZ3JlYXRlci5zcGFjZXILbGVzcy5zcGFjZXIRYXNjaWl0aWxkZS5zcGFjZXISYXNjaWljaXJjdW0uc3BhY2VyDnBlcmNlbnQuc3BhY2VyB2Fycm93dXAHdW5pMjE5NwphcnJvd3JpZ2h0B3VuaTIxOTgJYXJyb3dkb3duB3VuaTIxOTkJYXJyb3dsZWZ0B3VuaTIxOTYJYXJyb3dib3RoC2Fycm93dXBkb3duB3VuaTIxRTQHdW5pMjFFNQd1bmkyMUE5B3VuaTIxQUEHdW5pMjFCMAd1bmkyMUIxB3VuaTIxQjIHdW5pMjFCMwd1bmkyN0YyB3VuaTI3RjMHdW5pMjFFNwd1bmkyMUU4B3VuaTIxRTkHdW5pMjFFNgd1bmkyMzA0B3VuaTIzMjQHdW5pMkIwNgd1bmkyQjA3B3VuaTJCMDUHdW5pMjdGMAd1bmkyN0YxB3VuaTI3RjQHdW5pMjdGNQd1bmkyN0Y2B3VuaTI3RjcHdW5pMjdGOAd1bmkyN0Y5B3VuaTI3RkEHdW5pMjdGQgd1bmkyN0ZDB3VuaTI3RkQHdW5pMjdGRQd1bmkyN0ZGD2JsYWNrUmlnaHRBcnJvdwd1bmkyNTgxB3VuaTI1ODIHdW5pMjU4Mwlkb3duQmxvY2sHdW5pMjU4NQd1bmkyNTg2B3VuaTI1ODcFYmxvY2sHdXBCbG9jawd1bmkyNTk0B3VuaTI1OEYHdW5pMjU4RQd1bmkyNThEB2xmYmxvY2sHdW5pMjU4Qgd1bmkyNThBB3VuaTI1ODkHcnRibG9jawd1bmkyNTk1EXF1YWRyYW50TG93ZXJMZWZ0EnF1YWRyYW50TG93ZXJSaWdodBFxdWFkcmFudFVwcGVyTGVmdCpxdWFkcmFudFVwcGVyTGVmdEFuZExvd2VyTGVmdEFuZExvd2VyUmlnaHQecXVhZHJhbnRVcHBlckxlZnRBbmRMb3dlclJpZ2h0KnF1YWRyYW50VXBwZXJMZWZ0QW5kVXBwZXJSaWdodEFuZExvd2VyTGVmdCtxdWFkcmFudFVwcGVyTGVmdEFuZFVwcGVyUmlnaHRBbmRMb3dlclJpZ2h0EnF1YWRyYW50VXBwZXJSaWdodB5xdWFkcmFudFVwcGVyUmlnaHRBbmRMb3dlckxlZnQrcXVhZHJhbnRVcHBlclJpZ2h0QW5kTG93ZXJMZWZ0QW5kTG93ZXJSaWdodAdsdHNoYWRlBXNoYWRlB2Rrc2hhZGUHdW5pMjVDRgZjaXJjbGUHdW5pMjVFRgd1bmkyNUQwB3VuaTI1RDEHdW5pMjVEMgd1bmkyNUQzB3VuaTI1RDYHdW5pMjVENwd1bmkyNUQ1B3VuaTI1RjQHdW5pMjVGNQd1bmkyNUY2B3VuaTI1RjcHdW5pMjVDOQd1bmkyNUNFCWludmNpcmNsZQd1bmkyNURBB3VuaTI1REIHdW5pMjVFMAd1bmkyNUUxB3VuaTI1REMHdW5pMjVERAd1bmkyNURFB3VuaTI1REYHdW5pMjVDNgd1bmkyNUM3B3VuaTI1QUUKZmlsbGVkcmVjdAd1bmkyNUFEB3VuaTI1QUYHdW5pMjUwQwd1bmkyNTE0B3VuaTI1MTAHdW5pMjUxOAd1bmkyNTNDB3VuaTI1MkMHdW5pMjUzNAd1bmkyNTFDB3VuaTI1MjQHdW5pMjUwMAd1bmkyNTAyB3VuaTI1NjEHdW5pMjU2Mgd1bmkyNTU2B3VuaTI1NTUHdW5pMjU2Mwd1bmkyNTUxB3VuaTI1NTcHdW5pMjU1RAd1bmkyNTVDB3VuaTI1NUIHdW5pMjU1RQd1bmkyNTVGB3VuaTI1NUEHdW5pMjU1NAd1bmkyNTY5B3VuaTI1NjYHdW5pMjU2MAd1bmkyNTUwB3VuaTI1NkMHdW5pMjU2Nwd1bmkyNTY4B3VuaTI1NjQHdW5pMjU2NQd1bmkyNTU5B3VuaTI1NTgHdW5pMjU1Mgd1bmkyNTUzB3VuaTI1NkIHdW5pMjU2QQlmaWxsZWRib3gHdW5pMjVBMR13aGl0ZVNxdWFyZVdpdGhSb3VuZGVkQ29ybmVycwd1bmkyNUEzB3VuaTI1QTQHdW5pMjVBNQd1bmkyNUE2B3VuaTI1QTcHdW5pMjVBOAd1bmkyNUE5B3VuaTI1QUEHdW5pMjVBQgd1bmkyNUU3B3VuaTI1RTgHdW5pMjVFOQd1bmkyNUVBB3VuaTI1RUIgd2hpdGVTcXVhcmVXaXRoVXBwZXJMZWZ0UXVhZHJhbnQgd2hpdGVTcXVhcmVXaXRoTG93ZXJMZWZ0UXVhZHJhbnQhd2hpdGVTcXVhcmVXaXRoTG93ZXJSaWdodFF1YWRyYW50IXdoaXRlU3F1YXJlV2l0aFVwcGVyUmlnaHRRdWFkcmFudA90cmlhZ3VwVHJpYW5nbGUHdW5pMjVCNgx0cmlhbmdsZWRvd24HdW5pMjVDMA10cmlhbmdsZXJpZ2h0B3RyaWFnbGYXYmxhY2tVcHBlclJpZ2h0VHJpYW5nbGUXYmxhY2tMb3dlclJpZ2h0VHJpYW5nbGUWYmxhY2tMb3dlckxlZnRUcmlhbmdsZRZibGFja1VwcGVyTGVmdFRyaWFuZ2xlB3VuaTI1MzAHdW5pMjUxMgd1bmkyNTI3B3VuaTI1MEUHdW5pMjUxRgd1bmkyNTQxB3VuaTI1MkYHdW5pMjUxMQd1bmkyNTI5B3VuaTI1MEQHdW5pMjUyMQd1bmkyNTQ3B3VuaTI1NEQHdW5pMjU0Rgd1bmkyNTdCB3VuaTI1MzMHdW5pMjUxMwd1bmkyNTBGB3VuaTI1MDEHdW5pMjU3OAd1bmkyNTdFB3VuaTI1MDkHdW5pMjUwQgd1bmkyNTdBB3VuaTI1MDUHdW5pMjUwNwd1bmkyNTc5B3VuaTI1M0IHdW5pMjUxQgd1bmkyNTdGB3VuaTI1MTcHdW5pMjUwMwd1bmkyNTRCB3VuaTI1MkIHdW5pMjUyMwd1bmkyNTQ1B3VuaTI1MkQHdW5pMjUzNQd1bmkyNTNEB3VuaTI1MzIHdW5pMjUzQQd1bmkyNTRBB3VuaTI1NDMHdW5pMjU3Mwd1bmkyNTcyB3VuaTI1NzEHdW5pMjU0Qwd1bmkyNTRFB3VuaTI1NzcHdW5pMjU3NAd1bmkyNTdDB3VuaTI1MDgHdW5pMjUwQQd1bmkyNTc2B3VuaTI1MDQHdW5pMjUwNgd1bmkyNTc1B3VuaTI1N0QHdW5pMjU0Ngd1bmkyNTJFB3VuaTI1MzYHdW5pMjUzRQd1bmkyNTMxB3VuaTI1MzkHdW5pMjU0OQd1bmkyNTQ0B3VuaTI1NDAHdW5pMjUzOAd1bmkyNTI2B3VuaTI1MUEHdW5pMjUxRQd1bmkyNTE2B3VuaTI1NDgHdW5pMjUzNwd1bmkyNTJBB3VuaTI1MTkHdW5pMjUyMgd1bmkyNTE1B3VuaTI1NDIHdW5pMjUyOAd1bmkyNTIwB3VuaTI1M0YHdW5pMjUyNQd1bmkyNTFEB3VuaTI1NkQHdW5pMjU2RQd1bmkyNTZGB3VuaTI1NzAHdW5pRkZGRAd1bmkwMzQyB3VuaTAzNDUFdG9ub3MKdG9ub3MuY2FzZQ1kaWVyZXNpc3Rvbm9zB3VuaTFGQkYHdW5pMUZCRAd1bmkxRkZFB3VuaTFGQ0QHdW5pMUZERAd1bmkxRkNFB3VuaTFGREUHdW5pMUZDRgd1bmkxRkRGB3VuaTFGRUQHdW5pMUZFRQd1bmkxRkMxB3VuaTFGRUYMdW5pMUZFRi5jYXNlB3VuaTFGRkQMdW5pMUZGRC5jYXNlB3VuaTFGQzAHdW5pMDMwOAd1bmkwMzA3CWdyYXZlY29tYglhY3V0ZWNvbWIHdW5pMDMwQgd1bmkwMzAyB3VuaTAzMEMHdW5pMDMwNgd1bmkwMzBBCXRpbGRlY29tYgd1bmkwMzA0B3VuaTAzMDUHdW5pMDMwRgd1bmkwMzEzB3VuaTAzMTQHdW5pMDMyNgd1bmkwMzI3EnN0cm9rZXNob3J0b3ZlcmxheRFzdHJva2Vsb25nb3ZlcmxheQd1bmkwMkM5CWNhcm9uLmFsdAx1bmkwMzI2LmNhc2UNZGllcmVzaXMuY2FzZQ5kb3RhY2NlbnQuY2FzZQpncmF2ZS5jYXNlCmFjdXRlLmNhc2URaHVuZ2FydW1sYXV0LmNhc2UPY2lyY3VtZmxleC5jYXNlCmNhcm9uLmNhc2UKYnJldmUuY2FzZQlyaW5nLmNhc2UKdGlsZGUuY2FzZQttYWNyb24uY2FzZQxjZWRpbGxhLmNhc2UNYWN1dGUubG9jbFBMSxJhY3V0ZS5jYXNlLmxvY2xQTEsHdW5pMDJCQwd1bmkwMkJBB3VuaTAyQjkGdTFGMTBEBnUxRjEwRQZ1MUYxMEYGdTFGMTZEBnUxRjE2RQZ1MUYxNkYHdW5pRTAwMAd1bmlFMDAxB3VuaUUwMDIHdW5pRTAwMwd1bmlFMEEwB3VuaUUwQTEHdW5pRTBBMgd1bmlFMEIwB3VuaUUwQjEHdW5pRTBCMgd1bmlFMEIzB3VuaUVFMDAHdW5pRUUwMQd1bmlFRTAyB3VuaUVFMDMHdW5pRUUwNAd1bmlFRTA1B3VuaUVFMDYHdW5pRUUwNwd1bmlFRTA4B3VuaUVFMDkHdW5pRUUw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I7YjtiO2I7YjtiO2JA4jtiO2I7YjtiO2JA4jtgm6CboJugm6CZwJnAmcCZwJpgmcCZwJnAmcCZwHzgfOB84HzgfOI7YjtiO2I7YjtiQOI7YjtiO2I7YjtgfYB9gH2AfYB9gJGAfYB9gH2AfYB9gH2AfYB9gH2AfYCRgH2AfYB9gH2AfYB+wH7AfsB+wH7AfiB+wH7AfsB+wH7Af2B/YH9gf2B/YH9ggACAAIAAgACAAIAAmSCZIJkgmSCZIJkggQCBAIEAgQCBAIEAluI6YjtgkOCboIIAwkCCoioiKiIqIKGgoaChoKGgg0IqIiogrsCuwK7CKiCJoioiKiIqIioghyCHIioiKiIqIioiKiIqIOmApOCK4IriKiIqIIuCKiIqIioiKiIqIioghEIqIIpCKiIqIKECKiIqIioiKiIqIioiKiIqIioghOIqIioghYCGIiogiaCHIiogh8IqIioiKiDpgKTguwC7AioiKiCLgIuCKiIqIioiKiIqIioiKiCLgioiKiCIYK7AiQCJAiogiaIqIioiKiIqIiogikCK4IrgiuCLgiogjCCMwioiKiIqIioiKiIqIiogjWIqIioiKiIqIioiKiIqII4CKiIqIioiKiIqIioiKiCZwOvAjqCOoI6gjqCPQjtiO2CboJugkEI7YJUCO2I7YjtglaCVojtiO2I7YjtiO2CW4jtiO2I7YOvCO2CX4jtiO2I7YjtiO2I7YJDiO2DqIJGAwkDrwjtiO2DrwjtgkiI7YjtiO2I7YjtgksI7YJ6Ak2CUAJUAlaI7YJZCO2I7YJbiO2I7YjtiO2I7YJdAl+DrwJiAmSI7YjtiO2CZwJpgmwCboJxAnOJA4J2CO2JA4kDgnoCfIJ/CO2JA4jtgoGJA4jtiO2I7YOvA68I7YjtiO2I7YjtiO2I7YjtiO2I7YjtiO2I7YjtiO2I7YjtiO2ChAioiKiChoiogrsCioioiKiIqIKNCKiCkQioiKiIqIioiKiCk4LsCKiIqIioiKiIqIK7CKiIqIioguwIqIioguwIqIioiKiIqIiogpYIqIiogpiCmIKYiKiIqIioiKiIqIioiKiCmwKggqMCpwKrAq8CswK3CKiIqIioiKiIqIKbAqCCowKnAqsCrwKzArcCuwK7ArsCuwK7ArsCuwK7CKiIqIioiKiIqIioiKiIqIioiKiIqIioiKiIqIioiKiIqIioiKiIqIK9gsACxAioiKiIqIioiKiIqIioiKiIqILIAswC0ALUAtgIqIioiKiC3ALgAuQC6ALsAuwC7ALsCKiC7oLygvaC+oL+iKiIqIioiKiIqIiogu6C8oL2gvqC/oioiKiDD4OvCO2DrwNEA68DRoOvA4SI7YOvCO2I7YOvCO2I7YMECO2I7YjtiO2I7YjtiO2I7YOEgwaDhIjtiQOI7YjtiO2DD4NEA0aI7YjtiO2I7YjtiO2I7YOvA68I7YOvCO2I7YjtiO2DCQjtg68I7YMLgxcDGYMcAyADIoMmgyqDLQMPgw+DD4MPgw+DD4MSAxSDFwMZgxwDIAMigyaDKoMtAy+DMgM0gzcDOYM8A0ADRANEA0+DU4NWA1iDWwNfA2MDZYNGg0aDRoNGg0kDTQNPg1ODVgNYg1sDXwNjA2WDaANsA3ADcoN1A3eDe4N/g4IDhIOEg4SDhIOEg4SDhIOEg42DkAOSg5aDmQOdCO2I7YOHA4mDjYOQA5KDloOZA50Dn4OjiO2I7YjtiO2I7YjtiO2I7YONg5ADkoOWg5kDnQOfg6OI7YjtiO2I7YPSg9UDjYOQA5KDloOZA50Dn4OjiP4IqIOmCKiDqIOrA62DrwOxiMEIqIOxiMEDtAO2g7kDu4O/g8ODyQPOg9KD1QkDgADAjUFXhnQHIwAAwJGBV4AChyCAAAALoAAAAMBagVeB4AccgADAV0FXgAKHGgAAAA2gAAAAwIkBcMYSBmcAAMCaQXDGf4ZkgADAuQFwwAAGYgAAwJGBBoZVBw6AAMCYgQaG+YcMAADAeIFGBw+AAAAAwJHBBoFYBwcAAMCXAQaHAwcEgADApsFbgA4HDYAAwKbBBoALhv+AAMCYwXDBEIZOAADAmMFwwAKGS4AAAAUgAAAAwKbBcMAChkeAAAAC4AAAAMCmAQaGh4bygADAhcFXhmWG8AAAwMDBV4AChu2AAAADYAAAAMCYAVeG6YbpgADAjcFXhliG5wAAwI9BV4ZkhuSAAMB+Qe3AAobzAAAAAqAAAADAnwFXht4G3gAAwJjBV4XnBtuAAMC2QVeFyQbZAADAksFXhkgG3IAAwJZBV4ZJhtQAAMCSQViFwYAAAADAmwFXgAAGzwAAwJFBV4YpBsyAAMC/gVeGRgbKAADAjAFXhrUGx4AAwKUBV4AABsUAAMCbgVe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AAARegAAEXoAABF6AAAQoAAAEXoAABF6AAAOcAAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAADv4AAA7+AAAO/gAADv4AAA7+AAAO/gAAEXoPMg3KDdQN3g3oEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAAA3yAAAReg8yEXoPMhF6DzIRegAADfwAAA38AAARegAADxQPHg8UDx4PFA8eDxQPHg8UDx4PFA8eEXoAAA5WAAAOVgAADgYAAA5WAAAOVgAADlYAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAAQgAAAEXoAAA5cAAAOXAAADlwAAA5cAAAO6gAADuoAAA7qAAAO6gAADuoAAA7qAAAOFg8yDhYPMg4WDzIOFg8yDhYPMhF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAADiYAAA4mAAAOJgAADiYAAA4mAAAOJgAADiYAAA4mAAAOJgAADiYAAA4mAAAReg8eEXoPHhF6Dx4Reg8eEXoPHhF6Dx4ONg8eDjYPHg42Dx4ONg8eDjYPHg42Dx4PFA8eDxQPHg8UDx4PFA8eDxQPHg8UDx4ORg8eDkYPHg5GDx4ORg8eDkYPHg5GDx4O/gAADlYAABF6AAAO6gAAEXoAAA5cAAARegAADxQPHg+QAAARegAAEXoAAA88AAAPPAAADzwAAA88AAAOZgAAEIAAABCAAAAPqgAAD6oAAA+qAAARegAADpQAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoPvhF6AAARegAAEXoAABCgAAAQkA++EXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAAA5wAAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEIAAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAADpQAABF6AAARegAADnoOhBCAAAARegAAEIAAABCgAAAQkA++EXoAABF6AAARegAAEIAAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAAQgAAAEXoPvhF6AAAPkAAAD5AAABF6AAAPqgAAEXoAABF6AAARegAADpQAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAADp4AAA6uAAARegAAEXoAABF6AAARegAAEIAAABF6AAARegAADrgAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAAOwgAAEIAAABCAAAARegAAEXoAABF6D74QgAAAEIAAABF6AAARegAADswAAA7MAAAOzAAADswAAA7WAAAQgAAAEIAAABF6AAARegAAEXoAABF6AAAPKAAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAAA7+AAARegAAEIAAABF6AAARegAADuAAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAAO6gAAEXoAABF6AAARegAAEXoPMhF6AAARegAAEIAAABCQAAARegAAEXoAABF6AAARegAAEXoAABF6AAAQgAAAEXoAABF6AAAPKAAAEXoAABF6AAAO9AAAEIAAABCAAAAO/gAAEXoAABCAAAAQgAAAEXoAABCAAAAPBAAAEXoAABF6AAAPCgAADxQPHhF6AAAQgAAAEIAAABF6AAARegAAEXoAABF6AAAPKAAAEXoAABF6AAARegAAEXoAABF6AAARegAAEIAAABCAAAARegAAEXoPMhF6AAARegAAEIAAABF6AAARegAAEXoAABF6AAARegAAEIAAABF6AAARegAAEXoAABF6AAAQgAAAEIAAABF6AAAQgAAAEIAAABCAAAARegAAD5AAABF6AAAPPAAAEXoAAA+qAAARegAAEXoPvhF6AAARegAAD0wAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAAQkA++EXoAABF6AAARegAAEXoAAA/YAAAPkAAAD6oAABF6D74RegAAEXoAABF6AAAP2AAAEXoAABF6AAARegAAEXoAABF6AAAQgAAAD1YAABF6AAARegAAEIAAABF6AAARegAAEXoPYBF6AAAReg+AEXoPcBF6D4APkAAAD5AAAA+QAAAPkAAAD5AAAA+QAAAPkAAAD5AAAA+QAAAPkAAAD5AAAA+QAAAPmgAAD5oAAA+aAAAPmgAAD5oAAA+aAAAPmgAAD5oAAA+aAAAPqgAAD6oAAA+qAAAPqgAAD6oAAA+qAAAPqgAAD6oAABF6D74Reg++EXoPvhF6D74Reg++EXoPvhF6D74Reg++EXoPvhF6D74PtA++D7QPvg+0D74PtA++D7QPvg+0D74PtA++D7QPvg+0D74RegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAAA/YAAAPyAAAD9gAAA/YAAAP2AAAD9gAAA/YAAAP2AAAD9gAAA/YAAAP7AAAD+wAAA/iAAAP7AAAD+wAAA/sAAAP7AAAD+wAAA/sAAAQPAAAEIAAABCAAAARegAAEFYAABCAAAAQZgAAEXoAABF6AAARegAAEXoAABCAAAARegAAEIAAABF6AAARegAAEIAAABCAAAARegAAEXoAABF6AAAQgAAAEIAAABCAAAAQkAAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABCQAAAQPAAAEFYAABBmAAARegAAEIAAABF6AAAAABAGEXoP9gAAEAYQgAAAEIAAABCAAAARegAAEIAAABCAAAARegAAEXoAABF6AAAQgAAAEXoQFhF6AAAQgAAAEIAAABAsAAAQPAAAEDwAABA8AAAQPAAAEDwAABA8AAAQPAAAEDwAABA8AAAQPAAAEDwAABA8AAAQPAAAEEYAABBGAAAQRgAAEEYAABBGAAAQRgAAEEYAABBGAAAQRgAAEEYAABBGAAAQRgAAEFYAABBWAAAQVgAAEFYAABBWAAAQVgAAEFYAABBWAAAQZgAAEGYAABBmAAAQZgAAEGYAABBmAAAQZgAAEGYAABBmAAAQZgAAEGYAABBwAAAQcAAAEHAAABBwAAAQcAAAEHAAABBwAAAQcAAAEHAAABBwAAAQcAAAEHAAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABF6AAARegAAEXoAABCA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ADYANwA4ADkAOgA7ADwAPQA+AD8AQABBAEIAQwAA//8AOwAAAAEAAgADAAQABQAGAAcACAAJAAoACwAMAA0ADgAPABAAEQASABMAFAAVABYAFwAYABkAGgAbABwAHQAeAB8AIAAhACIAIwAkACUAJgAoADEAMgAzADQANQA2ADcAOAA5ADoAOwA8AD0APgA/AEAAQQBCAEMAAP//ADsAAAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0AHgAfACAAIQAiACMAJAAlACYAKQAxADIAMwA0ADUANgA3ADgAOQA6ADsAPAA9AD4APwBAAEEAQgBDAAD//wA7AAAAAQACAAMABAAFAAYABwAIAAkACgALAAwADQAOAA8AEAARABIAEwAUABUAFgAXABgAGQAaABsAHAAdAB4AHwAgACEAIgAjACQAJQAmACoAMQAyADMANAA1ADYANwA4ADkAOgA7ADwAPQA+AD8AQABBAEIAQwAA//8AOwAAAAEAAgADAAQABQAGAAcACAAJAAoACwAMAA0ADgAPABAAEQASABMAFAAVABYAFwAYABkAGgAbABwAHQAeAB8AIAAhACIAIwAkACUAJgArADEAMgAzADQANQA2ADcAOAA5ADoAOwA8AD0APgA/AEAAQQBCAEMAAP//ADsAAAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0AHgAfACAAIQAiACMAJAAlACYALAAxADIAMwA0ADUANgA3ADgAOQA6ADsAPAA9AD4APwBAAEEAQgBDAAD//wA7AAAAAQACAAMABAAFAAYABwAIAAkACgALAAwADQAOAA8AEAARABIAEwAUABUAFgAXABgAGQAaABsAHAAdAB4AHwAgACEAIgAjACQAJQAmAC0AMQAyADMANAA1ADYANwA4ADkAOgA7ADwAPQA+AD8AQABBAEIAQwAA//8AOwAAAAEAAgADAAQABQAGAAcACAAJAAoACwAMAA0ADgAPABAAEQASABMAFAAVABYAFwAYABkAGgAbABwAHQAeAB8AIAAhACIAIwAkACUAJgAuADEAMgAzADQANQA2ADcAOAA5ADoAOwA8AD0APgA/AEAAQQBCAEMAAP//ADsAAAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0AHgAfACAAIQAiACMAJAAlACYALwAxADIAMwA0ADUANgA3ADgAOQA6ADsAPAA9AD4APwBAAEEAQgBDAAD//wA7AAAAAQACAAMABAAFAAYABwAIAAkACgALAAwADQAOAA8AEAARABIAEwAUABUAFgAXABgAGQAaABsAHAAdAB4AHwAgACEAIgAjACQAJQAmADAAMQAyADMANAA1ADYANwA4ADkAOgA7ADwAPQA+AD8AQABBAEIAQwAEAAAAAP//ADoAAAABAAIAAwAEAAUABgAHAAgACQAKAAsADAANAA4ADwAQABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0AHgAfACAAIQAiACMAJAAlACYAMQAyADMANAA1ADYANwA4ADkAOgA7ADwAPQA+AD8AQABBAEIAQwBEYWFsdAGaY2FsdAGiY2FzZQJwY2NtcAJ2Y3YwMQJ+Y3YwMgKEY3YwMwKKY3YwNAKQY3YwNQKWY3YwNgKcY3YwNwKiY3YwOAKoY3YwOQKuY3YxMAK0Y3YxMQK6Y3YxMgLAY3YxMwLGY3YxNALMY3YxNQLSY3YxNgLYY3YxNwLeY3YxOALkY3YxOQLqY3YyMALwY3YyMQL2Y3YyMgL8Y3YyMwMCY3YyNAMIY3YyNQMOY3YyNgMUY3YyNwMaY3YyOAMgY3YyOQMmY3YzMAMsY3YzMQMyY3YzMgM4ZG5vbQM+ZnJhYwNEaHdpZANObG9jbANUbG9jbANabG9jbANgbG9jbANmbG9jbANsbG9jbANybG9jbAN4bG9jbAN+bG9jbAOEbG9jbAOKbnVtcgOQb251bQOWb3JkbgOcc2FsdAOkc2luZgOqc3MwMQOwc3MwMgO2c3MwMwO8c3MwNAPEc3MwNQPKc3MwNgPSc3MwNwPYc3MwOAPgc3MwOQPmc3MxMAPyc3VicwQCc3VwcwQIdG51bQQOemVybwQUAAAAAgAAAAEAAABlAB4AIAAkACgAKwAuADAAMgA2ADoAPgBBAEQARwBKAE0AUQBVAFgAXABfAGIAZQBnAGkAawBtAG8AcQB0AHcAewB/AIMAhwCKAIwAjwCRAJMAlQCYAJoAnACeAKAAogCkAKYAqQCrAK0AsACy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AAEAAQAGAA4AHAAqADgASABYAAEAAwABAAIAAQABAAAAAAABAAMAAQABAAEAAAABAAEAAQACAAEAAQAAAAIAAgACAAEAAAABAAAANwABAAIAAQABAAEAAQAAADgAAAABAAIAAQABAAEAAAA5AAEAAAABAAgAATM8/0MABgAAAAYAEgAkADYASABcAHAAAwABQoAAAUKAAAJCgEKAAAAAAwAAAAFCbgADQm5CbkJuAAAAAwAAAAFCXAADQlxCXAIAAAAAAwACMlQyVAABQkoAAAABAAAAOwADAAEyQAABQjYAAUI2AAEAAAA8AAMAAAABQiIAAkIiQiIAAQAAAD0AAQAAAAEACAABQgb/UQAGAAAABwAUACQANABEAFQAZgB4AAMAATamAAE2pgABNqYAAAADAAAAATaWAAI2ljaWAAAAAwABJL4AATaGAAE2hgAAAAMAAAABNnYAAjZ2M5oAAAADAAAAATZmAAM2ZkGmLAYAAAADAAEyAAABNlQAAAABAAAAPwADAAAAATZCAAE2QgABAAAAQAABAAAAAQAIAAE2KAADAAEAAAABAAgAATYaAJ0ABgAAAAgAFgAmADYARgBWAGYAeACKAAMAATHoAAEx6AABMegAAAADAAAAATHYAAIx2DHYAAAAAwABAMgAATHIAAExyAAAAAMAASQGAAExuAABMbgAAAADAAAAATGoAAIxqDLiAAAAAwAAAAExmAADMZhA7itOAAAAAwABMRoAATGGAAAAAQAAAEIAAwAAAAExdAABMXQAAQAAAEMAAQAAAAEACAABMVr/QgABAAAAAQAIAAExTABGAAYAAAAIABYAJgA2AFAAYABwAIIAlAADAAFAjAABQIwAAUCMAAAAAwAAAAFAfAACQHxAfAAAAAMAAAABQGwAAkBsABAAAAABAAMEeQXsBiYAAwABI0QAAUBSAAFAUgAAAAMAAAABQEIAAkBCMiAAAAADAAAAAUAyAANAMkAsKowAAAADAAEwKgABQCAAAAABAAAARQADAAAAAUAOAAFADgABAAAARgABAAAAAQAIAAE/9P9QAAEAAAABAAgAAT/mAEYABgAAAAEACAABAK4AAwAMACIATAABAAQAAQZzAAEAAgTFBMUAAQAAAEgAAgAGABgAAwTUBLQGcwABAAAAAQAAAEgAAgS0BnMAAQABBMUAAQAAAEkABAAK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BNgE2AADBiwGLQABAAIAAgRkBGQAAgYsBi0AAQAHBsoGsAAQBtYhUgAeACwAAgACAAMAAQABAAIAAAABAAQAAQAAAAEAAACnAAAAAQABAAIAAQAAAKgAAQAAAAEACAABIUYAAQABAAAAAQAIAAEhOABOAAYAAAABAAgAAQBUAAIACgAwAAUADC/0AhQCMgAYAAEEZAABAAEGKgAAAAAAAQABBioAAQAAAKoAAQAEAAEEsgABAAAAAQAAAKoAAQAAAAEACAACAAoAAgSyBGgAAQACBGQGKgAGAAAAAQAIAAEAUAACAAoALAADAAgPDgAUAAEF7AABAAEGLAAAAAAAAQABBiwAAQAAAKwAAQAEAAEF9AABAAAAAQAAAKwAAQAAAAEACAACAAoAAgX0BUsAAQACBewGLAAGAAAADQAgADAAQABSAGwAfgCUAKoAvADMANwA9gEIAAMAASyYAAEsmAABLJgAAAADAAAAASyIAAIsiCyIAAAAAwACDVwAJgABLHgAASx4AAAAAwADLGwNSgAUAAEsZgABLGYAAAABAAEE2AADAAINMCxSAAEsTAABLEwAAAADAAEAEAABLDoAASw6AAAAAQABBNwAAwAAAAEsJAACLCQAEAAAAAEAAQTdAAMAAgBELA4AASwOAAEsDgAAAAMAARc0AAEr/AABK/wAAAADAAAAASvsAAIr7BckAAAAAwAAAAEr3AADK9wAEivcAAAAAQACBGQEbAADAAErqgABK8IAAAABAAAArgADAAAAASuwAAErsAABAAAArwABAAAAAQAIAAErlv9BAAEAAAABAAgAASuIAEcABgAAAAEACAABAIAAAgAKAFwABgAOLfoAGgAoADgARAABBGwAAQABBioAAAACBHIE2AABAAEGKgAAAAMGLQRyBNgAAQABBioAAAABBioAAQABBioAAAAAAAEAAQYqAAEAAACxAAEABAABBLQAAQAAAAEAAACxAAEAAAABAAgAAgAKAAIEtARvAAEAAgRsBioABgAAAAEACAABEswAAQAIAAYADgcYABoAKAA4AEYAAQRsAAEAAQRsAAAAAgRyBNgAAQABBGwAAAADBi0EcgTYAAEAAQRsAAAAAQS0AAEAAAABAAAAswAAAAEAAQRsAAEAAAC0AAEAAAABAAgAARJoAAEAAQAAAAEACAABEloASAAGAAAABgAS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AAUEqwWoBbEFuwXHAAEAAAABAAgAAgAQAAUEuAXMBbEGcgZzAAEABQSKBS8GKgYsBi0AAQAAAAEACAACAFAABASoBasFtQXBAAEAAAABAAgAAgA6AAQErQWqBb0FyQABAAAAAQAIAAIAJAAEBLgFzAZyBnMAAQAAAAEACAACAA4ABASqBa0FtwXDAAEABASKBS8GLAYtAAEAAAABAAgAAQVe/4sABgAAAAIACgAuAAMAAQASAAEAHAAAAAEAAAERAAEAAwCrAWwBbQABAAIAtADAAAMAAQASAAEAHgAAAAEAAAERAAEABAAiACsAYQFuAAEAAQDGAAEAAAABAAgAAgAMAAMBbAFtAW4AAQADALQAwADGAAYAAAACAAoARAADAAEAEgABADQAAAABAAABEwACAAUCsAKxAAACtAK1AAICzALoAAQDCAMPACEDEQMYACkAAQABAqAAAwABABIAAQAuAAAAAQAAARMAAgAEArACsQAAArQCtAACAswC6AADAwgDDwAgAAEAAQKrAAEAAAABAAgAAgAKAAICtwK4AAEAAgKgAqsABgAAAAEACAACAVgAIAAQACAAAg+6ADYAAgACArACtgABAswDKwABAAIAAwKYArgAAQLMAysAAQRPBE8AAgAEAAoAGAAmADYAAAABAAEAAQABAAABFQABAAEAAQAAAAEAAAEWAAAAAQACAAIAAQABAAABFwACAAIAAQABAAAAAQAAARgAAQAAAAEACAACANQAZwKYApwCngKgAqYCqwKvApgCmAKYApgCmAKYApgCmAKYApgCmAKYApgCmAKYApgCmAKYApgCmAKYApwCnAKcApwCnAKcApwCnAKeAp4CngKeAp4CngKeAp4CngKeAp4CngKeAp4CngKeAp4CngKeAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqYCpgKmAqYCpgKmAqYCpgKoAqsCqwKrAqsCqwKrAqsCqwKvAq8CrwKvAq8CrwKvAq8CrwKvAq8CrwKvAq8CrwKvAq8CrwKvAAIAAgKwArYAAALMAysABwAGAAAAIQBIAFoAagB8AJAAwgDYAO4BBAEaATABRgFaAW4BggGWAaoBvgHSAeYB+gIMAh4COAJSAmYCgAKUAq4CwgLUAuwC/gADAAEGtAABBrQAAga0A9gAAAADAAEGogABBqIAAQPGAAAAAwABAcYAAQaSAAIGkgaSAAAAAwABACYAAQOkAAEC1gABAAABGgADAAEAEgABA5AAAAABAAABGwABAA4EoQSiBaMFpAWmBacFswW0BbkFugW/BcAFxQXGAAMAAgGKAW4AARGAAAEDXgABAAABGgADAAEBWAABEWoAAhFqA0gAAQAAARsAAwACAYwBQgABAfgAAQMyAAEAAAEaAAMAAQEsAAEB4gACAeIDHAABAAABGwADAAIBjgEWAAEF4gABAwYAAQAAARoAAwABAQAAAQXMAAIFzALwAAEAAAEbAAMAAQDqAAEQ/AABAtoAAQAAARwAAwABANYAAQGMAAECxgABAAABHAADAAEAwgABBY4AAQKyAAEAAAEcAAMAAgDKAK4AARDAAAAAAQAAAR0AAwABAJoAARCsAAEQrAABAAABHgADAAIA0ACGAAEBPAAAAAEAAAEdAAMAAQByAAEBKAABASgAAQAAAR4AAwACANYAXgABBSoAAAABAAABHQADAAEASgABBRYAAQUWAAEAAAEeAAMAAQA2AAEQSAAAAAEAAAEfAAMAAQAkAAEA2gAAAAEAAAEfAAMAAQASAAEE3gAAAAEAAAEfAAEAAgShBKIAAwABABQAARAKAAEB6AABAAABIAABAAEGcwADAAAAAQ/wAAIP8AHOAAEAAAEhAAMAAQAUAAEAgAABAboAAQAAASAAAQABBnIAAwAAAAEAZgACAGYBoAABAAABIQADAAEAFAABBGgAAQGMAAEAAAEgAAEAAQXMAAMAAAABBE4AAgROAXIAAQAAASEAAwAAAAEPgAABAV4AAQAAASIAAwAAAAEAEgABAUwAAQAAASIAAQABBiwAAwAAAAEEEAABATQAAQAAASIAAwAAAAEBIgABAFQAAQAAARwAAQAAAAEACAACADoABAShBaYFuQXFAAEAAAABAAgAAgAkAAQEoAXMBnIGcwABAAAAAQAIAAIADgAEBKIFowWzBb8AAQAEBMUFLwYsBi0AAQAAAAEACAACAFwAAwWlBbgFxAABAAAAAQAIAAIASAADBaIFsgW+AAEAAAABAAgAAgA0AAMFpwW6BcYAAQAAAAEACAACACAAAwXMBnIGcwABAAAAAQAIAAIADAADBaQFtAXAAAEAAwUvBiwGLQAGAAAAAQAIAAIATAGAABABgAACCn4AGAABBMUAAQABAAQBxAHQAAoAGAAAAAEAAQABAAEAAAEkAAEAAQABAAAAAQAAASUAAQAAAAEACAABAAYADgABAAEExQAGAAAAAQAIAAIATAEmABABJgACCiQAGAABBiYAAQABAAQBagF2AAoAGAAAAAEAAQABAAEAAAEnAAEAAQABAAAAAQAAASgAAQAAAAEACAABAAYASQABAAEGJgAGAAAAAQAIAAIATADMABAAzAACCcoAGAABBHkAAQABAAQBEAEcAAoAGAAAAAEAAQABAAEAAAEqAAEAAQABAAAAAQAAASsAAQAAAAEACAABAAYAJAABAAEEeQAGAAAAAQAIAAIATAByABAAcgACCXAAGAABBfkAAQABAAQAtgDCAAoAGAAAAAEAAQABAAEAAAEtAAEAAQABAAAAAQAAAS4AAQAAAAEACAABAAYAdQABAAEF+QAGAAAAAQAIAAIAtgAYABAAGAACCRYAagABBGQAAQABAAIADQABAIcAAgCKAQ0AAQFhAWYAAQFvAW8AAQF0AXYAAQF3AgYAAgIHApYAAQKXAysAAgMsA+IAAQPlA/YAAgTYBN0AAgUvBS8AAgWWBZcAAgAEAAoAFgAiADAAAQACAAEAAQABAAAAAQABAAEAAQACAAAAAQACAAEAAAABAAABMAAAAAEAAQACAAEAAAExAAEAAAABAAgAAQAGAFoAAQABBGQABgAAAAMADAAgADoAAwABACYAAQBqAAEAagABAAABMwADAAEAEgABAFYAAAABAAABNAABAAIEpgSnAAMAAAABADwAAQA8AAEAAAE1AAEAAAABAAgAAQAiACcAAQAAAAEACAABABQAJgABAAAAAQAIAAEABgAoAAEAAQR/AAYAAAAGABIALgBEAFgAdACOAAMAAQAUAAEAdgABANIAAQAAATcAAQACBK8EsAADAAEAPAABALYAAgBaALYAAQAAATcAAwABACYAAQCgAAEAoAABAAABOAADAAEAEgABAIwAAAABAAABOQABAAMErwSwBa4AAwAAAAEAcAACABQAcAABAAABOgABAAEFLwADAAAAAQBWAAEAVgABAAABOwABAAAAAQAIAAIACgACBK8FrgABAAIEzQUvAAEAAAABAAgAAQAi/+IAAQAAAAEACAABABT/4QABAAAAAQAIAAEABv/jAAEAAQTNAAEAAAABAAgAAQAGAIcAAQABAOMAAQAAAAEACAACAAoAAgXNBc4AAQACBW0FewABAAAAAQAIAAIACgACBc8FzwABAAIFJgUnAAYAAAACAAoAKAADAAAAAQASAAEAGAABAAABQQABAAEFywABAAEFzwADAAAAAQASAAEAEgABAAABQQABAAIFJgXPAAEAAAABAAgAAgAMAAMF6QXpBekAAQADBSYFywXPAAEAAAABAAgAAgAOAAQF2QXaBdsF9QABAAQFSwV3BXgF7AABAAAAAQAIAAEABgCrAAEAAQUlAAYAAAABAAgAAQBAAAIACgAcAAEABAABBjIAAQAAAAEAAAFFAAEABAAAAAEAAQWFAAEAAAFFAAEAAAABAAgAAgAKAAIF0AYyAAEAAgWFBnQABgAAAAEACAABADIAAQAIAAIABgAQAAEEugABAAAAAAAAAAEAAAABAAABRwABAAAAAQAIAAEABgAqAAEAAQSQAAYAAAABAAgAAQBQAAIACgAsAAMACAB0ABQAAQYqAAEAAQYyAAAAAAABAAEGMgABAAABSQABAAQAAQZxAAEAAAABAAABSQABAAAAAQAIAAIACgACBnEF0QABAAIGKgYyAAYAAAABAAgAAQBcAAIACgA4AAMACAAUACAAAQRsAAEAAQYyAAAAAAABAAIGMgYyAAAAAAABAAEGMgABAAABSwABAAQAAQS0AAEAAAABAAABSwABAAAAAQAIAAIACgACBLQEuwABAAIEbAYyAAEAAAABAAgAAgAOAAQEvAS9BdIF0wABAAQEbwRwBWsFbAAGAAAAAQAIAAEAQAACAAoAHAABAAQAAAABAAEGKgABAAABTgABAAQAAQW9AAEAAAABAAABTgABAAAAAQAIAAIACgACBb0FrwABAAIFbgYqAAYAAAABAAgAAQBAAAIACgAcAAEABAAAAAEAAQYqAAEAAAFQAAEABAABBckAAQAAAAEAAAFQAAEAAAABAAgAAgAKAAIFyQWvAAEAAgV9BioABgAAAAEACAABAEAAAgAKABwAAQAEAAAAAQABBioAAQAAAVIAAQAEAAEFqgABAAAAAQAAAVIAAQAAAAEACAACAAoAAgWqBa8AAQACBTIGKgAGAAAAAQAIAAEAQAACAAoAHAABAAQAAAABAAEGKgABAAABVAABAAQAAQWtAAEAAAABAAABVAABAAAAAQAIAAIACgACBa0FrwABAAIFLwYq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XC9cL1wvXC9cL1w6XIVcoFy+XN5c5FzqXQpdEF0WXW1ddl1/XYhdkF2WXZ9dpV2rXbNdvV3DXcldz13VXdtd213bXeFd514CXh1eTV59XolelV6gXqtesV65Xr9exV7LXtFe117dXuNe6V7vXvVfK18xX0dfTV9NX01fTV9NX01fY1+IX61f0l/oX/9gFWArYDlgR2BWYGFgZ2BtYHNgeWCiYKhgsGC2YLZgtmDCYNxg92D3YQZhGGEqYT9hUWFmYXthk2GTYZNhk2GTYZNhk2GTYZNhk2GTYaNhqWGwYbZiAGI/Yrdiz2MbY1xjmWPAY+VkAmQLZBFkF2QdZCNkPmRVZGhkdGSlZLRkyWTJZQxlEmUfZUplcmV4ZX5ljGWSZZhlrmW0ZbplwGXGZg9mD2YVZhtmIWYnZi1mM2Y5Zj9mRWaLZpFmkWaRZpFmkWaRZq9mr2a9ZsRm2Wc4ZzhnPmdEZ0pnUGdlZ4BnmmemZ7VnyWfhaAFoN2hUaHhofmiEaIpoqGjxaUFpW2l8aYJpk2mZaZ9ppWmrabFpw2ncaeJqUmqdatJremuOa5Vrq2u+a8RrymvQa9Zr3Gvia+hr7mv0a/psAGwhbCdsLWw1bERsTWxZbGBsZ2xubHRsgGyMbJJspmy3bL1s02znbO1s+20JbRVtIW0rbTdtVm11bYdtrG3NbeNuDm48blhuiG7Dbudu7W7zbvlu/28FbwtvEW8Xbx1vI28pby9vL28vby9vRW9Lb5Rv83A6cExwZHCEcKtwsnC4cL5xCHFXcbBxu3HGcdFx4XH0cgNyFnIrcj5yS3JYcmVycXKwcthzD3NIc3Jzp3PHc/J0IXRLdGl0aXSodOd1GnUmdT91ZHVqdXB1n3Wldat1tnXMdeB19HYVdjl2QHZGdkx2W3ZhdnF2eHaPdqZ2uHbWdul273b6dwV3C3cRdzZ3RXdhd5R3xXfyeDF4Wnh+eKN4uHjdeP55H3k2eUV5TnlgeYN5j3mhea95vXnTeel5+3o2eld6YnpwerB66nr4ev97HXske0h7Tntge3d7inu0e+J76nv7fA18E3wZfB98ZHzEfMp80H0HfQ19N309fUh9Tn1UfVp9YH1mfWx9eH2VfcZ9zH3Sff9+C34Rfip+VX6rfr9+zn7Vftt+4X7wfvZ+/H8DfyV/XX9pf29/dX91f3V/dX91f3V/dX91f5N/rn/Qf+yADIAngEiAZICcgM2A04DkgQCBBoEMgRKBHYEjgSmBWoFagVqBWoFagWiBfoF+gX6BfoGUgZqB0YHXgfiCLYIzglmCdoJ8gqKCqILTgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDBIMEgwSDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMagxqDGoMggyCDJoMmgyaDJoMmgyaDJoMmgyaDJoMmgyaDJoMmgyaDJoMmgyaDJoMmgyaDJoMmgyaDJoMmgyaDJoMmgyaDJoMmgyaDJoMmgyaDJoMmgyaDJoMmgyaDJoMmgyaDJoMmgyaDJoMmgyyDMoMygzKDMoMygzKDMoMygzKDMoMygzKDMoMygzKDMoMygzKDMoMygzKDMoMygzKDMoMygzKDMoMygzKDMoMygzKDMoMygzKDMoMygzKDMoMygzKDMoMyg2CDZ4N9g4iDk4O7g8KDyYPfg/mEE4QthEeEeYSrhM+E84UthTOFPoVEhUqFUYVXhV6FaYV0hXyFioWahbGFuYXAhciF0YXXhd+F54X9hgWGDoYXhjaGSYZUhl+GboZ8hoWGk4aqhs2G6obzhxGHLoc5hz+HR4dPh1qHZYdth3uHiIefh6eHr4e3h72HyYfVh+uH8of9iCWIJYgliGCIgoiiiKKIooiiiKKIy4jdiQuJC4kUiRqJIIkgiSCJJokmiSaJLIk+iVCJZolziXmJf4l/iZaJlomdQACAAQAIAB8AAAABqV1AAI0Dro90VED/eQFmnYQBvLyBAQwMgQI2NpeDgAEACAAFAAAAgADsg4WAAQAIAAUAAACAAAODhYABAAgAAgAAAIWFAIABAAgABQAAAIAA8oOFgAEACAAFAAAAgADyg4WAAQAIAAUAAACAAPKDhYABAAgABQAAAIAAA4OFgAEACAAFAAAAgADyg4WAAQAIAAUAAACAAPKDhYABAAgALQAAAAHWeUAAsoAOuf3sd0n9/Vow9PS3btMMgwHExIEJDAyjozk50NBpaYECKiqgg4ABAAgABQAAAIAA0IOFgAEACABXAAAAKYmJqNDeYGDW07qeiYyMw9lgYNC7jFJSTj8jDJeXGS5FUFJSUlZXVFFRUoMYKgHd09PTfHx8dWND5LaUlJQ2NjYOEQf//4INDAwMCQYDAwoNCQYHBwqDgAEACABJAAAAgAgSNTzp8/z6G1pCAIIAggCCEF0kBvfo7DklBPLXvbS0tMDhgxAcHA4GnZOdnZ2o1Ak7anl5eUEAgwCECiIN8vLy9gAJCRMcg4ABAAgABQAAAIAA4IOFgAEACAAFAAAAgAD0g4WAAQAIAAUAAACAAAaDhYABAAgABQAAAIAA9IOFgAEACAAFAAAAgADmg4WAAQAIAD8AAABB/3D/cAmWy/gAd3f99cmWQP9wDTk5OzcrEvqurvcHIDA5gxEG0p+Pj4+Pf39/emMyBgsNCgSCBQwMDAoIBoOAAQAIAEwAAAADHBzk5EH/ef95A5/UAQlBAIAAgAMG/tKfQP95DUJCREA0GwO3twAQKTlCgxUq1tYqBtKfj4+Pj39/f3pjMgYLDQoEggUMDAwKCAaDAIABAAgABQAAAIAACYOFgAEACAACAAAAhIQAgAEACAAQAAAHBgECAgICAQEGdEx0NqxMPAY+zXwADAyUAIABAAgABQAAAIAA6YOFgAEACAACAAAAhYUAgAEACAAFAAAAgAD9g4WAAQAIAAUAAACAAP2DhYABAAgABQAAAIAA74OFgAEACAAFAAAAgADvg4WAAQAIAAUAAACAAO+DhYABAAgABQAAAIAA74OFgAEACAAFAAAAgAAOg4WAAQAIAA4AAAYFAQICAgEBBXw2fLEzIgUqrgAMDJSAAQAIAFEAAAATH/PNxMTEydr9HDJaWgMDITA2VHNCAIoAigCKDGsyDvG4mpoXCUxMPhmDI/Ly/gkJCA4VHBwcBgOppaOjo6e44QYeTWxsbF5Mx8c2Ngz68oOAAQAIAAUAAACAAAODhYABAAgAAgAAAIWFAIABAAgABQAAAIAA9IOFgAEACAAFAAAAgADyg4WAAQAIAA4AAAYFAQICAgICBYl3rneJUgWmAAxMDACAAQAIABcAAAgHAQICAgICAQIARET/fACE/7wAhP98gYAGtAAMRAwq6QCAAQAIAAIAAACFhQCAAQAIABMAAAYFAQICAgICBUljSbedtwCJQACEgEAAhAGJDACAAQAIADIAAAAW3sWeh4eHUlIMDPf3sbH39z4+PiUG8fSDCP0N9ce0v79PT4ELT0+/vwwM07Ofn5mHgwCAAQAIAAUAAACAAOyDhYABAAgABQAAAIAAA4OFgAEACAACAAAAhYUAgAEACAAFAAAAgADyg4WAAQAIAAUAAACAAPKDhYABAAgABQAAAIAA8oOFgAEACAAFAAAAgADyg4WAAQAIAAUAAACAAHSDhYABAAgABQAAAIAA8oOFgAEACAAvAAAAEU9PTyr72t60s6nnz7DHl4eHh0H/cP9wgxMMNgno6vf39/39bnh3d3c6JIyMDIOAAQAIAAUAAACAAAaDhYABAAgAGwAAAARSiYlSUkT/fgA5APYAOf9kg4EFDAwGDAwXhYABAAgABQAAAIAAx4OFgAEACAASAAAABZKSWlo2JIOAAQwMQQCHAIeEAIABAAgABQAAAIAA4IOFgAEACAAFAAABAAFAAJYADIABAAgABQAAAIAA3IOFgAEACAAEAAABAAEA7wACAIABAAgAHgAAAAXcrhxJvLxBAIQAhAFgToMGrv1B9AAMDEEAhwCHhACAAQAIAEAAAAAWIiKHqauzu8fNMNA5P0lNU1R33t5aAKmDAAyBRf9c/2r/UP8y/z3/cAHy8kX/cP9A/zv/Wv9s/1SBAwwMSQyDAIABAAgAOQAAAAmJJCw5QkdHR66uQACQB9zPwLm5uVJSg4AAhET/Z/9N/0L/Nf8ngQEMDEQAlgDDANwA2ADZAQwMhIABAAgABQAAAIAACIOFgAEACAAFAAAAgAAcg4WAAQAIAAIAAACFhQCAAQAIAAUAAACAAA6DhYABAAgAWQAAABnCr5yGzsOxo5eJiYlSUlIPiSQsOUJHR0eurkAAkAfcz8C5ublSUoMK2dne7EdRV1dXSESBBFog2QCERP9n/03/Qv81/yeBAQwMRACWAMMA3ADYANkBDAyEgAEACABHAAAADz4+LhIA7tLCwsLS7gASLj5B/3b/dgK2AEpCAIoAigCKAkYAukD/doMbCfry8vLy8vwMGh8cHBwfGAnwo6Oj8gwkbGxsJoOAAQAIAAUAAACAAOyDhYABAAgABQAAAIAAA4OFgAEACAACAAAAhYUAgAEACAAFAAAAgADyg4WAAQAIAAUAAACAAPKDhYABAAgABQAAAIAA74OFgAEACAAFAAAAgADyg4WAAQAIAF8AAACAKAclPj4+LhIA+dvCwsLS7tYzNuc8IifK0yLh1gBBeXl5XCYAwoeHh6LXgxIcHB8YCfry8vLy8vwMGh8cAN7vQf9RAIID/QMkR0AAzA/WDKys+Qw0WWNjYyAJ4Lisg4ABAAgABQAAAIAA7IOFgAEACAAFAAAAgADyg4WAAQAIAFsAAAAdIjpPYOHQcVMvLdzcMC5PbsrKXVE6Ig8cHBwTFCRPQgCWAJYAlgdRJPK0tLTRBIMQHBwSDAyjo6ftOTnQ0B9laWmBFfzy8vIQDAcRHLS04Qw2WlpaMwn0zLSDgAEACAA8AAAAQf9t/20Hk8HNPj7szpRA/20GMzMxJxw+PkH/dv92AuQSM4MQ6b6Zj4+PPj4+Oxjn59O/v7+BAwwMDPWDAIABAAgAOQAAABNPT94INjY2OS4XT0+EhM1PT97BikL/Z/9n/2cArYMKDBcXFwb9+u3h4eGBCgyammBgYFUrAMeag4ABAAgAWQAAABg2NjczLT1UZmz9+v4DAO3f3t7e5PcJGy82Qf9k/2QCwQlTQgCsAKwArAJPCcNA/2SDJAkWHR8iIyonGQD9+PT09PP8DBofHBwcHxgJ7aCgoO4MJ2xsbCaDgAEACAA/AAAAAz4+UnRCAIoAT/98B95XV4+P+h4+Qf95/3kFp+FXV/K8QP95gwTe5Ovo3oEBsbGBDAwMDP7etJSUlCQkJAmDgAEACAAFAAAAgADsg4WAAQAIAAIAAACFhQCAAQAIAAUAAACAAByDhYABAAgAZQAAACRSUjwYA8iurgAHB/Thq4GBgYmmwqCjvLy84BAfN2RpJCk0OUpyQgCQAJAAkAV+WT5dYlKDLR8R/fLy8g8RaWlxcXFdLQPuz7ixvtfk3v0XHBwcDQCso6CgoLLY9wssREk9JRqDgAEACAAFAAAAgAD4g4WAAQAIAAUAAACAAAyDhYABAAgABQAAAIAACYOFgAEACAAFAAAAgAAMg4WAAQAIAAUAAACAAAmDhYABAAgAYQAAAATcDDRISEAAnA5jUFBQNBQOBfTuJhr/6q5C/3j/eP94DsD29oqeze4hZmZmlpaWsYMPIiIcHNgWEyMaCPr6+vr/AkQAggCFAIoAigCKEU0g78zMGMCxmJiYzAQGBvgHIoOAAQAIAAwAAAUEAQICAQEEZp3TPiqAA4cMDIcAgAEACAAQAAAHBgECAgICAQEGwkFmndM+KgbkowCHDAyHAIABAAgAAgAAAIWFAIABAAgABQAAAIAAF4OFgAEACAACAAAAhYUAgAEACAA0AAAAE09PT0wtA9q4sbGxfHx8FgPuh4eHgwsMFxQC8vLy+wsXDAxBAL0AlgJsbGxBAJYAvQAMgwCAAQAIAAUAAACAAOyDhYABAAgABQAAAIAAA4OFgAEACAACAAAAhYUAgAEACAAFAAAAgADyg4WAAQAIAAUAAACAAPKDhYABAAgABQAAAIAA74OFgAEACAAFAAAAgADyg4WAAQAIAAUAAACAAF2DhYABAAgABQAAAIAA8oOFgAEACAAFAAAAgADyg4WAAQAIABkAAAAAA0X/cwBEAJP/bf+/AJCDAkwMDIEBDAyDgAEACAAjAAAABhRSvwlHtOxAAJkDF9Yw70D/c4MADIEAwoEGDAx0DAx0DIOAAQAIAAUAAACAAOyDhYABAAgAAgAAAIWFAIABAAgABQAAAIAA8oOFgAEACAAFAAAAgADyg4WAAQAIAB8AAAAIsXkAjFp3SYEAQACKAbmHgwUMDHkMDAmBAIeBAAODgAEACAAeAAAABGNjnZ2uQgCHAAP/fABSgwDygQLyDAxAAIQBDAyDAIABAAgABQAAAIAA44OFgAEACAAFAAAAgAD3g4WAAQAIAAUAAACAAOmDhYABAAgABQAAAIAA6YOFgAEACAAhAAAAQACpA1pJrKxA/1EDrKxERINBAJAAkIFAAIcEhIQMDISDgAEACAAFAAAAgADeg4WAAQAIAAUAAACAAPKDhYABAAgABQAAAIAA5IOFgAEACAAFAAAAgAD9g4WAAQAIAAUAAACAACWDhYABAAgABQAAAIAACYOFgAEACAAFAAAAgAAVg4WAAQAIAAUAAACAAPuDhYABAAgANwAAABdsbGxMPDMmGUEyEvezrKysfHw2Nnx8sbGDDQxgcn9/f355Bv3y8vJIQACHBZSUKiquroEADIOAAQAIADMAAAAVbGxsTDwzJhlBMhL3s6ysrGZmnZ3T04MNDGByf39/fnkG/fLy8khAAIcBh4eBAoeHDIOAAQAIAFoAAAAqZmZbUjMR7tzWvcK6qampv8e3t7fZ7O7U1rG5/QxAZmYX9M63txdOZmZmRYMqY2dsbPf38uzs8vLy/f0KHBwc3rajo6OeoAwQHBwcEO9xcVpHx8fH+RdHcYMAgAEACAAFAAAAgAADg4WAAQAIAAUAAACAAAODhYABAAgABQAAAIAAA4OFgAEACAAFAAAAgAADg4WAAQAIAAUAAACAAAODhYABAAgABQAAAIAAA4OFgAEACAAEAAABAAEARAD3AIABAAgABQAAAIAAA4OFgAEACAAFAAAAgAADg4WAAQAIAIgAAAAX7/rv7+/sNjYnDP717CIkC/fx4+nv+ff3gibn4dbW1trc4vH31uTc7+jy/AP61gxGbGxsPyIC2cHK1ucLLTaPkryDPxwcFff77+8fSUlJPzb9+/Ly8uvU7PLy8gEDChEREd7T1tbW3NwXGxwcHDRJMhzKysrxCTNUVFQrA/jg0ND6IiIBAtCDAIABAAgABQAAAIAA74OFgAEACABEAAAAH3FnWUxHRklJSUdBPlNdXbGxcQbIj4+Po9H6J2dxcWIhgw0wIxwcHBoTCQP48vLy74EPCRlsbCwD+8qdnZ3Q2TlNbIMAgAEACABDAAAAFyIP8/I+PTQM+tnExMTcABErO0H6Cx4kSkIAhACEAIQBbECDHHl5eHcDAfLy8voBAw0YHBwcFQ6pnpeXl9wDIVd5g4ABAAgABQAAAIWAAPSDgAEACAAFAAAAhYAA9IOAAQAIAAIAAACFhQCAAQAIAAUAAACFgAD0g4ABAAgABQAAAIWAAPSDgAEACABGAAAAII9PT6Ojtr+psLa3t7e8w8SrlY/6OnFxcVwq/c6aj4+c24MBGQmBHOQA8vLy9wEMExocHBwtPqCg4gkQQm5ubkA23sCggwCAAQAIAHcAAAAAj0L/VP9f/34Zl7exrK63BhwyPj4+Oh/958i5ubm7vb+uhYFA/3kCnLz3Qv98/3z/fwuBkt0OIlZ8fHw3CdhA/3yDMRfZzL23Fx8uOT76FBIKIicP8vLy9/v9/QADAwMeMxTIse/k5/H0xJKSkqbR9yJsbGwig4ABAAgACAAAAAHnVIOAAAmDAIABAAgAawAAAAIZHBxA/1kB2dlA/1kBGRlB/23/bQGAiUH/c/96BoCBgYGGjY5C/3X/X/9ZCMQEOzs7JvTHmEP/ZP9Z/1n/ZgClgwc2NvT09DYZCYEc5ADy8vL3AQwTGhwcHC0+oKDiCRBCbm5uQDbewKCDgAEACABIAAAAIWlxXTckGiEZV1U3BuG6rKystNT3DzhSUlJRT/QeY2OUl92DIdwJR2ZmZmZdDgby8vL7BAYDDhwcHBYF9/fk3Ly89ioq5byDAIABAAgABQAAAIAA94OFgAEACAAFAAAAgAD3g4WAAQAIAAUAAACAAPeDhYABAAgABQAAAIAA94OFgAEACAAFAAAAgAD3g4WAAQAIAAUAAACAAPeDhYABAAgABQAAAIAA94OFgAEACAAFAAAAgAD3g4WAAQAIAHcAAAAGMF1qdHR0dEAAhi96enVlXWFiaFccHBw3RWlxXTckGiEZV1U3BuG6rKystNT3DzhSUlJRT/QeY2OUl92DN0QAERoTDAYJCQkLCcTDwsLC1AMhLzTcCUdmZmZmXQ4G8vLy+wQGAw4cHBwWBff35Ny8vPYqKuW8g4ABAAgANgAAABj3H1NdMy0rMEVsbGxdR2xsrq7T066urq3Kgw4ZGRAMo6GdnZ21wh8frq6BB66uHx/W4P8ZgwCAAQAIAJ4AAAA/Ij5NT0FMXV1dSSgXMD5ETF1dXUU+KkFRVFRUNwDRrKamTEw+Iwz4w5qamuoGH/HNzc3T08TCwsLW9wn3BB8UV0IAggCCAIIGVg7kt7e35YM/V/f16enn797f4eHh4dzW4PwMHCoqKiokGA4E5+fn+QkGBho1REREOx4A3MTExMTN1uHu7PT7/Q4ZGRkVKUqurgnlAxtUVFQmBt+ugwCAAQAIAAUAAACAABSDhYABAAgABQAAAIAAFIOFgAEACAAEAAABAAEAFwAMAIABAAgABQAAAIAAFIOFgAEACAAuAAAAFHFxd1hSQkxMTIyMjMf0F1J0cXGxsYMHHD4vHBwcGhSBB6aompqat9TWgQAMgwCAAQAIADoAAAAaJydx5OSxcXF3WFJCTExMjIyMx/QXUnRxcbGxgw029PT0NjYcPi8cHBwaFIEHpqiampq31NaBAAyDAIABAAgABQAAAIWAAP2DgAEACAAwAAAAFUdHJCSmpoeHpqb9H09PTx/916ampteDAgxsbIEQbGygoAxdXTEO7sLCwu4OMV2DAIABAAgADAAABQQBAgICAgRHJKaHpgRsAGygDACAAQAIAAUAAACAAPqDhYABAAgABQAAAIAA+oOFgAEACAAFAAAAgAD6g4WAAQAIAAUAAACAAPqDhYABAAgABQAAAIAA+oOFgAEACAAFAAAAgAD6g4WAAQAIAGkAAAAudHR0cEEAudvjy7GxsWBg7+/e3p2d3t76IFJSUiD61qamptYUOGlpaTgU8Ly8vPCDAAxAAK8HXRT352xvbnJBAIQAmQOdnWxsgRxsbJ2dDF1dMQ7uwsLC7g4xXV1dMQ7uwsLC7g4xXYOAAQAIAAUAAACAAPqDhYABAAgABgAAAIAB+liDhgCAAQAIAAUAAACAAPqDhYABAAgAQQAAABlHR0c3B9m8w6eHh4fQ0AkrWlpaKwnjsbGx44MADEAAtARuIfjnd0MAhQCOAJgAqQ6goAxdXTEO7sLCwu4OMV2DgAEACAApAAAADUdHRzcH2bzDp4eHh9DQgwAMQAC0BG4h+Od3QwCFAI4AmACpAqCgDIOAAQAIAAUAAACAAAaDhYABAAgAHQAAAABUQgD2ADP/fgVawmNjo6ODAQwRgQIJDBmBAAmDgAEACAAFAAAAgADvg4WAAQAIABsAAAAAY0ABBwdBjGnQcXGxsYMBDP2BAu8MDIEADIOAAQAIACsAAAARbGxsTDwzJhlBMhL3s6ysrLm5gw0JYHJ/f39+eQb98vLySEAAhwKdnQmDgAEACAAEAAABAAEA6QD9AIABAAgABQAAAQABQACLAAmAAQAIAAUAAACAAO+DhYABAAgABAAAAQABABEA9ACAAQAIADMAAAAVL2XsuWxsbEw8MyYZQTIS97OsrKy5uYMRSe+pAAlgcn9/f355Bv3y8vJIQACHAp2dCYOAAQAIAEwAAAAjJ0hOPj4+qamprc3qHi0t2dnZ3f0cTl1dwsJEUltUSUktJCs1gwQcHAP0A4EG97+JiYmv04EG97+JiYmv04EKDAwkLRwcHBgtJRyDAIABAAgALwAAABWxsV1pckVSOUxMTIyMjJS98hdTdHFxg4AIDAwqKBwcHBoUgQg+B76ampq63eGEgAEACAAFAAAAgAADg4WAAQAIAFUAAAAR9A4tLS0pNjbs1s2/v7/bzc15QQCFAI4NYW5VaGhoqKiosNkOM29CAJAAjQCNgxgfHwHp1tHyAwO8wNTp+h8ADAwqKBwcHBoUgQg+B76ampq63eGEgAEACAAFAAAAgAADg4WAAQAIAAUAAACAAP2DhYABAAgABQAAAIAAA4OFgAEACABEAAAABExMHdi5Qf98/3wWhIyMjIyTvvQXUnRxcbGxXWlyUFJCTEyDElIxBevkcW5uX0c+B76ampq31NaBCAwMKigcHBwaFIMAgAEACAA8AAAAG/0RN1JSUjkUAO7Irq6ux+v9MGxsbDMAzZSUlMyDGxwcFg0J9Ovy8vLv+AkRGRygoNcJM2xsbDMJ2KCDAIABAAgAAgAAAIWFAIABAAgAAgAAAIWFAIABAAgAAgAAAIWFAIABAAgAAgAAAIWFAIABAAgAAgAAAIWFAIABAAgABQAAAIAADoOFgAEACAACAAAAhYUAgAEACABbAAAAKf0YPlJSUjkUAOfCrq6ux+vQREfsJzMwubcG0M39KmNjYz4QANOdnZ3C74MSHBwWDQn06/Ly8u/4CREZHBf0/UD/YhU87O8RBnSpHKmp3gkhSmNjYy0J7cGpg4ABAAgAAgAAAIWFAIABAAgAAgAAAIWFAIABAAgAdAAAADfk8Onp6ejnMC4hBvnv5xwfBvT7+e/x/RcK+fLy8vsLF/vy9Pj0DDZdXV02DN+/v7/h3AQnLYmMsYM3HBwV9/f17+8bSUlJPzb9+/Ly8tW5z/Ly8u/4CREZHBwcPE88HJ2d5QktbGxsMwnjndDQ+iIiAtCDAIABAAgARAAAAB9JR0tSUlJJRk9ncXGxsWNjbGP9J2dxcWYjA8WUlJSm04MfHBwaEwkD+PLy8uT35wwMMDMcnZ3Q2TlJaWlpLAP7yp2DAIABAAgARAAAAB9xcWRQSUdLUlJSSUZPZ3FxsbH9J2dxcWYjA8WUlJSm04MfGSoiHBwcGhMJA/jy8vLk9+cJnZ3Q2TlJaWlpLAP7yp2DAIABAAgARgAAACDNuKqjo09Pj4+eua61tK6urrjGAzxsbGxaLQPYnI+PnOGDIBwcKDMMDOf3x+jy8vL4AwwTGhygoOIJEEFsbGxANt7AoIMAgAEACABGAAAAHLGxkpKxsSRHQkYzQFNUFx0YFy5DUlJMTNnZAFQng4AMbGyjowwMGSIXFxcSDEX/fP96/3n/ef95/3wItGxsAJoDDAyagwCAAQAIAAUAAACAAPKDhYABAAgABQAAAIAA8oOFgAEACAAFAAAAgADvg4WAAQAIAFwAAAArCdKampqVlp2tvcTExMvsFCdDUg4G/Bxaf39/b11aWllXV1dKKgz90LwODgmDK2NjLgz628jKyNTk5+8IHBwcFQyurqmpqdjyCycxMC4uKSIdBfLy8vgJYGRjgwCAAQAIAAUAAACAAA6DhYABAAgABQAAAIAADoOFgAEACAAFAAAAgAAMg4WAAQAIAAUAAACAAA6DhYABAAgABQAAAIAACYOFgAEACAB/AAAAHPIUMzw8PEdZbHd3d2lVQTMzMzAgDBARETwzAuy2Q/9q/2r/av99CJq51unp6dS0k0L/fv9+/34KibfpGmNjY6Ojo72DMhkZDP36/wUICAgJERcWEAcDAPjy8vLw6WZufHx8SQwA7+Xf3dzc193p9//9+NCpqanE/YEC+v0Zg4ABAAgANAAAABdMQib3xa6ursfHrq5ublJEbm5uUy0pIBmDFwwG8vLyH1eamgwMABcMDJqaVGB/f39+fIMAgAEACABAAAAAHT4+bsrKrkxCJvfFrq6ux8eurm5uUkRubm5TLSkgGYMdF7y8vBcXDAby8vIfV5qaDAwAFwwMmppUYH9/f358gwCAAQAIAAYAAAEAAUAAgEAAlgCAAQAIAAUAAACAAOSDhYABAAgABQAAAIAA4YOFgAEACAAsAAAAE3FxcUsX5pyPj09Po6OttbGvsbGxgwkMJEd0dHRDMAwMgQfp6/Ly8gYMDIMAgAEACAACAAAAhYUAgAEACAACAAAAhYUAgAEACAACAAAAhYUAgAEACAACAAAAhYUAgAEACAACAAAAhYUAgAEACAAFAAAAgAAOg4WAAQAIAAIAAACFhQCAAQAIAAUAAACAAGCDhYABAAgAAgAAAIWFAIABAAgAAgAAAIWFAIABAAgAFQAAAANSd5KuQACCAQOUgwAMgQMMDHQMg4ABAAgAHQAAAAxPv/o+rtx0H9Yt4Y8kg4EAtIEHDAx5DAx5DAyDgAEACAACAAAAhYUAgAEACAACAAAAhYUAgAEACAACAAAAhYUAgAEACAACAAAAhYUAgAEACAAbAAAAC2ypiZdgAJRPdFeS94OBBgMMDE8MDAmBALmDgAEACAAkAAAAD1dsXyjnyry3u8PEgalx9JSDCQwJ3czd5FdQNBGBAwwMYAyDAIABAAgAAgAAAIWFAIABAAgAAgAAAIWFAIABAAgAAgAAAIWFAIABAAgAAgAAAIWFAIABAAgAHQAAAEAAigNEObGxQP9nA66uPj6DAXx8gQV8lJQMDJSDgAEACAAFAAAAgAD3g4WAAQAIAAUAAACAAPeDhYABAAgABQAAAIAA94OFgAEACABSAAAAJqNPT09COhsg/MGjtr+psLa3t7e8w8SrqaP6OnFxcVwq/c6aj4+c24MmDAxXZG1s9/Xo3+QA8vLy9wEMExocHBwtPqCg4gkQQm5ubkA23sCggwCAAQAIAAUAAACAAAODhYABAAgABQAAAIAAA4OFgAEACAAFAAAAgAADg4WAAQAIAAUAAACAAAODhYABAAgABQAAAIAAA4OFgAEACAAFAAAAgAADg4WAAQAIAAQAAAEAAQAsAPcAgAEACAAFAAAAgAADg4WAAQAIAAUAAACAAAODhYABAAgAbgAAADSjT09LSSDtx8jpGgjEqxEVFffN3dS6o6Ojtr+psLa3t7e8w8SrqaP6OnFxcVwq/c6aj4+c24M0DAxXDuPDxNXn5+fY6htnXmNraWZvaDT05ADy8vL3AQwTGhwcHC0+oKDiCRBCbm5uQDbewKCDAIABAAgABQAAAIAAE4OFgAEACAAFAAAAgAATg4WAAQAIAAQAAAEAAQAWAAwAgAEACAAFAAAAgAATg4WAAQAIAAIAAACFhQCAAQAIAAYAAAIBAQIBYKCAAAyAAQAIAAIAAACFhQCAAQAIAAIAAACFhQCAAQAIAAIAAACFhQCAAQAIAAIAAACFhQCAAQAIAAIAAACFhQCAAQAIAAIAAACFhQCAAQAIAAIAAACFhQCAAQAIAAUAAACBAHKDhoABAAgAAgAAAIWFAIABAAgABQAAAIAA+oOFgAEACAAIAAADAgECAgJHh6aAAaAMAIABAAgABQAAAIAA+oOFgAEACAAFAAAAgAD6g4WAAQAIAAUAAACAAPqDhYABAAgABQAAAIAA+oOFgAEACAAFAAAAgAD6g4WAAQAIAAUAAACAAPqDhYABAAgABQAAAIAA+oOFgAEACAAGAAAAgAH6WIOGAIABAAgABQAAAIAA+oOFgAEACAAFAAAAgAD6g4WAAQAIAAoAAAQDAQICAgNHJIemA2wAoAyAAQAIAAUAAACAAPqDhYABAAgABQAAAIAA+oOFgAEACAAFAAAAgAD6g4WAAQAIAAUAAACAAPqDhYABAAgABQAAAIAA+oOFgAEACAAFAAAAgAD6g4WAAQAIAAUAAACAAPqDhYABAAgABgAAAIAB+liDhgCAAQAIAAUAAACAAPqDhYABAAgABQAAAIAAxIOFgAEACAArAAAAEUdHRycXDgH0HA3t0o6Hh4eUlIMNDGByf39/fnkG/fLy8khAAIcCoKAMg4ABAAgABQAAAIAAxIOFgAEACAAFAAAAgADEg4WAAQAIAAUAAACAAMSDhYABAAgABQAAAIAAxIOFgAEACAAFAAAAgADEg4WAAQAIAAUAAACAAMSDhYABAAgABQAAAIAAxIOFgAEACAAEAAAAABOFhgCAAQAIAAUAAACAAMSDhYABAAgABgAAAgEBAgFgoIAACYABAAgABAAAAQABAPUA/QCAAQAIAAQAAAEAAQB/AAkAgAEACAAFAAAAgAD9g4WAAQAIAAQAAAEAAQARAPQAgAEACAAUAAAAByNZ4K1gYKCggwRJ76kACYEACYMAgAEACAAIAAADAgECAgJgoK2AAZ0JAIABAAgABAAAAQABAN0A/QCAAQAIAAQAAAEAAQB/AAkAgAEACAAGAAAAgED/NYOFAIABAAgABAAAAQABABEA9ACAAQAIABgAAAAJI1ngrWBgoKCtrYMESe+pAAmBAp2dCYMAgAEACAAKAAAEAwECAgIDbHOsuQNsAJ0JgAEACAAEAAABAAEA6QD9AIABAAgABQAAAQABQACLAAmAAQAIAAUAAACAAO+DhYABAAgABAAAAQABABEA9ACAAQAIABIAAAgHAAEBAQICAgIHL2XsuWxzrLkHSe+pAGwAnQmAAQAIAAwAAAUEAQICAgIERySmh6YEbABsnQkAgAEACAAEAAABAAEAxAD9AIABAAgABAAAAQABAGYACQCAAQAIAAUAAACAAOSDhYABAAgABAAAAQABABEA9ACAAQAIABQAAAkIAAEBAQICAgICCApAx5RHJKaHpghJ76kAbABsnQkAgAEACAAEAAABAAEACQD0AIABAAgABQAAAIAADIOFgAEACAAFAAAAgAAJg4WAAQAIAAUAAACAABeDhYABAAgAAgAAAIWFAIABAAgAGwAAAArZMFIw2QAt1q7WLYQLMNkDLdax1i0D2TBUg4ABAAgAOwAAABexsZKSsbEkR0JGM0BTVBcdGBcuQ1JSTEyDgAxsbKOjDAwZIhcXFxIMRf98/3r/ef95/3n/fAK0bGyEgAEACAACAAAAhIQAgAEACAAwAAAAFUdHJCSmpoeHpqb9H09PTx/916ampteDAh9sbIEQbGyurh97e08sDODg4AwsT3uDAIABAAgAQQAAABlHR0c3B9m8w6eHh4fQ0AkrWlpaKwnjsbGx44MAH0AAtARuIfjnd0MAhQCOAJgAqQ6urh97e08sDODg4AwsT3uDgAEACAArAAAAEWxsbEw8MyYZQTIS97OsrKy5uYMNDGByf39/fnkG/fLy8khAAIcCh4cMg4ABAAgATgAAACSUOVrT/TMRDBH3/RHv/Qzy/Tam02wXzST01ify1hwO2SonzSTpgwEMDIEAtIEAtIEAtIEAtIEAtIERDAx5DAx5DAx5DAx5DAx5DAx5gwCAAQAIAGIAAAAqR0ckJKamh4dsbK6u09Ourq6tyvcfU10zLSswRWxsbP0fT09PH/3Xpqam14MCH2xsgQNsbLOugROurh8f1uD/GRkZEAyjoZ2dnbXCH0IArQCtAIEGXj4SEhI+XkEAgQCtgwCAAQAIAGsAAAAuR0dHNwfZvMOnh4eHbGyurtPTrq6urcr3H1NdMy0rMEVsbGwJK1paWisJ47GxseODAB9AALQEbiH453dDAIUAjgCYAKkBrq6BH66uHx/W4P8ZGRkQDKOhnZ2dtcIfXl4yD+/Dw8PvDzJeg4ABAAgATQAAACJsbGxMPDMmGUEyEvezrKysMEVsbGxdR2xsrq7T066urq3K94MNB2Byf39/fnkG/fLy8khAAIcIiouLo7AfH66ugQiurh8fxM7tBweDgAEACABeAAAALK6ubm5SRG5ublMtKSAZTEIm98Wurq5sbK6u09Ourq6tyvcfU10zLSswRWxsbIMWHwAXHx+urlRgf39/fnwMBvLy8h9Xrq6BE66uHx/W4P8ZGRkQDKOhnZ2dtcIfgwCAAQAIACkAAAATMB8nJye3t7fJ+hNFR0fW1jk+PiqDgQACggYc6Le3t9jcgQP39wYLhIABAAgAYgAAAC4DNkREREQ+PBz93dPT2NPR0NDQytDCwsLm7PL1997jAScn8vLCBjVmZmYzCfTPwoMgGRkP909SVFT9//z6+Pf39wQJDSIiIvTjwsLCwsQXFRlUgQtU3t7e+gwuT09PRDmDAIABAAgARAAAAIAeESYwMDAnEgDv2tPT09vuGRnk5AArYGBgKwDVo6Oj1YMQGRkMAwkD+/f39/4GCQcQGVSBDFTCwu0JJFJSUiQJ7cKDAIABAAgAAgAAAISEAIABAAgAQAAAABMUAFdXKjxERERBPj6Pj+9XV/TcpEL/fP98/3wBpduDCQyEhDw8PCMiKhiCAgy8vEMAhwCHAIcAgQRXIvTJvIMAgAEACAACAAAAhIQAgAEACAAKAAAEAwABAgIDJBRSiQMMhAAMgAEACAAFAAAAgADCg4WAAQAIABEAAAYFAQIBAQICACRA/3kDJBRSiQUMIgyEAAwAgAEACAAcAAAAC2ho1cerBSQUUlKJiYMCf7m5gQN/DISEgQAMgwCAAQAIABcAAAgHAQECAQEBAgICHES3QP98AhYGRED/ewGuroEDDIQADACAAQAIAGcAAAACKhRaQP9nAZqHQf90/14CppuJRP97/2//Yf9h/2EIKioq5wApKysrQv9i/2L/YguQrt8tXVVJJltbkpKDDgyEhAzZ2d7sR1FXV1dIRIEGWiDZNjYd9IEK9PG/v7/0NnxVNgyBAAyDgAEACABSAAAAChwcuUze09PY0sK0QP98BlJmcnNmVlJA/3wCHx+MQf9+/2ICvOdKQQCkAIgBeueDFgx//QB/eWxPEdkMnZ0MOWh7fn9/f7m5gQJ/f3+BAbm5gwCAAQAIAAIAAACEhACAAQAIAAUAAACAAO+DhYABAAgABQAAAIAA74OFgAEACAAuAAAAFeQ2d+e/3GA85OQcHMSdJEEZicccHOSDAe/vgQskDAwMDAwMDAwMDCSBAe/vhQCAAQAIAGQAAAAvBhQuPj4+QzQXNEE5OTksC+zNubcG/e7kr4GBgZ2/ytzy3NGnhISEpM7e+QIRwsDqgy8cHBgSDg4K/fLt6Orv6Ovy8vL09FJdbGxsNQntzcLCwjMzMyYH6curoKCgtL8RFhyDAIABAAgAMAAAABCurlRUVEk6M51SUqysrLvKZoOAAQwMRAExARUA3wC2AKwBDAyBQ/7M/wb/Pv9qhACAAQAIAAIAAACFhQCAAQAIAAUAAACAAPKDhYABAAgAaAAAAAFSGkP/av95/23/ZyCurlRUVEk6M51SUqysrLvKZgbawsXFEQcIBgT98j8/RS6DQADXAbm5gUAA14ABDAxEATEBFQDfALYArAEMDIFD/sz/Bv8+/2qAD6am1w0UGSMXFxcjGRQN16aDAIABAAgAIAAAAAktWlqSklpaJI85QgDJADn/eYMBwsKBBgwMOTkMDCSFAIABAAgABQAAAIAA+IOFgAEACAAvAAAAElJSiYlPdHp9cVUj/bnO4eLY0KCDAAyBC4mJeW5MJwXt6VplfkIAnwDHAOIADIOAAQAIAAIAAACEhACAAQAIAAIAAACEhACAAQAIAAIAAACEhACAAQAIAAoAAAQDAQICAgOJd65SA4kADACAAQAIAAIAAACEhACAAQAIAAIAAACEhACAAQAIAAIAAACEhACAAQAIAC8AAAAAR0EAoQCNDGg+A9nCxcvJv4+ufPpA/3yDAAxAAJAOUw7y7vJgWkYa7+8MDFIMg4ABAAgABQAAAIAAA4OFgAEACABSAAAAFCQkHBcXFy0kJNzc0+np6eLc3PIgaUIAkwCTAJMEOPIODslC/23/bf9tAZjhgyEf9/oFCR0VEefnERcdCQX69x+5tL7kCTBSVLlUUjAJ5L60gwCAAQAIAAIAAACEhACAAQAIADcAAABCAIQAhACEBEMi8qGJQP92DJq5zuTQwLy8vFJSiYmDEgwXIT4+Phn9j6nBx8fHz/McDAyBAAyDgAEACAAaAAAJCAECAgICAQEBAQaud4lSMJ2PQf9z/80ADEAAkAMMALm5gQB/AIABAAgADgAABgUBAgICAgIFHORg0DCggAQMZgxmDIABAAgAHQAACwoBAQEBAQICAgICAgD6Qv9n/1n/PQaXHORg0DCgAbm5gQZ/AAxmDGYMgAEACAAVAAAIBwABAQECAgICB5hoRrqud4lSBF5eubkMQACQAQwAAIABAAgANgAAABFjYwYjQUFBPjAfmprZY2Pp1qJC/3z/fP98AaLOgwcMRERELSQkEoILDMfHf39/flgk+9THgwCAAQAIADYAAAAPXV3TxOHh4crT5+feXV3Ck0L/ZP9k/2QDGRmjo4MGDExMTEUnCYIJDNnZcXFxRSfZDIEADIMAgAEACAA+AAAAEF1d0/AODg4H+e+xsff3oF1dRv98/3f/X/9J/0n/Sf9vAJqDBwxEREQtJCEQgg2amgzQ0Hd3d29MJPvZ0IMAgAEACABFAAAAAhcX/YMaBrGxESoyMiUM+tbUzcW8t50JFxcX9LSMjIzXgwUMREQvJB6CGLe37/oA++/pST80Kx8XDOfnXV1dbFgk7OeDgAEACAA8AAAAAicn+oIWDAv3t7dPT97eT0+3twwnJwzzu5SUlNiDBgw2MSgkKxmCAbm5gQ4MDDY2DMLCdHR3e1ok6sCDAIABAAgAAgAAAISEAIABAAgATgAAAAkOIz1J9AAcHDNfQQCAAIQBCQlBAIoAihBnMRQD9ANHNhUA6M3CwsLM7IMgHBwMA6aboKCguP9HR7y8BVV3d3dsaRcE8vLy9gAJCRMcgwCAAQAIAEgAAAAP6RU5OTka6tDMwbf08d7cnkH/d/9wAenpQf9w/3cHqNDn9wC3zuGDHRwcAfrx7/Ly8uvyV2t3d3cXyso5OeagoKCwvBclHIMAgAEACAACAAAAhIQAgAEACAAFAAAAgADyg4WAAQAIAAIAAACEhACAAQAIADkAAAAKRzNpaWA/JB4nJydC/3z/fP98CazpIVxpaby89/eDCQyXl11ONjY2Jw6BBkQEx8fH8v2BApeXDIOAAQAIAE4AAAAkDhIXFxcXHw4UFA4MRETZ2UREDAwODjRmf39/YzEO77ydnZ298YMMHBwcFAnz8vLy18TQ0IEVDAw2NiUcvLzZ/QkWOFJSUjgWCf7ZvIMAgAEACAAyAAAAFlJSiYk8fK6Xnp2dnbrcif01Y2NjUTaJgwAMgQG8vIEP2dfI5AYMDJSUlK7Z9CcnJ4MAgAEACABKAAAAD2lpYDwkHicnJycB1MqUjoJD/3z/fP98/3wLrOkhXGlpvLz390czgxiXXVM2NjYnDgnovqmmFBIXFxFEBMfHx/L9gQSXlwwMl4MAgAEACAB5AAAAGAMTFAwMDPnl5NPy+v8JHAXy7vLy8ujo93REAIwAmQCWAJYAlg14RCQEzc3NLS0t58e2lEX/eP9n/2f/Z/9q/3gAiYMyDOTjBA4XAunp6ePT4unp6fwSGg4E4+QMDBAiIww2Y3R0dD7pAwPnOXR0dHpxRBEkIA4Mg4ABAAgAQQAAAAa3t39/FOSZQv9t/23/bQy7+n9/DhcnMzMzNT5JgQK3MDCDgBMMDH9/f3hOGc2srKwnJyciGxcaDYEE5DMzM+SDgAEACABgAAAAG39/YGB/f9DQIh0bRCwtPj4+MjpXOjcwHCkxV21CAKcA3ADqATAwQgDwAOYArwRyXTAaF4MEFDY2v7+BIRTT3PLy8vYACQkTHBwcKDPNwbS0tML6OTnKygRCWlpaOjODAIABAAgAKwAAAAquj3RUsQBS1tY5OUMAhwCZ/23/foOAAQwMgQLsAP1B/37/fgT9ie/viYOAAQAIADwAAABAALcFDAyjowwMQAEBCtaaf0TZDEHp6TAwQgCTAKT/eQCJgwq5ufr6DAz39wAMDIEJ+gD9o6P9uff3uYMAgAEACAA2AAAAGKamPFrW5zMzysoRJL+8vP301iIiOf1BDAyDgAE8PIEB/f2BD/39AAy5DAw8DAy5Dr8MDL+DAIABAAgAUAAAAAPe3kdHQf7P/oYFR0dBtEncQP9zBfQqKunpH0AApAXK+vozA7+BBElEd+Hhgwr6DAw8PP39+gA8PIEB/f2BD/39AAy/DAw8DAy/Ds0MDM2DAIABAAgAeQAAAAg+8LS0tKSZoJJC/33/cP9wDTk5KxwbJ0Fkd3d3fnw5Qf9w/3AItO+8RElTOby8QP98C8fHMDBEDkEwx7bp/YMG4fw0SVBce0IAngC2AKUnbk8wJDFHTDknGyUzM0dEME/6wsLCHBwUN8IGiYkMDJTZbDP39zNsYIOAAQAIAAIAAACEhACAAQAIAAIAAACEhACAAQAIADAAAAAGHCtATF90f0AAnAGB0EAAoQcXrq7pGRkaDIMGo52UlJS63IEJDAxB0AUiIiIuPIMAgAEACAAFAAAAgAAJg4WAAQAIAFoAAAAq4evg0NDQ4Ovh4ejv7+/o4eG1pqamsuEOHBwcCvfc5OfnwuQi7NADFBH464Mf8vL+CgwMFBwcHBQKCRAE8klJIQnzxMTE9gwgSeT6CwSBCAwMYAwMCebR24MAgAEACAA9AAAAAwMDlY1A/3sWyeQ2d+e/3GA85OQcHMSdJEEZicccHOSDAn+5uYECf+/vgQskDAwMDAwMDAwMDCSBAe/vhYABAAgABQAAAIAA74OFgAEACAAvAAAAAzg4pZdA/3sK1S1aWpKSWlokjzlCAMkAOf95gwJ/ubmBAn/CwoEGDAw5OQwMJIWAAQAIACUAAA4NAQICAgICAQEBAQEBAQIGFDaSNhQX/UT/fgAqAIcAKv9nAQYXCdYADCQJJCQMDCSBAdb3AIABAAgAKgAAAA65uYkGBidUVIyMVFQfiTNCAMMAM/9zgwYQXV1dEMLCgQYMDDk5DAwkhQCAAQAIACYAAAAJJEREnZ3k5EREHET/cwARAKkADv9fgwHKyoEImpoMDDAwDAwkhQCAAQAIACAAAAsKAQEBAQECAgICAgICKpeJQv9t/8f/ZwJVjFVB/2cAMAG5uYEGf6YADEwMAACAAQAIACIAAAoJAAEBAQICAgICAkD+9wIkCTBA/2QCbqZuQf9kAC0BDAxB/3n/eQWgAAxSDACAAQAIAGMAAAAMv79xcfT0PDwZBOfn50L/av9q/2oJmb/dJl08Jhmjj0H/ff9nA6CUkIRD/3j/av9q/2oD5+fnx4OAAbm5gQYMDAAZGSAtgRQO5MTExNsXMBUZ2dne7CcuLS0tHhmBAiIP2YOAAQAIABcAAAkIAQEBAQECAgICAjCdj0D/cwTNiXeuUgG5uYEEf4kADACAAQAIAH8AAAAS7/Do3t7e2Nfm+hY8RPL0BAYbUUMAhACkAKQApA53IuQG8/QHHBwcEgcG6uuCEfrx7e/k0K6srAM0YGBgRy8uR4M66env+gAFEBsiIiIH+qaiqampq7reABg6TEy01wMdLTM0HQMDAyE0JBH67unpTEwkMLy8vAM5Ulc5Ad6DgAEACABxAAAAHdkDJCQkAd7m28fh3d/N0MrKyuHHABI1POnz/PobWkIAggCCAIIQXSQG9+jsOSUE8te9tLS0wOGDJAkACuzb0NDQx9AXGSIiIhoO+fEAHBwOBp2TnZ2dqNQJO2p5eXlBAIMAhAoiDfLy8vYACQkTHIOAAQAIACAAAAANRESxo4fhZmadndPTPiqDAn+5uYEBf4eBBIeHDAyHgwCAAQAIAAIAAACEhACAAQAIAC8AAAAKRERjvLy8Y2Odna5CAIcAA/98AFKDAL9C/37/fv9+Ar+/8oEC8gwMQACEAQwMg4ABAAgALgAAAAM7O6iaQP9+CdixeQCMWndJgQBAAIoBuYeDAn+5uYEGfwwMeQwMCYEAh4EAA4MAgAEACAAzAAAAA9PCNqCBCQYGrJ2Bv6CgMDBB/3z/fAEMDIMIDLGxsbEMf7m5gQN/AAwMQQCQAJABDAyEgAEACABGAAAAAzAwnY9E/3P/zQCEAIQAhARDIvKhiUD/dgyauc7k0MC8vLxSUomJgwJ/ubmBE38MFyE+Pj4Z/Y+pwcfHx8/zHAwMgQAMgwCAAQAIAEIAAAAEERH9/f1CAIQAhACEBEMi8qGJQP92DJq5zuTQwLy8vFJSiYmDFyoODkQqDBchPj4+Gf2PqcHHx8fP8xwMDIEADIMAgAEACAAxAAAABBxFR0dHQv9+/37/fgusyvtJeXFlQnd3rq6DAzY2HfSBCvTxv7+/9DZ8VTYMgQAMg4ABAAgAQgAAAAQfKCQkJEL/XP9c/1wNl9kQVXlxcVR3d66uCQlC/3b/aP9MAKaDAzY2HfSBCvTxv7+/9DZxUzYMgQMMf7m5gQB/gwCAAQAIAHIAAAADFxcUEUEAoQCeF3Q6Ivnq7BkA7Qnx+REREQL9DDAwFw4wb0EAmgChEoGOt+7y8tzWHykzMzMn7OwRB/KDgDHtyMTE9TdXV1dQUgzu8vLy/Q0UISMcHBwE9Le34RQiIgvatyQkHR8MGicnIiIi0NDQ+IMAgAEACAAFAAAAgAA1g4WAAQAIAAIAAACEhACAAQAIAAIAAACFhQCAAQAIAFYAAAAFrq53dx/hQgCNAK8AkwZ3d5SUlOpcQACmE3JdXV3NuqeR2c68rqKUlJRdXV0ag4AIDAxBQQwMBsrKgRNPC8rKQUFnUgDZ2d7sR1FXV1dIRIECWiDZgwCAAQAIAEMAAAAUTEyEhEludHdsUB33tMnb3NLKmkwUQ/9k/3P/Z/9hgwAMgQuJiXluTCcF7elaZX5EAJ8AxwDiAAwA1wG5uYFAANeDgAEACAA7AAAAG8KvnIbOw7Gjl4mJiVJSUg+JiXd3rq53d4mJUlKDCtnZ3uxHUVdXV0hEgQVaINkApqaBBQwMTEwMDISAAQAIACgAAAwLAQICAgICAQEBAQEBQP9zAny0fED/cwI8OwND/1P/Yv9W/1AFoAAMUgwAQADXAbm5gUAA14ABAAgASAAAAEIAhACEAIQEQyLyoYlA/3YMmrnO5NDAvLy8UlKJiUD/ZQPIIgb4QP9lgxIMFyE+Pj4Z/Y+pwcfHx8/zHAwMgQIMf3+BAbm5gwCAAQAIAFQAAAAQLS2StLW9x9TcSelaYW11enxAAJ4BBgZAAIIHGbREDJSjl5KDAAyBRP9c/2r/Tf8y/00DkvLykkT/Vf9B/1r/bP9UgQMMDEkMQADXAbm5gUAA14MAgAEACAACAAAAhYUAgAEACAAFAAAAgADyg4WAAQAIAAIAAACEhACAAQAIAAUAAACAAP2DhYABAAgARAAAAB+/v8PEgYW63uP5BrfM6P0aQUFBMxX907u/+siLgXdsOoMfDiM3PDzeoKCgnqkDFhwcHAj68e7y8vIKG2xsGNbWJGyDAIABAAgABAAAAQABAO8AAgCAAQAIAAUAAACAAPKDhYABAAgABQAAAIAA24OFgAEACABSAAAACf3iw7W0Bg8K6aRC/37/fv9+Aoea2UEAvQCKB1Q+TExMPRrZQP98BdbWOTl32YMg6en5DRFmWGNjYx4M9MLCwgYGBhghFBT/6fqJiQwMlNnCgwCAAQAIAAUAAACAAPKDhYABAAgABQAAAIAA8oOFgAEACAAFAAAAgADyg4WAAQAIAEAAAAAdPj4uEgDu0sLCwtLuABIuPgC/hYd8fEIAP3d5h4jBgx0J+vLy8vLy/AwaHxwcHB8YbGwT1tYQbKOj9y0t96ODAIABAAgABQAAAIAA8oOFgAEACAAEAAABAAEA1gD0AIABAAgABQAAAIAA8oOFgAEACAAFAAAAgADyg4WAAQAIAAUAAACAAO+DhYABAAgABQAAAIAA6YOFgAEACAAFAAAAgADyg4WAAQAIAFMAAAAAr0EAxgDGDK82IxD6QjclFwv9/f1DAMYAxgDGAIMBc2NBAKEAoQPY2Hl5QAChAhQU2YMBf3+BCtnZ3uxHUVdXV0hEgQVaINkMhISBBAwArq6uhYABAAgAUAAAAEH/Sf9JElRUxLGeiNDFs6WZi4uLVFRUEdBAAJgCH6t5QACWAmigH0AAqQHYpoOADX9/ANnZ3uxHUVdXV0hEgQhaINkMDHkMDAmBAIeBAAODAIABAAgABAAAAQABAAMAWgCAAQAIADQAAAAQ+t3Ev7+/5QydnWZmF52dH0FCAIQAhACEAV4rg4ETCSA2SVRUVAwMAH9/2dnZ/zZVdH+DAIABAAgAbAAAADMOCgUDAwMRANPHx+ccZmZmPiL2w64G/Ra8vBwc1svHvLwcHBwC3tKvlJSUlJT3+fr6+gT3gzP9/QsiMDEuKioq09PTCTZEV1dXBsQMFf0tDAwt9/f37xER2RBXV1dTK/f+CgYGBgH0/v73gwCAAQAIAGkAAAAL2beZnbdUXT4E1r6MRP9q/2r/av9q/2oKFBYXFxcU+tDQ3KVC/2L/Yv9iCZnn6enkCCQkJFBAAMMArIMq8vLw5LHh8jt/f39sNgD7Af39/QEDA/vysR8fHwTeuZqamgwMDADe8/LksYOAAQAIAEgAAAAJ2dP3FxcXK01jJ0D/VAS33NzKlEL/Uf9R/1EFgLnZHByJQf97/18AuYMIDAwM/t7k6+jegQ2xsSQkJAnetJSUlH+5uYEAf4MAgAEACABiAAAAKvft3NzcPj4+JAD00re3t7e3GRscHBwmGvrn9QYODQnvPj7c3EddYGJaRBqDHPf39ukREdkQV1dXUyv3/goGBgYB9P7+9+lBRVt6QQCaAKkBDAxBAPYA9gexsXlpRyYI74MAgAEACABOAAAAJJqaSUnQ0ElJmpoUFM3GrpqamhQUFPrWyqeMjIyMjAMFBgYGDviDAsqgoIEfDAwUFAwMyvf39/HpERHZEFdXV1Mr9/4KBgYGAfT+/veDAIABAAgAAgAAAISEAIABAAgAYAAAAAW5uff3MBxBAIIAggUM8c28vLxCAIIAggCCA0cO9KRE/2f/Z/9n/2f/ZwccHh8fHy85K4NAALQFkpIMDJKSQAC0BPLy/BgzQQC0ALQJpg1ubm5mLuT0BIIF+efx+PbygwCAAQAIAGQAAAAvCSo9Pu/+DCc3X3x8fFsxJB8JNkFjf39/TxQQA/pJPSwM9NfHx8e/y+nKvMLCwtf5gy8cHBYRv7SgoKCsy+kHJjMzM8LCws7uDDZsbGxdUvT28vLy8PP99O7v8vr69/0EEhyDAIABAAgATwAAACLCr5yGzsOxo5eJiYlSUlIPUlKJiU90en1xVSP9uc7h4tjQoIMK2dne7EdRV1dXSESBA1og2QyBC4mJeW5MJwXt6VplfkIAnwDHAOIADIOAAQAIAEcAAAAIFH8JnRFa+o8XQACTAiKp0EEAigDDDSg+QUM7Jfzcx9Xm7u3pgwUMDFoMDBGBAKyCDgwMvLx5aUcmCO/pQUVbekEAmgCpg4ABAAgARAAAABysrCQcExERESpFUURJSTANxJSUlOokSUmSJP2sH0AAkwAzg4AVDAwMFQjn/ffbv7+/MDAwKg3pxZ2dnYEEv/cMDCeEAIABAAgAUQAAAA3pwur09PQHCvJaWsrKM0AAhAQqysoGSEIAhwCHAIcKVcrKFwZaWjMzWlqFgAjZ4cre7gIMDAyBFry8AB8fo6Ojwtz8HwAMDKOjOTnT03R0hIABAAgAAgAAAISEAIABAAgAAgAAAISEAIABAAgAJwAAAA0nKnFuO2hooKBoaDKdR0AA1wFHh4MFrPRmHMLCgQYMDDk5DAwkhYABAAgAbwAAADP35PIDCwoG7D4+3NxEWl1fV0EX07+4o9DEwLSompqa+vr6792ampq61u0qXTwmJy0i+vr6gwTpQUVbekEAmgCpAQwMgRKxsXlpRyYI79nZ3uwcIiIiIhMOgRIiFvPZAA7kxMTE2xcwFRkZGRkRhIABAAgAagAAAAQZBOHh4UL/av9q/2oJmb/dJl08Jhmjj0H/ff9nA6CUkIRD/3j/av9q/2oP4eHhwsTEdHT6+nR0xMQ+PoMDGRkgLYEUDuTExMTbFzAVGdnZ3uwnLi0tLR4ZgQUiD9kAoKCBBQwMFBQMDIQAgAEACABCAAAABZqaY2P3x0P/fP9R/1H/UQye3mNj8voLFxcXGSItgQKaRESDgBMMDH9/f3hOGc2srKwnJyciGxcaDYEE5zAwMOeDAIABAAgAOQAAABSxsbGxiYmv3ek+PgnBiTMzJhocPj5B/3b/dgLkEjODgw/vwZmPj48+Pj4R7OPNv7+/gQMMDAz2g4ABAAgAOwAAABvn1MGr8+jWyLyurq53d3c0iYl3d66ud3eJiVJSgxLc3OHvSlRaWlpLRwMDXSPcAKamgQUMDExMDAyEgAEACABwAAAAIvr6yhccH8LK0Bfk5Nz0R0cJ7/Lt4tbTyuzsCbe37/r8AwgLQf9q/2oB09OBBvfpJzYM2f2BAdPTgwK5VFSBAbm5gQVUVLkAVFSBG1RITl1qZgwMAFRU2dlgWFZYWfcREQwMEREMDCqBAff3gQD3gwCAAQAIAHEAAAAIJxQhHQHpxB8fQACNBKCgPlRnQgCXALcAsA+S+vr669LE09PWqY6QkgNmQgDAAKQAlgYDPj6rnYHbg4AAd0EAnQCQCkkZDAwAf3+urhR+QgDZANwApgQMDMLZ9IIHiYyMrcrEf3+BBLm5f7m5gQB/g4ABAAgAQgAAAARgYJeXeUQAngCkAKcAnACADk0n5PkLDAL6yj4+q52B24MADIELiYl5bkwnBe3pWmV+QgCfAMcA4gMMf7m5gQB/gwCAAQAIAAIAAACEhACAAQAIAGgAAAAxIlc7JiIiGyE0SVBaWlocA+3FrKys0dzZAztPT2hMMzNCUlJSOxcD0q+urq63zuTs9guDMRe8p6Oxt7m+z/geJBEzY2NjUiDyyampqZTHM25aFxcXEP7v6+3y8vL9EBwdGxURDg4SgwCAAQAIAFMAAAAnFBs2TExMJkE7RERENh0JrKzT+AwsTmxsAsyPj4/FAAlsbADco6Oj1YMMHBwcGBEFCxEL/wwE/4IXERccxMTIyl1dXUstAez09PQfHx8V7M7Eg4ABAAgADwAAAAVjo6MkEWODgQMMDIeHg4ABAAgABQAAAIAA+oOFgAEACAAYAAAACY+PJCRjo6MkEWODA+Q+PgyBAwwMh4eDAIABAAgAHwAAAARHR8i6rkD/cQVjo6MkEWODAny5uYEAfIEDDAyHh4OAAQAIABAAAAcGAQIBAQIBAQZBx5dXlxgFBsQZGQAMDIcAgAEACABlAAAAB6ysrOQDL1psQgCWAJsAiAdpdnVsbGzKykIAigCKAIoSym5P7NnGsPjt283Bq6ura2trNIOAAdakQv92/3b/dgmRoC0i9/f39OjcgREMDACPDAyP2dne7EdPVFRUSUGBAloe2YOAAQAIAEgAAAAQRET6Se/gzMLCx6NscXBvcntAAIQBo99AALUJeGxe32Nj5NbKjYMBDHyBEHx1Wy8MDKCgDCZNaHh8fHx8gQS5uXy5uYEAfIMAgAEACAACAAAAhIQAgAEACAAFAAAAgAD3g4WAAQAIAAUAAACAAPeDhYABAAgALwAAABXW1iRXv7+uNh/W1ioq4c1SRES54Soqg4AB3NyBCwYMDBQUDAwUFAwMBoEB3NyEgAEACABmAAAAAsTHrEL/fv9+/34frNzc8PqxwdLsCCo5OTkpAyI0MzMzH/zn4sW3AA333KpC/3b/dv92AqvWvIMrJCQkB/LOrq6uusIZIBwcHBYPEQ8HAPz//vf19PLy8uPpSU5jY2M1EevQ0NCDAIABAAgALAAAAA9PT6ampr7PT7GxWlpaQy20gwAMgUH/N/9hAZGhgQEMDEIAzgC3AI4BYgyDAIABAAgABQAAAIAAA4OFgAEACAACAAAAhYUAgAEACABkAAAAFTk5iYmJnalSt7dmZmZfUUSgdiGGlIlA/0sP/dG5vLwI/v/9+/TpNjY8JYMADIFD/zf/Mf89/1eBAQwMRgDOANEA0QC5AJYADADAAbm5gUAAwA+mptcNFBkjFxcXIxkUDdemgwCAAQAIACAAAAAGrKxsbBe3T0AAngQthBFsbIOABgwMJycMDAaBAcfHhACAAQAIAAIAAACFhQCAAQAIACwAAAABLS1B/23/bQ1IXWNgSyQGt7m3saupo4MADIEOlJRUTC8P8ulgZW9vYU8MgwCAAQAIADoAAAAUPjmdv8LK09Mk1jk5Q0dHXcfCXf2agwAMgUT/Ov9O/3D/cP9wAfT0RP9w/3D/Wf9L/yeBAwwMYAyDAIABAAgADgAABgUBAgICAgIFj3GxcY9PBcQADEEMAIABAAgAAgAAAISEAIABAAgACgAABAMBAgICA5JusU8DjwAMAIABAAgAAgAAAISEAIABAAgAAgAAAISEAIABAAgADAAABQQAAQICAgQ8JGCgxAQMkgCSDACAAQAIAAIAAACEhACAAQAIAAUAAACAAAODhYABAAgAfAAAADvQMDAsJy03MSQkJDA0Jx0nMDDQ0Nnl3NDS3Nzc19bc4tnQIjdjY2M3Igrn0NDqCuT7HTAwH//py5qamsSDOxkUJyQcHBwbEQP58vLy8ufZ7OfW5/Ly8vL5AxEbHBwcHiSxsdwDL1paWkAk3smxsbHK4SQ8WlpaIgPcsYMAgAEACAACAAAAhIQAgAEACAAsAAAAE2BgoKCmvcK1oKCgYGBgTCIDsKCggwAMgRC+ytnZ2ezyDAwMMVpaWjkYDIMAgAEACAAZAAAJCAECAgICAQEBAQI4mldA/3sDHJ2Pg0D/RgUMAAx5ubmBAHyAAQAIAA4AAAYFAQICAgICBT7CUs0zrIAEDHkMeQyAAQAIAB0AAAsKAQEBAQECAgICAgIBCIlC/3v/b/8yBT7CUs0zrAG5uYEGfAAMeQx5DIABAAgAEgAACAcAAQEBAgICAgeYaEa6T7FukgdeXrm5DAAMeYABAAgANAAAABFdXeHqFTw8PCbtuZ2d6V1d3LxC/37/fv9+AJ+DCAwfHx8qJxH49IIJDLy8bGxsShnyvIMAgAEACAA8AAAAETAw7A4JCQkSGhejo/owMAndnkL/fP98/3wEu11d09ODBwwiIiISDBAJggsM09NUVFROMhHr0wyBAAyDAIABAAgANQAAABhXVx87SURERFJXTJeXzc0JV1cX97SHh4fYgwgMGRkZDQQJEw6CDI+PDLe3bGxsYz0R2beDgAEACABHAAAAITAwJDwZGRkrQbe3MDY3OzkoFOHk3M/Cv7cZMDAX35qamt6DBgwZGRkIAweCF6mp/f358uvpVFJNRTYqDMrKT09PNQnlyoOAAQAIAEEAAAAeMDAnMikZGRkfHxS0tBERmpoREbS0KjAwCfDAo6Oj5YMIDCcnJxcLFBoOggHKyoEODAwnJwzW1lpaWl1EGeXWg4ABAAgAAgAAAISEAIABAAgARgAAAAwMJzw++gcPJDp5fzAwQQCCAIQPSyoZBPQ+OycD8dTExMTe/4MeHBwOBq6mo6Oj7C0t2dkfZmZmYFf3+fLy8voBAw0YHIMAgAEACABIAAAAEP0EJD4+PiX+58fLxBEG5d60QP99AoEJCUD/fgiBtt7lBhHK4NGDHhwcD/76+PXy8vL3A0xXZmZmHNnZLS3qo6OjrLwRGRyDAIABAAgAAgAAAISEAIABAAgABQAAAIAA+oOFgAEACAACAAAAhIQAgAEACAACAAAAhIQAgAEACABTAAAAGCIzNzAwMDUwIh0YFRFERMLCREQUFxYaIltCAIoAigCKCHdKIvnKt7e37IMNHBwSCQn58PLy8tzL09OBFAwMMDAkHRzCwvEJCixMTEwsCgnrwoOAAQAIADUAAAAYpqY5TXx8fGZHpqZEt8m/v7/hOWZmrLdEZoOAErm5ucjsEBwcHNDQ9PDj3twMDAyBAfTQhIABAAgAVwAAABFxcScncXF1VlJCTExMTDYP2blB/3z/dxGAjIyMjLf0F1J0cXGxseTksbGDCxw2NvT0MCccHBwaFEAAjRFhJwHr5HFtaVQz78eampq31NaBBPT0NjYMg4ABAAgAAgAAAISEAIABAAgARgAAABpJSUlBSUkUMT85OTlVZ1qJicTEiYn9SUkM66lC/3z/fP98AMyDDDAfH97eIiIiFgsOIReCDt7eHx8iv79sbGxlQRfiv4MAgAEACABZAAAAEScn/f0nJ6ysAwH46bHM/BdTf0AAhwH9/UEAigCID0YaAt/K8v8P/e3u+vr6+/6DBAwwMNPTgR8MHBwXGezUwsLCEC0t2dkFRERENiL3/vLy8vwEAw0YHIOAAQAIACgAAABAAIIEMKb0YM1A/3wHrKxJSc02Ns2DAAyBAAaBBAwcxMQcQf9n/2eFAIABAAgAKAAAABLp6S0tnZ0GBre3BgbKrFdJ8gktg4BB/2T/ZIEFDAz9/by8gQEMDIcAgAEACAA2AAAAGNbEPi2d+kFBxMQJYLy3twn970dHRwkD7NmDgAEGBoEBsbGBD7GxANnCDAwGDAzC2coMDMqDAIABAAgARQAAACCjow4OpqYODtPT0x8M+k9PTBcG6dzyo382zTlHR+np71qDgBYMDBERzc0A5MIMDBEMDMLk0AwM0AAREYEBzc2BAc3NhIABAAgAZwAAAAj68MLCwqquqoVC/2T/ZP9kA5qxzc1A/3kD9PQwMEAArxVPSjMzM0FQUlltfHx8RBQlVUTbyvgOgyve2OcDAyRJXmVBF9GdnZ3nnZ0MDJQJCQn7FBAUC/Ti19/p/ypBRAnT0wlEPIOAAQAIAAIAAACEhACAAQAIAAIAAACEhACAAQAIAC8AAABA/34CnWzvQf9Z/1gMl7nN2tze6fDy/wQJV4OAEAwMcbHnCQkJEBmHgoGBgY+XhIABAAgABQAAAIAA4YOFgAEACABjAAAAQgDqAM4AmwtdOjART2wn9BE8QFZAAJ0bERsK8vLyCRgOFCMwMDAlFxH9BgYG/Q4gHBwcI4ME5P0ECgeBJAwMYAwM797h6/Ly7/gJERkcHBwWDQn06/IXF/4JD/Ly8gwJ/heDgAEACAA+AAAAGtbWJGbNv7xEH9bWKirhv0RENqzhKionJ8S3rED/bYOAAdzcgQsGDAwUFAwMFBQMDAaBBdzcAHy5uYEAfIMAgAEACAAFAAAAgADyg4WAAQAIAC8AAAAEHR2ekIRA/0cGrKxsbBe3T0AAngQthBFsbIMCfLm5gQh8AAwMJycMDAaBAcfHhIABAAgAMgAAAAqsrFJSNjZERCqpT0IAugAt/3AGKkRENjZSUoOACgwMCQkJCQkJDAwDgQXn5/f35+eEAIABAAgALAAAAEAAshFBlyR8fLy8fHwqymO/OTl/vLyDAAaBAcfHgQsJGScnDAw8PPr6+jyDAIABAAgAKwAAAAa3t3d3JKlBQgCsAB//dgYfd3e37Ox3g4AGDAwnJwwMBoEGx8cAj48MDIOAAQAIABsAAAsKAQEBAQECAgICAgIDJKWXi0D/TgWBY6NjgUEBubmBBnzEAAxBDACAAQAIAB8AAAoJAAEBAQICAgICAgAkQP9nAQ7nQP9nAkmJSUH/ZwAnCYwMDIzEAAxBDAAAgAEACAAXAAAJCAEBAQEBAgICAgMqq52RQP9UA4llqEYBubmBBHyPAAwAgAEACABTAAAAJ+fnRES/v2xs08e1oNnOwbynj4+PFxcX7I+Pj7DN+iU2Jy4gFBQXFxeDgAEMDIENo6MA2dne7C00NjY2JQ6BET4U2QDZt4yMjLTTEQT39/fmxISAAQAIAIYAAAAZVFVPR0dHSEU+M0FBQUZLS0dUJ/zv7+8SOWFCAIcAhwCHBn1xbkxRXmlEAIsAmQCZAJkAkQ10VEcj9d7e3gE7YGR4eYMQtMrzCgYN++Tk5P7s9fv38vJBAIIAghVbIgbkqamp5A4TDvPZmpiXl5fcAyFbQQCCAIIL8vICDgkGEBwcHBQUgwCAAQAIAGsAAAAr0/0eHh772ODVwdvX2cfKxMTE28EiD/PyPj00DPrZxMTE3AARKztB+gseJEpCAIQAhACEAWxAgzAJAArs29DQ0MfQFxkiIiIaDvnxAHl5eHcDAfLy8voBAw0YHBwcFQ6pnpeXl9wDIVd5g4ABAAgAIwAAAARERMW3q0D/bgc8JGBgoKDExIMCfLm5gQN8DJKSgQKSkgyDgAEACAAWAAAACKOjqX8Dl1ddXYMI5+EMDGwMDOT3gwCAAQAIACAAAAANR0ddvLyjo6l/A5dXXV2DgAzKysoA5+EMDGwMDOT3gwCAAQAIACsAAAAELS2uoJRA/1cLbKmJl2AAlE90V5L3gwJ8ubmBAHyBBgMMDE8MDAmBALmDgAEACAAjAAAODQABAQECAgICAgIBAQEBB9y0PJcAH5o8QP9+Ax+xo5dA/3YKDK6urgwMAAx5ubmBAHwAgAEACAA7AAAABEFBwrSoQP9rE2BgoKCmvcK1oKCgYGBgTCIDsKCggwJ8ubmBAXwMgRC+ytnZ2ezyDAwMMVpaWjkYDIOAAQAIADQAAAAXFxcJCWBgoKCmvcK1oKCgYGBgTCIDsKCggwQc5+ccDIEQvsrZ2dns8gwMDDFaWlo5GAyDAIABAAgALwAAAAeJiYnG7BxJV0EAggCECXZUVElJSbS0dHSDgA0k466urtDyf18wMDAyHIEBDByEgAEACAA6AAAABCcnqJqOQP9RE4ODg8DmFkNRfH5wTk5DQ0Ourm5ugwJ8ubmBD3wAJOOurq7Q8n9fMDAwMhyBAQwchACAAQAIAG8AAAAP8vLl3CcyPDw8MzDZ2RwY8kIArwCvAIoYVTw3NR9UVEwtDggXFxcQEyI2NjY2NTMcT0EAowCpApea5oMwGRkVDPcHFBQgKioq09PT7dz/NVRUVFZMDAfy8vL7BAYHEhwcHA339+TcwsL5Kir0woOAAQAIAAUAAACAAHSDhYABAAgAAgAAAISEAIABAAgABQAAAIAAA4OFgAEACABeAAAABaCgYGBSF0EArwDiB1JgYNDQ0ApaRADGALEAkACQAJALEf7r1R0SAPLm0NDQQgCQAJAAkABZg4AIDAwfHwwM/b+/gRNJ87+/DAwGGQDZ2d7sR09UVFRJQYECWh7ZgwCAAQAIAEEAAAABHx9B/1//Xw85T1RSPhb3qauoopyalFgDQ/9o/3b/a/8tgwAMgQ6UlFRMLw/y6WBlb29hTwxAAMABubmBQADAg4ABAAgAOwAAABvQvaqU3NG/saWPj49PT08Yj49xcbGxcXGPj09PgwrZ2d7sR09UVFRJQYEFWh7ZAMTEgQUMDEFBDAyEgAEACAAoAAAMCwECAgICAgEBAQEBAUD/ZAJjo2NA/2QCJFsGQ/9r/3n/bv8wBcQADEEMAEAAwAG5uYFAAMCAAQAIAD0AAAAZYGCgoKW+wrWgoKBgYGBMIgKvoKCSaCsfEZKDAAyBCvcCERERJCoMDERqQgCTAJMAkwRxUgx8fIEBubmDgAEACABNAAAAAfr0QP9nDomMiYHvoB8fHx82rqlEx0D/SQEw3EP/cP9+/1H/Z4MADIFC/zr/Tv91A4T09IRC/13/S/8ngQMMDGAMQADAAbm5gUAAwIOAAQAIAAUAAACAAAaDhYABAAgABQAAAIAAA4OFgAEACAACAAAAhIQAgAEACAAFAAAAgAD6g4WAAQAIAE4AAAAkAxg9VFRUSywM466urq+vtLRXV1dXXC4M4baxsb3P9PTu8q625oMkHBwQBgkaC/Ly8gIXFy0zM+Tk5ujsKGNjYzDkPO6xsbGvuQkPHIMAgAEACAAFAAAAgAAcg4WAAQAIAAIAAACFhQCAAQAIAAQAAAEAAQDsAPQAgAEACABMAAAAD+nTw8C8+vTk1quJiYmi57dAAIoIcVJCR0dHOBC3QP9nBcLCMDA5t4Mg5+fu69xHXmBgYC0A4ry8vBkZGR0gHxsA5xGUlAwMoNa8gwCAAQAIAAIAAACFhQCAAQAIAAIAAACFhQCAAQAIAAIAAACFhQCAAQAIAEAAAAAd/RE3UlJSORQA7siurq7H66xSUioA06z9LFhUqaTPgx0cHBYNCfTr8vLy7/gJERkc5OQfZmZmH6mp7Bwc7amDAIABAAgAAgAAAIWFAIABAAgABQAAAIAAEYOFgAEACAACAAAAhYUAgAEACAACAAAAhYUAgAEACAAFAAAAgAAOg4WAAQAIAAIAAACFhQCAAQAIAAIAAACFhQCAAQAIAEIAAAAegXNzgfThzrgA9ePVybOzs3NzczxXl5cYBVdBQcfHl4MBfHyBCtnZ3uxHT1RUVElBgQJaHtmBCAwMh4cZxMQZGYMAgAEACABEAAAAH65XV67ZxrOd5drIuq6YmJhYWFghbKmJl2AAlE90V5L3gwF8fIEK2dne7EdPVFRUSUGBAloe2YEGAwwMTwwMCYEAuYMAgAEACAAjAAAAD2ypiZda+ppPdFeS+piYcnKDgQYDDAxHDAwJgQS55jAw5oOAAQAIAAIAAACEhACAAQAIAHoAAAA63tGvnKamMzMzDezWrpeXl5aUHyEiIiIV+Pf68unp6fX358W9rrzG6xQ+dHR0YD4nBcesuc73B6amMzODOvf3DSo2ERHNBFRUVFI0DAMKBgYGBwkJAPfy8vL+ERUaHBwcPDz39by8vPgJBipSUlI194zO9/IiFAlmgwCAAQAIAGEAAAAPDhAREREQ+dnbopTK+vquk0L/XP9c/1wQltzs79MEHBwcOWk+J/vcypJE/2f/Z/9n/2b/ZIMoBgYHCQkA9/f34QOmpiIiIg3etpqamgwMDO/n4uzkM1dmZmZiPQwDCgaDgAEACABFAAAAAwYGnYJC/0z/TP9MEYXK9/rC8wwMDE02geR5UgYGh0L/ef9t/zCDGKkiIiIN3raampoMDAzw5/rbqQCM0wB8ubmBAHyDgAEACABdAAAAKhfEurSzsq60OTm3tyQtNC8iFuzWv7e3tzk5ORnv3a+Pj4+OjA4QERERDv6DF+k8Nz0zAMIMDMLCoKCsw9vl5/f3BhcZAkAAhhHpDVRUVFI0DAMKBgYGBwkJAPeDgAEACABRAAAAJKmpTEzKykxMqakqKtnDr6mpqSoqKgjczaWHh4eGhAMFBgYG/+uDAvrKyoEMDAw8PAwM+vf3BhcZZkAA6hHpDVRUVFI0DAMKBgYGBwkJAPeDgAEACABJAAAACQkXMDD39woiJlZCAIQAhACEEkAJ/s6urioUV1dHMAzux8fH2vmDHxwcCwaspaampq/N7DlmZmZfTMfHJCQA9+zs7O3vBBccg4ABAAgAUwAAAAzZw6WXl5dXV1cU5MyWRP9w/3D/cP9t/2oPFBcZGRkbE/iXl/f3KhRXV4ME9/f6CBlB/s//VBrKHWZmZlQRx8vf4eHe1NDl9/r3DJqaDAyamgyDgAEACABmAAAAAzwzKlVCAIoAigCKH1knEPP9STknHwnkzc3Nw9T90sfHx9wBHDo/TwYRLS1cQgCCAIIAggFUOYMrJNDQ0OsRNWNjY01H6eXy8vLx8fT19vkA+/sGBA8cHBwgGcK6rq6uzvIHJCSDAIABAAgAVAAAAAKum4hA/3IEuq+dj4NC/23/bf9tBS0tLfYtLUH/bf9tDUhdY2BLJAa3ubexq6mjgwrZ2d7sR09UVFRJQYEDWh7ZDIEOlJRUTC8P8ulgZW9vYU8MgwCAAQAIADwAAAAbx5K5Nu+aGVIZne9PH83KxcK7t7xphDA2OzQoHoOABgMMDE8MDAmBEbkA6Tw6R0EJwgwMo6Osw9vl54MAgAEACABcAAAAIyQ2F5rQ0KMG6tvh4eHo7ewSJiIit7cUFCIhvN4NIiIL27+zhkP/Yv9i/2L/dQCcgwEMA4EkwgYMHBwnIQkD+PLy8tzT7+cMDDA3HKys4RTyI1paWkslA/XMrIMAgAEACAB3AAAAFjkMLVdXVzL98vIf2dfZ2dnN1/eE8tY8QACEH3l1MQzlw67v5vYA+vX09PTp6/37EREREA73K3J0jI/Dgze5ubnP9wQZGRnQ0Ozy8ffs+AwMDAD00ADcH2BgYFFJAO3y8vLx9P3+DhwcHA339+TcxMT4HBz1xIOAAQAIAAIAAACEhACAAQAIAAIAAACEhACAAQAIACgAAAAKHx90dLW1dXUgwFhAAKcENo0adXWDC9YRYCQADAwnJwwMBoEBx8eEAIABAAgAZwAAADEt3NnU0MrEykdHv788RElDNyzWybij3NHDv6qSkpIZGRnvkpKSs9D9KDkqMSMXFxkZGYMI6Tw6R0EJwgwMgRGgoKzD2+Xn2dne7C00NjY2JQ6BET4U2QDZt4yMjLTTEQT39/fmxISAAQAIAFsAAAArwsJpaefnaWnCwkRE08e1oNnOwbynj4+PFxcX7I+Pj7DN+iU2Jy4gFBQXFxeDgAHKyoERDAw8PAwMANnZ3uwtNDY2NiUOgRE+FNkA2beMjIy00xEE9/f35sSEgAEACAA/AAAAQf9q/2oUKioM8LCEhIT3KirvF0FBQScUHKmpQv9qAIQAh4OAEQwMbGxsZUAUysrKLS0tJwzx74EEIkFBQSKDgAEACABUAAAAD9zc3NwRDhMZGRkQDRctOTlB/3n/eQ0qKjMqxO4uOTku8eewgkL/ef95/3kBiKiDgyAcHBoTCQP48vLy5PfnDAwwMxydndDZOUlpaWlNHgP7yp2DAIABAAgAOwAAABvy38y2/vPh08exsbFxcXE6j49xcbGxcXGPj09PgwrZ2d7sR09UVFRJQYEFWh7ZAMTEgQUMDEFBDAyEgAEACABkAAAAL/LyMAYXGeTh8scMDDP39xQfJiorLgMD/PDm3t7cHx9pZhcXMzMwBjlSEectMzMXF4MCuUREgQG5uYEfRES5RET09ERdaV9LAERQa3ltVAwMAOEODgwMDg4MDAaBAeHhgQDhgwCAAQAIAHIAAABAAIoG4eFPWlxsfEAAiQq/t6+srKwJCQns7EEAhwCHC+9ERFRUUDAK7+8+PkMBFAC6AK8AoQKuoJRA/0kBERGDF2Bg2dlEQlJla6CgwM2uDAygutbW1qAMDIEBYHRBAIcAgwRqVLlgYIEBubmBAmBguYMAgAEACAA6AAAAATw8Qf98/3wSVGxzcFszFMTGxL64t7EfH6CShkD/SYMADIERlJRUTC8P8ulgZW9vYU8MfLm5gQB8gwCAAQAIAAIAAACEhACAAQAIAAIAAACEhACAAQAIAAIAAACEhACAAQAIAAIAAACEhACAAQAIABgAAAAEdFSujwBBAKT/YYMADIEBDJ1BAKEAoYMAgAEACAACAAAAhIQAgAEACAACAAAAhIQAgAEACAACAAAAhIQAgAEACABEAAAAH7lHR7k+Pi4SAO7SwsLC0u4AEi4+h4e2AEp5eXlGALqHgx/p6RkZCfry8vLy8vwMGh8cHBwfGAn2o6Oj+gwebGxsHYMAgAEACAACAAAAhIQAgAEACAACAAAAhIQAgAEACAAXAAAAAXRUQv95AAMAjQGuj4MADIEAoIEADIOAAQAIAAIAAACEhACAAQAIAAIAAACEhACAAQAIABIAAAcGAQICAgEBAgY+wjbcV0fCgEAAigTQPgyJDACAAQAIAAIAAACEhACAAQAIAAIAAACEhACAAQAIAAIAAACEhACAAQAIACcAAAAAMEAAnAMwMNDQQP9iA9DQMDBAAKQAMIMC9H9/gQd395cMDJSU/YOAAQAIAAIAAACEhACAAQAIAAIAAACEhACAAQAIAFIAAAAUJCQPERERISQk3NzT7+/v5tzc8hhbQgCEAIQAhAQr8g4O1UL/fP98/3wBpeiDBwwMECYJ+v39gRf9/foJKRAMDM3OyN4JODlBzUE5Nwndxs2DAIABAAgAAgAAAISEAIABAAgANQAAABi3t8/s+vr6fHx8ItDQMDDehISEBgYGJ0dHg4AW6fPu6O8MDNkAQjwMDDxFA9kMDO/t+OmEgAEACABaAAAAgAEnZkIAigCKAIoYQBERwsK5s8LCwsfhAB85Pj4+T0c+PuzswEL/dv92/3YBm9qDBqCguABJWHdAAIKBEHl5fXRJHhAcHBwQHkl0fHl5gUAAggV1WEkAuKCDAIABAAgABgAAAIBA/3+DhQCAAQAIAAYAAACAQP9Yg4UAgAEACAAGAAAAgED/WoOFAIABAAgABgAAAIBA/2ODhQCAAQAIAAUAAACAAJCDhYABAAgABgAAAIBA/1qDhQCAAQAIAAUAAACAAJiDhYABAAgABQAAAIAA8oOFgAEACAAFAAAAgADpg4WAAQAIAA4AAAQDAQICAkMAmf/TAJkAMAOsAAxJgAEACAASAAAIBwECAgICAgICB5rNM2PNRLwzB48MjwDsxNnCgAEACAACAAAAhIQAgAEACABPAAAAE6OjWlo+Pi4SAO7SwsLC0u4AEi4+Qf92/3YCtgBKQgCKAIoAigJGALpA/3aDAOmBHOkJ+vLy8vLy/AwaHxwcHB8YCfCjo6PyDCRsbGwmg4ABAAgATwAAACIi58+urq6ss7/Xyq6urs72DANaT0FKYXR0dFxHTEhRXV1dP4MS6UdIJ/3p1MvHv62xyuoHDwwMDEL/ef95/3kMj7fT9SM4MzEwKR8S8YOAAQAIACQAAAAPMCklJ5KSLTZSVDIiYGCXl4MMo6epqakfHx8VDAyEhIEADIMAgAEACAAcAAAAC5qEPlrTvCdBebyjY4OACsS/AL9JSb9ESQwMgwCAAQAIAB0AAAAMru/6YzbKyhdgDtkfPIOAAi0MDIEFORkA/e8GhIABAAgAWwAAAED/fgEUFEP/fgBH/37/fgFHR0j/eQAfAOoAH/9Z/4T/cf9e/0gBkIVF/3P/Zf9Z/0v/S/9LAxQUFNGDQQCKAIqDBQwMBgwMF4EK2dne7EdRV1dXSESBAlog2YOAAQAIADYAAACACgMRFyM8RHR0rKy/QACZCAy5sLPT8vsKDIMHo6OgoKCtufKBAvIMDEAAhwcOBw8cHBwdH4MAgAEACAAGAAAAgED/doOFAIABAAgABQAAAIAA8oOFgAEACABBAAAAgxs+Pi4SAO7SwsLC0u4AEi4+h4e2AEp5eXlGALqHgx/p6RkZCfry8vLy8vwMGh8cHBwfGAn2o6Oj+gwebGxsHYOAAQAIAAIAAACEhACAAQAIAEkAAACACBI1POnz/PobWkIAggCCAIIQXSQG9+jsOSUE8te9tLS0wOGDEBwcDgadk52dnajUCTtqeXl5QQCDAIQKIg3y8vL2AAkJExyDgAEACAACAAAAhIQAgAEACABIAAAAgBAYOkxMTEMpDv3axxQYCfrdo0L/fv9+/34IpuH97v4MxNb3gwwcHBMJCQD28vLyDSJ/QACCD3l5eWo7CdSonZ2dlqAGExyDAIABAAgABAAAAQABAEcATACAAQAIAAQAAAEAAQAlAEwAgAEACAAEAAABAAEAigC1AIABAAgABQAAAQABQP9wALSAAQAIAAUAAAEAAUD/EACpgAEACAAFAAABAAFA/w0AqYABAAgABQAAAQABQP8TAKmAAQAIAAUAAAEAAUD/BACpgAEACAAFAAABAAEAoED/L4ABAAgABgAAAQABQP9zQP8vAIABAAgABgAAAIBA/36DhQCAAQAIAAYAAACAQP9+g4UAgAEACAAFAAAAgAADg4WAAQAIAAUAAACAAPKDhYABAAgABQAAAIAAA4OFgAEACAAFAAAAgAADg4WAAQAIAAUAAACAAAODhYABAAgABQAAAIAAA4OFgAEACAAFAAAAgAADg4WAAQAIAAUAAACAAAODhYABAAgABQAAAIAAA4OFgAEACAAFAAAAgAADg4WAAQAIAAUAAACAAAODhYABAAgABQAAAQABQP9jALWAAQAIAAUAAAEAAUD/ZQC1gAEACAAFAAABAAFA/0YAqYABAAgABQAAAQABQP9GAKmAAQAIAAUAAAEAAUD/JQCpgAEACAAFAAABAAFA/xMAqYABAAgABgAAAIBA/3ODhQCAAQAIAAYAAACAQP9Yg4UAgAEACAAFAAABAAFA/2UAtYABAAgABQAAAQABQP9nALWAAQAIAAUAAAEAAUD/SACpgAEACAAFAAABAAFA/0gAqYABAAgABQAAAQABQP8nAKmAAQAIAAUAAAEAAUD/FQCpgAEACAAFAAABAAEAhED/MIABAAgABgAAAQABQP9cQP8wAIABAAgABgAAAIBA/3WDhQCAAQAIAAYAAACAQP9ag4UAgAEACAACAAAAhYUAgAEACAACAAAAhYUAgAEACAACAAAAhYUAgAEACAACAAAAhYUA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) format("truetype");font-weight:400 700;font-stretch:50%}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }._btn{display:inline-flex;width:100%;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;border-radius:.25rem;padding:.5rem 1.5rem;text-align:center;text-decoration-line:none!important;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-timing-function:cubic-bezier(0,0,.2,1)}@media (min-width: 768px){._btn{width:-moz-fit-content;width:fit-content}}._btn{background-color:#2a2a2a;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}._btn:hover{background-color:#5a5a5a}._btn:focus{outline-style:solid;outline-width:2px;outline-color:gray}._btn:disabled{background-color:#c8c8c8;color:gray}._btn:disabled:active{background-color:#c8c8c8;color:gray}:is(.dark ._btn){background-color:#eaeaea;color:#2a2a2a}:is(.dark ._btn:hover){--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}:is(.dark ._btn:active){background-color:#dcdcdc}:is(.dark ._btn:active:hover){color:#070707}._btn-tertiary{display:inline-flex;width:100%;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;border-radius:.25rem;padding:.5rem 1.5rem;text-align:center;text-decoration-line:none!important;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;transition-timing-function:cubic-bezier(0,0,.2,1)}@media (min-width: 768px){._btn-tertiary{width:-moz-fit-content;width:fit-content}}._btn-tertiary{background-color:#070707;color:#f6f6f6}._btn-tertiary:hover{background-color:#2a2a2a;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}._btn-tertiary:focus{background-color:#070707;outline-style:solid;outline-width:2px;outline-color:gray}._btn-tertiary:active{background-color:#474747;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}._btn-tertiary:disabled{background-color:gray;color:#474747}._modal{border-radius:.25rem;border-width:1px;border-color:#5a5a5a;--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);position:fixed;top:50%;left:50%;z-index:50;max-height:608px;width:80%;max-width:500px;--tw-translate-x: -50%;--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));overflow:auto;background-color:#070707;padding:.5rem;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity));transition-duration:.3s}._modal:focus{outline:2px solid transparent;outline-offset:2px}@media (min-width: 768px){._modal{padding:2.5rem}}._modal-overlay{position:fixed;inset:0px;z-index:40;background-color:#070707;opacity:.6}._modal-close{position:absolute;top:10px;right:20px;border-radius:4px;color:#dcdcdc}._modal-close:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}._modal-close:focus{outline-style:solid;outline-width:2px;outline-color:gray}._modal-title{font-size:1.125rem;line-height:1.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0px}.bottom-0{bottom:0px}.right-4{right:1rem}.z-\[100\]{z-index:100}.m-1{margin:.25rem}.m-32{margin:8rem}.m-72{margin:18rem}.block{display:block}.flex{display:flex}.table{display:table}.hidden{display:none}.h-20{height:5rem}.h-6{height:1.5rem}.h-\[calc\(100\%-10px\)\]{height:calc(100% - 10px)}.h-\[calc\(100\%-50px\)\]{height:calc(100% - 50px)}.h-full{height:100%}.w-1\/3{width:33.333333%}.w-20{width:5rem}.w-6{width:1.5rem}.w-full{width:100%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0px}.gap-0\.5{gap:.125rem}.gap-4{gap:1rem}.border{border-width:1px}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.text-center{text-align:center}.text-right{text-align:right}.text-\[10px\]{font-size:10px}.text-\[8px\]{font-size:8px}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-normal{font-weight:400}.text-grey-400{color:#a2a2a2}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.opacity-25{opacity:.25}.opacity-75{opacity:.75}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}._header{background:#062d48;background:linear-gradient(90deg,#062d48,#0b3054 15%,#0e386c 45%,#0b203d 64%,#06101a 82%,#060709)}::-webkit-scrollbar{width:20px}::-webkit-scrollbar-track{background-color:transparent}::-webkit-scrollbar-thumb{background-color:#d6dee1;border-radius:20px;border:6px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background-color:#a8bbbf}::-webkit-scrollbar-corner{background:rgba(0,0,0,0)}body,html{height:100%;overflow:hidden;background:#000}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Fira Code,monospace,Arial Black;font-size:12px;font-size:1.2rem;color:#fff;background-color:#000;font-stretch:50%;overflow:hidden}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.saving{position:absolute;z-index:9999999;top:50%;left:50%;transform:translate(-50%,-50%);height:100px;width:200px;display:none;justify-content:center;align-items:center;background-color:#000000b3;color:#fff;box-shadow:0 0 10px #00000080;border:1px solid rgba(250,250,250,.5);font-size:.9em;border-radius:20px;animation:popup .3s ease-in-out}.saving.show{display:flex}.popup_overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:420px;background:#070707;border:1px solid #dcdcdc;box-shadow:0 4px 24px #0000000f;border-radius:4px;padding:40px;box-sizing:border-box;display:none;font-family:Fira Code,monospace,Arial Black;animation:popup .3s ease-in-out;box-shadow:0 3px 10px #0003;z-index:2;overflow:auto}.popup_content{position:relative;background-color:transparent;padding:0;font-size:.75rem!important;width:100%;height:100%;z-index:3}.popup_warning{color:red;font-size:12px;font-size:.8rem;font-family:Fira Code,monospace,Arial Black;display:none;background-color:#ff00001a;border-radius:4px;font-weight:700;margin-top:-18px;margin-left:45px}._modal{font-size:.65rem!important;animation:popup .3s ease-in-out}#changecolor{position:absolute;z-index:9;text-align:center;top:50%;left:50%;width:100px;height:60px;background-color:transparent;padding:10px;box-sizing:border-box;display:none}#changecolor_header:hover{margin-top:0!important;margin-bottom:0!important;border:1px solid gold;box-shadow:0 0 5px gold}#changecolor_header{padding:10px;cursor:move;z-index:10;color:#fff}#changecolor_header input[type=color]{width:100%;height:40px;border:none;border-radius:5px;margin-bottom:20px!important;cursor:pointer;border:1px solid #7d7d7d;padding:5px;background-color:#131313;color:#fff;margin-right:50px!important}@keyframes popup{0%{-webkit-transition:all .3s ease-in-out;transform:translate(-50%,-50%) scale(.2)}40%{transform:translate(-50%,-50%) scale(1.1)}80%{transform:translate(-50%,-50%) scale(1.05)}to{transform:translate(-50%,-50%) scale(1)}}.loader{position:relative;bottom:0px;right:-5px;border:4px solid #f3f3f3;border-radius:50%;border-top:4px solid #00acff;width:20px;height:20px;animation:spin 1.5s linear infinite;opacity:1}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.csv_column_container{display:grid;grid-template-columns:1fr 1fr;grid-gap:0px 10px;margin-top:10px;margin-bottom:10px}.plotly-graph-div .modebar--hover .modebar-group{border:2px solid #5a5a5a!important;border-radius:4px;padding:2px!important}.modebar-group{display:flex!important;background-color:transparent!important}.modebar{z-index:5000!important;position:fixed!important;bottom:10px!important;top:auto!important;left:50%!important;right:auto!important;align-items:center;transform:translate(-50%,10%)!important}@media screen and (max-width: 600px){.modebar-group{display:block!important;background-color:transparent!important}.modebar{bottom:20px!important}}@media screen and (max-width: 900px){._modal{font-size:.65rem!important;animation:popup .3s ease-in-out;height:70%!important;overflow:auto!important}}.modebar-group{margin-left:10px;margin-right:10px;background:#0f0f0f!important;border:1px solid #404040;box-shadow:0 4px 24px #0000000f;border-radius:8px}.modebar-group:nth-of-type(1):after{content:"Panning Tools";height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;position:absolute;display:none}.modebar-group:nth-of-type(1):hover:after{padding:10px;display:block;font-size:10px;color:#fff;cursor:pointer;background:#0f0f0f!important;border:1px solid #404040;box-shadow:0 4px 24px #0000000f;border-radius:8px;top:-40px;left:50%;transform:translate(-50%)}.modebar-group:nth-of-type(2):after{content:"Indicator Tools";height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;position:absolute;display:none}.modebar-group:nth-of-type(2):hover:after{padding:10px;display:block;font-size:10px;color:#fff;cursor:pointer;background:#0f0f0f!important;border:1px solid #404040;box-shadow:0 4px 24px #0000000f;border-radius:8px;top:-40px;left:50%;transform:translate(-50%)}.modebar-group:nth-of-type(3):after{content:"Chart Tools";height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;position:absolute;display:none}.modebar-group:nth-of-type(3):hover:after{padding:10px;display:block;font-size:10px;color:#fff;cursor:pointer;background:#0f0f0f!important;border:1px solid #404040;box-shadow:0 4px 24px #0000000f;border-radius:8px;top:-40px;left:50%;transform:translate(-50%)}.modebar-group:nth-of-type(4):after{content:"Drawing Tools";height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;position:absolute;display:none}.modebar-group:nth-of-type(4):hover:after{padding:10px;display:block;font-size:10px;color:#fff;cursor:pointer;background:#0f0f0f!important;border:1px solid #404040;box-shadow:0 4px 24px #0000000f;border-radius:8px;top:-40px;left:50%;transform:translate(-50%)}.modebar-group:nth-of-type(5):after{content:"Export Tools";height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;position:absolute;display:none}.modebar-group:nth-of-type(5):hover:after{padding:10px;display:block;font-size:10px;color:#fff;cursor:pointer;background:#0f0f0f!important;border:1px solid #404040;box-shadow:0 4px 24px #0000000f;border-radius:8px;top:-40px;left:50%;transform:translate(-50%)}.modebar.vertical{flex-direction:row!important;flex-flow:initial!important;gap:6px!important}.js-plotly-plot .plotly .modebar.vertical .modebar-group{padding-bottom:0!important}.modebar-container{position:initial!important}.modebar-btn:hover .icon path{fill:#00acff!important}.modebar-btn.active .icon path{fill:#00acff!important}.modebar-btn{padding:4px!important;margin:4px!important}.modebar-btn:hover{background-color:#1f1f1f!important;border-radius:8px}@media screen and (max-height: 1000px) and (max-width: 1100px){._header strong{font-size:.8rem!important}._header p{font-size:.7rem!important}._header span{font-size:.5rem!important}}@media (min-width: 640px){.sm\:pb-12{padding-bottom:3rem}}
|
||
|
||
</style>
|
||
</head>
|
||
<body>
|
||
<div id="root" class="h-full"></div>
|
||
|
||
</body>
|
||
</html>
|